क्या Claude Code या API में कभी इस एरर ने आपको अचानक रोक दिया है?

Prompt is too long

# On the API, more specifically:
prompt is too long: 233153 tokens > 200000 maximum

"प्रॉम्प्ट बहुत लंबा है" — यानी जो इनपुट आप भेजने की कोशिश कर रहे हैं (बातचीत का इतिहास + अटैच की गई फाइलें + टूल डेफिनिशन वगैरह) वह मॉडल की कॉन्टेक्स्ट विंडो (इनपुट की सीमा) को पार कर गया है। API पर तो यह "कितने tokens, और maximum कितना है" तक बता देता है, जैसे 233153 tokens > 200000 maximum। यह usage limit से अलग है — आपका कोटा खत्म नहीं हुआ; बस एक ही इनपुट भौतिक रूप से बहुत बड़ा है।

पहले तीन मुख्य बातें। (1) वजह है "इनपुट विंडो में नहीं समा रहा।" यह न तो max_tokens वाला आउटपुट कटऑफ है, न ही usage limit वाला कोटा। (2) Claude Code सामान्यतः इसे auto-compact (ऑटो-समराइज़ेशन) के ज़रिए अपने आप टाल देता है, इसलिए जब आपको यह दिखे, तो या तो आपने "एक ही बार में विंडो पार कर दी" है या auto-compact बंद कर रखा है। (3) सबसे तेज़ उपाय हैं: इतिहास समराइज़ करने के लिए /compact, नए सिरे से शुरू करने के लिए /clear, और बड़े रीड्स को किसी subagent पर डालना। यह लेख आधिकारिक जानकारी के आधार पर बताता है कि विंडो को क्या भरता है, विंडो साइज़ क्या हैं (200K और 1M), इसे कैसे ठीक करें, और भ्रामक एरर से इसे कैसे अलग पहचानें।

CLAUDE CODE · CONTEXT WINDOW

जब तक "विंडो" भर न जाए

— कॉन्टेक्स्ट को क्या भरता है, और कब छलकता है

system prompt
CLAUDE.md
MCP tool defs
पढ़ी गई फाइलें
tool results
बातचीत (बढ़ती रहती है)

100% तक जमा होती जाती है, और फिर...

100%
= 200K / 1M tokens
Prompt is
too long

सामान्यतः auto-compact
छलकने से पहले समराइज़ करता है

इसका मतलब है कि "इनपुट विंडो" भर गई हैयह usage limit (कोटा) नहीं, और न ही आउटपुट कटऑफ (max_tokens) है।
स्टैक के अनुपात सिर्फ़ उदाहरण हैं। असली ब्रेकडाउन /context से जाँचें।

1. यह एरर असल में क्या बता रहा है

AI मॉडल में एक इनपुट सीमा होती है जिसे "कॉन्टेक्स्ट विंडो" कहते हैं। यह "एक ही आदान-प्रदान में पढ़ी जा सकने वाली जानकारी की अधिकतम मात्रा" है, जिसे tokens (मोटे तौर पर शब्दों के टुकड़ों) में गिना जाता है। Prompt is too long का मतलब है कि जो इनपुट आपने भेजने की कोशिश की उसके कुल tokens उस विंडो को पार कर गए। API पर तो यह आँकड़े भी छाप देता है: 233153 tokens > 200000 maximum (आपने 233,153 tokens भेजे; सीमा 200,000 है)।

मुख्य बात यह है कि यह इनपुट पक्ष से जुड़ा है। कॉन्टेक्स्ट विंडो में बातचीत का इतिहास, अटैच/पढ़ी गई फाइलें, टूल एग्ज़ीक्यूशन के नतीजे, सिस्टम प्रॉम्प्ट, और MCP टूल डेफिनिशन सब जुड़ते हैं। लंबी बातचीत जारी रखें, कोई विशाल फाइल पूरी पढ़ा दें, या ढेर सारे टूल आउटपुट जमा हो जाएँ, तो विंडो धीरे-धीरे भरती है और किसी मोड़ पर छलक जाती है। इस अवधारणा के बारे में, देखें कॉन्टेक्स्ट विंडो क्या है

