Hoppa till innehållet
CLI-verktyg för kodning

CLI-verktyg för kodning

Ny

Använd Shannon som modellen bakom Claude Code, Codex CLI och andra agent-CLI:er.

Ett kodningsverktyg behöver tre inställningar för att fungera med Shannon: API:ets bas-URL, din API-nyckel och ett Shannon-modell-id. Den här sidan ger de exakta inställningarna för Claude Code och Codex CLI, förklarar hur kodningsmodellen shannon-coder-1 räknas och listar de fel som verktygen möter.

Vilken endpoint varje verktyg använder

Verktyg Endpoint Bas-URL att ange Anmärkning
Claude Code POST /v1/messages
POST /v1/messages/count_tokens
https://api.shannon-ai.com Verktyget lägger själv till /v1/messages på bas-URL:en.
Codex CLI POST /v1/responses https://api.shannon-ai.com/v1 Verktyget lägger till /responses på bas-URL:en.
Andra agentverktyg som talar OpenAI-chattformatet POST /v1/chat/completions https://api.shannon-ai.com/v1 Ange bas-URL, nyckel och ett Shannon-modell-id i verktygets egna inställningar.

Alla tre endpoints tar samma API-nyckel, som Authorization: Bearer eller som x-api-key. Headrarna anthropic-version, anthropic-beta och openai-beta som de här verktygen skickar accepteras.

Välj en Shannon-modell

Varje begäran måste ange ett modell-id som Shannon publicerar. Ett kodningsverktyg skickar namnet på sin egen standardmodell om du inte säger något annat, och ett namn som Shannon inte publicerar besvaras med 400 och meddelandet unknown model: <name>. Inget annat namn mappas till en Shannon-modell, så ange modellen i verktyget före den första begäran.

GET /v1/models listar varje id med dess kontextfönster. Den kräver ingen nyckel. Modeller och priser

Modell Räknas som Vad den ger
shannon-coder-1 Ett anrop per begäran på /v1/messages och /v1/chat/completions. Tokens på /v1/responses. Kodningsmodellen. Textinput, verktygsanrop, kontextfönster på 131,072 tokens.
shannon-1.6-lite
shannon-1.6-pro
Tokens från din balans. Generella modeller med verktygsanrop. shannon-1.6-lite passar de korta bakgrundsbegäranden som ett verktyg gör.
Hostade open-weight-modeller Tokens från din balans, med cachad input till 25% av inputpriset. Verktygsanrop, prompt-caching för långa sessioner och exakta räkningar från /v1/messages/count_tokens.

Kodningsverktyg styr modellen med en lång systemprompt. Systemprompten tillämpas av shannon-coder-1, shannon-1.6-lite, shannon-1.6-pro, shannon-2-lite, shannon-2-pro och de hostade open-weight-modellerna, så välj en av dessa för ett kodningsverktyg.

Claude Code

Claude Code läser sin anslutning från miljövariabler. Ange dem i det skal som startar det, eller i env-blocket i ~/.claude/settings.json för att behålla dem i varje session.

# 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 Beskrivning
ANTHROPIC_BASE_URL Dit Claude Code skickar sina begäranden. Använd adressen utan /v1.
ANTHROPIC_AUTH_TOKEN Din Shannon API-nyckel, skickad som Authorization: Bearer. ANTHROPIC_API_KEY fungerar också: den skickar nyckeln som x-api-key, och Claude Code ber en gång om godkännande.
ANTHROPIC_MODEL Sessionens modell. claude --model <id> och /model <id> anger samma sak.
ANTHROPIC_DEFAULT_HAIKU_MODEL Modellen för bakgrundsbegäranden som sessionstitlar, och för allt som ber om haiku.
ANTHROPIC_DEFAULT_SONNET_MODEL Modellen som används när en subagent eller ett kommando ber om sonnet.
ANTHROPIC_DEFAULT_OPUS_MODEL Modellen som används när en subagent eller ett kommando ber om opus.
CLAUDE_CODE_MAX_CONTEXT_TOKENS Det kontextfönster som Claude Code antar för modellen. Använd det context_window som GET /v1/models anger för det id du valt.
  • Ange alla tre variablerna ANTHROPIC_DEFAULT_…_MODEL. Subagenter och vissa kommandon ber om en modell med dess inbyggda namn, och varje namn måste peka på ett Shannon-id.
  • Exemplet pekar bakgrundsbegäranden mot shannon-1.6-lite, som räknas i tokens. Sessionstitlar och liknande begäranden använder då inga Coder-anrop.
  • Claude Code frågar POST /v1/messages/count_tokens om kontextens storlek. Endpointen räknar för de hostade open-weight-modellerna. Med ett Shannon-id svarar den 400; Claude Code behandlar tokenräkning som valfri och uppskattar storleken själv. Tokenräkning

För att kontrollera adressen, nyckeln och ett modell-id innan du startar verktyget, skicka en begäran för hand:

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 pratar med Responses API. Beskriv Shannon som modellleverantör i ~/.codex/config.toml, välj ett Shannon-modell-id där och lägg din API-nyckel i den miljövariabel som leverantören anger.

~/.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"
Skal
# 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
Nyckel Beskrivning
model Shannon-modellens id. codex --model <id> anger det för en körning.
model_provider Namnet på det leverantörsblock som ska användas, här shannon.
base_url API-adressen med /v1.
env_key Namnet på den miljövariabel som innehåller din Shannon API-nyckel.
wire_api responses: Codex pratar med POST /v1/responses.
model_context_window Modellens kontextfönster, så att Codex komprimerar en lång session i tid. Använd det context_window som GET /v1/models anger.
  • /v1/responses sparar ingen konversation på servern: varje begäran bär konversationen i input. previous_response_id accepteras för kompatibilitet.
  • Funktionsverktyg (type: "function") erbjuds modellen på /v1/responses.
  • På /v1/responses räknas shannon-coder-1 i tokens från din balans, inte i Coder-anrop.

