- ऐसे समय में जब AI coding models एकल निर्देश भी भरोसेमंद तरीके से पूरा नहीं कर पाते, बैकग्राउंड में स्वायत्त रूप से काम करने वाली agentic coding को लेकर जरूरत से ज्यादा उम्मीदें बनाई जा रही हैं
- लेखक ने लगभग 100 लाइनों का Golang function reference code के रूप में दिया, फिर भी GPT-5 और Gemini Pro दोनों ने कुछ logic छोड़ दिया या updates मिस कर दिए
- मौजूदा तकनीकी स्तर पर agentic systems का 50 files और कई functions को स्वायत्त रूप से संभालना अवास्तविक है, और इससे उलटे debugging में ज्यादा समय लगने का जोखिम है
- कम्युनिटी की प्रतिक्रियाएं दो हिस्सों में बंटी दिखती हैं: व्यवस्थित prompting, documentation और step-by-step verification से सीमित सफलता संभव है, या फिर यह कि agentic अभी व्यावहारिक नहीं है
- मौजूदा LLM intelligence नहीं बल्कि knowledge-based systems हैं, इसलिए developer द्वारा context देना और हर चरण पर verify करना यानी "tool-like usage" ही सबसे यथार्थवादी तरीका है
मूल लेखक की समस्या-प्रस्तुति
- सरल निर्देश की विफलता का उदाहरण: 100 लाइनों का एक Golang function reference के रूप में दिया गया और दूसरे function को उसी structure में update करने को कहा गया, लेकिन GPT-5 और Gemini Pro दोनों ने कुछ logic छोड़ दिया या update पूरे नहीं किए
- Agentic coding की अवास्तविकता: जब एक single function भी सही से handle नहीं हो रहा, तब 50 files में फैले कई functions को autonomously modify करने वाला agentic तरीका और ज्यादा समस्याएं पैदा करेगा, ऐसी चिंता जताई गई
- 6000-line file update का सवाल: Stripe version update जैसे 6000 लाइनों की file को सुरक्षित तरीके से modify करने के बारे में community से राय मांगी गई
सकारात्मक उपयोग के उदाहरण और कार्यप्रणालियां
व्यवस्थित documentation और indexing approach
- Markdown reference files का उपयोग: अगर references को
.md files में रखकर AI को उन्हें पढ़ने के लिए कहा जाए, तो consistency और accuracy बेहतर हो सकती है
- उदाहरण prompt: "संलग्न
goLang_Update_reference.md file को reference मानकर update function के मुख्य points का सार बताओ, और उसके आधार पर software update का draft तैयार करो"
- Local index बनाना: बड़े files (6000+ lines) के मामले में 1000-line chunks में scan करके function names और line references वाला index बनाया जा सकता है
- Frontend काम के दौरान
fr.index.md जैसे किसी खास क्षेत्र के लिए अलग index उपयोगी हो सकता है
Agent management और task structuring
- Agent specialization: architect, codeseeker, coder जैसे role-based agents बनाकर, हर एक को उसके मुताबिक
.md rules file दी जा सकती है
- Vertical slice approach: काम को ऐसे छोटे feature units में बांटना जिन्हें 100k tokens के भीतर पूरा किया जा सके
- 100k tokens से ऊपर जाते ही agent के malfunction करने की संभावना तेजी से बढ़ती है
- Task documentation को अनिवार्य बनाना:
docs/TASKS.md, docs/WORKLOG.md, docs/DECISIONS.md को update करना जरूरी रखने से काम की continuity बनी रहती है
Plan Mode और Ask Mode का उपयोग
- Plan Mode: पूरे project को review करके request के अनुसार plan बनाना और फिर चरणबद्ध तरीके से आगे बढ़ना
- Ask Mode: codebase query, idea exploration, option review जैसी जरूरतों में उपयोगी, और Google/StackOverflow के विकल्प के रूप में काम आ सकता है
Unit test-first approach
- Test-driven development: function लिखने से पहले unit tests लिखना, और फिर AI से बार-बार ऐसा code generate कराना जो tests pass करे
- इससे functionally correct code मिलने की संभावना काफी बढ़ती है, और बाद में सिर्फ optimization व cleanup करना पड़ता है
संदेहपूर्ण राय और सीमाओं की समझ
Agentic की व्यावहारिक सीमाएं
- बिना supervision के काम कराना आत्मघाती है: मौजूदा तकनीकी स्तर पर ticket assign करके background में autonomous काम करवाना विफल होने की बहुत अधिक संभावना रखता है
- झूठ गढ़ने की संभावना: model के सफल होने की तुलना में hallucination पैदा करने की संभावना अधिक है, और सबसे खराब स्थिति में वह मौजूदा code को भी खराब कर सकता है
- Planning Mode की redundancy: base model से विस्तार से plan मांगना ही काफी है; Planning Mode व्यवहार में कोई बिल्कुल नई क्षमता नहीं देता
LLM की मूलभूत सीमाएं
- Reasoning नहीं, prediction: model नतीजों को verify नहीं करता, बल्कि अगला शब्द predict करता है; इसलिए grounding, memory और feedback में सुधार होने तक reliability अस्थिर ही रहेगी
- Intelligence रहित knowledge base: LLM बिना intelligence वाला एक उन्नत knowledge base है, इसलिए developer को खुद intelligence (BYOI: Bring Your Own Intelligence) और context देना पड़ता है
- Memory की कमी: model के पास वास्तविक memory नहीं होती; वह सिर्फ context और context cache पर निर्भर करता है, इसलिए हर नया chat शुरू होते ही context reset हो जाता है
भाषा और data bias
- Golang की सापेक्षिक कमजोरी: Python या JavaScript की तुलना में Golang के public codebases कम हैं, इसलिए model के सीखे हुए patterns और conventions भी कम हैं
- यही एक structural factor है जो consistent edits या transformations को कठिन बनाता है
सफल उपयोग के लिए व्यावहारिक गाइड
Prompting और context देना
- स्पष्ट और विस्तृत निर्देश: grammar और punctuation का सही उपयोग करें, और vague expressions की जगह explicit instructions दें
- सभी संबंधित files का स्पष्ट reference: अगर agent को उपयोग में आने वाली सारी files साफ-साफ नहीं बताई गईं, तो spaghetti code बनने की संभावना बढ़ जाती है
- Rules files सेट करना: पूरे workspace के rules और project-specific rules files सेट करके consistent code generation को बढ़ावा दिया जा सकता है
- @Docs का उपयोग: agent को जरूरी core knowledge देने के लिए documentation reference feature का उपयोग करें (कुछ versions में यह अस्थिर रूप से काम करता है)
काम का दायरा और verification
- छोटे units में विभाजन: काम को सबसे छोटे संभव हिस्सों में बांटें, हर चरण को verify करें, फिर अगले चरण पर जाएं
- Real-time review: generate होने वाले हर code को real time में review करें, और तुरंत correction मांगें ताकि spaghetti code न बने
- Backup और version control: हर चरण पर backup बनाएं और GitHub जैसे version control systems का उपयोग करें
- Tests चलाना:
pytest --testmon -q से प्रभावित tests को incrementally चलाएं, और पूरा होने से पहले full test suite चलाएं
Modularization और code structure
- 6000-line file को बांटना: एक single file में 6000 lines होना non-modular है और context देने के लिहाज से भी प्रतिकूल है; इसे 500 lines के 12 files में बांटना ज्यादा प्रभावी है
- Vertical slices को प्राथमिकता: end-to-end चल सकने वाले छोटे feature units में development करें
Model selection और cost management
- Claude Sonnet 4.5 को प्राथमिकता से देखें: GPT या Gemini की तुलना में consistency और accuracy बेहतर होने के कारण इसकी अतिरिक्त लागत उचित हो सकती है
- Token consumption पर ध्यान: बड़े plans बहुत tokens खर्च करते हैं, इसलिए वास्तविक execution के दौरान छोटे steps में आगे बढ़ना ज्यादा cost-efficient है
विशेष उपयोग-परिदृश्य
One-off scripts बनाना
- Analysis scripts: अगर रोज सैकड़ों one-off data analysis scripts लिखनी हों, तो 50% accuracy पर भी manual writing की तुलना में 1000 गुना तेज generate और run करना संभव हो सकता है
- नतीजों को verify करने की क्षमता: जब output को सीधे verify किया जा सकता हो, तब कम accuracy के बावजूद यह व्यावहारिक हो सकता है
शुरुआत से app बनाना
- Multi-agent structure: बड़े app को scratch से बनाते समय supervisory agent दूसरे agents के काम को review करके consistency बनाए रख सकता है
- यह import names, variable naming consistency और code duplication रोकने में उपयोगी हो सकता है
- लागत बनाम दक्षता: फिर भी complex modifications और refactoring की जरूरत रहती है, इसलिए step-by-step approach लंबे समय में ज्यादा सस्ती पड़ती है
कम्युनिटी राय का सार
सकारात्मक अनुभव (3–5x productivity gain)
- Next.js website: शून्य से पूरी तरह काम करने वाली, deploy की जा सकने वाली website कुछ ही मिनटों में बनाई गई
- Complex feature implementation: chat app में threads feature 3–4 मिनट में implement किया गया (अनुमानित 3 दिन का काम)
- व्यवस्थित approach में: स्पष्ट rules, पर्याप्त context और step-by-step verification को मिलाकर लगातार सफल होने की संभावना बढ़ सकती है
नकारात्मक अनुभव (फिलहाल अव्यावहारिक)
- Spaghetti code का उत्पादन: बहुत व्यापक goal देने पर documentation updates छूट जाना, leftover files delete न होना जैसी समस्याएं आती हैं
- Semantic errors: तकनीकी रूप से code काम करता है, लेकिन गलत जगह रखा जाता है या मौजूदा functions को फिर से implement कर देता है, यानी structural problems पैदा होती हैं
- 5 मिनट से लंबी trace का विफल होना: 5 मिनट से ज्यादा चलने वाली लंबी traces ज्यादातर बेकार results पैदा करती हैं
1 टिप्पणियां
Hacker News की राय
np.randomमत इस्तेमाल करना” को पाँच बार capital letters में लिखने पर भी Claude कभी-कभी नज़रअंदाज़ कर देता है। यह हैरानी की बात है। जब काम करता है तो शानदार लगता है, लेकिन जब नहीं करता तो fail होने का कोई साफ़ signal भी नहीं मिलता। LLM marketing के नज़रिए से सोचूँ तो मैं कभी-कभी यह कल्पना करता हूँ कि coding agent के पीछे एक ‘PIPA(Performance Improvement Plan Agent)’ जैसा agent लगा हो, जो real time में देखता रहे कि वह ठीक से काम कर भी रहा है या नहीं। PIPA coding agent के performance को track करे, और HR या management AI employees यानी agents को manage करे—शायद भविष्य कुछ ऐसा भी हो सकता है