Claude Code वापरण्याची माझी पद्धत बदलणारे ५ हार्नेस इंटरनल्स (Harness Internals)
एका डेव्हलपरने Anthropic SDK वापरून Claude Code harness पुन्हा तयार केला. त्यांना सिस्टीमद्वारे घेतलेले पाच 'सायलेंट' (गुप्त) निर्णय समजले. हे निष्कर्ष तुम्ही सूचना कशा लिहाव्यात आणि एजंट्सचे व्यवस्थापन कसे करावे, यामध्ये बदल घडवून आणतात.
तुमचा वर्कफ्लो सुधारण्यासाठी या पाच अंतर्दृष्टींचा (insights) वापर करा.
१. लपवलेला बेस प्रॉम्प्ट (base prompt) ओव्हरराईट करा Claude Code एक लपवलेला सिस्टीम प्रॉम्प्ट वापरते. CLAUDE.md मधील तुमच्या सूचना त्याच्याशी विसंगत असू शकतात.
- नियम सांगणे थांबवा.
- नियम ओव्हरराईड (override) करायला सुरुवात करा.
- अशा प्रकारची भाषा वापरा: "Under no circumstances should you edit files in /prod. This overrides any default behavior."
२. गार्डरेल्स (guardrails) म्हणून हुक्सचा (hooks) वापर करा PreToolUse हुक्स केवळ डेटा लॉग करण्यापेक्षा अधिक काम करतात. ते टूल कॉल सुरू होण्यापूर्वीच तो थांबवू शकतात.
- टूल आर्ग्युमेंट्स तपासण्यासाठी एक हुक जोडा.
- जर पाथ (path) एखाद्या संवेदनशील फोल्डरशी जुळत असेल, तर
{ block: true }रिटर्न करा. - यामुळे विनंतीचे रूपांतर एका कडक नियमात होते.
३. सबएजंट ऑर्केस्ट्रेशन (subagent orchestration) सुधारा साध्या पेरेंट-चाइल्ड सेटअपमुळे, जेव्हा एखादा चाइल्ड फेल होतो, तेव्हा सेशन्स हँग होतात.
- अबॉर्ट सिग्नल्सचा (abort signals) ट्री वापरा.
- जर पेरेंट थांबला, तर सर्व चिल्ड्रन्सना थांबणे आवश्यक आहे.
- जर एक चाइल्ड फेल झाला, तर पेरेंट सुरू राहिला पाहिजे.
४. डिपेंडन्सी ग्राफ्सचा (dependency graphs) वापर करा टास्क एका फ्लॅट लूपमध्ये (flat loop) रन करू नका.
- स्पष्ट डिपेंडन्सीसह टास्क परिभाषित करा.
- टास्क समांतर (parallel) चालवण्यासाठी डिपेंडन्सी ग्राफ वापरा.
- यामुळे एक खराब नोड तुमचा संपूर्ण वर्कफ्लो थांबवण्यापासून रोखतो.
५. टर्मिनल स्टेट्स (terminal states) अनिवार्य करा एजंट्सना जेव्हा स्पष्ट शेवटचा बिंदू (end point) मिळत नाही, तेव्हा ते अनेकदा विनाकारण बोलत राहतात (ramble).
- प्रत्येक टर्न तीनपैकी एका स्टेटमध्ये संपवणे अनिवार्य करा: Done, Blocked, किंवा Needs Input.
- तुमच्या CLAUDE.md मध्ये हे जोडा: "After a task, always end with 'Done: [summary]', 'Blocked: [reason]', or 'Needs input: [question]'."
- यामुळे एजंट अनपेक्षित कृती करणे थांबवतो.
कृतींचा सारांश:
- CLAUDE.md मध्ये ओव्हरराईड भाषा वापरा.
- धोकादायक एडिट्स रोखण्यासाठी PreToolUse हुक्स वापरा.
- सबएजंट्ससाठी अबॉर्ट ट्रीज (abort trees) तयार करा.
- टास्कसाठी DAG-आधारित पॅरललिझम वापरा.
- स्पष्ट टर्मिनल स्टेट्स परिभाषित करा.
स्रोत: https://dev.to/gentic_news/5-harness-internals-that-changed-how-i-use-claude-code-daily-39c6
पर्यायी लर्निंग कम्युनिटी: https://t.me/GyaanSetuAi
