विषय-सूची
जब आप Claude Code में चाहते हैं कि कई AI मिलकर काम बाँट लें, तो दो मिलते-जुलते पर अलग तंत्र मौजूद हैं — subagents और Agent Teams। नाम भ्रमित करने वाले हैं, पर इनकी भूमिकाएँ और समन्वय के तरीके मूल रूप से अलग हैं। यह लेख आधिकारिक दस्तावेज़ों के आधार पर बताता है कि प्रत्येक क्या है, निर्णायक अंतर क्या है, कौन-सा उपयोग करें और कैसे।
सबसे पहले तीन अहम बिंदु। (1) Subagents एक अंतर्निहित (built-in) सुविधा है — मुख्य एजेंट एक केंद्रित उप-कार्य को "ताज़ा-कॉन्टेक्स्ट वाले सहायक" को सौंपता है और बदले में केवल एक सारांश पाता है (पदानुक्रमित, क्षणिक)। (2) Agent Teams एक प्रयोगात्मक, ऑप्ट-इन सुविधा है, जो डिफ़ॉल्ट रूप से अक्षम है। ये तभी काम करते हैं जब आप CLAUDE_CODE_EXPERIMENTAL_AGENT_TEAMS=1 सेट करें — कई स्वतंत्र सत्र एक साझा कार्य-सूची (shared task list) के माध्यम से समकक्षों की तरह समन्वय करते हैं (पीयर-टू-पीयर, स्थायी)। (3) "5 स्तर तक नेस्टिंग" subagents की विशेषता है; Agent Teams नेस्ट नहीं हो सकते (वे फ्लैट हैं) — इन दोनों को न मिलाएँ।
पदानुक्रम, या समकक्ष?
— सौंपकर सारांश पाएँ, या बराबरी पर समन्वय करें
Subagents: मुख्य एजेंट किसी सहायक को कार्य सौंपता है और परिणाम पाता है। Agent Teams: बराबरी के समकक्ष एक साझा कार्य-सूची से समन्वय करते हैं।
Teams एक डिफ़ॉल्ट रूप से बंद प्रयोगात्मक सुविधा है — CLAUDE_CODE_EXPERIMENTAL_AGENT_TEAMS=1 आवश्यक है।
1. Subagents क्या हैं
Subagents विशेष एजेंट हैं जो एक ही सत्र के भीतर विशिष्ट प्रकार के काम संभालते हैं। आधिकारिक दस्तावेज़ के अनुसार, "प्रत्येक subagent अपनी अलग कॉन्टेक्स्ट विंडो में, एक कस्टम सिस्टम प्रॉम्प्ट और विशिष्ट टूल अनुमतियों के साथ चलता है।" मुख्य एजेंट प्रत्येक subagent के description के आधार पर स्वचालित रूप से कार्य सौंपता है, और subagent स्वतंत्र रूप से काम करके मुख्य बातचीत को केवल एक सारांश लौटाता है।
मुख्य बात यह है कि "प्रत्येक subagent एक ताज़ा, अलग कॉन्टेक्स्ट में चलता है" — वह आपके बातचीत-इतिहास या आपके पहले से पढ़े गए फ़ाइलों को नहीं देखता। इसलिए आप भारी खोज-कार्य "बाहर" करवा सकते हैं और केवल निष्कर्ष पा सकते हैं, बिना अपने मुख्य कॉन्टेक्स्ट को लॉग या टेस्ट आउटपुट से भरे। इन्हें /agents (Running / Library टैब) से प्रबंधित करें। इन्हें .claude/agents/<name>.md में YAML फ्रंटमैटर (name / description / tools / model) के साथ परिभाषित करें। अंतर्निहित में Explore (Haiku, केवल-पढ़ने योग्य), Plan, और general-purpose शामिल हैं। Subagents नेस्ट हो सकते हैं, 5 स्तर तक गहराई में (गहराई 5 पर Agent tool पास नहीं किया जाता, इसलिए वे और आगे नहीं बना सकते)। बड़ी तस्वीर के लिए देखें मल्टी-एजेंट सिस्टम क्या है।
2. Agent Teams क्या हैं (प्रयोगात्मक, फ्लैग-गेटेड)
Agent Teams आपको कई Claude Code सत्रों को एक "टीम" के रूप में समन्वित करने देते हैं। एक होता है team lead (समन्वय करता है, कार्य आवंटित करता है, संश्लेषित करता है); बाकी होते हैं teammates — हर एक अपना स्वतंत्र सत्र और कॉन्टेक्स्ट — जो एक shared task list और एक mailbox के माध्यम से आपस में सीधे संवाद करते हैं। subagents के विपरीत, आप अलग-अलग teammates से सीधे बात कर सकते हैं।
महत्वपूर्ण: Agent Teams एक प्रयोगात्मक सुविधा है, डिफ़ॉल्ट रूप से अक्षम
आधिकारिक दस्तावेज़ साफ़ कहते हैं कि "agent teams प्रयोगात्मक हैं और डिफ़ॉल्ट रूप से अक्षम हैं।" इन्हें उपयोग करने के लिए env वैरिएबल CLAUDE_CODE_EXPERIMENTAL_AGENT_TEAMS=1 सेट करें (या settings.json के env के माध्यम से)। इसके बिना, स्टार्टअप पर कोई टीम नहीं बनती और Claude teammates का प्रस्ताव या निर्माण नहीं करेगा।
ध्यान दें कि v2.1.178 का बदलाव सिर्फ़ "TeamCreate/TeamDelete सेटअप चरण हटाया, ताकि फ्लैग सेट होने पर हर सत्र के पास एक निहित टीम हो" — इसने "teams को डिफ़ॉल्ट रूप से सक्षम" नहीं किया। फ्लैग अब भी आवश्यक है।
3. निर्णायक अंतर
आमने-सामने रखने पर, दोनों के समन्वय के तरीके पूरी तरह अलग हैं।
| Subagents | Agent Teams | |
|---|---|---|
| समन्वय | पदानुक्रमित (मुख्य सौंपता है, परिणाम संकलित करता है) | पीयर-टू-पीयर (साझा कार्य-सूची से स्वयं समन्वय) |
| संचार | केवल कॉलर को रिपोर्ट (आपस में कभी बात नहीं करते) | teammates एक-दूसरे को सीधे mailbox से संदेश भेजते हैं |
| स्थायित्व | क्षणिक (कार्य के बाद सारांश लौटाते हैं) | स्थायी स्वतंत्र सत्र (इन्हें सीधे संचालित करें) |
| कॉन्टेक्स्ट | अपना ताज़ा कॉन्टेक्स्ट; सारांश मुख्य को लौटता है | पूरी तरह स्वतंत्र (कुछ भी स्वतः सारांशित होकर वापस नहीं आता) |
| टोकन लागत | अपेक्षाकृत कम | अधिक (हर teammate एक अलग Claude इंस्टेंस है) |
| स्थिति | अंतर्निहित, हमेशा उपलब्ध | प्रयोगात्मक, फ्लैग-गेटेड, डिफ़ॉल्ट रूप से बंद |
| नेस्टिंग | Subagents 5 स्तर तक नेस्ट होते हैं | कोई नेस्टिंग नहीं (teammates teammates नहीं बना सकते) |
एक पंक्ति में: Subagents = "मुख्य एजेंट एक केंद्रित कार्य को ताज़ा-कॉन्टेक्स्ट वाले सहायक को सौंपता है और निष्कर्ष पाता है (पदानुक्रमित, क्षणिक, केवल-सारांश)।" Agent Teams = "कई स्थायी सत्र एक साझा कार्य-सूची और मैसेजिंग के माध्यम से समन्वय करते हैं, और आप हर एक को संचालित कर सकते हैं (समकक्ष, स्वतंत्र)।" एक आम गलती: "5-स्तर नेस्टिंग" subagents की विशेषता है, जबकि Teams फ्लैट हैं (कोई नेस्टिंग नहीं)।
4. आपको कौन-सा उपयोग करना चाहिए
उद्देश्य के अनुसार चुनें तो आप उलझेंगे नहीं। अधिकांश रोज़मर्रा का काम subagents (या एक ही सत्र) से ठीक हो जाता है।
उद्देश्य के अनुसार चुनें
· काम आत्मनिर्भर है और केवल परिणाम मायने रखता है
· आप टूल सीमाएँ या सस्ता मॉडल चाहते हैं
· कार्यकर्ताओं को बात करने की ज़रूरत नहीं
· समानांतर अन्वेषण फ़ायदेमंद हो (समानांतर समीक्षा / प्रतिस्पर्धी-परिकल्पना डिबग / मल्टी-मॉड्यूल)
· आप हर कार्यकर्ता को संचालित करना चाहें
(अधिक लागत + फ्लैग स्वीकार्य)
· आपको बार-बार आगे-पीछे की ज़रूरत है
· यह समान फ़ाइलों को छूता है
· यह एक त्वरित स्थानीय बदलाव है
डिफ़ॉल्ट रखें "संदेह हो तो, एक ही सत्र या subagents।"
Agent Teams की ओर केवल तभी जाएँ जब समानांतर काम को वाकई समकक्ष समन्वय की ज़रूरत हो।
5. उपयोग चीट शीट
कमांड और कॉन्फ़िग का त्वरित संदर्भ।
# --- Subagents (built-in) ---
/agents # मैनेजर (Running / Library)
.claude/agents/<name>.md # प्रोजेक्ट परिभाषा (name/description/tools/model)
~/.claude/agents/<name>.md # उपयोगकर्ता परिभाषा (सभी प्रोजेक्ट)
claude --agent code-reviewer # पूरे सत्र को एक विशिष्ट subagent के रूप में चलाएँ
@agent-<name> # स्पष्ट रूप से बुलाने के लिए @-mention
# --- Agent Teams (प्रयोगात्मक, फ्लैग-गेटेड) ---
# env (या settings.json env) से सक्षम करें; डिफ़ॉल्ट रूप से बंद
CLAUDE_CODE_EXPERIMENTAL_AGENT_TEAMS=1
# फिर सरल भाषा में बताएँ, जैसे: "PR #142 की समीक्षा के लिए तीन teammates बनाएँ:
# एक सुरक्षा के लिए, एक प्रदर्शन के लिए, एक टेस्ट कवरेज के लिए।"
# प्रदर्शन teammateMode से (डिफ़ॉल्ट in-process; स्प्लिट पैन के लिए tmux/iTerm2 चाहिए)
किसी subagent परिभाषा फ़ाइल में, आप tools से टूल सीमित कर सकते हैं या model से किसी हल्के मॉडल जैसे haiku की ओर रूट कर सकते हैं। एजेंट बनाने और डिज़ाइन करने के लिए देखें मल्टी-एजेंट सिस्टम कैसे बनाएँ और AI एजेंट कैसे बनाएँ।
6. Agent Teams की सावधानियाँ
Agent Teams शक्तिशाली हैं पर प्रयोगात्मक-चरण की सीमाओं और लागत के साथ आते हैं। अपनाने से पहले इन्हें जान लें।
(1) प्रति सत्र एक टीम, कोई नेस्टिंग नहीं — teammates teammates नहीं बना सकते, और lead तय रहता है। (2) उच्च टोकन उपयोग (हर teammate एक अलग Claude इंस्टेंस है); सिफ़ारिश 3-5 teammates की है। (3) teammates worktree में पृथक नहीं होते, इसलिए यदि वे समान फ़ाइलों को छूते हैं तो एक-दूसरे को ओवरराइट कर देते हैं — फ़ाइलों को मैन्युअल रूप से बाँटें। (4) एक प्रयोगात्मक सुविधा होने के कारण, /resume और /rewind in-process teammates को पुनर्स्थापित नहीं करते, जैसी सीमाएँ हैं। (5) स्प्लिट-पैन प्रदर्शन के लिए tmux या iTerm2 चाहिए (VS Code जैसे कुछ टर्मिनल समर्थित नहीं)। संक्षेप में, इसे केवल तभी उपयोग करें जब समानांतर समन्वय का लाभ लागत और प्रयास से अधिक हो।
सारांश
Claude Code के subagents और Agent Teams दोनों "AI के बीच काम बाँटते हैं," पर इनके समन्वय मॉडल अलग हैं। Subagents अंतर्निहित हैं — मुख्य एजेंट एक केंद्रित कार्य को ताज़ा-कॉन्टेक्स्ट वाले सहायक को सौंपता है और केवल एक सारांश पाता है (पदानुक्रमित, क्षणिक, आपस में बात नहीं करते, 5 स्तर तक नेस्ट)। Agent Teams एक प्रयोगात्मक ऑप्ट-इन है, डिफ़ॉल्ट रूप से बंद (CLAUDE_CODE_EXPERIMENTAL_AGENT_TEAMS=1 चाहिए) — कई स्वतंत्र सत्र एक साझा कार्य-सूची और मैसेजिंग के माध्यम से समकक्षों की तरह समन्वय करते हैं (स्थायी, हर एक को संचालित करें, कोई नेस्टिंग नहीं)।
कैसे चुनें: "केवल परिणाम चाहिए / कॉन्टेक्स्ट को गंदा नहीं करना → subagents," "समानांतर काम जहाँ कार्यकर्ताओं को साझा और समन्वय करना हो → Agent Teams," "क्रमिक / समान फ़ाइलें / त्वरित फ़िक्स → एक ही सत्र।" एक आम भ्रम: "5-स्तर नेस्टिंग" subagents की विशेषता है; Teams फ्लैट हैं। और ध्यान दें कि v2.1.178 ने टीम स्टार्टअप को सुव्यवस्थित किया — इसने "डिफ़ॉल्ट रूप से सक्षम" नहीं किया। Teams महँगे और प्रयोगात्मक हैं, इसलिए इन्हें उन्हीं मामलों तक सीमित रखें जहाँ समन्वय फ़ायदेमंद हो। संबंधित: मल्टी-एजेंट सिस्टम क्या है, इसे कैसे बनाएँ, AI ऑब्ज़र्वेबिलिटी।
FAQ
Q. subagents और Agent Teams में क्या अंतर है?
A. इनका समन्वय मूल रूप से अलग है। Subagents पदानुक्रमित हैं — मुख्य एजेंट एक केंद्रित कार्य को ताज़ा-कॉन्टेक्स्ट वाले सहायक को सौंपता है और केवल एक सारांश पाता है (सहायक आपस में बात नहीं करते; क्षणिक)। Agent Teams पीयर-टू-पीयर हैं — कई स्वतंत्र सत्र एक साझा कार्य-सूची और एक mailbox के माध्यम से समन्वय करते हैं, और आप हर एक को संचालित कर सकते हैं (स्थायी)। Subagents अंतर्निहित हैं; Agent Teams प्रयोगात्मक हैं और एक फ्लैग की ज़रूरत है।
Q. क्या मैं Agent Teams तुरंत उपयोग कर सकता हूँ?
A. नहीं — ये डिफ़ॉल्ट रूप से अक्षम हैं। आपको env में (या settings.json के env में) CLAUDE_CODE_EXPERIMENTAL_AGENT_TEAMS=1 सेट करना होगा। v2.1.178 ने सिर्फ़ स्टार्टअप को सुव्यवस्थित किया (इसने "TeamCreate सेटअप चरण हटाया, ताकि फ्लैग सेट होने पर हर सत्र के पास एक निहित टीम हो") — इसने "teams को डिफ़ॉल्ट रूप से सक्षम" नहीं किया। फ्लैग अब भी आवश्यक है।
Q. "5 स्तर तक नेस्ट होता है" किसकी बात है?
A. Subagents की। एक subagent अपने खुद के subagents बना सकता है, 5 स्तर तक गहराई में (गहराई 5 पर यह आगे नहीं जा सकता)। Agent Teams नेस्ट नहीं हो सकते — teammates teammates नहीं बना सकते, और केवल lead टीम को प्रबंधित करता है। इन दोनों को न मिलाएँ।
Q. मुझे समझ नहीं आ रहा कि कौन-सा उपयोग करूँ।
A. अधिकांश समय एक ही सत्र या subagents पर्याप्त है। यदि आप केवल परिणाम चाहते हैं और भारी आउटपुट से अपने मुख्य कॉन्टेक्स्ट को भरना नहीं चाहते, तो subagents उपयोग करें। यदि समानांतर काम में कार्यकर्ताओं को निष्कर्ष साझा करने, क्रॉस-चेक करने और स्वयं समन्वय करने की ज़रूरत हो (समानांतर समीक्षा, प्रतिस्पर्धी-परिकल्पना डिबगिंग, मल्टी-मॉड्यूल विकास) और आप हर एक को संचालित करना चाहें, तो Agent Teams उपयोग करें। क्रमिक काम, बार-बार आगे-पीछे, या समान फ़ाइलों को छूने के लिए, एक ही सत्र उपयुक्त है।
Q. Agent Teams में मुझे किन बातों का ध्यान रखना चाहिए?
A. उच्च टोकन उपयोग (हर teammate एक अलग इंस्टेंस है; 3-5 की सिफ़ारिश), प्रति सत्र एक टीम और कोई नेस्टिंग नहीं, teammates worktree में पृथक नहीं होते इसलिए समान फ़ाइलों पर टकराते हैं (मैन्युअल रूप से बाँटें), /resume और /rewind पर प्रयोगात्मक सीमाएँ, और स्प्लिट पैन के लिए tmux/iTerm2 की ज़रूरत। इसे केवल उस समानांतर काम के लिए उपयोग करें जहाँ समन्वय लागत से अधिक फ़ायदेमंद हो।