जब आपका AI कोडिंग एजेंट एक ही ग़लती बार-बार दोहराता रहे, तो उसे अटकाव से कैसे निकालें
VCA Newsroom द्वारा
आप अपने AI कोडिंग एजेंट को कहते हैं कि किसी deprecated फ़ंक्शन का इस्तेमाल बंद कर दे। यह माफ़ी माँगता है, कोड फिर से लिखता है — और वही deprecated फ़ंक्शन दोबारा इस्तेमाल करता है। आप तीसरी बार सुधार करते हैं। वही नतीजा। यही "doom loop" है, और हर बिल्डर आख़िरकार इससे टकराता है। अच्छी ख़बर: एक बार जब आप समझ जाते हैं कि यह क्यों होता है, तो इसका समाधान त्वरित और दोहराने योग्य है।
एजेंट क्यों अटक जाते हैं
एक AI कोडिंग एजेंट आपके पिछले सुधार को उस तरह याद नहीं रखता जैसे कोई इंसान रखता है। यह अपने context से काम करता है — आपकी बातचीत का चलता हुआ ट्रांसक्रिप्ट और वे फ़ाइलें जो इसने पढ़ी हैं। एक लंबे सत्र में दो चीज़ें ग़लत होती हैं:
- ग़लतियाँ जुड़ती जाती हैं। अगर कोई ग़लत धारणा शुरू में ही context में घुस जाए, तो हर बाद का जवाब उसी के ऊपर बनता है। आपका सुधार बस एक और संदेश है जो उन सभी पहले के टेक्स्ट से प्रतिस्पर्धा कर रहा है जो अब भी ग़लत बात कह रहे हैं।
- Context rot (संदर्भ का क्षरण)। जैसे-जैसे लंबे सत्र में विंडो भरती जाती है, आउटपुट की गुणवत्ता धीरे-धीरे गिरती जाती है। एजेंट उन निर्देशों का सुराग खोने लगता है जो आपने बीस संदेश पहले दिए थे।
तो जब कोई एजेंट किसी ग़लती को दोहराता है, तो यह आम तौर पर ज़िद नहीं कर रहा होता — यह एक प्रदूषित context में डूब रहा होता है। एजेंट के रवैये को नहीं, context को ठीक करें।
चरण 1: दोबारा समझाने के बजाय रीसेट करें
आपकी सहज प्रवृत्ति सुधार को और ज़ोर देकर समझाने की होती है। इसे रोकें। हर अतिरिक्त संदेश प्रदूषित context में जुड़ता है। इसके बजाय, ख़राब context को काट कर हटा दें:
- Claude Code में,
/rewindबातचीत और फ़ाइल बदलावों दोनों को किसी पहले के चेकपॉइंट पर वापस ले जाता है — इसका इस्तेमाल तब करें जब पिछले कुछ चरण ग़लत हुए हों लेकिन पहले का काम रखने लायक हो (उसी मेन्यू के लिएEscदो बार दबाएँ)।/clearबातचीत को पूरी तरह मिटा देता है और आपके कोड को बरक़रार रखते हुए नई शुरुआत करता है — इसका इस्तेमाल तब करें जब पूरा सत्र पटरी से उतर गया हो।/compactइतिहास को एक छोटे रूप में सारांशित कर देता है जब आप हल्के पदचिह्न के साथ आगे बढ़ना चाहते हों। (Claude Code best practices देखें।) - Cursor या किसी चैट-आधारित टूल में, अटके हुए टास्क के लिए ज़हरीली बातचीत जारी रखने के बजाय एक नई चैट शुरू करें।
एक साफ़ context जिसमें एक स्पष्ट निर्देश हो, वह एक लंबे context से बेहतर है जिसमें पाँच बढ़ती हुई झुंझलाहट भरे निर्देश हों।
चरण 2: सुधार को एक स्थायी जगह दें
चैट में टाइप किया गया सुधार सत्र ख़त्म होते ही ग़ायब हो जाता है। अगले सत्र में, एजेंट वही ग़लती करता है — क्योंकि आपने विंडो बंद करके उसकी स्मृति से समाधान हटा दिया। टिकाऊ नियमों को वहाँ रखें जहाँ एजेंट हर बार उन्हें पढ़ता है:
- Claude Code: आपके repo रूट पर एक
CLAUDE.mdफ़ाइल। - Cursor: एक rules फ़ाइल (जैसे
.cursor/rules/)। - कोई भी एजेंट: एक
AGENTS.mdफ़ाइल, जो अब व्यापक रूप से समर्थित है।
नियम को एक सपाट, परखने योग्य कथन के रूप में लिखें। "साफ़ कोड लिखने की कोशिश करो" नहीं, बल्कि: "fetch का इस्तेमाल करो, axios का कभी नहीं। इस प्रोजेक्ट में axios निर्भरता नहीं है।"
चरण 3: बाधा को अनदेखा करना असंभव बनाएँ
यहाँ एक ठोस उदाहरण है। मान लीजिए आपका एजेंट एक date लाइब्रेरी को बार-बार इम्पोर्ट करता रहता है जिसे आपने हटा दिया था:
// Agent keeps writing this:
import moment from 'moment'
const now = moment().format('YYYY-MM-DD')
आपने इसे तीन बार कह दिया है कि इसके बजाय बिल्ट-इन Intl API इस्तेमाल करे। चौथे सुधार के बजाय, CLAUDE.md में एक लाइन जोड़ें:
## Dates
Never import `moment` or `dayjs` — they are not installed.
Format dates with the built-in `Intl.DateTimeFormat`. Example:
`new Intl.DateTimeFormat('en-CA').format(new Date())` → "2026-07-04"
फ़र्क़: आपने एक नियम के साथ एक काम करता हुआ उदाहरण दिया। एजेंट किसी अमूर्त निर्देश की तुलना में एक कॉपी करने योग्य उदाहरण का कहीं ज़्यादा भरोसेमंद ढंग से पालन करते हैं, और अब यह नियम हर सत्र की शुरुआत में अपने-आप लोड हो जाता है।
चरण 4: एजेंट को ख़ुद को जाँचने का एक तरीक़ा दें
एजेंट उन ग़लतियों को दोहराते हैं जिन्हें वे देख नहीं सकते। एजेंट को एक ऐसा संकेत देकर लूप को बंद करें जिसे वह पढ़ सके:
- एक linter नियम या test जो ठीक उसी ग़लती पर फ़ेल हो जाए। अगर
momentआपके linter द्वारा प्रतिबंधित है, तो एजेंट linter चलाता है, एरर देखता है, और उसे ठीक कर देता है — इसमें आपको बीच में शामिल हुए बिना। - आपके प्रॉम्प्ट में एक त्वरित "definition of done" चेकलिस्ट: "ख़त्म करने से पहले,
npm run lintऔरnpm testचलाओ और पुष्टि करो कि दोनों पास हो जाते हैं।"
यह अकेला सबसे बड़ा अपग्रेड है। एक ग़लती जिसे एजेंट ख़ुद पकड़ सकता है, वह ऐसी ग़लती नहीं रह जाती जिसे आपको पकड़ना पड़े।
चरण 5: टास्क को छोटा करें
अगर कोई एजेंट किसी बड़े, अस्पष्ट अनुरोध ("auth सिस्टम को रीफ़ैक्टर करो") पर लूप करता है, तो यह अक्सर विस्तार में नहीं, बल्कि दायरे में खो जाता है। काम को एक बार में एक छोटे, सत्यापन योग्य चरण में बाँटें — "token-refresh लॉजिक को उसके अपने फ़ंक्शन में निकालो, व्यवहार मत बदलो" — और आगे बढ़ने से पहले हर एक की पुष्टि करें। छोटे टास्क भटकने की कम गुंजाइश छोड़ते हैं।
पैटर्न
जब आपका एजेंट किसी ग़लती को दोहराना बंद न करे, तो इस सूची पर चलें: context को रीसेट करें, नियम को वहाँ लिख डालें जहाँ वह टिका रहे, एक उदाहरण दिखाएँ, इसे एक ऐसी जाँच दें जिसे यह ख़ुद चला सके, और टास्क को सँकरा करें। आप विषय पर ग़ौर करेंगे — आप एजेंट से बहस नहीं कर रहे, आप यह ठीक कर रहे हैं कि यह क्या देख सकता है। ऐसा करें और doom loop एक गँवाई हुई दोपहर के बजाय एक दो-मिनट का चक्कर बन जाता है।
SOURCES
Auto-generated by Vibe Coding Academy on July 4, 2026, grounded in the real sources linked above. We review for accuracy, but please verify time-sensitive details against the primary sources.
Build Blueprint · Creator
कोई आइडिया है? वह स्पेक पाएँ जिससे आपका AI एजेंट बना सके।
किसी भी प्रोडक्ट का वर्णन करें और एक संपूर्ण बिल्ड ब्लूप्रिंट पाएँ — स्टैक, डेटा मॉडल, स्क्रीन, API और Claude Code या Cursor के लिए तैयार-पेस्ट प्रॉम्प्ट। PDF में एक्सपोर्ट करें।
ब्लूप्रिंट खोलें ▸