पहली बार जब मैंने सबएजेंट का उपयोग किया, मैंने इसे गलत तरीके से किया। मैंने एक वेरिएबल का नाम बदलने के लिए एक सबएजेंट चालू किया। एक वेरिएबल। यह ऐसा था जैसे बल्ब बदलने के लिए एक ठेकेदार को बुलाना — धीमा, महंगा और थोड़ा हास्यास्पद। इसलिए Claude Code में सबएजेंट कैसे सेट करें यह दिखाने से पहले, मैं सीधे बताना चाहता हूं कि आपको इसे कब नहीं करना चाहिए।
सबएजेंट एक अलग Claude इंस्टेंस है जिसे आपका मुख्य सेशन कोई काम सौंप सकता है। इसे अपना कॉन्टेक्स्ट विंडो मिलता है — एक साफ स्लेट — काम पूरा करता है और सारांश वापस देता है। मुख्य शब्द है अलग। सबएजेंट का काम आपकी मुख्य बातचीत को नहीं भरता। वह दस फाइलें पढ़ता है, और आपके मुख्य सेशन को केवल निष्कर्ष दिखता है।
यही सबएजेंट का पूरा मतलब है, और इसीलिए अधिकांश शुरुआती लोग इनका गलत उपयोग करते हैं।
सबएजेंट वास्तव में कब मदद करते हैं
ये तब मदद करते हैं जब कोई काम अन्यथा आपके मुख्य कॉन्टेक्स्ट को ऐसी चीजों से भर देता जिन्हें आपको रखने की जरूरत नहीं है।
सोचिए किसी बड़े कोडबेस में "हम auth कहाँ संभालते हैं?" खोजना। सबएजेंट के बिना, Claude पंद्रह फाइलें आपकी मुख्य बातचीत में पढ़ता है, और अब वे पंद्रह फाइलें सेशन के बाकी समय के लिए कॉन्टेक्स्ट में बैठी रहती हैं, हर मोड़ पर टोकन खर्च करती हैं। सबएजेंट के साथ, वह खोज एक अस्थायी विंडो में होती है। आपको वापस मिलता है "auth src/auth/ में है, यह कैसे काम करता है" — पंद्रह फाइलों की जगह तीन वाक्य।
तो: सबएजेंट तब काम आते हैं जब काम खोजी हो (बहुत पढ़ना, छोटा निष्कर्ष) या समानांतर हो (एक साथ कई स्वतंत्र काम)। खोजना, जांच करना, बड़ा टेस्ट सूट चलाना और विफलताओं का सारांश देना, चेकलिस्ट के खिलाफ diff की समीक्षा करना — ये सब बिल्कुल सही हैं।
यह परीक्षण है जो मैं अब उपयोग करता हूं। खुद से पूछें: क्या यह काम बहुत पढ़ेगा लेकिन थोड़ा उत्पादन करेगा? अगर हाँ, सबएजेंट। अगर काम एक सीधा संपादन है जो आप पहले से देख सकते हैं कि कैसे करना है, तो इनलाइन करें। वेरिएबल का नाम बदलना कुछ नहीं पढ़ता और एक सटीक बदलाव करता है। कोई सबएजेंट नहीं।
इन्हें कब नहीं उपयोग करना चाहिए
किसी एकल-फाइल संपादन के लिए सबएजेंट का उपयोग न करें जिसे आप समझते हैं। अनुक्रमिक काम के लिए जहाँ हर कदम पिछले को देखने पर निर्भर है, इसका उपयोग न करें। और केवल इसलिए मत करें क्योंकि यह परिष्कृत लगता है। हर सबएजेंट में ओवरहेड होता है — यह शुरू होता है, अपना कॉन्टेक्स्ट बनाता है, वापस रिपोर्ट करता है। छोटे कामों के लिए वह ओवरहेड बचत से ज्यादा खर्च करता है।
नए Claude मॉडल भी अपने आप सबएजेंट बनाने में काफी सतर्क हैं, जो आमतौर पर सही है। अगर आप चाहते हैं डेलिगेशन, तो अक्सर आपको इसके लिए पूछना होगा या इसे स्पष्ट रूप से सेट करना होगा। यहीं से आता है कैसे करें का सवाल।
कस्टम सबएजेंट सेट करना
Claude Code आपको नामित सबएजेंट को फाइलों के रूप में परिभाषित करने देता है। अपने प्रोजेक्ट में .claude/agents/ में (या वैश्विक कॉन्फ़िग के लिए अपने होम कॉन्फ़िग में) एक markdown फाइल रखें। यह एक वास्तविक फाइल है जिसे मैं कोड समीक्षा के लिए उपयोग करता हूं:
---
name: reviewer
description: Reviews a diff for bugs and missing edge cases. Use after writing code, before committing.
tools: Read, Grep, Bash
---
You are a focused code reviewer. Given a diff or a set of changed files:
1. Read the changed code and the files it touches.
2. Look for actual bugs — off-by-one, null handling, wrong async behavior.
3. Check for missing edge cases and untested paths.
4. Report findings as a short list, each with a severity (high/medium/low).
Don't rewrite the code. Don't nitpick style. Report what you find and stop.
कुछ बातें ध्यान देने योग्य हैं। वह description लाइन सजावट नहीं है — यह वह है जिससे Claude तय करता है कि इस एजेंट को कब डेलिगेट करना है। इसे उस तरह लिखें जैसे आप टूल विवरण लिखते हैं: बताएं कब इसे उपयोग करना है, न केवल यह क्या करता है। "कोड लिखने के बाद, कमिट करने से पहले उपयोग करें" Claude को एक ठोस ट्रिगर देता है।
tools लाइन निर्धारित करती है कि सबएजेंट क्या छू सकता है। मेरे reviewer को Read, Grep, और Bash मिलता है — निरीक्षण और टेस्ट चलाने के लिए पर्याप्त, संपादित करने के लिए कुछ नहीं। यह जानबूझकर है। reviewer को आपका कोड नहीं बदलना चाहिए। टूल सूची को संकीर्ण रखने से सबएजेंट काम पर रहता है और चिंता करने की एक कम बात होती है।
मुख्य भाग सबएजेंट का सिस्टम प्रॉम्प्ट है — उसका पूरा व्यक्तित्व और काम। ध्यान दें यह विशिष्ट और सीमित है। "जो पाओ रिपोर्ट करो और रुको" महत्वपूर्ण है, क्योंकि अन्यथा एक उत्सुक सबएजेंट चीजें ठीक करने लगता है, और अब आपके पास ऐसे बदलाव हैं जो आपने नहीं माँगे।
इसका उपयोग कैसे करें
एक बार फाइल मौजूद होने पर, आप इसे सेशन में बुला सकते हैं:
मेरी पिछली कमिट पर reviewer सबएजेंट का उपयोग करो।
Claude इसे लॉन्च करता है, सबएजेंट अपने कॉन्टेक्स्ट में पढ़-और-रिपोर्ट करता है, और आपको निष्कर्षों की एक साफ सूची मिलती है — बिना पंद्रह फाइलों के जो आपकी मुख्य बातचीत में आएं। खोजी काम के लिए, आपको कस्टम फाइल की भी जरूरत नहीं है; बिल्ट-इन सामान्य सबएजेंट "जाकर X का पता लगाओ" जैसे तदर्थ कामों को ठीक से संभालता है।
मानसिक बदलाव
यही बात थी जिसने आखिरकार मेरे लिए सबएजेंट को समझाया। उन्हें "अधिक शक्तिशाली Claude" के रूप में सोचना बंद करें। वे ज्यादा स्मार्ट नहीं हैं। वे गंदे काम को कहीं और भेजकर आपके मुख्य कॉन्टेक्स्ट को साफ रखने का एक तरीका हैं।
एक बार जब आप इसे इस तरह देखते हैं, तो कब उपयोग करना है का सवाल खुद जवाब दे देता है। गंदा, पढ़ने में भारी, एकबारगी काम? डेलिगेट करो। सटीक काम जिसे आप पहले से देख सकते हैं? बस करो। एक reviewer जो आपके टेस्ट चलाता है और निष्कर्षों की सूची देता है — बढ़िया। बल्ब बदलने वाला ठेकेदार — उतना नहीं।
इस हफ्ते एक सबएजेंट लिखें। ऊपर वाला reviewer बनाएं। अपनी अगली कमिट पर चलाएं। तब आप अंतर महसूस करेंगे, और आप ठीक से जानेंगे कि अगले के लिए कब पहुंचना है।
