Tsallake zuwa abun ciki
Kayan CLI na rubuta code

Kayan CLI na rubuta code

Sabo

Ku yi amfani da Shannon a matsayin model ɗin da ke bayan Claude Code, Codex CLI da sauran agent CLIs.

Kayan rubuta code suna buƙatar saituna uku don aiki da Shannon: base URL na API, maɓallin API ɗinku, da model id na Shannon. Wannan shafin yana ba da ainihin saitunan Claude Code da Codex CLI, yana bayanin yadda ake ƙirga model na rubuta code shannon-coder-1, kuma yana lissafa kurakuran da waɗannan tools ke haɗuwa da su.

Wane endpoint kowane tool ke amfani da shi

Tool Endpoint Base URL da za a saita Bayani
Claude Code POST /v1/messages
POST /v1/messages/count_tokens
https://api.shannon-ai.com Tool yana ƙara /v1/messages zuwa base URL da kansa.
Codex CLI POST /v1/responses https://api.shannon-ai.com/v1 Tool yana ƙara /responses zuwa base URL.
Sauran agent tools da ke magana da tsarin taɗi na OpenAI POST /v1/chat/completions https://api.shannon-ai.com/v1 Ku saita base URL, maɓalli da model id na Shannon a saitunan tool ɗin da kansa.

Dukkan endpoints uku suna karɓar maɓallin API iri ɗaya, a matsayin Authorization: Bearer ko x-api-key. Ana karɓar headers anthropic-version, anthropic-beta da openai-beta da waɗannan tools ke aikawa.

Zaɓi model na Shannon

Dole kowace request ta ambaci model id da Shannon ke wallafawa. Tool na rubuta code yana aika sunan model ɗinsa na asali sai dai idan kun gaya masa daban, kuma sunan da Shannon ba ya wallafawa ana amsa shi da 400 da saƙon unknown model: <name>. Babu wani suna da aka haɗa da model na Shannon, don haka ku saita model a cikin tool kafin request na farko.

GET /v1/models yana lissafa kowane id tare da context window ɗinsa. Ba ya buƙatar maɓalli. Models & farashi

Model Ana ƙirgawa a matsayin Abin da yake kawowa
shannon-coder-1 Kira ɗaya ga kowace request a /v1/messages da /v1/chat/completions. Tokens a /v1/responses. Model na rubuta code. Rubutu a input, kiran tool, context window na tokens 131,072.
shannon-1.6-lite
shannon-1.6-pro
Tokens daga balance ɗinku. Models na gama-gari masu kiran tool. shannon-1.6-lite ya dace da gajerun requests na baya-baya da tool ke yi.
Hosted open-weight models Tokens daga balance ɗinku, tare da cached input a 25% na farashin input. Kiran tool, adana prompt don dogayen sessions, da ainihin ƙirgi daga /v1/messages/count_tokens.

Kayan rubuta code suna jagorantar model da dogon system prompt. shannon-coder-1, shannon-1.6-lite, shannon-1.6-pro, shannon-2-lite, shannon-2-pro da hosted open-weight models ne ke aiwatar da system prompt, don haka ku zaɓi ɗaya daga cikinsu don tool na rubuta code.

Claude Code

