Hopp til innholdet
CLI-verktøy for koding

CLI-verktøy for koding

Ny

Bruk Shannon som modellen bak Claude Code, Codex CLI og andre agent-CLI-er.

Et kodeverktøy trenger tre innstillinger for å fungere med Shannon: base-URL-en til API-et, API-nøkkelen din og en Shannon-modell-id. Denne siden gir de nøyaktige innstillingene for Claude Code og Codex CLI, forklarer hvordan kodemodellen shannon-coder-1 telles, og lister feilene disse verktøyene møter.

Hvilket endepunkt hvert verktøy bruker

Verktøy Endepunkt Base-URL som skal settes Merknad
Claude Code POST /v1/messages
POST /v1/messages/count_tokens
https://api.shannon-ai.com Verktøyet legger selv /v1/messages til base-URL-en.
Codex CLI POST /v1/responses https://api.shannon-ai.com/v1 Verktøyet legger /responses til base-URL-en.
Andre agentverktøy som snakker OpenAI chat-formatet POST /v1/chat/completions https://api.shannon-ai.com/v1 Sett base-URL-en, nøkkelen og en Shannon-modell-id i verktøyets egne innstillinger.

Alle tre endepunktene tar samme API-nøkkel, som Authorization: Bearer eller som x-api-key. Headerne anthropic-version, anthropic-beta og openai-beta som disse verktøyene sender, godtas.

Velg en Shannon-modell

Hver forespørsel må oppgi en modell-id som Shannon publiserer. Et kodeverktøy sender navnet på sin egen standardmodell med mindre du sier noe annet, og et navn Shannon ikke publiserer, besvares med 400 og meldingen unknown model: <name>. Ingen andre navn kobles til en Shannon-modell, så sett modellen i verktøyet før den første forespørselen.

GET /v1/models lister hver id med kontekstvindu. Det trenger ingen nøkkel. Modeller og priser

Modell Telles som Hva den gir
shannon-coder-1 Ett kall per forespørsel på /v1/messages og /v1/chat/completions. Tokens på /v1/responses. Kodemodellen. Tekst som input, verktøykall, kontekstvindu på 131,072 tokens.
shannon-1.6-lite
shannon-1.6-pro
Tokens fra saldoen din. Generelle modeller med verktøykall. shannon-1.6-lite passer for de korte bakgrunnsforespørslene et verktøy gjør.
Hostede åpne vektmodeller Tokens fra saldoen din, med cachet input til 25 % av inputprisen. Verktøykall, prompt-caching for lange økter og nøyaktige tellinger fra /v1/messages/count_tokens.

Kodeverktøy styrer modellen med en lang systemprompt. Systemprompten brukes av shannon-coder-1, shannon-1.6-lite, shannon-1.6-pro, shannon-2-lite, shannon-2-pro og de hostede åpne vektmodellene, så velg en av disse for et kodeverktøy.

Claude Code

Claude Code leser forbindelsen sin fra miljøvariabler. Sett dem i skallet som starter det, eller i env-blokken i ~/.claude/settings.json for å beholde dem for hver økt.

# Install Claude Code
npm install -g @anthropic-ai/claude-code

# Where to send requests, and your Shannon API key
export ANTHROPIC_BASE_URL=https://api.shannon-ai.com
export ANTHROPIC_AUTH_TOKEN=YOUR_API_KEY

# Shannon model ids: the session model, and the model behind each built-in name
export ANTHROPIC_MODEL=shannon-coder-1
export ANTHROPIC_DEFAULT_OPUS_MODEL=shannon-coder-1
export ANTHROPIC_DEFAULT_SONNET_MODEL=shannon-coder-1
export ANTHROPIC_DEFAULT_HAIKU_MODEL=shannon-1.6-lite

# The context window of the session model
export CLAUDE_CODE_MAX_CONTEXT_TOKENS=131072

claude
Variabel Beskrivelse
ANTHROPIC_BASE_URL Hvor Claude Code sender forespørslene sine. Bruk adressen uten /v1.
ANTHROPIC_AUTH_TOKEN Shannon API-nøkkelen din, sendt som Authorization: Bearer. ANTHROPIC_API_KEY fungerer også: den sender nøkkelen som x-api-key, og Claude Code ber én gang om å få godkjenne den.
ANTHROPIC_MODEL Modellen for økten. claude --model <id> og /model <id> setter det samme.
ANTHROPIC_DEFAULT_HAIKU_MODEL Modellen for bakgrunnsforespørsler som øktitler, og for alt som ber om haiku.
ANTHROPIC_DEFAULT_SONNET_MODEL Modellen som brukes når en subagent eller en kommando ber om sonnet.
ANTHROPIC_DEFAULT_OPUS_MODEL Modellen som brukes når en subagent eller en kommando ber om opus.
CLAUDE_CODE_MAX_CONTEXT_TOKENS Kontekstvinduet Claude Code antar for modellen. Bruk context_window som GET /v1/models rapporterer for id-en du valgte.
  • Sett alle tre ANTHROPIC_DEFAULT_…_MODEL-variablene. Subagenter og noen kommandoer ber om en modell med det innebygde navnet, og hvert navn må løses til en Shannon-id.
  • Eksempelet peker bakgrunnsforespørsler mot shannon-1.6-lite, som telles i tokens. Øktitler og lignende forespørsler bruker da ikke Coder-kall.
  • Claude Code ber POST /v1/messages/count_tokens om størrelsen på konteksten. Endepunktet teller for de hostede åpne vektmodellene. Med en Shannon-id svarer det 400; Claude Code behandler token-telling som valgfritt og anslår størrelsen selv. Token-telling