ध्यान दें कि Claude Code में आमतौर पर auto-compact (ऑटो-समराइज़ेशन) डिफ़ॉल्ट रूप से ऑन रहता है, जो विंडो भरने के करीब पहुँचते ही इतिहास को अपने आप समराइज़ करके जगह खाली कर देता है। इसलिए सामान्यतः आपको यह एरर कभी नहीं दिखता। फिर भी यदि यह दिखे, तो आम तौर पर इसलिए कि (1) एक ही इनपुट ने एक झटके में विंडो पार कर दी (जैसे कोई विशाल फाइल पेस्ट करना), या (2) आपने auto-compact बंद कर दिया (DISABLE_AUTO_COMPACT)।

2. कॉन्टेक्स्ट विंडो को क्या भरता है

"यह उम्मीद से जल्दी छलक जाती है" क्योंकि अदृश्य तत्व भी विंडो खाते हैं। यहाँ Claude Code के आधिकारिक दस्तावेज़ों से मुख्य ब्रेकडाउन है।

विंडो को क्या भरता हैक्या शामिल हैइसे हल्का कैसे करें
बातचीत का इतिहासहर यूज़र/असिस्टेंट टर्न। सबसे बड़ा कारक — यह क्लियर होने तक बढ़ता रहता हैसमराइज़ करने के लिए /compact, दोबारा शुरू करने के लिए /clear
पढ़ी गई फाइलेंहर Read की गई फाइल विंडो में जाती है। किसी विशाल फाइल को पूरा पढ़ना भारी पड़ता हैलाइन रेंज से पढ़ें; बड़े रीड्स किसी subagent पर डालें
टूल नतीजेकमांड आउटपुट, सर्च नतीजे आदि भी जमा होते हैंबेवजह बड़े आउटपुट से बचें; बार-बार compact करें
MCP टूल डेफिनिशनजुड़े हुए MCP सर्वरों की टूल डेफिनिशन। जितने ज़्यादा सर्वर, उतना ही शुरू से खाते हैंबिना इस्तेमाल वाले MCP को /mcp से बंद करें
CLAUDE.md / मेमोरीप्रोजेक्ट/ग्लोबल निर्देश, ऑटो-मेमोरी। हमेशा लोड रहती हैफूलने न दें; /doctor से जाँचें
सिस्टम प्रॉम्प्टमूल व्यवहार के निर्देश। हमेशा मौजूद, तय, अपरिवर्तनीय(काट नहीं सकते। बाकी घटाएँ)

मुख्य बात: "बातचीत का इतिहास, फाइल रीड्स, टूल नतीजे" गतिशील कारक हैं जो बढ़ते जाते हैं, जबकि "MCP डेफिनिशन, CLAUDE.md, सिस्टम प्रॉम्प्ट" शुरू से मौजूद तय कारक हैं। असली ट्रिक यह है कि एक subagent की अपनी अलग विंडो होती है — किसी विशाल फाइल रीड या जाँच को subagent पर डाल दें, और उसका नतीजा (भारी रॉ डेटा) कभी आपकी मुख्य विंडो में नहीं आता। विंडो को क्या खा रहा है, यह ठीक-ठीक देखने के लिए /context का इस्तेमाल करें। कॉन्टेक्स्ट को जानबूझकर डिज़ाइन करने के अनुशासन के लिए, देखें कॉन्टेक्स्ट इंजीनियरिंग

3. विंडो साइज़ — 200K और 1M

"maximum कितना है" यह मॉडल पर निर्भर करता है। यहाँ 2026 की मोटी तस्वीर है (विशिष्ट मान बदले जा सकते हैं, इसलिए नवीनतम आधिकारिक सूची की पुष्टि करें)।

200K vs 1M

विंडो में 5 गुना तक का फर्क हो सकता है

