Claude Code की कॉन्टेक्स्ट विंडो भर गई? कॉम्पैक्ट, क्लियर या नया सेशन
Claude Code या किसी दूसरे कोडिंग एजेंट का कॉन्टेक्स्ट कम पड़ने पर कॉम्पैक्ट करने, क्लियर करने और नए सेशन में से चुनें, और फ़ैसले हैंडऑफ़ नोट में सँभालकर रखें।
जब Claude Code की कॉन्टेक्स्ट विंडो लगभग भर जाती है, तो वह ख़ुद कदम उठाता है: पहले टूल का पुराना आउटपुट हटाता है, फिर ज़रूरत हो तो बातचीत का सारांश बना देता है। इसमें शुरुआती निर्देश खो सकते हैं, इसलिए उससे पहले आप ख़ुद तय करें। अगर आप अब भी उसी काम पर हैं, तो क्या रखना है इसका नोट देकर /compact चलाएँ। अगर आप किसी असंबंधित काम पर जा रहे हैं, तो /clear चलाएँ। अगर एजेंट बार-बार फ़ैसले भूल रहा है, तो छोटा हैंडऑफ़ नोट लिखें और उससे नया सेशन शुरू करें।
दूसरे कोडिंग एजेंट अलग कमांड इस्तेमाल कर सकते हैं, लेकिन विकल्प यही रहते हैं। जब एजेंट इसकी जानकारी देता है, तो Mono दिखा सकता है कि कॉन्टेक्स्ट कितना भरा है, लेकिन कॉम्पैक्ट और क्लियर करने का काम एजेंट ही करता है।
1. जानें कि कॉन्टेक्स्ट विंडो किससे भरती है
कॉन्टेक्स्ट में वह सब होता है जिसके आधार पर एजेंट काम करता है: आपके संदेश और उसके जवाब, उसकी पढ़ी हुई फ़ाइलें, कमांड और टेस्ट का आउटपुट, जुड़े हुए MCP सर्वर की टूल सूचियाँ, और शुरुआत में लोड हुई निर्देश फ़ाइलें। टेस्ट का एक लंबा लॉग आपके टाइप किए गए पूरे टेक्स्ट से ज़्यादा जगह ले सकता है।
विंडो भरने के संकेत:
- एजेंट वह नियम तोड़ता है जो आपने उसे पहले दिया था।
- वह ऐसा सवाल पूछता है जिसका जवाब आप पहले दे चुके हैं।
- चेतावनी आती है कि कॉन्टेक्स्ट कम बचा है।
Claude Code में /context दिखाता है कि जगह किस चीज़ में जा रही है। Claude Code कैसे काम करता है वाला परिचय बताता है कि सीमा के पास पहुँचने पर क्या होता है।
एक काल्पनिक उदाहरण: “tidy-recipes” की 30 फ़ाइलों को पुराने डेट हेल्पर oldDate() से नए formatDate() पर ले जाते हुए दो घंटे बीत चुके हैं, और एजेंट फिर पूछता है कि कौन-सी लाइब्रेरी इस्तेमाल करनी है। /context दिखाता है कि विंडो लगभग भर चुकी है।
2. कॉम्पैक्ट करने, क्लियर करने और नए सेशन में से चुनें
कॉम्पैक्ट करने से उसी सेशन में बातचीत की जगह उसका सारांश आ जाता है। क्लियर करने या नया सेशन शुरू करने से बातचीत हट जाती है, लेकिन निर्देश फ़ाइलें फिर से लोड होती हैं। हर विकल्प में कुछ न कुछ छूटता है:
| स्थिति | क्या करें | क्या छूटता है |
|---|---|---|
| वही काम, ठीक चल रहा है | फ़ोकस नोट के साथ कॉम्पैक्ट करें | वे ब्योरे जो सारांश में नहीं आते |
| आगे असंबंधित काम | क्लियर करें या नया सेशन शुरू करें | पूरी बातचीत |
| एजेंट फ़ैसले भूल जाता है | हैंडऑफ़ नोट लिखें, नया सेशन शुरू करें | जो कुछ हैंडऑफ़ नोट में नहीं लिखा गया |
फ़ोकस नोट सारांश को बताता है कि क्या रखना है: /compact Focus on date decisions and failing tests। Claude Code की लागत सँभालने की गाइड यही दिखाती है, और सुझाव देती है कि /clear से पहले /rename चलाएँ, ताकि आप बाद में /resume से वह सेशन फिर खोल सकें।
उदाहरण में एजेंट एक फ़ैसला पहले ही भूल चुका है, इसलिए हैंडऑफ़ नोट लिखें।
3. रीसेट से पहले हैंडऑफ़ नोट लिखें
हैंडऑफ़ नए सेशन के लिए एक छोटा नोट है। इसे ख़ुद लिखें या एजेंट का ड्राफ़्ट सुधारें:
Goal: Replace oldDate() with formatDate() in recipes/ (30 files).
Done: 18 files, on branch tidy-dates.
Decisions: formatDate() uses Intl.DateTimeFormat, so no new library.
Keep oldDate() for importing v1 files, which use the old format.
Open problem: The recipes/print.ts test has failed since the change.
Next step: Fix print.ts, then move the remaining 12 files.हर फ़ैसले के साथ उसकी वजह लिखें, वरना अगला सेशन उसे पलट सकता है। नोट को प्रोजेक्ट में या अपने नोट्स में सेव करें, और बातचीत एक्सपोर्ट करें, ताकि ज़रूरत पड़ने पर उसके ब्योरे मिल सकें।
फिर /clear चलाएँ या उसी प्रोजेक्ट में नया सेशन शुरू करें, और सिर्फ़ हैंडऑफ़ नोट पेस्ट करें, पूरी बातचीत नहीं।
4. स्थायी नियम चैट से बाहर ले जाएँ
कुछ सुधार एक काम से आगे भी मायने रखते हैं। अगर आप बार-बार “प्रोजेक्ट का डेट हेल्पर इस्तेमाल करो” या “प्रोजेक्ट की स्क्रिप्ट से टेस्ट चलाओ” दोहराते हैं, तो वह नियम प्रोजेक्ट की निर्देश फ़ाइल में डालें, जैसे AGENTS.md या Claude Code की CLAUDE.md। नए सेशन वह फ़ाइल पढ़ते हैं, इसलिए रीसेट से वह नियम नहीं खोता।
फ़ाइल छोटी रखें, क्योंकि वह हर सेशन में लोड होती है। लागत वाली गाइड CLAUDE.md को 200 पंक्तियों से कम रखने का सुझाव देती है। “30 में से 18 फ़ाइलें” जैसी प्रगति हैंडऑफ़ नोट में ही रहती है। फ़ाइल में क्या लिखें, यह AGENTS.md गाइड बताती है।
उदाहरण वाला v1 नियम भी वहीं जाता है: वह तब तक लागू रहता है जब तक v1 फ़ाइलें मौजूद हैं।
5. हर बारी में जुड़ने वाली सामग्री घटाएँ
छोटा कॉन्टेक्स्ट ज़्यादा देर चलता है। हर अनुरोध से पहले:
- “तारीखें ठीक करो” कहने के बजाय फ़ाइल और फ़ंक्शन का नाम बताएँ।
- पूरा लॉग नहीं, सिर्फ़ संबंधित एरर पंक्तियाँ पेस्ट करें।
- सिर्फ़ ज़रूरी टेस्ट चलाएँ, और आउटपुट में सिर्फ़ फ़ेल हुए टेस्ट दिखाएँ।
- जिन MCP सर्वर का प्रोजेक्ट में इस्तेमाल नहीं होता, उन्हें डिस्कनेक्ट करें।
- जहाँ एजेंट इसका समर्थन करता हो, वहाँ बड़ी खोज किसी सबएजेंट को सौंपें।
- हर सेशन में एक ही काम रखें।
लागत वाली गाइड में इनमें से ज़्यादातर तरीके हैं, जिनमें टेस्ट आउटपुट को फ़िल्टर करने वाला हुक भी शामिल है।
6. रीसेट के बाद एजेंट को जाँचें
नया सेशन कुछ भी एडिट करे, उससे पहले उससे लक्ष्य, फ़ैसले और अगला कदम दोबारा बताने को कहें, और जवाब को अपने हैंडऑफ़ नोट से मिलाएँ। उदाहरण में उसे बिना पूछे v1 नियम बताना चाहिए। कुछ छूट जाए तो अभी सुधारें। फिर आगे बढ़ने से पहले उसका पहला डिफ़, यानी print.ts का सुधार, देखें। कोड समीक्षा गाइड में एक चेकलिस्ट है।
Mono में, जब एजेंट इस्तेमाल की जानकारी देता है, तो संदेश बॉक्स के ऊपर एक छोटा घेरा इस्तेमाल हुआ कॉन्टेक्स्ट दिखाता है। आधा भरने पर वह हरे से नारंगी और 80 प्रतिशत पर लाल हो जाता है, और उसे दबाने पर “कॉन्टेक्स्ट: इस्तेमाल / कुल” दिखता है। “/” टाइप करने पर एजेंट की दी हुई स्लैश कमांड की सूची आती है। Agent Client Protocol में एजेंट के लिए इन्हें बताना वैकल्पिक है। नई शुरुआत के लिए पुरानी बातचीत को “बातचीत एक्सपोर्ट करें” से सेव करें, फिर प्रोजेक्ट कार्ड पर “नया सेशन” चुनें (कंप्यूटर जुड़ा हो तो फ़ोन से भी)। Mono अभी उपलब्ध नहीं है, लेकिन आप प्रतीक्षा सूची में जुड़ सकते हैं।