For å sjekke adressen, nøkkelen og en modell-id før du starter verktøyet, send én forespørsel for hånd:

cURL
curl https://api.shannon-ai.com/v1/messages \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "shannon-1.6-lite",
    "max_tokens": 16,
    "messages": [{"role": "user", "content": "Say OK."}]
  }'

Codex CLI

Codex CLI snakker med Responses API. Beskriv Shannon som en modellleverandør i ~/.codex/config.toml, velg en Shannon-modell-id der, og legg API-nøkkelen din i miljøvariabelen leverandøren oppgir.

~/.codex/config.toml
model = "shannon-coder-1"
model_provider = "shannon"
model_context_window = 131072

[model_providers.shannon]
name = "Shannon"
base_url = "https://api.shannon-ai.com/v1"
env_key = "SHANNON_API_KEY"
wire_api = "responses"
Shell
# Install Codex CLI
npm install -g @openai/codex

# Your Shannon API key, under the name given as env_key
export SHANNON_API_KEY=YOUR_API_KEY

# Start it; --model selects another Shannon id for one run
codex
codex --model shannon-1.6-pro
Nøkkel Beskrivelse
model Shannon-modell-id-en. codex --model <id> setter den for én kjøring.
model_provider Navnet på leverandørblokken som skal brukes, her shannon.
base_url API-adressen med /v1.
env_key Navnet på miljøvariabelen som inneholder Shannon API-nøkkelen din.
wire_api responses: Codex snakker med POST /v1/responses.
model_context_window Kontekstvinduet til modellen, slik at Codex komprimerer en lang økt i tide. Bruk context_window som GET /v1/models rapporterer.
  • /v1/responses lagrer ingen samtale på serveren: hver forespørsel har samtalen i input. previous_response_id godtas for kompatibilitet.
  • Funksjonsverktøy (type: "function") tilbys modellen på /v1/responses.
  • På /v1/responses telles shannon-coder-1 i tokens fra saldoen din, ikke i Coder-kall.

Den samme sjekken for Responses-endepunktet:

cURL
curl https://api.shannon-ai.com/v1/responses \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "shannon-1.6-lite",
    "input": "Say OK."
  }'

Kodemodellen og hvordan den telles

shannon-coder-1 er Shannon-modellen for kodeagenter. GET /v1/models rapporterer den med et kontekstvindu på 131,072 tokens, verktøykall, resonnering og tekst som input. Den telles på én av to måter, avhengig av endepunktet et verktøy bruker.

Endepunkt En forespørsel koster Trekkes fra
/v1/messages 1 kall per forespørsel Coder-kallkvoten i planen din. Ingen tokens trekkes fra saldoen din.
/v1/chat/completions 1 kall per forespørsel Coder-kallkvoten i planen din. Ingen tokens trekkes fra saldoen din.
/v1/responses Tokens, til $8.00 per 1M Saldoen din, som for alle andre modeller. Kallkvoten brukes ikke.

Et kall er én forespørsel, uansett størrelse. Det telles når forespørselen godtas, før modellen svarer. En agentøkt sender én forespørsel for hvert steg den tar, så en lang oppgave bruker mange kall. Kvoten avhenger av planen din og starter på nytt hver 4. time, kl. 00:00, 04:00, 08:00, 12:00, 16:00 og 20:00 UTC.

Plan Kall per 4-timersvindu
Free 3
Plus 20
Standard 40
Pro 60

Planssiden viser de gjeldende tallene. Planer

Når kallene i et vindu er brukt opp, besvares forespørselen med 429. På /v1/messages kommer den samme feilen i Anthropic-formen.

429 /v1/chat/completions
{
  "error": {
    "type": "rate_limit_error",
    "message": "Shannon Coder call quota reached. Upgrade your plan at shannon-ai.com/plan"
  }
}
429 /v1/messages
{
  "type": "error",
  "error": {
    "type": "rate_limit_error",
    "message": "Shannon Coder call quota reached. Upgrade your plan at shannon-ai.com/plan"
  }
}

Overskredet kontekst

Når en samtale er større enn kontekstvinduet til modellen, svarer /v1/chat/completions og /v1/messages med 400, typen invalid_request_error, koden context_length_exceeded og en melding som begynner med prompt is too long. Kodeverktøy leser denne feilen for å komprimere økten og sende forespørselen på nytt. Den produseres av shannon-coder-1, shannon-1.6-lite og shannon-1.6-pro.