Samma kontroll för Responses-endpointen:

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."
  }'

Kodningsmodellen och hur den räknas

shannon-coder-1 är Shannon-modellen för kodningsagenter. GET /v1/models anger den med ett kontextfönster på 131,072 tokens, verktygsanrop, resonemang och textinput. Den räknas på ett av två sätt, beroende på vilken endpoint ett verktyg använder.

Endpoint En begäran kostar Tas från
/v1/messages 1 anrop per begäran Din plans kvot av Coder-anrop. Inga tokens tas från din balans.
/v1/chat/completions 1 anrop per begäran Din plans kvot av Coder-anrop. Inga tokens tas från din balans.
/v1/responses Tokens, till $8.00 per 1M Din balans, som vilken annan modell som helst. Anropskvoten används inte.

Ett anrop är en begäran, oavsett storlek. Det räknas när begäran accepteras, innan modellen svarar. En agentsession skickar en begäran för varje steg den tar, så en lång uppgift förbrukar många anrop. Kvoten beror på din plan och börjar om var 4:e timme, kl. 00:00, 04:00, 08:00, 12:00, 16:00 och 20:00 UTC.

Plan Anrop per 4-timmarsfönster
Free 3
Plus 20
Standard 40
Pro 60

Plansidan visar de aktuella talen. Planer

När ett fönsters anrop är förbrukade besvaras begäran med 429. På /v1/messages kommer samma fel i Anthropics form.

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"
  }
}

Kontextöverskridande

När en konversation är större än modellens kontextfönster svarar /v1/chat/completions och /v1/messages med 400, typen invalid_request_error, koden context_length_exceeded och ett meddelande som börjar med prompt is too long. Kodningsverktyg läser det här felet för att komprimera sessionen och skicka begäran igen. Det skapas av shannon-coder-1, shannon-1.6-lite och 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
  }
}

Meddelandet är prompt is too long: <sent> tokens > <limit> maximum. När de två talen inte är kända är det prompt is too long. Please compact the conversation and try again.

På en ström är statusen redan 200, så felet kommer som en händelse och strömmen stängs sedan på normalt sätt:

/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"}

Vad en agentloop kan lita på

Ämne Beteende
Verktygsscheman Verktygsdefinitioner tas som verktyget skickar dem. På shannon-coder-1 och shannon-1.6-* utelämnas JSON Schema-nyckelord som modellen inte använder, till exempel $schema, $ref, additionalProperties, default och title, från det modellen läser, och oneOf läses som anyOf. Ingen begäran avvisas på grund av dem.
Argument i verktygsanrop I en ström kommer argumenten till ett verktygsanrop kompletta i ett enda delta: tool_calls[].function.arguments, input_json_delta.partial_json eller response.function_call_arguments.delta.
Slutet på en verktygsomgång finish_reason: "tool_calls" på Chat Completions, stop_reason: "tool_use" på Messages.
Keep-alive Medan modellen arbetar skickar /v1/messages event: ping och /v1/chat/completions en kommentarsrad : ping var 15:e sekund.
Att stoppa en begäran Att stänga anslutningen stoppar strömmen. Själva omgången körs till slut och räknas.

Felsökning

Symptom Orsak Åtgärd
400 med unknown model: claude-… eller unknown model: gpt-… Verktyget skickade sitt eget standardmodellnamn. Endast publicerade Shannon-id:n betjänas, och inget annat namn mappas till ett. Välj ett Shannon-id: ANTHROPIC_MODEL och de tre variablerna ANTHROPIC_DEFAULT_…_MODEL i Claude Code, model i Codex-konfigurationen.
400 med unknown model: och inget namn, från Codex CLI Begäran angav ingen modell. /v1/responses kräver en. Ange model i ~/.codex/config.toml eller skicka --model.
401 med Missing authentication eller Invalid API key Nyckeln nådde inte API:et, eller så är den inte en aktuell nyckel. En Shannon-nyckel börjar med sk-. Kontrollera att variabeln är satt i det skal som startar verktyget. Kopiera nyckeln igen från Nycklar och användning.
404 på varje begäran Bas-URL:en har en /v1 för mycket eller för lite för verktyget. Claude Code: adressen utan /v1. Codex CLI: adressen med /v1.
429 med Shannon Coder call quota reached Coder-anropen för det aktuella 4-timmarsfönstret är förbrukade. Vänta på nästa fönster, byt till en plan med fler anrop, eller välj en modell som räknas i tokens.
429 med Quota exceeded Din balans täcker inte begäran. Fyll på kredit, eller vänta på din plans dagliga kvot kl. 00:00 UTC.
400 med prompt is too long Konversationen är större än modellens kontextfönster. Komprimera sessionen (/compact i båda verktygen). Tala om för verktyget modellens kontextfönster så att det komprimerar tidigare.
Claude Code visar ungefärliga kontexttal /v1/messages/count_tokens räknar för de hostade open-weight-modellerna. Med ett Shannon-id svarar den 400, och Claude Code uppskattar storleken själv. Inget att åtgärda. Välj en hostad open-weight-modell om du vill ha exakta räkningar.
En inklistrad skärmbild beaktas inte shannon-coder-1 tar textinput. Välj en modell som tar bilder för den sessionen.

Din nyckel och din balans finns på sidan Nycklar och användning. Nycklar och användning