कंटेंट पर जाएँ
CLI कोडिंग टूल्स

CLI कोडिंग टूल्स

नया

Shannon को Claude Code, Codex CLI और अन्य एजेंट CLI के पीछे मॉडल के रूप में उपयोग करें।

Shannon के साथ काम करने के लिए कोडिंग टूल को तीन सेटिंग चाहिए: API का बेस URL, आपकी API key और एक Shannon मॉडल id। यह पेज Claude Code और Codex CLI की सटीक सेटिंग देता है, बताता है कि कोडिंग मॉडल shannon-coder-1 कैसे गिना जाता है, और वे त्रुटियाँ सूचीबद्ध करता है जो इन टूल को मिलती हैं।

कौन सा टूल कौन सा endpoint उपयोग करता है

टूल Endpoint सेट करने वाला बेस URL टिप्पणी
Claude Code POST /v1/messages
POST /v1/messages/count_tokens
https://api.shannon-ai.com टूल बेस URL में /v1/messages खुद जोड़ लेता है।
Codex CLI POST /v1/responses https://api.shannon-ai.com/v1 टूल बेस URL में /responses जोड़ लेता है।
अन्य एजेंट टूल जो OpenAI चैट फ़ॉर्मेट बोलते हैं POST /v1/chat/completions https://api.shannon-ai.com/v1 टूल की अपनी सेटिंग में बेस URL, key और Shannon मॉडल id सेट करें।

तीनों endpoints एक ही API key लेते हैं, Authorization: Bearer के रूप में या x-api-key के रूप में। ये टूल जो हेडर anthropic-version, anthropic-beta और openai-beta भेजते हैं वे स्वीकार किए जाते हैं।

Shannon मॉडल चुनें

हर अनुरोध में ऐसा मॉडल id होना चाहिए जिसे Shannon प्रकाशित करता है। कोडिंग टूल अपने डिफ़ॉल्ट मॉडल का नाम भेजता है जब तक आप उसे कुछ और न बताएँ, और जो नाम Shannon प्रकाशित नहीं करता उसका उत्तर 400 और संदेश unknown model: <name> से दिया जाता है। किसी और नाम को Shannon मॉडल से मैप नहीं किया जाता, इसलिए पहले अनुरोध से पहले टूल में मॉडल सेट करें।

GET /v1/models हर id को उसकी कॉन्टेक्स्ट विंडो के साथ सूचीबद्ध करता है। इसे key की ज़रूरत नहीं। मॉडल और कीमतें

मॉडल इस रूप में गिना जाता है यह क्या देता है
shannon-coder-1 /v1/messages और /v1/chat/completions पर प्रति अनुरोध एक कॉल। /v1/responses पर टोकन। कोडिंग मॉडल। टेक्स्ट इनपुट, टूल कॉल, 131,072 टोकन की कॉन्टेक्स्ट विंडो।
shannon-1.6-lite
shannon-1.6-pro
आपके बैलेंस से टोकन। टूल कॉल वाले सामान्य मॉडल। shannon-1.6-lite टूल के छोटे बैकग्राउंड अनुरोधों के लिए उपयुक्त है।
होस्टेड ओपन-वेट मॉडल आपके बैलेंस से टोकन, कैश्ड इनपुट इनपुट कीमत के 25% पर। टूल कॉल, लंबे सेशन के लिए प्रॉम्प्ट कैशिंग, और /v1/messages/count_tokens से सटीक गिनती।

कोडिंग टूल लंबे सिस्टम प्रॉम्प्ट से मॉडल को दिशा देते हैं। सिस्टम प्रॉम्प्ट को shannon-coder-1, shannon-1.6-lite, shannon-1.6-pro, shannon-2-lite, shannon-2-pro और होस्टेड ओपन-वेट मॉडल लागू करते हैं, इसलिए कोडिंग टूल के लिए इनमें से कोई एक चुनें।

Claude Code