400 /v1/chat/completions
{
  "error": {
    "type": "invalid_request_error",
    "code": "context_length_exceeded",
    "message": "prompt is too long: 140211 tokens > 131072 maximum",
    "param": null
  }
}
400 /v1/messages
{
  "type": "error",
  "error": {
    "type": "invalid_request_error",
    "code": "context_length_exceeded",
    "message": "prompt is too long: 140211 tokens > 131072 maximum",
    "param": null
  }
}

Meldingen er prompt is too long: <sent> tokens > <limit> maximum. Når de to tallene ikke er kjent, er den prompt is too long. Please compact the conversation and try again.

På en strøm er statusen allerede 200, så feilen kommer som en hendelse, og strømmen lukkes deretter på vanlig måte:

/v1/chat/completions, strøm
data: {"error":{"message":"prompt is too long: 140211 tokens > 131072 maximum","type":"invalid_request_error","code":"context_length_exceeded","param":null}}

data: {"id":"chatcmpl-…","object":"chat.completion.chunk","created":…,"model":"shannon-coder-1","choices":[{"index":0,"delta":{},"finish_reason":"stop"}],"usage":{…}}

data: [DONE]
/v1/messages, strøm
event: error
data: {"type":"error","error":{"type":"invalid_request_error","message":"prompt is too long: 140211 tokens > 131072 maximum"}}

event: message_delta
data: {"type":"message_delta","delta":{"stop_reason":"end_turn","stop_sequence":null},"usage":{…}}

event: message_stop
data: {"type":"message_stop"}

Hva en agentsløyfe kan stole på

Emne Oppførsel
Verktøyskjemaer Verktøydefinisjoner tas slik verktøyet sender dem. På shannon-coder-1 og shannon-1.6-* utelates JSON Schema-nøkkelord modellen ikke bruker, som $schema, $ref, additionalProperties, default og title, fra det modellen leser, og oneOf leses som anyOf. Ingen forespørsel avvises på grunn av dem.
Argumenter til verktøykall I en strøm kommer argumentene til et verktøykall komplette i én delta: tool_calls[].function.arguments, input_json_delta.partial_json eller response.function_call_arguments.delta.
Slutten på en verktøyrunde finish_reason: "tool_calls" på Chat Completions, stop_reason: "tool_use" på Messages.
Keep-alive Mens modellen jobber, sender /v1/messages event: ping og /v1/chat/completions en kommentarlinje : ping hvert 15. sekund.
Stoppe en forespørsel Å lukke forbindelsen stopper strømmen. Selve runden kjører til slutten og telles.

Feilsøking

Symptom Årsak Løsning
400 med unknown model: claude-… eller unknown model: gpt-… Verktøyet sendte sitt eget standard modellnavn. Bare publiserte Shannon-id-er betjenes, og ingen andre navn kobles til en. Velg en Shannon-id: ANTHROPIC_MODEL og de tre ANTHROPIC_DEFAULT_…_MODEL-variablene i Claude Code, model i Codex-konfigurasjonen.
400 med unknown model: og uten navn, fra Codex CLI Forespørselen oppga ingen modell. /v1/responses trenger en. Sett model i ~/.codex/config.toml eller bruk --model.
401 med Missing authentication eller Invalid API key Nøkkelen nådde ikke API-et, eller den er ikke en gjeldende nøkkel. En Shannon-nøkkel begynner med sk-. Sjekk at variabelen er satt i skallet som starter verktøyet. Kopier nøkkelen på nytt fra Nøkler og bruk.
404 på hver forespørsel Base-URL-en inneholder én /v1 for mye, eller mangler den verktøyet trenger. Claude Code: adressen uten /v1. Codex CLI: adressen med /v1.
429 med Shannon Coder call quota reached Coder-kallene i det gjeldende 4-timersvinduet er brukt opp. Vent på neste vindu, bytt til en plan med flere kall, eller velg en modell som telles i tokens.
429 med Quota exceeded Saldoen din dekker ikke forespørselen. Fyll på kreditt, eller vent på dagskvoten i planen din kl. 00:00 UTC.
400 med prompt is too long Samtalen er større enn kontekstvinduet til modellen. Komprimer økten (/compact i begge verktøyene). Si fra til verktøyet hvor stort kontekstvinduet til modellen er, så komprimerer det tidligere.
Claude Code viser omtrentlige konteksttall /v1/messages/count_tokens teller for de hostede åpne vektmodellene. Med en Shannon-id svarer det 400, og Claude Code anslår størrelsen selv. Ingenting å rette. Velg en hostet åpen vektmodell hvis du vil ha nøyaktige tellinger.
Et limt inn skjermbilde blir ikke tatt hensyn til shannon-coder-1 tar tekst som input. Velg en modell som tar bilder for den økten.

Nøkkelen og saldoen din finner du på siden Nøkler og bruk. Nøkler og bruk