Claude Code yana karanta haɗinsa daga environment variables. Ku saita su a shell da ke ƙaddamar da shi, ko a block na env na ~/.claude/settings.json don riƙe su a kowane 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
Variable Bayani
ANTHROPIC_BASE_URL Inda Claude Code ke aika requests ɗinsa. Ku yi amfani da adireshin ba tare da /v1 ba.
ANTHROPIC_AUTH_TOKEN Maɓallin API ɗinku na Shannon, ana aikawa a matsayin Authorization: Bearer. ANTHROPIC_API_KEY ma yana aiki: yana aika maɓallin a matsayin x-api-key, kuma Claude Code yana tambaya sau ɗaya don amincewa da shi.
ANTHROPIC_MODEL Model na session. claude --model <id> da /model <id> suna saita abu ɗaya.
ANTHROPIC_DEFAULT_HAIKU_MODEL Model na requests na baya-baya kamar sunayen session, da duk abin da ke neman haiku.
ANTHROPIC_DEFAULT_SONNET_MODEL Model da ake amfani da shi lokacin da subagent ko umarni ke neman sonnet.
ANTHROPIC_DEFAULT_OPUS_MODEL Model da ake amfani da shi lokacin da subagent ko umarni ke neman opus.
CLAUDE_CODE_MAX_CONTEXT_TOKENS Context window da Claude Code ke zato wa model. Ku yi amfani da context_window da GET /v1/models ke bayyana ga id da kuka zaɓa.
  • Ku saita dukkan variables uku na ANTHROPIC_DEFAULT_…_MODEL. Subagents da wasu umarni suna neman model da sunansa na ciki, kuma kowane suna dole ya zama id na Shannon.
  • Samfurin yana nuna requests na baya-baya zuwa shannon-1.6-lite, wanda ake ƙirga a tokens. Sunayen session da irin waɗannan requests sai ba sa amfani da kiran Coder.
  • Claude Code yana tambayar POST /v1/messages/count_tokens girman context. Endpoint ɗin yana ƙirga ga hosted open-weight models. Da id na Shannon yana amsawa da 400; Claude Code yana ɗaukar ƙirgan tokens a matsayin zaɓi kuma yana kimanta girman da kansa. Ƙidayar tokens

Don duba adireshin, maɓalli da model id kafin ku fara tool, ku aika request ɗaya da hannu:

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 yana magana da Responses API. Ku bayyana Shannon a matsayin model provider a ~/.codex/config.toml, ku zaɓi model id na Shannon a can, kuma ku sa maɓallin API ɗinku a environment variable da provider ya ambata.

~/.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
Maɓalli Bayani
model Model id na Shannon. codex --model <id> yana saita shi don gudu ɗaya.
model_provider Sunan block na provider da za a yi amfani da shi, a nan shannon.
base_url Adireshin API tare da /v1.
env_key Sunan environment variable da ke ɗauke da maɓallin API ɗinku na Shannon.
wire_api responses: Codex yana magana da POST /v1/responses.
model_context_window Context window na model, don Codex ya matse dogon session a lokaci. Ku yi amfani da context_window da GET /v1/models ke bayyana.
  • /v1/responses ba ya riƙe tattaunawa a server: kowace request tana ɗauke da tattaunawar a input. Ana karɓar previous_response_id don jituwa.
  • Ana ba model function tools (type: "function") a /v1/responses.
  • A /v1/responses, ana ƙirga shannon-coder-1 a tokens daga balance ɗinku, ba a kiran Coder ba.

Duba iri ɗaya ga endpoint na Responses:

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

Model na rubuta code da yadda ake ƙirga shi

shannon-coder-1 shi ne model na Shannon don coding agents. GET /v1/models yana bayyana shi da context window na tokens 131,072, kiran tool, reasoning da rubutu a input. Ana ƙirga shi ta hanya ɗaya daga biyu, bisa endpoint da tool ke amfani da shi.

Endpoint Request yana kashe Ana ɗauka daga
/v1/messages kira 1 ga kowace request Allowance na kiran Coder na plan ɗinku. Ba a ɗauki tokens daga balance ɗinku ba.
/v1/chat/completions kira 1 ga kowace request Allowance na kiran Coder na plan ɗinku. Ba a ɗauki tokens daga balance ɗinku ba.
/v1/responses Tokens, a $8.00 kowace 1M Balance ɗinku, kamar kowane model. Ba a amfani da allowance na kira.

Kira request ɗaya ne, komai girmansa. Ana ƙirga shi lokacin da aka karɓi request, kafin model ya amsa. Session na agent yana aika request ɗaya don kowane mataki da ya ɗauka, don haka dogon aiki yana amfani da kira da yawa. Allowance ya dogara da plan ɗinku kuma yana farawa kowane awa 4, a 00:00, 04:00, 08:00, 12:00, 16:00 da 20:00 UTC.

Plan Kira ga kowace taga ta awa 4
Free 3
Plus 20
Standard 40
Pro 60

Shafin plan yana nuna lambobin yanzu. Plans

Idan an gama kiran taga, ana amsa request da 429. A /v1/messages kuskuren yana zuwa a siffar Anthropic.

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

Cikar context