Claude Code अपना कनेक्शन environment variables से पढ़ता है। उन्हें उस शेल में सेट करें जो इसे शुरू करता है, या हर सेशन के लिए रखने हेतु ~/.claude/settings.json के env ब्लॉक में।

# 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
वेरिएबल विवरण
ANTHROPIC_BASE_URL जहाँ Claude Code अपने अनुरोध भेजता है। /v1 के बिना पते का उपयोग करें।
ANTHROPIC_AUTH_TOKEN आपकी Shannon API key, Authorization: Bearer के रूप में भेजी जाती है। ANTHROPIC_API_KEY भी काम करता है: वह key को x-api-key के रूप में भेजता है, और Claude Code एक बार उसे मंज़ूर करने को कहता है।
ANTHROPIC_MODEL सेशन का मॉडल। claude --model <id> और /model <id> वही सेट करते हैं।
ANTHROPIC_DEFAULT_HAIKU_MODEL सेशन शीर्षक जैसे बैकग्राउंड अनुरोधों के लिए, और जो भी haiku माँगे उसके लिए मॉडल।
ANTHROPIC_DEFAULT_SONNET_MODEL जब कोई सबएजेंट या कमांड sonnet माँगे तब उपयोग होने वाला मॉडल।
ANTHROPIC_DEFAULT_OPUS_MODEL जब कोई सबएजेंट या कमांड opus माँगे तब उपयोग होने वाला मॉडल।
CLAUDE_CODE_MAX_CONTEXT_TOKENS वह कॉन्टेक्स्ट विंडो जो Claude Code मॉडल के लिए मानता है। चुने गए id के लिए GET /v1/models जो context_window बताता है, वही उपयोग करें।
  • तीनों ANTHROPIC_DEFAULT_…_MODEL वेरिएबल सेट करें। सबएजेंट और कुछ कमांड मॉडल को उसके बिल्ट-इन नाम से माँगते हैं, और हर नाम किसी Shannon id पर पहुँचना चाहिए।
  • नमूना बैकग्राउंड अनुरोधों को shannon-1.6-lite पर पॉइंट करता है, जो टोकन में गिना जाता है। तब सेशन शीर्षक और ऐसे अनुरोध Coder कॉल उपयोग नहीं करते।
  • Claude Code कॉन्टेक्स्ट का आकार जानने के लिए POST /v1/messages/count_tokens से पूछता है। यह endpoint होस्टेड ओपन-वेट मॉडल के लिए गिनता है। Shannon id के साथ यह 400 देता है; Claude Code टोकन गिनती को वैकल्पिक मानता है और आकार का अनुमान खुद लगा लेता है। टोकन गिनती

टूल शुरू करने से पहले पता, key और मॉडल id जाँचने के लिए, हाथ से एक अनुरोध भेजें:

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 Responses API से बात करता है। ~/.codex/config.toml में Shannon को एक मॉडल प्रोवाइडर के रूप में बताएँ, वहीं कोई Shannon मॉडल id चुनें, और अपनी API key उस environment variable में रखें जिसका नाम प्रोवाइडर देता है।

~/.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"
शेल
# 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
Key विवरण
model Shannon मॉडल id। codex --model <id> इसे एक रन के लिए सेट करता है।
model_provider उपयोग किए जाने वाले प्रोवाइडर ब्लॉक का नाम, यहाँ shannon।
base_url /v1 सहित API पता।
env_key उस environment variable का नाम जिसमें आपकी Shannon API key है।
wire_api responses: Codex POST /v1/responses से बात करता है।
model_context_window मॉडल की कॉन्टेक्स्ट विंडो, ताकि Codex लंबे सेशन को समय पर कॉम्पैक्ट करे। GET /v1/models जो context_window बताता है, वही उपयोग करें।
  • /v1/responses सर्वर पर कोई बातचीत नहीं रखता: हर अनुरोध बातचीत को input में ले जाता है। previous_response_id संगतता के लिए स्वीकार किया जाता है।
  • फ़ंक्शन टूल (type: "function") /v1/responses पर मॉडल को दिए जाते हैं।
  • /v1/responses पर shannon-coder-1 आपके बैलेंस के टोकन में गिना जाता है, Coder कॉल में नहीं।