मानक 200K tokens
Sonnet 4.5, Haiku 4.5, Opus 4.5 आदि। एरर में दिखने वाला "200000 maximum" यही है। ज़्यादातर रोज़मर्रा के काम के लिए पर्याप्त, पर विशाल कोडबेस या लंबे सेशन में आसानी से छलक जाता है।
1M tokens
Opus 4.8/4.7/4.6, Sonnet 4.6 आदि। मानक का 5 गुना। 2026 तक यह मानक कीमत पर उपलब्ध है (फिलहाल लॉन्ग-कॉन्टेक्स्ट का कोई अतिरिक्त शुल्क नहीं)। Claude Code में यह [1m] सफ़िक्स के साथ दिखता है।
सावधानी: 1M कोई रामबाण नहीं है
(1) सब्सक्रिप्शन पर, किसी [1m] मॉडल के लिए usage credits ज़रूरी हो सकते हैं। (2) नए मॉडल एक बदले हुए टोकनाइज़र का इस्तेमाल करते हैं जो उसी टेक्स्ट के लिए लगभग 30-35% ज़्यादा tokens खाता है (इसलिए 1M भी जितना लगता है उससे कम समाता है)। विंडो चौड़ी करने से पहले, बुनियादी कदम है उसे न भरना।

विंडो साइज़, 1M सपोर्ट, और कीमत समय के साथ बदलते रहते हैं। तय मानों को रट न लें — नवीनतम आधिकारिक मॉडल सूची में पुष्टि करें।

यह सोचना लुभावना है कि "1M मॉडल पर स्विच करने से सब हल हो जाता है," पर बड़ी विंडो एक बचाव का रास्ता है, हमेशा समाधान नहीं। बिखरी हुई बातचीत, बेकार की पूरी-फाइल रीड्स, और बिना इस्तेमाल वाले MCP को बनाए रखते हुए विंडो चौड़ी करें, तो आप सिर्फ़ लागत बढ़ाते हैं और जवाब धीमा करते हैं। कुशल तरीका है: पहले विंडो साफ़ करें (compact, clear, subagents), और 1M का इस्तेमाल सिर्फ़ उन सचमुच बड़े कामों के लिए करें जिन्हें इसकी फिर भी ज़रूरत हो।

4. इसे अभी कैसे ठीक करें

जिस क्षण एरर दिखे, उसके उपाय प्राथमिकता-क्रम में। हालात के हिसाब से चुनें (इतिहास फूल गया / आपने कोई विशाल फाइल डाल दी)।

FIXES

विंडो खाली कैसे करें

1) /compact (सबसे पहले)
जगह खाली करने के लिए इतिहास समराइज़ करें। आप इसे केंद्रित कर सकते हैं: /compact focus on the auth bug। कॉन्टेक्स्ट बनाए रखते हुए हल्का करता है।
2) /clear (नया काम)
बातचीत मिटा दें। CLAUDE.md और प्रोजेक्ट जानकारी बनी रहती है। असंबंधित काम पर जाते समय सबसे तेज़।
3) बड़े रीड्स को डालें
विशाल फाइलें लाइन रेंज से पढ़ें, या किसी subagent से जाँच कराकर सिर्फ़ निष्कर्ष लें (वह अपनी अलग विंडो इस्तेमाल करता है)।
4) तय भार घटाएँ
ब्रेकडाउन देखने के लिए /context इस्तेमाल करें, फिर बिना इस्तेमाल वाले MCP बंद करें और CLAUDE.md पतला करें। /doctor फूलाव को चिह्नित करता है।
5) सचमुच विशाल हो तो 1M मॉडल
सिर्फ़ तब जब वाकई ज़रूरत हो (जैसे पूरा बड़ा कोडबेस संभालना), /model से किसी 1M-कॉन्टेक्स्ट मॉडल पर स्विच करें। पर सफ़ाई (1-4) पहले करें। auto-compact बंद न करें (इसे डिफ़ॉल्ट रूप से ऑन रखें)।

डिफ़ॉल्ट तौर पर 1) /compact फिर 2) /clear। अगर छलकाव मुख्यतः "बड़े रीड" से है, तो 3) इस्तेमाल करें। अगर यह बार-बार होता है, तो 4) से तय भार घटाएँ।

ध्यान दें: /compact खुद भी "Conversation too long. Press esc twice..." के साथ फेल हो सकता है — इसका मतलब है कि विंडो पहले से इतनी भरी है कि समराइज़ डालने तक की जगह नहीं। ऐसी स्थिति में, Esc दो बार दबाकर कुछ संदेश ऊपर जाएँ, या /clear से दोबारा शुरू करें। व्यवस्थित टोकन बचत के लिए, देखें Claude Code टोकन बचत