Idan tattaunawa ta fi context window na model girma, /v1/chat/completions da /v1/messages suna amsawa da 400, nau'in invalid_request_error, code context_length_exceeded da saƙon da ya fara da prompt is too long. Kayan rubuta code suna karanta wannan kuskuren don matse session su sake aika request. shannon-coder-1, shannon-1.6-lite da shannon-1.6-pro ne ke samar da shi.

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

Saƙon shi ne prompt is too long: <sent> tokens > <limit> maximum. Idan ba a san lambobin biyu ba, shi ne prompt is too long. Please compact the conversation and try again.

A stream matsayin ya riga ya zama 200, don haka kuskuren yana zuwa a matsayin event sannan stream ya rufe ta hanyar da ta saba:

/v1/chat/completions, stream
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, stream
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"}

Abin da agent loop zai iya dogara da shi

Batu Hali
Tool schemas Ana ɗaukar ma'anar tools yadda tool ɗin ya aika. A shannon-coder-1 da shannon-1.6-*, ana bar keywords na JSON Schema da model ba ya amfani da su, kamar $schema, $ref, additionalProperties, default da title, a cikin abin da model ke karantawa, kuma ana karanta oneOf a matsayin anyOf. Ba a ƙi kowace request saboda su ba.
Arguments na kiran tool A stream, arguments na kiran tool suna zuwa cikakku a delta ɗaya: tool_calls[].function.arguments, input_json_delta.partial_json ko response.function_call_arguments.delta.
Ƙarshen turn na tool finish_reason: "tool_calls" a Chat Completions, stop_reason: "tool_use" a Messages.
Keep-alive Yayin da model yake aiki, /v1/messages yana aika event: ping kuma /v1/chat/completions yana aika layin sharhi : ping kowane daƙiƙa 15.
Dakatar da request Rufe haɗin yana dakatar da stream. Turn ɗin da kansa yana ci gaba har ƙarshe kuma ana ƙirga shi.

Magance matsaloli

Alama Dalili Gyara
400 da unknown model: claude-… ko unknown model: gpt-… Tool ya aika sunan model ɗinsa na asali. Ids na Shannon da aka wallafa kaɗai ake yi wa hidima, kuma babu wani suna da aka haɗa da ɗayansu. Ku zaɓi id na Shannon: ANTHROPIC_MODEL da variables uku na ANTHROPIC_DEFAULT_…_MODEL a Claude Code, model a saitin Codex.
400 da unknown model: ba tare da suna ba, daga Codex CLI Request bai ambaci model ba. /v1/responses yana buƙatar ɗaya. Ku saita model a ~/.codex/config.toml ko ku wuce --model.
401 da Missing authentication ko Invalid API key Maɓallin bai isa API ba, ko kuma ba maɓalli na yanzu ba ne. Maɓallin Shannon yana farawa da sk-. Ku duba cewa an saita variable a shell da ke ƙaddamar da tool. Ku sake kwafar maɓallin daga Maɓallai & amfani.
404 a kowace request Base URL yana da /v1 ɗaya fiye ko ƙasa da yadda tool ɗin yake buƙata. Claude Code: adireshin ba tare da /v1 ba. Codex CLI: adireshin tare da /v1.
429 da Shannon Coder call quota reached An gama kiran Coder na taga ta awa 4 ta yanzu. Ku jira taga ta gaba, ku koma plan mai kira da yawa, ko ku zaɓi model da ake ƙirga a tokens.
429 da Quota exceeded Balance ɗinku bai isa request ba. Ku ƙara credit, ko ku jira allowance na yau da kullun na plan ɗinku da ƙarfe 00:00 UTC.
400 da prompt is too long Tattaunawar ta fi context window na model girma. Ku matse session (/compact a duka tools). Ku gaya wa tool context window na model don ya matse da wuri.
Claude Code yana nuna lambobin context na kimantawa /v1/messages/count_tokens yana ƙirga ga hosted open-weight models. Da id na Shannon yana amsawa da 400, kuma Claude Code yana kimanta girman da kansa. Babu abin gyarawa. Ku zaɓi hosted open-weight model idan kuna son ainihin ƙirgi.
Ba a lura da hoton screenshot da aka liƙa ba shannon-coder-1 yana karɓar rubutu a input. Ku zaɓi model da ke karɓar hotuna don wannan session.

Maɓallinku da balance ɗinku suna a shafin Maɓallai & amfani. Maɓallai & amfani