Responses endpoint के लिए भी यही जाँच हाथ से करें:

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

कोडिंग मॉडल और उसकी गिनती कैसे होती है

shannon-coder-1 कोडिंग एजेंट के लिए Shannon मॉडल है। GET /v1/models इसे 131,072 टोकन की कॉन्टेक्स्ट विंडो, टूल कॉल, रीज़निंग और टेक्स्ट इनपुट के साथ बताता है। यह दो में से एक तरीके से गिना जाता है, इस पर निर्भर करता है कि टूल कौन सा endpoint उपयोग करता है।

Endpoint एक अनुरोध की लागत कहाँ से लिया जाता है
/v1/messages प्रति अनुरोध 1 कॉल आपके प्लान का Coder कॉल अलाउंस। आपके बैलेंस से कोई टोकन नहीं लिए जाते।
/v1/chat/completions प्रति अनुरोध 1 कॉल आपके प्लान का Coder कॉल अलाउंस। आपके बैलेंस से कोई टोकन नहीं लिए जाते।
/v1/responses टोकन, $8.00 प्रति 1M पर आपका बैलेंस, किसी भी अन्य मॉडल की तरह। कॉल अलाउंस उपयोग नहीं होता।

कॉल एक अनुरोध है, उसका आकार चाहे जो हो। यह अनुरोध स्वीकार होते समय, मॉडल के उत्तर देने से पहले गिनी जाती है। एजेंट सेशन हर कदम के लिए एक अनुरोध भेजता है, इसलिए लंबा कार्य कई कॉल उपयोग करता है। अलाउंस आपके प्लान पर निर्भर करता है और हर 4 घंटे में फिर शुरू होता है: 00:00, 04:00, 08:00, 12:00, 16:00 और 20:00 UTC पर।

प्लान प्रति 4 घंटे की विंडो कॉल
Free 3
Plus 20
Standard 40
Pro 60

प्लान पेज मौजूदा संख्याएँ दिखाता है। प्लान

जब किसी विंडो की कॉल समाप्त हो जाती हैं, तो अनुरोध का उत्तर 429 से दिया जाता है। /v1/messages पर वही त्रुटि 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"
  }
}

कॉन्टेक्स्ट ओवरफ़्लो

जब बातचीत मॉडल की कॉन्टेक्स्ट विंडो से बड़ी हो, तो /v1/chat/completions और /v1/messages 400, प्रकार invalid_request_error, कोड context_length_exceeded और prompt is too long से शुरू होने वाले संदेश के साथ उत्तर देते हैं। कोडिंग टूल यह त्रुटि पढ़कर सेशन को कॉम्पैक्ट करते हैं और अनुरोध फिर से भेजते हैं। इसे shannon-coder-1, shannon-1.6-lite और 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
  }
}

संदेश prompt is too long: <sent> tokens > <limit> maximum होता है। जब दोनों संख्याएँ ज्ञात न हों तो यह prompt is too long. Please compact the conversation and try again. होता है।

स्ट्रीम पर स्टेटस पहले से 200 होता है, इसलिए त्रुटि एक इवेंट के रूप में आती है और फिर स्ट्रीम सामान्य तरीके से बंद हो जाती है:

/v1/chat/completions, स्ट्रीम
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, स्ट्रीम
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"}

एजेंट लूप किन बातों पर भरोसा कर सकता है

