PodcastsHear the voice. See the shape of the thought.
चैनल ब्राउज़ करें
सबएजेंट बनाना
Claude Code में बिल्ट-इन सबएजेंट पहले से मौजूद हैं, लेकिन कस्टम सबएजेंट आपको विशेष कार्यों के लिए विशेष व्यवहार सेट करने देते हैं। यह ट्यूटोरियल एक कोड-रिव्यू सबएजेंट शुरू से बनाता है — `/agents` कमांड, टूल चयन, मॉडल विकल्प और कॉन्फ़िग फ़ाइल के उन फ़ील्ड से गुज़रते हुए जो यह तय करते हैं कि Claude कब और कैसे डेलिगेट करता है। ## [00:03] कस्टम सबएजेंट क्या होते हैं Claude Code में बिल्ट-इन सबएजेंट शामिल हैं, लेकिन आप अपने खुद के सबएजेंट भी बना सकते हैं जो विशेष कार्यों में माहिर हों। एक कस्टम सबएजेंट YAML front matter वाली एक markdown फ़ाइल होती है: front matter Claude को बताता है कि उस एजेंट को कब रूट करना है और उसकी क्या क्षमताएं हैं, जबकि markdown बॉडी वह सिस्टम प्रॉम्प्ट है जिसके तहत सबएजेंट काम करता है। > *"Custom sub aents are markdown files with YAML front matter. These markdown files contain configuration that helps claude understand when to use the sub aent and provides directions to the sub aent itself."* ## [00:28] /agents से सबएजेंट बनाना `/agents` कमांड एजेंट मैनेजमेंट पैनल खोलता है। "नया एजेंट बनाएं" चुनने पर दो सवाल पूछे जाते हैं: स्कोप (मौजूदा प्रोजेक्ट या मशीन के सभी प्रोजेक्ट में शेयर) और जेनरेशन का तरीका। अनुशंसित तरीका यह है कि Claude को अपने आप एजेंट जेनरेट करने दें — नैरेटर सामान्य भाषा में एक ऐसे सबएजेंट का अनुरोध टाइप करता है जो कोड क्वालिटी और सुरक्षा समस्याओं की समीक्षा करे, और Claude बाकी काम संभाल लेता है। > *"Now, the easiest way to create a sub agent is with the / agents command. Next, you can create a sub agent manually, but we recommend using claw code to automatically generate it for you."* ## [00:56] टूल, मॉडल और रंग कॉन्फ़िगर करना Claude फ़ाइल लिखने से पहले, आप चुनते हैं कि सबएजेंट कौन से टूल एक्सेस कर सकता है। एक कोड-रिव्यू एजेंट को सख्ती से एडिट टूल की ज़रूरत नहीं है, लेकिन एक्सीक्यूशन इनेबल रखने से वह pending बदलावों को आसानी से देख सकता है। टूल के बाद, मॉडल चुनते हैं: haiku स्पीड के लिए, opus गहराई के लिए, sonnet बीच का रास्ता। आखिरी विकल्प है रंग — यह UI में दिखता है ताकि आप सबएजेंट को एक नज़र में पहचान सकें। > *"Now, given that our sub agent is only responsible for reviewing code, you might decide to disallow tools for editing, but I'll leave an execution to allow the sub agent to more easily identify pending changes."* ## [01:43] कॉन्फ़िग फ़ाइल को समझना जेनरेट की गई फ़ाइल सारांश विंडो में दिखाए गए पाथ पर प्रोजेक्ट में सेव होती है। चार फ़ील्ड सबसे अहम हैं। `name` यूनिक आइडेंटिफायर है — आप किसी मैसेज में `@agent-code-quality-reviewer` टाइप करके इसे रेफर कर सकते हैं। `description` वह है जिसे Claude पढ़कर तय करता है कि डेलिगेट करना है या नहीं; यह एक ही लाइन में होना चाहिए (escaped `\n` characters literal हैं)। description में "proactively" जोड़ने से Claude उस एजेंट का अधिक बार उपयोग करता है; उदाहरण बातचीत जोड़ने से रूटिंग अधिक सटीक होती है। `tools` जेनरेशन के दौरान दिए गए एक्सेस को दर्शाता है लेकिन फ़ाइल में सीधे एडिट किया जा सकता है। > *"If you want Claude to use the sub agent automatically more often, add in the word proactively to the description."* ## [02:41] सिस्टम प्रॉम्प्ट और Claude इसका उपयोग कैसे करता है `model` फ़ील्ड `haiku`, `sonnet`, `opus` या `inherit` स्वीकार करता है — `inherit` सबएजेंट को parent conversation के ही मॉडल पर चलाता है। front matter के नीचे सब कुछ सिस्टम प्रॉम्प्ट है: यह सबएजेंट को उसके काम में गाइड करता है और बताता है कि मुख्य एजेंट को परिणाम कैसे लौटाने हैं। > *"The system prompt will provide guidance to the sub agent, helping it understand how to complete its task and how it should return information back to the main agent."* ## [03:15] अपने सबएजेंट का परीक्षण करना कॉन्फ़िग सेव करने के बाद, कुछ कोड बदलाव करें और Claude से उनकी समीक्षा करने को कहें। अगर सबएजेंट उम्मीद के अनुसार ट्रिगर नहीं होता, तो सबसे पहले `description` फ़ील्ड को एडजस्ट करें — अधिक विशिष्ट उदाहरण Claude की डेलिगेट करने की समझ को तेज़ करते हैं। > *"If the sub agent isn't being used when you expect, check your description. Adding more specific examples helps Claude understand when to delegate."* ## इकाइयां - **Anthropic Tutorial Narrator** (व्यक्ति): इस एपिसोड के एकमात्र होस्ट; Anthropic के आधिकारिक YouTube चैनल पर Claude Code subagents ट्यूटोरियल श्रृंखला का वर्णन करते हैं - **Claude Code** (सॉफ़्टवेयर): Anthropic का AI कोडिंग असिस्टेंट; बिल्ट-इन और उपयोगकर्ता-निर्मित कस्टम सबएजेंट दोनों को सपोर्ट करता है - **कस्टम सबएजेंट** (अवधारणा): YAML front matter वाली एक markdown फ़ाइल जो Claude Code को विशेष कार्यों को एक विशेषज्ञ एजेंट इंस्टेंस को डेलिगेट करने के लिए कॉन्फ़िगर करती है - **/agents command** (अवधारणा): सबएजेंट बनाने और प्रबंधित करने के लिए Claude Code UI एंट्री पॉइंट; प्रोजेक्ट-स्कोप या ग्लोबल स्कोप प्रदान करता है - **सिस्टम प्रॉम्प्ट** (अवधारणा): सबएजेंट कॉन्फ़िग फ़ाइल का markdown बॉडी; रनटाइम पर सबएजेंट को टास्क गाइडेंस और आउटपुट फ़ॉर्मेट निर्देश प्रदान करता है - **Anthropic** (संगठन): Claude और Claude Code प्लेटफ़ॉर्म के निर्माता
प्रभावी सबएजेंट डिज़ाइन करना
Anthropic की Claude Code सीरीज़ का यह ट्यूटोरियल चार ठोस पैटर्न बताता है जो भरोसेमंद सबएजेंट को उन सबएजेंट से अलग करते हैं जो भटकते हैं, रुक जाते हैं या गलत फ़ाइलें छू देते हैं। नैरेटर कोड-रिव्यूअर और वेब-सर्च सबएजेंट को उदाहरण बनाकर हर पैटर्न समझाते हैं — कौन सी सेटिंग बदलनी है और क्यों, यह सब दिखाते हुए। ## [00:03] नाम और विवरण से सबएजेंट के व्यवहार को नियंत्रित करना मुख्य एजेंट को भेजे गए हर मैसेज में सिस्टम प्रॉम्प्ट के ज़रिए प्रत्येक पंजीकृत सबएजेंट का नाम और विवरण शामिल होता है। यानी विवरण दोहरा काम करता है: ऑर्केस्ट्रेटर को बताता है कि सबएजेंट *कब* शुरू करना है और इनपुट प्रॉम्प्ट लिखने का टेम्पलेट भी देता है। ट्यूटोरियल एक कोड-रिव्यूअर सबएजेंट से दिखाता है। मूल कॉन्फ़िग में ऑर्केस्ट्रेटर एक सामान्य प्रॉम्प्ट लिखता है जिसमें सबएजेंट खुद `git diff` चलाता है। विवरण में "आपको एजेंट को बिल्कुल वे फ़ाइलें बतानी होंगी जिन्हें आप रिव्यू करवाना चाहते हैं" जोड़ने पर फ़ाइल चयन की ज़िम्मेदारी ऑर्केस्ट्रेटर पर आ जाती है — अगली बार इनपुट प्रॉम्प्ट काफी अधिक विशिष्ट बनता है। वेब-सर्च सबएजेंट के लिए भी यही काम करता है: विवरण में "ऐसे स्रोत लौटाएं जिन्हें उद्धृत किया जा सके" जोड़ने पर मुख्य एजेंट काम सौंपते समय यह निर्देश अपने आप शामिल कर लेता है। > *"यदि आप यह बेहतर नियंत्रित करना चाहते हैं कि मुख्य एजेंट सबएजेंट को स्वचालित रूप से कब लॉन्च करे, तो आपको नाम और विवरण में बदलाव करना चाहिए।"* ## [01:41] आउटपुट फ़ॉर्मेट परिभाषित करना नैरेटर आउटपुट फ़ॉर्मेट को सबसे अधिक प्रभाव डालने वाला सुधार मानते हैं। बिना किसी फ़ॉर्मेट के सबएजेंट को यह स्पष्ट संकेत नहीं मिलता कि काम कब खत्म हुआ — वह चलता रहता है, संदर्भ जमा करता रहता है और टोकन खर्च करता रहता है। संरचित आउटपुट फ़ॉर्मेट एक स्वाभाविक रुकने की जगह बनाता है। जब ज़रूरी फ़ील्ड भर जाती हैं तो सबएजेंट जान जाता है कि काम हो गया। व्यावहारिक रूप से इसका मतलब है सबएजेंट के सिस्टम प्रॉम्प्ट में सीधे एक स्पष्ट स्कीमा जोड़ना — सारांश ब्लॉक, निष्कर्षों की सूची, स्टेटस फ़ील्ड। > *"परिभाषित आउटपुट फ़ॉर्मेट के बिना सबएजेंट यह तय करने में संघर्ष करते हैं कि पर्याप्त शोध कब हो गया और वे उन सबएजेंट की तुलना में बहुत अधिक समय तक चलते हैं जिन्हें आउटपुट फ़ॉर्मेट दिया गया हो।"* ## [02:04] सारांश में बाधाओं की रिपोर्ट करना जब कोई सबएजेंट किसी समस्या को हल करता है — कोई डिपेंडेंसी कॉन्फ्लिक्ट, कोई ऐसा कमांड जिसे अप्रत्याशित फ्लैग चाहिए, कोई एनवायरनमेंट की खासियत — तो मुख्य एजेंट को वह जानकारी चाहिए, नहीं तो वह अगले चरण में वही दीवार से टकराएगा। समाधान यह है कि आउटपुट फ़ॉर्मेट में ही बाधाओं की रिपोर्ट ज़रूरी कर दी जाए। नैरेटर उन श्रेणियों की सूची देते हैं जो हमेशा सामने आनी चाहिए: मिली बाधाएं, सेटअप से जुड़ी समस्याएं, खोजे गए वर्कअराउंड, ऐसे कमांड जिन्हें विशेष फ्लैग या कॉन्फ़िगरेशन की ज़रूरत पड़ी, और ऐसे इम्पोर्ट या डिपेंडेंसी जिन्होंने समस्या पैदा की। इन्हें अनिवार्य आउटपुट स्कीमा में शामिल करने से मुख्य एजेंट सबएजेंट की मेहनत से मिली जानकारी सीधे पा लेता है, बजाय उसे फिर से खोजने के। > *"नहीं तो मुख्य एजेंट को वही समाधान फिर से खोजने पड़ते हैं — मिली बाधाएं, कोई भी सेटअप समस्याएं, खोजे गए वर्कअराउंड या एनवायरनमेंट की खासियतें, विशेष फ्लैग या कॉन्फ़िगरेशन वाले कमांड, डिपेंडेंसी या इम्पोर्ट जिन्होंने समस्या पैदा की।"* ## [02:42] भूमिका के अनुसार टूल एक्सेस सीमित करना टूल एक्सेस सिर्फ सुरक्षा नियंत्रण नहीं है — यह स्पष्टता का साधन भी है। केवल `glob`, `grep` और `read` वाला रीड-ओनली सबएजेंट गलती से फ़ाइलें बदल नहीं सकता, जो कॉन्फ़िग पढ़ने वाले किसी भी व्यक्ति को उसकी भूमिका स्पष्ट कर देता है। नैरेटर तीन एक्सेस स्तरों को तीन सबएजेंट भूमिकाओं से जोड़ते हैं: रिसर्च सबएजेंट को रीड-ओनली एक्सेस मिलता है क्योंकि कोडबेस एक्सप्लोर करने में लिखना नहीं पड़ता; रिव्यूअर को `git diff` के लिए `bash` मिलता है लेकिन फ़ाइल-एडिटिंग टूल नहीं; केवल वे सबएजेंट जिन्हें कोड बदलने का काम है — जैसे CSS अपडेट लागू करने वाला — `edit` और `write` पाते हैं। कई सबएजेंट होने पर टूल सूची मशीन-पठनीय सारांश बन जाती है कि हर सबएजेंट क्या करने वाला है। > *"edit और write केवल उन सबएजेंट को दें जिन्हें वास्तव में आपका कोड बदलना है, जैसे CSS अपडेट लागू करने वाला स्टाइलिंग एजेंट।"* ## [03:27] प्रभावी सबएजेंट के चार पैटर्न ट्यूटोरियल चारों पैटर्न के एक-एक वाक्य के सारांश के साथ समाप्त होता है: संरचित आउटपुट, बाधा रिपोर्टिंग, विशिष्ट विवरण और प्रतिबंधित टूल एक्सेस। हर पैटर्न दूसरों को मज़बूत करता है — सटीक विवरण इनपुट प्रॉम्प्ट में अस्पष्टता कम करते हैं, आउटपुट फ़ॉर्मेट रुकने की जगह बनाते हैं, बाधा रिपोर्टिंग एजेंट सीमाओं के पार संदर्भ सुरक्षित रखती है, और न्यूनतम टूल एक्सेस साइड इफेक्ट रोकता है जो किसी भी बची अस्पष्टता को बढ़ा सकते थे। > *"तो प्रभावी सबएजेंट संरचित आउटपुट उपयोग करते हैं, बाधाओं की रिपोर्ट करते हैं, विशिष्ट विवरण रखते हैं और टूल एक्सेस सीमित करते हैं।"* ## इकाइयाँ - **Anthropic Tutorial Narrator** (व्यक्ति): Claude Code सबएजेंट ट्यूटोरियल सीरीज़ के प्रस्तुतकर्ता, Anthropic की ओर से - **Claude Code** (सॉफ़्टवेयर): Anthropic का एजेंटिक कोडिंग टूल जो बहु-चरण इंजीनियरिंग कार्यों के लिए सबएजेंट को ऑर्केस्ट्रेट करता है - **Subagent** (अवधारणा): एक ऑर्केस्ट्रेटर एजेंट द्वारा शुरू किया गया Claude का विशेष इंस्टेंस, जिसका अपना सिस्टम प्रॉम्प्ट, टूल एक्सेस और इनपुट प्रॉम्प्ट होता है - **Output format** (अवधारणा): सबएजेंट के सिस्टम प्रॉम्प्ट में परिभाषित अनिवार्य स्कीमा जो रुकने की शर्त बनाती है और मुख्य थ्रेड को लौटाई जाने वाली जानकारी को संरचित करती है - **Obstacle reporting** (अवधारणा): सबएजेंट से वर्कअराउंड, डिपेंडेंसी समस्याएं और एनवायरनमेंट की खासियतें उनके आउटपुट में सामने लाने का पैटर्न, ताकि ऑर्केस्ट्रेटर को उन्हें फिर से न खोजना पड़े - **Tool access scoping** (अवधारणा): प्रत्येक सबएजेंट को केवल उन टूल तक सीमित करना जो उसकी भूमिका के लिए ज़रूरी हैं — रिसर्च के लिए रीड-ओनली, रिव्यू के लिए bash, केवल फ़ाइल बदलने वाले एजेंट के लिए edit/write - **Anthropic** (संगठन): Claude और Claude Code एजेंटिक कोडिंग प्लेटफ़ॉर्म की निर्माता
सब-एजेंट क्या होते हैं?
सब-एजेंट विशेष सहायक होते हैं जिन्हें Claude Code काम सौंप सकता है — हर सब-एजेंट अपने अलग context window में चलता है, स्वतंत्र रूप से काम पूरा करता है, और फिर एक संक्षिप्त सारांश वापस भेजता है जबकि सारी अंतरिम प्रक्रिया हटा दी जाती है। Anthropic का यह दो-मिनट का tutorial बताता है कि यह अलगाव main context window को साफ रखने के लिए क्यों ज़रूरी है, एक code-exploration का उदाहरण दिखाता है जो इस tradeoff को स्पष्ट करता है, और Claude Code के साथ आने वाले built-in सब-एजेंटों की सूची देता है। ## [00:03] सब-एजेंट क्या होते हैं सब-एजेंट अपने अलग conversation context window में चलता है, जिसे आपके दिए गए custom system prompt से शुरू किया जाता है। Parent agent (main thread में Claude Code) सब-एजेंट को आपकी ज़रूरत के हिसाब से एक task description देता है। सब-एजेंट उसे स्वतंत्र रूप से पूरा करता है, फिर main thread को एक सारांश लौटाता है — और सारा बीच का काम अलग ही रहता है। > *"Sub-agents are specialized assistants that Claude can delegate tasks to."* एक अहम बात: जैसे ही सब-एजेंट काम खत्म करता है, उसका पूरा conversation thread हटा दिया जाता है। सिर्फ वापस भेजा गया सारांश main conversation में आता है। ## [00:24] Context window को संभालना Main thread में Claude का हर tool call — file reads, searches, function traces — main context window में जमा होता रहता है। लंबे session में यह जल्दी भर जाता है। सब-एजेंट इसीलिए होते हैं — discrete research या action tasks को offload करने के लिए, ताकि उनका बोझ main window पर न पड़े। > *"Each sub-agent runs in its own conversation contacts window with a custom system prompt that you define."* Tradeoff साफ है: main window को साफ context मिलता है, लेकिन सब-एजेंट ने निष्कर्ष तक पहुंचने में क्या किया — वह दिखाई नहीं देता। आपको जवाब मिलता है, reasoning trace नहीं। ## [01:13] एक ठोस उदाहरण: payment system मान लीजिए आप Claude Code से पता करना चाहते हैं कि किसी अनजान codebase में refunds कौन सी service संभालती है। बिना सब-एजेंट के Claude 15 files पढ़ सकता है, कई searches चला सकता है, और कई function calls trace कर सकता है — और यह सब main context window भर देता है, जबकि आपको सिर्फ एक जवाब चाहिए था। > *"With a sub-agent, you get the answer without the journey."* सब-एजेंट codebase explore करता है, जवाब ढूंढता है, और एक focused सारांश देता है — main context साफ रहता है। खोई हुई चीज़ है visibility: यह पता नहीं चलता कि उसने कौन सी files पढ़ीं या किन traces से जवाब निकाला। ## [02:00] Claude Code के built-in सब-एजेंट Claude Code तीन built-in सब-एजेंटों के साथ आता है जो तुरंत इस्तेमाल के लिए तैयार हैं: - **General-purpose सब-एजेंट** — multi-step tasks के लिए जिनमें exploration और action दोनों की ज़रूरत हो। - **Explore सब-एजेंट** — full task loop के बिना codebases को तेज़ी से खोजने के लिए। - **Plan सब-एजेंट** — plan mode के दौरान चलता है, codebase research और analysis करके plan पेश करता है। > *"And you can also create your own sub-agents with custom system prompts and tool access."* इन तीनों के अलावा, आप अपने workflows के अनुसार custom system prompts और tool access lists के साथ खुद के सब-एजेंट बना सकते हैं। ## [02:30] सब-एजेंट कब इस्तेमाल करें सब-एजेंट तब फायदेमंद होते हैं जब कोई अलग, self-contained सवाल या काम हो जो otherwise main window में बहुत सारा intermediate context डाल देता। > *"Sub-agents like Claude Code break work into focused pieces, keep your main context window clean, and bring back just what you need, whether you're using the built-in ones or creating your own."* लंबे Claude Code sessions में जहाँ context window pressure बढ़ती जाती है, वहाँ सब-एजेंट सबसे ज़्यादा काम के होते हैं — किसी sub-task को सब-एजेंट को सौंपकर session की उम्र सीधे बढ़ाई जा सकती है। ## एंटिटीज़ - **Anthropic Tutorial Narrator** (व्यक्ति): Anthropic द्वारा निर्मित "Claude Code subagents" tutorial series के narrator - **Claude Code** (सॉफ्टवेयर): Anthropic का agentic coding assistant; वह host environment जिसमें सब-एजेंट काम करते हैं - **Claude** (सॉफ्टवेयर): Claude Code और उसके सब-एजेंटों को चलाने वाला underlying AI model - **Sub-agent** (अवधारणा): एक विशेष सहायक जिसे Claude Code काम सौंपता है; अपने अलग context window में custom system prompt के साथ चलता है - **Context window** (अवधारणा): वह finite token buffer जिसमें conversation history, tool calls और results होते हैं; सब-एजेंट इसे अंतरिम काम से भरने से बचाते हैं - **General-purpose sub-agent** (सॉफ्टवेयर): Claude Code का built-in सब-एजेंट, multi-step exploration और action tasks के लिए - **Explore sub-agent** (सॉफ्टवेयर): Claude Code का built-in सब-एजेंट, codebase तेज़ी से खोजने के लिए - **Plan sub-agent** (सॉफ्टवेयर): Claude Code का built-in सब-एजेंट जो plan mode में codebase research करता है - **Anthropic** (संस्था): Claude और Claude Code के निर्माता; इस tutorial series के producers
स्किल्स क्या होती हैं?
Claude Code skills पुन: उपयोगी markdown फ़ाइलें हैं जो विशेष ज्ञान एक बार एन्कोड करती हैं — इसके बाद Claude उन्हें अपने-आप उस समय सक्रिय करता है जब कोई अनुरोध मेल खाता है, बिना उपयोगकर्ता को निर्देश दोहराने या कोई slash command टाइप करने की जरूरत के। यह तीन मिनट का ट्यूटोरियल बताता है कि skills क्या होती हैं, कहाँ रहती हैं, CLAUDE.md फ़ाइलों से कैसे अलग हैं, और वह संकेत जो बताता है कि skill लिखने का समय आ गया है। ## [00:03] वह दोहराव की समस्या जो skills हल करती हैं जब भी आप अपनी टीम के coding standards समझाते हैं, PR feedback का ढाँचा फिर से बताते हैं, या Claude को अपना पसंदीदा commit message format याद दिलाते हैं — आप खुद को दोहरा रहे होते हैं। narrator तीन back-to-back उदाहरणों से शुरू करता है और उस ठीक उस बिंदु को नाम देता है जिसे skills हल करती हैं। > *"हर बार जब आप Claude को अपनी टीम के coding standards समझाते हैं, आप खुद को दोहरा रहे होते हैं।"* ## [00:20] skill क्या है और Claude उसे कैसे चुनता है Skill एक markdown फ़ाइल है जो Claude को कोई काम एक बार सिखा देती है। Claude उस निर्देश को स्टोर कर लेता है और जब भी जरूरत पड़े, उसे अपने-आप लागू करता है। Claude Code में वह फ़ाइल SKILL.md होती है। उस फ़ाइल का description फ़ील्ड ही मुख्य तंत्र है: जब आप Claude से PR review करने को कहते हैं, तो वह आपके अनुरोध की तुलना उपलब्ध सभी skill descriptions से करता है और मिलान करने वाली skill को सक्रिय करता है। > *"Claude आपका अनुरोध पढ़ता है, उसे सभी उपलब्ध skill descriptions से मिलाता है, और जो मेल खाती हैं उन्हें सक्रिय करता है।"* ## [01:05] Skills कहाँ रखें: व्यक्तिगत बनाम प्रोजेक्ट Skills दो जगहों पर रहती हैं — यह इस बात पर निर्भर करता है कि किसे उनकी जरूरत है। व्यक्तिगत skills ~/.claude/skills में जाती हैं और हर प्रोजेक्ट में आपके साथ रहती हैं: commit message style, documentation format, कोड समझाने का तरीका। प्रोजेक्ट skills .claude/skills में repository की root पर जाती हैं; जो भी repo clone करे, उसे वे अपने-आप मिल जाती हैं। यही दूसरी जगह टीम के standards के लिए है: brand guidelines, web design के लिए पसंदीदा fonts और colors। > *"जो भी repository clone करता है, उसे ये skills अपने-आप मिल जाती हैं।"* ## [01:42] Skills बनाम CLAUDE.md: स्वचालित और context-कुशल Claude Code में customization की कई परतें हैं, और skills की अपनी अलग जगह है। CLAUDE.md फ़ाइलें हर बातचीत में बिना शर्त लोड होती हैं — उन नियमों के लिए सही जैसे "हमेशा TypeScript strict mode उपयोग करें"। Skills on demand लोड होती हैं, केवल तब जब वे मौजूदा अनुरोध से मेल खाती हैं, और उस समय केवल नाम और description ही context में आते हैं। Skill का पूरा body तभी लोड होता है जब वह ट्रिगर हो। इससे debugging के दौरान PR review checklist context window से बाहर रहती है और केवल तब आती है जब आप सच में review माँगते हैं। Slash commands टाइप करने पड़ते हैं; skills नहीं। > *"Skills अनोखी हैं क्योंकि वे स्वचालित और task-specific हैं।"* ## [02:27] Skill कब लिखें Skills उस विशेष ज्ञान के लिए सबसे अच्छी तरह काम करती हैं जो किसी खास काम से जुड़ा हो: आपकी टीम के code review standards, commit message formats, brand guidelines। अंतिम नियम सीधा और व्यावहारिक है: अगर आप खुद को Claude को एक ही बात बार-बार समझाते हुए पाते हैं, तो वह एक skill है जो लिखी जाने का इंतजार कर रही है। > *"अगर आप खुद को Claude को एक ही बात बार-बार समझाते हुए पाते हैं, तो वह एक skill है जो लिखी जाने का इंतजार कर रही है।"* ## संस्थाएँ - **Anthropic Tutorial Narrator** (व्यक्ति): Claude Code skills tutorial series के narrator और host - **Claude Code** (Software): Anthropic का AI coding assistant; वह रनटाइम जहाँ skills खोजी और लागू की जाती हैं - **SKILL.md** (अवधारणा): वह markdown फ़ाइल जो एक skill को परिभाषित करती है — इसमें Claude के लिए नाम, description और निर्देश होते हैं - **CLAUDE.md** (अवधारणा): प्रोजेक्ट-स्तर या global instruction फ़ाइल जो हर Claude Code बातचीत में बिना शर्त लोड होती है; skills से इसकी तुलना की जाती है - **Anthropic** (संगठन): Claude और Claude Code की निर्माता
Skills शेयर करना
एक engineer के लिए PR review skill उपयोगी है; वही skill पूरी team में deploy होने पर code review को standardize करती है और पूरे organization में एक consistent अनुभव बनाती है। यह tutorial चार ठोस distribution methods — repository commits, plugins, enterprise managed settings, और custom sub-agents — को कवर करता है और बताता है कि हर method कब लागू होता है। Sub-agent section में एक गैर-obvious बात है: sub-agents skills को automatically inherit नहीं करते, और built-in agents उन्हें बिल्कुल भी access नहीं कर सकते। ## [00:01] शेयरिंग से skill की value क्यों बढ़ती है किसी एक developer तक सीमित skill अपना काम करती है। वही skill पूरी team में पहुंचाने पर standards fix हो जाते हैं, हर व्यक्ति की अलग-अलग कार्यशैली खत्म होती है, और हर review एक जैसा दिखता और महसूस होता है। Narrator पहले individual और team-scale use के बीच सीधा contrast करता है, फिर चारों sharing mechanisms की सूची देता है। > *"A PR review skill that only you use is helpful. The same skill shared across your team standardizes code review and provides a consistent experience amongst your organization which is much better."* ## [00:18] Repository में skills commit करना सबसे कम झंझट वाला तरीका: project repo के अंदर `.claude/skills` में skills रखें। Repository clone करने वाला कोई भी व्यक्ति उन skills को तुरंत पाता है — कोई install step नहीं, कोई extra tooling नहीं। Updates सामान्य `git pull` cycle से आती हैं। यह तरीका team coding standards, project-specific workflows, और उन skills के लिए उपयुक्त है जो codebase की अपनी संरचना को reference करती हैं। > *"Anyone who clones the repository gets these skills automatically. No extra installation, it's just what you're doing already."* ## [00:45] Plugins के ज़रिए skills distribute करना Plugins Claude Code को custom functionality से extend करते हैं जो एक project से आगे जाने के लिए बनी होती है। Plugin project के अंदर एक `skills/` directory `.claude/` की संरचना को mirror करती है — skill का नाम, `SKILL.md`। Marketplace पर publish होने के बाद कोई भी Claude Code user plugin download और activate कर सकता है। यह channel उन skills के लिए सबसे अच्छा है जो किसी एक team की conventions से ज़्यादा, व्यापक community की ज़रूरतें पूरी कर सकती हैं। > *"Think of plugins as ways to extend Claude Code with custom functionality, but designed to be shared across teams and projects."* ## [01:26] Managed settings से enterprise-wide deployment Administrators managed settings के ज़रिए organization के हर developer तक skills पहुंचा सकते हैं। Enterprise skills को सबसे ऊंची priority मिलती है: वे उसी नाम वाली personal, project, और plugin skills को override करती हैं। इनका उद्देश्य mandatory standards हैं — security requirements, compliance workflows, coding practices जो uniform रहनी चाहिए। Narrator "must" शब्द पर explicitly ज़ोर देता है: ये suggestions नहीं हैं। > *"This is for mandatory standards, security requirements, compliance workflows, or coding practices that must be consistent across the organization."* ## [01:52] Custom sub-agents और explicit skill loading Sub-agents main conversation की skills inherit नहीं करते। Built-in agents (explorer, planner, verify) skills को बिल्कुल access नहीं कर सकते। केवल custom sub-agents — जो `.claude/agents` में `agent.md` file से define होते हैं — skills use कर सकते हैं, और केवल वे ही जो उस file के `skills:` field में explicitly listed हों। Skills sub-agent के start होने पर load होती हैं, demand पर नहीं, इसलिए list tight रखनी चाहिए: केवल वे skills जो agent के purpose के लिए हमेशा ज़रूरी हों। Tutorial Claude Code sub-agent creator से sub-agent बनाना और किसी existing `agent.md` में skills attach करना दिखाता है। > *"Built-in agents like the explorer, planner, and verify can't access skills at all. Only custom sub-agents you define can use them, and only when you explicitly list them."* ## [03:18] सारांश: सही distribution method चुनना समापन में हर method को उसके scenario से जोड़ा जाता है: team access के लिए project directories, cross-repository sharing के लिए plugins, org-wide mandatory standards के लिए enterprise deployment, और isolated task delegation के लिए explicit sub-agent skill lists। Sub-agent reminder फिर आता है — किसी दिए गए agent के काम के लिए हमेशा ज़रूरी skills ही list करें, क्योंकि वे startup पर load होती हैं, lazily नहीं। > *"Share skills through project directories for team access, plugins for cross-repository distribution, or enterprise deployment for organization-wide standards."* ## Entities - **Anthropic Tutorial Narrator** (व्यक्ति): Claude Code skills tutorial series के एकमात्र presenter - **Claude Code** (Software): Anthropic का AI coding assistant; वह runtime environment जहाँ skills बनाई और deploy की जाती हैं - **Skills** (अवधारणा): `.claude/skills` में रखे reusable instruction sets जो Claude Code के व्यवहार को extend करते हैं - **Plugins** (अवधारणा): distributable packages जो teams और marketplace users के बीच sharing के लिए skills को bundle करते हैं - **Managed settings** (अवधारणा): enterprise administrator mechanism जो skills को org-wide highest priority override के साथ deploy करता है - **Sub-agents** (अवधारणा): `.claude/agents` में `agent.md` से define किए गए custom Claude Code agents; एकमात्र agent type जो skills load कर सकता है, और केवल तब जब explicitly listed हो - **Anthropic** (संगठन): वह company जिसने Claude Code बनाया और Claude Code skills tutorial series produce करती है
कॉन्फ़िगरेशन और मल्टी-फ़ाइल स्किल्स
Claude Code skills सीरीज़ का यह चार मिनट का ट्यूटोरियल उन एडवांस्ड कॉन्फ़िगरेशन फ़ील्ड्स को कवर करता है जो एक बेसिक स्किल को एक भरोसेमंद, context-efficient टूल में बदल देते हैं। नैरेटर agentskills.io के पूरे फ़ील्ड सेट — `name`, `description`, `allowed_tools`, `model` — से गुज़रता है और बताता है कि बड़ी स्किल्स को progressive disclosure का उपयोग करके कैसे स्ट्रक्चर किया जाए, ताकि रेफरेंस मटेरियल और स्क्रिप्ट्स केवल ज़रूरत पड़ने पर लोड हों, हर बार नहीं। ## [00:02] एडवांस्ड स्किल फ़ील्ड्स का अवलोकन agentskills.io ओपन स्टैंडर्ड में अनिवार्य `name` और `description` के अलावा कई फ़ील्ड्स परिभाषित हैं। `name` lowercase और हाइफन के साथ होना चाहिए, 64 कैरेक्टर से अधिक नहीं, और डायरेक्टरी के नाम से मेल खाना चाहिए। `description` अधिकतम 1,024 कैरेक्टर का होता है और यही वह प्राथमिक संकेत है जिससे Claude स्किल मैचिंग करता है। दो वैकल्पिक फ़ील्ड्स कॉन्फ़िगरेशन को पूरा करते हैं: `allowed_tools`, जो यह नियंत्रित करता है कि स्किल कौन से टूल्स इनवोक कर सकती है, और `model`, जो स्किल को Claude के किसी खास वर्ज़न से जोड़ता है। > *"A basic skill works with just a name and description, but here are some other advanced tips that can make your skills really effective in Claude Code."* ## [00:39] प्रभावी description लिखना एक अस्पष्ट description — "कुत्तों की मदद करें" — Claude को स्कोप और ट्रिगर के बारे में अनुमान लगाने पर मजबूर करती है। एक अच्छी description ठीक दो सवालों का जवाब देती है: यह स्किल क्या करती है, और Claude को इसे कब इस्तेमाल करना चाहिए? यूज़र रिक्वेस्ट की स्वाभाविक भाषा से कीवर्ड मिलाना ही उन स्किल्स को ठीक करने का तरीका है जो ट्रिगर नहीं होतीं। > *"A good description answers two questions. What does this skill do? And when should Claude use it?"* ## [01:20] allowed_tools से टूल्स को सीमित करना `allowed_tools` स्किल को एक निश्चित सतह तक सीमित रखने का तंत्र है — जैसे security-sensitive वर्कफ़्लो के लिए केवल read-only एक्सेस। जब यह फ़ील्ड सेट होता है, Claude बिना permission मांगे केवल उन्हीं टूल्स को कॉल कर सकता है; कोई editing, writing, या Bash नहीं। फ़ील्ड छोड़ देने पर Claude का सामान्य permission मॉडल बना रहता है। > *"When this skill is active, Claude can only use those tools without asking permission. No editing, no writing, no bash commands."* ## [01:49] मल्टी-फ़ाइल स्किल्स के लिए progressive disclosure स्किल्स Claude की context window को चल रही बातचीत के साथ साझा करती हैं। सब कुछ एक 20,000-लाइन के `SKILL.md` में ठूंस देने से हर बार context फूल जाता है और फ़ाइल मेंटेन करना मुश्किल हो जाता है। समाधान: ज़रूरी निर्देश `SKILL.md` में रखें और रेफरेंस मटेरियल को अलग फ़ाइलों में ले जाएं जिन्हें Claude तभी पढ़े जब यूज़र की रिक्वेस्ट वाकई उनकी मांग करे। स्टैंडर्ड तीन सपोर्टिंग डायरेक्टरीज़ सुझाता है — executable कोड के लिए `scripts/`, डॉक्यूमेंटेशन के लिए `references/`, और इमेज व टेम्पलेट्स के लिए `assets/`। `SKILL.md` में एक लिंक टेबल ऑफ कंटेंट्स की एंट्री की तरह काम करता है; अगर विषय कभी नहीं आया, फ़ाइल कभी लोड नहीं होती। स्किल डायरेक्टरी में मौजूद स्क्रिप्ट्स बिना सोर्स context में लोड किए चलती हैं — केवल उनका आउटपुट टोकन खर्च करता है। नैरेटर `SKILL.md` को 500 लाइन से कम रखने की सलाह देता है; इससे ज़्यादा होने पर स्किल को विभाजित करने का संकेत मिलता है। > *"It's like having a table of contents in the context window rather than fitting the whole entire document in there."* ## [03:18] रिकैप: स्किल मेटाडेटा और बेस्ट प्रैक्टिस ट्यूटोरियल पूरी कॉन्फ़िगरेशन सरफेस को दोहराते हुए खत्म होता है: `name` और `description` अनिवार्य हैं; `allowed_tools` टूल सरफेस को सीमित करता है; `model` Claude का वर्ज़न पिन करता है। descriptions में ठोस action verbs और trigger phrases होने चाहिए ताकि मैचिंग भरोसेमंद रहे। बड़ी स्किल्स के लिए, progressive disclosure `SKILL.md` को 500 लाइन से कम रखती है और सपोर्टिंग फ़ाइलों को तब तक टालती है जब तक वे वाकई ज़रूरी न हों। स्क्रिप्ट्स सोर्स लोड किए बिना execute होती हैं, जिससे context दुबला-पतला रहता है। > *"Scripts can execute without loading their contents, keeping context efficient."* ## एंटिटीज़ - **Anthropic Tutorial Narrator** (व्यक्ति): इस ट्यूटोरियल सीरीज़ का एकल होस्ट, जो Claude Code स्किल कॉन्फ़िगरेशन प्रस्तुत करता है। - **Claude Code** (सॉफ़्टवेयर): Anthropic का CLI टूल जो agentskills.io स्टैंडर्ड से स्किल्स लोड और execute करता है। - **agentskills.io** (संगठन): ओपन स्टैंडर्ड जो स्किल मैनिफेस्ट स्कीमा परिभाषित करता है, जिसमें `name`, `description`, `allowed_tools`, `model` और डायरेक्टरी कन्वेंशन शामिल हैं। - **SKILL.md** (अवधारणा): Claude Code स्किल की प्राथमिक मैनिफेस्ट फ़ाइल; सपोर्टिंग फ़ाइलों के लिंक के साथ 500 लाइन से कम रहनी चाहिए। - **allowed_tools** (अवधारणा): वैकल्पिक स्किल फ़ील्ड जो Claude के खास टूल्स को whitelist करती है, read-only या sandboxed मोड सक्षम करती है। - **Progressive disclosure** (अवधारणा): मल्टी-फ़ाइल स्किल को इस तरह स्ट्रक्चर करना कि रेफरेंस फ़ाइलें और स्क्रिप्ट्स context में तभी लोड हों जब एक्टिव रिक्वेस्ट उनकी मांग करे। - **Context window** (अवधारणा): बातचीत और Claude द्वारा लोड की गई स्किल फ़ाइलों के बीच साझा टोकन बजट; वह मुख्य संसाधन जिसे progressive disclosure बचाने के लिए डिज़ाइन की गई है।
अपनी पहली स्किल बनाएं
यह 3 मिनट का ट्यूटोरियल Claude Code में एक पर्सनल स्किल बनाने की पूरी प्रक्रिया दिखाता है: SKILL.md फ़ाइल के साथ एक डायरेक्टरी बनाएं, स्टार्टअप पर स्किल लोड होने की पुष्टि करें और Claude को एक असली रिक्वेस्ट पर इसे उपयोग करते देखें। दूसरा हिस्सा बताता है कि Claude का स्किल-लोडिंग पाइपलाइन कैसे काम करता है — चार स्कैन लोकेशन और नाम-केवल स्टार्टअप पास से लेकर कन्फ़र्मेशन गेट और नामकरण विवाद सुलझाने वाले चार-स्तरीय प्राथमिकता क्रम तक। ## [00:03] यह ट्यूटोरियल क्या बनाता है नैरेटर एक ठोस लक्ष्य से शुरू करता है: एक स्किल जो Claude को विज़ुअल डायग्राम और उपमाओं के ज़रिए कोड समझाना सिखाती है। इसे बनाने के बाद, ट्यूटोरियल यह भी दिखाता है कि जब Claude एक स्किल पहचानता और चलाता है तो अंदर क्या होता है। > *"यह स्किल Claude को सिखाएगी कि हम चाहते हैं कि वह विज़ुअल डायग्राम और उपमाओं का उपयोग करके कोड कैसे समझाए।"* ## [00:18] स्किल फ़ाइल बनाना पर्सनल स्किल्स होम डायरेक्टरी में रहती हैं, किसी प्रोजेक्ट के अंदर नहीं — इसलिए पहला कदम है `~/.claude/skills/` के अंदर स्किल के नाम से एक नई डायरेक्टरी बनाना। उस डायरेक्टरी में सिर्फ एक `SKILL.md` फ़ाइल जाती है। तीन सेक्शन ज़रूरी हैं: `name` (वह पहचानकर्ता जिसे Claude स्टार्टअप पर स्टोर करता है), `description` (मिलान मानदंड जो Claude तय करने के लिए उपयोग करता है कि स्किल इनवोक करनी है या नहीं) और दूसरे `---` डेलिमिटर के बाद का सब कुछ (वे निर्देश जो Claude स्किल फ़ायर होने पर फ़ॉलो करता है)। > *"ध्यान रखें कि हम skills डायरेक्टरी के अंदर स्किल के नाम से एक डायरेक्टरी बना रहे हैं।"* ## [00:52] अपनी स्किल लोड और टेस्ट करना Claude Code स्टार्टअप पर स्किल्स स्कैन करता है, मांग पर नहीं — इसलिए फ़ाइल बनाने के बाद सेशन रिस्टार्ट करना ज़रूरी है। `/skills` चलाने पर "PR description" (या जो भी स्किल अभी बनाई गई हो) लिस्ट होनी चाहिए। टेस्ट करने के लिए कुछ बदलावों के साथ एक ब्रांच बनाएं और सरल अंग्रेज़ी में रिक्वेस्ट भेजें "Write a PR description for my changes." Claude बताएगा कि वह PR description स्किल इनवोक कर रहा है, फिर diff पढ़कर हर बार एक जैसे फ़ॉर्मेट में डिस्क्रिप्शन लिखेगा। > *"Claude फिर आपको दिखाएगा कि वह PR description स्किल उपयोग कर रहा है।"* ## [01:25] Claude स्किल्स को अंदर से कैसे लोड करता है स्टार्टअप पर, Claude Code चार जगह स्कैन करता है: एंटरप्राइज़ मैनेज्ड सेटिंग्स, पर्सनल `~/.claude/skills/`, प्रोजेक्ट की `.claude/` डायरेक्टरी और इंस्टॉल किए गए प्लगइन। वह केवल `name` और `description` लोड करता है — पूरी कॉन्टेंट नहीं। जब कोई रिक्वेस्ट आती है, Claude उसे स्टोर की गई डिस्क्रिप्शन से मिलाता है; "इस फ़ंक्शन को समझाओ" और "विज़ुअल डायग्राम से कोड समझाओ" ओवरलैप करते हैं तो स्किल मैच करती है। पूरा SKILL.md पढ़ने से पहले Claude कन्फ़र्मेशन मांगता है, जिससे यूज़र को पता रहता है कि कौन सा कॉन्टेक्स्ट इंजेक्ट हो रहा है। > *"वह प्रत्येक स्किल का केवल नाम और विवरण लोड करता है, पूरी कॉन्टेंट नहीं। यह बाद में महत्वपूर्ण है।"* ## [02:02] प्राथमिकता नियम और नामकरण विवाद किसी ऐसे रिपॉज़िटरी को क्लोन करने पर जिसमें पहले से स्किल्स हों, नाम टकराव हो सकता है। Claude एक निश्चित प्राथमिकता क्रम से इसे सुलझाता है: एंटरप्राइज़ (सबसे ऊंची) → पर्सनल → प्रोजेक्ट → प्लगइन (सबसे नीची)। एंटरप्राइज़ `code-review` स्किल हमेशा पर्सनल `code-review` स्किल से ऊपर रहेगी। व्यावहारिक हल है वर्णनात्मक नाम रखना: जेनेरिक `review` की बजाय `security-review` या `frontend-pr-review`, ताकि टकराव ही न हो। > *"अगर आपकी कंपनी के पास एंटरप्राइज़ code review स्किल है और आप एक पर्सनल code review स्किल बनाते हैं, तो एंटरप्राइज़ वर्ज़न को प्राथमिकता मिलती है।"* ## [02:52] स्किल्स अपडेट और हटाना स्किल अपडेट करना सीधे फ़ाइल एडिट है: SKILL.md खोलें, ज़रूरी बदलाव करें, सेव करें। स्किल हटाने का मतलब है उस डायरेक्टरी को डिलीट करना। दोनों ऑपरेशन के लिए Claude Code को रिस्टार्ट करना ज़रूरी है — स्किल लिस्ट सेशन स्टार्टअप पर एक बार बनती है, लाइव बदलावों के लिए वॉच नहीं करती। > *"स्किल अपडेट करने के लिए skill.md फ़ाइल एडिट करें और बदलाव लागू करने के लिए Claude Code रिस्टार्ट करें।"* ## इकाइयां - **Anthropic ट्यूटोरियल नैरेटर** (व्यक्ति): Claude Code skills सीरीज़ के लिए स्किल निर्माण ट्यूटोरियल में मार्गदर्शन करने वाला एकमात्र होस्ट - **Claude Code** (सॉफ़्टवेयर): Claude के लिए Anthropic का CLI; स्टार्टअप पर स्किल्स स्कैन करता है और यूज़र रिक्वेस्ट स्किल डिस्क्रिप्शन से मेल खाने पर उन्हें अप्लाई करता है - **SKILL.md** (अवधारणा): वह एकल फ़ाइल जो एक स्किल परिभाषित करती है — YAML frontmatter (name, description) और दूसरे `---` डेलिमिटर के बाद फ्रीफ़ॉर्म इंस्ट्रक्शन टेक्स्ट - **Skills** (अवधारणा): पुन: उपयोग योग्य, नामित निर्देश सेट जो Claude को एक सुसंगत व्यवहार पैटर्न सिखाते हैं; SKILL.md फ़ाइल वाली डायरेक्टरी के रूप में संग्रहीत - **Enterprise Skills** (अवधारणा): संगठन-प्रबंधित स्किल्स जो चार-स्तरीय प्राथमिकता क्रम के शीर्ष पर हैं, पर्सनल, प्रोजेक्ट और प्लगइन स्किल्स को ओवरराइड करती हैं - **Anthropic** (संगठन): Claude और Claude Code की निर्माता; claude.com/resources/courses पर यह ट्यूटोरियल सीरीज़ तैयार करती है
Skills की तुलना Claude Code के अन्य फीचर्स से कैसे होती है
Claude Code डेवलपर्स को पाँच अलग-अलग कस्टमाइज़ेशन विकल्प देता है — Skills, CLAUDE.md, subagents, hooks और MCP servers — जिनमें से हर एक अलग काम के लिए बना है। यह तीन मिनट का ट्यूटोरियल बताता है कि कौन-सा विकल्प किस काम के लिए सही है, ताकि आप Skills की जगह CLAUDE.md का इस्तेमाल करने से न चूकें और hook लगाएँ जब असल ज़रूरत subagent की हो। ## [00:02] पाँच कस्टमाइज़ेशन विकल्प, एक निर्णय की समस्या Claude Code में व्यवहार को आकार देने के पाँच तरीके हैं: Skills, CLAUDE.md, subagents, hooks और MCP servers। नैरेटर इन सभी को तेज़ी से गिनाता है और सवाल को "ये क्या हैं?" से बदलकर "इनमें से यहाँ कौन-सा सही है?" कर देता है। > *"ये अलग-अलग समस्याएँ हल करते हैं। यह जानना कि कब किसका इस्तेमाल करना है, आपको गलत चीज़ बनाने से बचाता है।"* ट्यूटोरियल का बाकी हिस्सा मूलतः इसी एक वाक्य का जवाब है। ## [00:18] CLAUDE.md बनाम Skills: हमेशा-चालू बनाम माँग पर CLAUDE.md एक ऐसी फ़ाइल है जिसे Claude हर बातचीत की शुरुआत में पढ़ता है, बिना किसी सक्रियण के। यह उन प्रोजेक्ट-व्यापी नियमों का सही ठिकाना है जो कभी नहीं भूलने चाहिए — framework का चुनाव, कोडिंग स्टाइल, डेटाबेस के नियम। Skills इसके उलट माँग पर लोड होती हैं: आपका PR रिव्यू चेकलिस्ट तभी संदर्भ में आता है जब आप वाकई रिव्यू माँगते हैं, नया कोड लिखते समय नहीं। > *"Claude MD का इस्तेमाल उन प्रोजेक्ट-व्यापी मानकों के लिए करें जो हमेशा लागू होते हैं — जैसे database schema कभी न बदलें, framework की प्राथमिकताएँ और कोडिंग स्टाइल।"* फ़र्क है स्थायित्व बनाम प्रासंगिकता का। अगर निर्देश प्रोजेक्ट के हर prompt में ज़रूरी है, तो वह CLAUDE.md में जाता है। अगर कभी-कभी ही काम आता है, तो वह एक Skill में जाता है। ## [01:03] Skills बनाम Subagents: साझा संदर्भ बनाम अलग-थलग निष्पादन Skills मौजूदा बातचीत में ज्ञान इंजेक्ट करती हैं — उनके निर्देश मौजूदा संदर्भ में शामिल हो जाते हैं। Subagents अलग तरह से काम करते हैं: वे एक काम लेते हैं, एक अलग निष्पादन संदर्भ बनाते हैं, स्वतंत्र रूप से काम करते हैं और मुख्य बातचीत को छुए बिना नतीजे लौटाते हैं। > *"Subagents का इस्तेमाल तब करें जब आप किसी काम को अलग निष्पादन संदर्भ में सौंपना चाहते हों। जब आपको मुख्य बातचीत से अलग टूल एक्सेस चाहिए। जब आप सौंपे गए काम और मुख्य संदर्भ के बीच अलगाव चाहते हों।"* Skills तब काम आती हैं जब किसी चल रही बातचीत में Claude की सोच को विशेषज्ञता से मार्गदर्शित करना हो। Subagents तब काम आते हैं जब मुख्य सत्र और किसी सौंपे गए काम के बीच साफ़ सीमा चाहिए — अलग टूल, कोई मिलावट नहीं। ## [01:42] Hooks बनाम Skills: इवेंट-ड्रिवन बनाम रिक्वेस्ट-ड्रिवन Hooks इवेंट्स पर अपने आप चलते हैं — Claude के फ़ाइल सेव करने पर linter चलाना, किसी खास टूल कॉल से पहले इनपुट को वेलिडेट करना। इन्हें आपकी माँग ट्रिगर नहीं करती; Claude की कार्रवाई ट्रिगर करती है। Skills इसके उलट हैं: रिक्वेस्ट-ड्रिवन, जो किसी क्वेरी से मेल खाने पर सक्रिय होती हैं। > *"एक hook हर बार Claude के फ़ाइल सेव करने पर linter चला सकता है या कुछ टूल कॉल से पहले इनपुट वेलिडेट कर सकता है। ये सब इवेंट-ड्रिवन हैं, जबकि skills रिक्वेस्ट-ड्रिवन हैं। ये इस बात के आधार पर सक्रिय होती हैं कि आप क्या माँग रहे हैं।"* अगर व्यवहार किसी सिस्टम इवेंट पर बिना शर्त होना ज़रूरी है, तो वह hook है। अगर उसे Claude की सोच को माँगने पर आकार देना है, तो वह Skill है। ## [02:15] व्यापक कस्टमाइज़ेशन के लिए पाँचों को मिलाना एक अच्छी तरह से कॉन्फ़िगर किया गया Claude Code setup हर टूल को उसके स्वाभाविक काम के लिए इस्तेमाल करता है: CLAUDE.md हमेशा-चालू प्रोजेक्ट मानकों के लिए, Skills उस टास्क-विशिष्ट विशेषज्ञता के लिए जो हर prompt को न भरे, hooks स्वचालित साइड इफ़ेक्ट्स के लिए, subagents अलग-थलग सौंपे गए काम के लिए और MCP servers बाहरी टूल एक्सेस के लिए। ये विकल्प नहीं हैं — ये मिलकर काम करते हैं। > *"हर चीज़ को skills में न ठूँसें जब कोई और विकल्प बेहतर बैठता हो। आप एक साथ कई का इस्तेमाल कर सकते हैं।"* Skills तब अपने आप सक्रिय होती हैं जब कोई विषय प्रासंगिक होता है; CLAUDE.md हमेशा मौजूद रहता है; subagents अलगाव में चलते हैं; hooks इवेंट्स पर चलते हैं; MCP बाहरी टूल देता है। हर ज़रूरत के लिए सही परत चुनें और उन्हें मिला-जुलाकर इस्तेमाल करें। ## एंटिटीज़ - **Anthropic Tutorial Narrator** (व्यक्ति): Anthropic की ओर से Claude Code skills tutorial series के प्रस्तोता। - **Claude Code** (सॉफ़्टवेयर): Anthropic का AI-संचालित कोडिंग असिस्टेंट; इस tutorial series का विषय। - **Skills** (अवधारणा): माँग पर चलने वाले ज्ञान पैकेज जो Claude द्वारा उपयोगकर्ता की माँग पहचानने पर सक्रिय होते हैं; मौजूदा बातचीत संदर्भ में निर्देश इंजेक्ट करते हैं। - **CLAUDE.md** (अवधारणा): एक कॉन्फ़िगरेशन फ़ाइल जो Claude Code की हर बातचीत में अपने आप लोड होती है; हमेशा-चालू प्रोजेक्ट-व्यापी मानकों और नियमों के लिए उपयोगी। - **Subagents** (अवधारणा): अलग निष्पादन संदर्भ जो मुख्य बातचीत से अलग-थलग होकर सौंपे गए कामों को संभालते हैं। - **Hooks** (अवधारणा): इवेंट-ड्रिवन ऑटोमेशन जो Claude की खास कार्रवाइयों — जैसे फ़ाइल सेव या टूल कॉल — पर चलती है, उपयोगकर्ता की माँग से स्वतंत्र। - **MCP Servers** (सॉफ़्टवेयर): Model Context Protocol servers जो Claude Code सत्रों को बाहरी टूल उपलब्ध कराते हैं। - **Anthropic** (संगठन): Claude Code के निर्माता और Claude Code skills tutorial series के प्रकाशक।