5. तीन भ्रामक एरर में फर्क करना

"बहुत लंबा / अटक गया" परिवार के कई सदस्य हैं, और उनके उपाय उल्टे हो सकते हैं। इन तीन (+ एक) में फर्क करें ताकि आप इन्हें न गड़बड़ाएँ।

लक्षणयह असल में क्या हैमुख्य उपाय
Prompt is too long / N tokens > M maximumइस लेख का विषय। इनपुट कॉन्टेक्स्ट विंडो को पार कर गया/compact, /clear, बड़े रीड्स subagent पर, 1M मॉडल
जवाब बीच में कट गया (stop_reason: max_tokens)आउटपुट उस max_tokens पर कट गया जो आपने रिक्वेस्ट में तय किया था (विंडो की समस्या नहीं)max_tokens बढ़ाएँ / जारी रखने को कहें
usage limit reachedआपके प्लान का usage कोटा खत्म हो गया (टोकन विंडो से असंबंधित)रीसेट का इंतज़ार करें; usage limit के उपाय
Usage credits required for 1M contextएंटाइटलमेंट का मामला। आपने ऐसा [1m] मॉडल चुना जो आपके प्लान में शामिल नहीं (न छलकाव, न कोटा)credits सक्षम करें, या /model से मानक विंडो पर जाएँ

कसौटी: अगर आपको "N tokens > M maximum" जैसे आँकड़े दिखें, तो यह इनपुट छलकाव है = यह लेख। एक साफ़ ढंग से कटा हुआ जवाब आउटपुट सीमा (max_tokens) है। "reset at [समय]" एक usage limit है। "credits required for 1M" एंटाइटलमेंट (प्लान) का मामला है। अन्य आम Claude Code एरर के लिए, देखें एरर संग्रह

6. रोकथाम चेकलिस्ट

विंडो को छलकने से रोकने की आदतें।

(1) auto-compact को डिफ़ॉल्ट रूप से ऑन रखें (इसे DISABLE_AUTO_COMPACT से बंद न करें)। (2) काम की सीमाओं पर /clear; बातचीत के बीच बार-बार /compact(3) विशाल फाइलें लाइन रेंज से या किसी subagent के ज़रिए पढ़ें; उन्हें पूरा पेस्ट न करें। (4) बिना इस्तेमाल वाले MCP बंद करें और CLAUDE.md को फूलने न दें (/doctor से जाँचें)। (5) भारी काम से पहले /context से ब्रेकडाउन जाँचें। (6) 1M मॉडल का इस्तेमाल सिर्फ़ सचमुच बड़े कामों के लिए करें; बाकी समय मानक विंडो + सफ़ाई पर चलें।

सारांश

Claude Code / API का "Prompt is too long" का मतलब है कि इनपुट (बातचीत का इतिहास + फाइलें + टूल डेफिनिशन वगैरह) मॉडल की कॉन्टेक्स्ट विंडो को पार कर गया। API पर तो यह सीमा भी N tokens > M maximum के रूप में दिखाता है। यह न तो usage limit (कोटा) है, न ही आउटपुट कटऑफ (max_tokens) — यह "इनपुट भौतिक रूप से बहुत बड़ा है" वाली बात है। Claude Code आमतौर पर auto-compact के ज़रिए इसे टाल देता है, इसलिए जब यह दिखे तो या तो आपने एक झटके में विंडो पार कर दी या auto-compact बंद कर दिया।

विंडो को भरते हैं बातचीत का इतिहास, फाइल रीड्स, टूल नतीजे (गतिशील) + MCP डेफिनिशन, CLAUDE.md, सिस्टम प्रॉम्प्ट (तय)। सबसे तेज़ उपाय हैं (1) /compact -> (2) /clear -> (3) बड़े रीड्स subagent पर डालें -> (4) /context से तय भार घटाएँ -> (5) सिर्फ़ सचमुच ज़रूरत हो तो 1M मॉडल। विंडो साइज़ हैं मानक 200K और 1M; 2026 तक 1M मानक कीमत पर है, पर ध्यान दें कि सब्सक्रिप्शन के लिए credits ज़रूरी हो सकते हैं और नया टोकनाइज़र ज़्यादा खाता है। बुनियादी नियम: विंडो चौड़ी करने से पहले, उसे भरना बंद करें। संबंधित: कॉन्टेक्स्ट विंडो क्या है, कॉन्टेक्स्ट इंजीनियरिंग, usage limit के उपाय