विषय व्यवहार
टूल schema टूल परिभाषाएँ वैसी ही ली जाती हैं जैसी टूल भेजता है। shannon-coder-1 और shannon-1.6-* पर JSON Schema के वे कीवर्ड जिन्हें मॉडल उपयोग नहीं करता, जैसे $schema, $ref, additionalProperties, default और title, मॉडल के पढ़ने वाले हिस्से से हटा दिए जाते हैं, और oneOf को anyOf की तरह पढ़ा जाता है। इनके कारण कोई अनुरोध अस्वीकार नहीं होता।
टूल कॉल के आर्गुमेंट स्ट्रीम में टूल कॉल के आर्गुमेंट एक ही डेल्टा में पूरे आते हैं: tool_calls[].function.arguments, input_json_delta.partial_json या response.function_call_arguments.delta।
टूल टर्न का अंत समाप्ति का संकेत: Chat Completions पर finish_reason: "tool_calls", Messages पर stop_reason: "tool_use"।
Keep-alive मॉडल के काम करते समय /v1/messages हर 15 सेकंड में event: ping भेजता है और /v1/chat/completions एक : ping कमेंट लाइन भेजता है।
अनुरोध रोकना कनेक्शन बंद करने से स्ट्रीम रुक जाती है। टर्न खुद अपने अंत तक चलता है और गिना जाता है।

समस्या निवारण

लक्षण कारण समाधान
400 के साथ unknown model: claude-… या unknown model: gpt-… टूल ने अपने डिफ़ॉल्ट मॉडल का नाम भेजा। केवल प्रकाशित Shannon id परोसे जाते हैं, और किसी और नाम को किसी से मैप नहीं किया जाता। कोई Shannon id चुनें: Claude Code में ANTHROPIC_MODEL और तीनों ANTHROPIC_DEFAULT_…_MODEL वेरिएबल, Codex कॉन्फ़िग में model।
Codex CLI से 400 के साथ unknown model: और कोई नाम नहीं अनुरोध में कोई मॉडल नहीं बताया गया। /v1/responses को एक चाहिए। ~/.codex/config.toml में model सेट करें या --model दें।
401 के साथ Missing authentication या Invalid API key Key API तक नहीं पहुँची, या वह मौजूदा key नहीं है। Shannon key sk- से शुरू होती है। जाँचें कि वेरिएबल उसी शेल में सेट है जो टूल शुरू करता है। Keys & usage से key फिर से कॉपी करें।
हर अनुरोध पर 404 बेस URL में टूल के लिए एक /v1 ज़्यादा या कम है। Claude Code: /v1 के बिना पता। Codex CLI: /v1 सहित पता।
429 के साथ Shannon Coder call quota reached मौजूदा 4 घंटे की विंडो की Coder कॉल समाप्त हो चुकी हैं। अगली विंडो का इंतज़ार करें, अधिक कॉल वाले प्लान पर जाएँ, या कोई ऐसा मॉडल चुनें जो टोकन में गिना जाता है।
429 के साथ Quota exceeded आपका बैलेंस अनुरोध को पूरा नहीं करता। क्रेडिट जोड़ें, या 00:00 UTC पर अपने प्लान के दैनिक अलाउंस का इंतज़ार करें।
400 के साथ prompt is too long बातचीत मॉडल की कॉन्टेक्स्ट विंडो से बड़ी है। सेशन को कॉम्पैक्ट करें (दोनों टूल में /compact)। टूल को मॉडल की कॉन्टेक्स्ट विंडो बताएँ ताकि वह पहले कॉम्पैक्ट करे।
Claude Code अनुमानित कॉन्टेक्स्ट संख्याएँ दिखाता है /v1/messages/count_tokens होस्टेड ओपन-वेट मॉडल के लिए गिनता है। Shannon id के साथ यह 400 देता है, और Claude Code आकार का अनुमान खुद लगाता है। ठीक करने को कुछ नहीं। सटीक गिनती चाहिए तो कोई होस्टेड ओपन-वेट मॉडल चुनें।
पेस्ट किए गए स्क्रीनशॉट को ध्यान में नहीं लिया जाता shannon-coder-1 टेक्स्ट इनपुट लेता है। उस सेशन के लिए कोई ऐसा मॉडल चुनें जो इमेज लेता हो।

आपकी key और आपका बैलेंस Keys & usage पेज पर हैं। Keys और उपयोग