FAQ

Q. क्या "Prompt is too long" और "usage limit reached" एक ही चीज़ हैं?
A. बिल्कुल अलग। "Prompt is too long" का मतलब है कि एक ही इनपुट कॉन्टेक्स्ट विंडो (टोकन सीमा) को पार कर गया। "usage limit reached" का मतलब है कि आपने अपने प्लान का usage कोटा खर्च कर दिया — टोकन विंडो से असंबंधित। पहला /compact या /clear से विंडो खाली करके तुरंत ठीक हो जाता है; दूसरे के लिए रीसेट का इंतज़ार या प्लान-संबंधी कार्रवाई चाहिए।

Q. सामान्यतः यह कभी नहीं दिखता, फिर अचानक आ गया। क्यों?
A. Claude Code में auto-compact डिफ़ॉल्ट रूप से ऑन रहता है, जो विंडो भरने के करीब पहुँचते ही इसे टालने के लिए इतिहास अपने आप समराइज़ कर देता है। फिर भी यह दिखे, तो आम तौर पर इसलिए कि (1) आपने एक ही बार में कोई विशाल फाइल या भारी मात्रा में डेटा डालकर विंडो पार कर दी, या (2) आपने DISABLE_AUTO_COMPACT से auto-compact बंद कर दिया। पहले को विभाजन / लाइन-रेंज रीड्स / किसी subagent से ठीक करें, दूसरे को auto-compact दोबारा चालू करके।

Q. मैंने /compact चलाया और "Conversation too long" मिला — यह समराइज़ तक नहीं कर पाता।
A. विंडो पहले से इतनी भरी है कि समराइज़ डालने तक की जगह नहीं। Esc दो बार दबाकर कुछ संदेश ऊपर जाएँ और फिर कोशिश करें, या /clear से बातचीत दोबारा शुरू करें। उसके बाद, भरने से पहले ही /compact करें और बड़े रीड्स किसी subagent पर डालें ताकि यह दोबारा न हो।

Q. क्या 1M-कॉन्टेक्स्ट मॉडल पर स्विच करने से यह हल हो जाएगा?
A. बड़े कामों के लिए यह मदद करता है, पर कोई रामबाण नहीं। बिखरा इतिहास, बेकार की पूरी-फाइल रीड्स, और बिना इस्तेमाल वाले MCP को बनाए रखते हुए विंडो चौड़ी करना सिर्फ़ लागत बढ़ाता है और जवाब धीमा करता है। साथ ही, नए मॉडल एक बदले हुए टोकनाइज़र का इस्तेमाल करते हैं जो उसी टेक्स्ट के लिए लगभग 30-35% ज़्यादा tokens खाता है, इसलिए यह जितना लगता है उससे कम समाता है। समझदारी का तरीका है पहले सफ़ाई (compact/clear/subagent), फिर 1M सिर्फ़ तब जब वाकई ज़रूरत हो। ध्यान दें कि सब्सक्रिप्शन के लिए [1m] हेतु credits ज़रूरी हो सकते हैं।

Q. मैं जानना चाहता हूँ कि विंडो को क्या खा रहा है।
A. Claude Code का /context ब्रेकडाउन दिखाता है — सिस्टम प्रॉम्प्ट, CLAUDE.md, MCP टूल डेफिनिशन, बातचीत का इतिहास, पढ़ी गई फाइलें आदि। ज़्यादातर मामलों में लगातार बढ़ता बातचीत का इतिहास और बड़ी फाइल रीड्स ही मुख्य दोषी होते हैं। /doctor फूली हुई CLAUDE.md या subagent डेफिनिशन को भी चिह्नित करता है। अगर तय भार (MCP डेफिनिशन, CLAUDE.md) बड़ा है, तो उसे घटाना कारगर है।