پرش به محتوای اصلی
پرش به محتوای مقاله

ادغام دستورات سریع در مهارت‌های Claude Code برای اتوماسیون دقیق‌تر

·۱ مرداد ۱۴۰۵۵ دقیقه مطالعه
راهنما
دستورات سفارشی اسلش در Claude Code: نحوه عملکرد آن‌ها اکنون که به مهارت تبدیل شده‌اند
دستورات سفارشی اسلش در Claude Code: نحوه عملکرد آن‌ها اکنون که به مهارت تبدیل شده‌اند
اشتراک‌گذاری
واقعاً چه چیز جدید است؟

یکپارچه‌سازی دستورات سریع و مهارت‌ها در یک چارچوب واحد که امکان تزریق مستقیم داده‌های Shell و مدیریت موقت مجوز ابزارها (One-Turn Tool Grants) را فراهم می‌کند.

تصور کنید یک فایل متنی ساده در پروژه شما بتواند یک جریان کاری پیچیده و چندمرحله‌ای را در کدنویسی فعال کند. از اواخر ژوئیه ۲۰۲۶، ابزار Claude Code دستورات سریع (Slash Commands) را در چارچوب گسترده‌تری به نام «مهارت‌ها» (Skills) ادغام کرد تا میان‌برهای ساده به ابزارهای پیشرفته اتوماسیون تبدیل شوند. این حرکت به این معناست که دستورات سفارشی — که ارزان‌ترین اتوماسیون در دسترس هستند — اکنون یکپارچه شده‌اند. تنها یک فایل مارک‌داون و بدون هیچ پیکربندی اضافی، تمام آنچه برای تغییر نحوه تعامل هوش مصنوعی با کد شما نیاز است را فراهم می‌کند.

این به‌روزرسانی، در ادامه پوشش‌های قبلی ما درباره نحوه استفاده Anthropic از فناوری‌هایی مانند پروتکل زمینه مدل (MCP) برای ایمن‌سازی داده‌های مستاجران SaaS است، اما این بار تمرکز بر تجربه محلی توسعه‌دهنده است. برای اکثر کاربران، این انتقال بدون دردسر است: فایل‌های موجود در مسیر .claude/commands/ همچنان کار می‌کنند، اما حالا تحت همان منطقی عمل می‌کنند که پوشه قدرتمندتر .claude/skills/ از آن پیروی می‌کند. این ادغام دلیل رفتارهایی است که پیش‌تر شبیه به باگ به نظر می‌رسیدند؛ مواردی مثل شکست در باز کردن آرگومان‌ها یا ناپدید شدن دسترسی‌های ابزاری (Tool Grants) در میانه یک تسک. این رویکرد در راستای افزایش دقت ابزار است، درست مانند زمانی که حالت /plan در Claude Code توانست نرخ خطای بازسازی کد را به طور چشمگیری کاهش دهد.

تفاوت این دو را این‌طور ببینید: یک دستور سریع مثل یک یادداشت چسبناک (Sticky Note) است، اما یک مهارت شبیه به یک دفترچه راهنمای کامل است. یک دستور صرفاً یک میان‌بر است، در حالی که یک مهارت یک «بسته» است. هر دو را می‌توان با دستوراتی مثل /fix-issue فعال کرد، اما مهارت‌ها به توسعه‌دهنده اجازه می‌دهند فایل‌های پشتیبان، قالب‌ها و اسناد مرجعی را ضمیمه کنند که مدل فقط در زمان نیاز آن‌ها را بارگذاری می‌کند. این کار باعث می‌شود توکن (Token) — تکه‌های کوچکی از متن که مدل مانند برش‌های یک کیک می‌خورد — بیهوده مصرف نشود و نویز کلی کاهش یابد. اگر یک دستور و یک مهارت نام یکسانی داشته باشند، اولویت با مهارت است. یک قانون کاربردی برای توسعه‌دهندگان این است که میان‌برهای شخصی و موقت را در commands/ نگه دارند و هر چیزی را که قصد رشد دادن یا به اشتراک گذاشتنش را دارند به skills/ منتقل کنند.

مکانیزم اجرای مهارت‌ها

بر اساس بررسی فنی این سیستم، چندین رفتار کلیدی برای اتوماسیون معرفی شده است:

  • آرگومان‌های پویا: عبارت $ARGUMENTS تمام رشته ورودی کاربر را می‌گیرد. برای مثال، تایپ کردن /fix-issue 123 high-priority باعث می‌شود مقدار $ARGUMENTS برابر با «123 high-priority» شود.
  • دسترسی نمایه-دار: جای‌گذارهایی مثل $0 (یا $ARGUMENTS[0]) اجازه دسترسی دقیق و مبتنی بر صفر (Zero-based) به کلمات را می‌دهند که با نقل‌قول‌های شل (Shell-quoted) سازگار است. اگر کاربر بنویسد /migrate-component "search bar" React Vue آنگاه $0 برابر با "search bar"، $1 برابر با "React" و $2 برابر با "Vue" خواهد بود.
  • منطق جایگزینی: مقادیر گم‌شده بسته به نوعشان متفاوت عمل می‌کنند. یک جای‌گذار نمایه-دار که آرگومان متناظری ندارد (مثلاً $2 در حالی که فقط یک آرگومان پاس شده)، بدون تغییر در متن باقی می‌ماند. اما یک جای‌گذار نام‌دار که در فرانت‌متر (Frontmatter) تعریف شده باشد، به یک رشته خالی تبدیل می‌شود. برای درج یک علامت دلار و عدد واقعی، مانند $1.00 باید از کاراکتر Escape استفاده کنید: \$1.00.
  • ایمنی بازگشتی (Fallback): اگر آرگومان‌هایی پاس شوند اما فایل حاوی جای‌گذار $ARGUMENTS نباشد، Claude Code عبارت ARGUMENTS: <your input> را به انتهای متن اضافه می‌کند تا اطمینان حاصل شود که ورودی کاربر به‌طور بی‌صدا نادیده گرفته نمی‌شود.
  • تزریق داده‌های زنده: عملگر ! اجازه می‌دهد توسعه‌دهندگان دستورات شل — مانند !git diff HEAD — را پیش از آنکه پرامپت به مدل برسد، اجرا کنند. این یک جایگزینی تک-مرحله‌ای است؛ خروجی یک دستور نمی‌تواند حاوی یک جای‌گذار !... دیگر باشد. این مکانیسم تضمین می‌کند که کلود داده‌های واقعی را ببیند، نه خلاصه‌ای از آن‌ها یا درخواستی برای واکشی داده‌ها، که در نتیجه یک مرحله رفت‌وبرگشت ابزار (Tool Round-trip) حذف می‌شود.
  • مجوزهای ابزاری تک-مرحله‌ای: بخش allowed-tools در فرانت‌متر، یک مجوز دسترسی موقت (مثلاً Bash(git add:*) یا Bash(git commit:*)) برای همان نوبتی (Turn) که مهارت فراخوانی شده، صادر می‌کند. این مجوزها به محض اینکه کاربر پیام بعدی را ارسال کند، ناپدید می‌شوند، حتی اگر محتوای مهارت همچنان در زمینه (Context) باقی مانده باشد.
  • گسترش مسیر: متغیر ${CLAUDE_SKILL_DIR} هم در بدنه متن و هم در allowed-tools گسترش می‌یابد. این قابلیت به یک مهارت اجازه می‌دهد اسکریپت خاصی را همراه خود ارسال کند و اجرای دقیق همان اسکریپت را بدون نیاز به استفاده از علامت ستاره (Wildcard) پیش‌تأیید کند.

ارکستراسیون و فراخوانی

کنترل روی اینکه چه کسی مهارت را فعال کند اکنون بسیار دقیق است. به طور پیش‌فرض، هم کاربر و هم مدل می‌توانند هر مهارتی را اجرا کنند، اما دو سوئیچ در فرانت‌متر این وضعیت را تغییر می‌دهند:

۱. disable-model-invocation: true: فقط کاربر می‌تواند مهارت را فعال کند. این برای کارهایی که دارای اثرات جانبی (Side Effects) هستند و زمان‌بندی در آن‌ها حیاتی است، مانند /deploy یا /commit یا /send-release-notes ضروری است. این کنترل دقیق بر اجرای مهارت‌ها، پاسخی به نگرانیاتی است که پیش‌تر در مورد آپدیت‌های پنهان Claude Code و فعال شدن استقلال عامل‌های هوش مصنوعی بدون اجازه کاربر مطرح شده بود.
۲. user-invocable: false: فقط مدل می‌تواند مهارت را بارگذاری کند. این حالت برای دانش پس‌زمینه که اقدام فعال کاربر را نمی‌طلبد، مانند مهارت legacy-system-context ایده‌آل است.

یک تغییر مهم دیگر در نحوه ماندگاری محتوا رخ داده است. وقتی مهارتی فراخوانده می‌شود، محتوای رندر شده آن به عنوان «دستورات جاری» (Standing Orders) برای بقیه جلسه در گفتگو باقی می‌ماند. اجرای مجدد یک مهارت مشابه، به جای تکرار کل متن، تنها یک یادداشت کوتاه مبنی بر «قبلاً بارگذاری شده» اضافه می‌کند.

این ماندگاری دو پیامد دارد: اول، هر خط در یک مهارت یک هزینه توکن تکراری است؛ بنابراین توسعه‌دهندگان باید روی «چه کاری» تمرکز کنند و از نوشتن مقالات طولانی درباره «چرایی» بپرهیزند. دوم، دستورالعمل‌ها باید به صورت قوانین دائمی نوشته شوند (مثلاً «همیشه بعد از ویرایش Y، دستور X را اجرا کن») نه به صورت مراحل یک‌باره. توجه داشته باشید که پس از فشرده‌سازی زمینه (Context Compaction)، مهارت‌های اخیر در یک بودجه توکنی ثابت مجدداً پیوست می‌شوند، به این معنی که مهارت‌های قدیمی‌تر ممکن است در نهایت حذف شوند.

کاربرد استراتژیک

این معماری یک سلسله‌مراتب واضح برای سازمان‌دهی پروژه ایجاد می‌کند:

  • CLAUDE.md: برای حقایقی که مدل باید همیشه بداند (در قالب ورودی‌های تک‌خطی).
  • مهارت‌ها (Skills): برای فرآیندهایی که مدام تکرار می‌شوند (که شما معمولاً کپی-پیست می‌کنید) یا منابع مرجعی که برای پنجره زمینه عمومی بسیار حجیم هستند (با استفاده از فایل‌های پشتیبان که در SKILL.md به آن‌ها ارجاع داده شده است).
  • قلاب‌ها (Hooks): برای هر چیزی که باید هر بار به صورت قطعی (Deterministic) رخ دهد. در حالی که مهارت‌ها متکی به انتخاب مدل برای امتثال هستند، قلاب‌ها سوال نمی‌پرسند و اجرا می‌شوند.

برای جریان کار توسعه‌دهنده، «نقطه بهینه» اتوماسیون تغییر کرده است. دیگر نیازی نیست بین یک نام مستعار (Alias) سریع و یک جریان کاری پیچیده agentic انتخاب کنید؛ سیستم مهارت‌ها این شکاف را پر می‌کند و به مدل اجازه می‌دهد اگر گفتگو با توصیف یک مهارت مطابقت داشت، آن را به طور خودکار فعال کند.

اگر یک مهارت پروژه با نام یکی از دستورات سیستمی باندل شده (مانند code-review) هم‌نام باشد، اولویت با مهارت پروژه است. این موضوع به تیم‌ها اجازه می‌دهد تا رفتارهای پیش‌فرض هوش مصنوعی را با استانداردهای داخلی خود جایگزین کنند.

گام بعدی شما

  • دستورات تکراری را از .claude/commands/ به .claude/skills/ منتقل کنید تا از قابلیت‌های تزریق داده ! بهره ببرید.
  • برای عملیات حساس (مانند Deploy)، حتماً disable-model-invocation را فعال کنید تا مدل آن را خارج از کنترل کاربر اجرا نکند.
  • دستورات مهارت‌ها را از حالت «آموزشی» به حالت «قانون جاری» تغییر دهید تا هزینه توکن‌ها بهینه شود.

اما تاثیر این یکپارچگی بر کاهش نرخ توهم در کدهای پیچیده حتی چشمگیرتر است — به تحلیل ما درباره مدل‌های استدلالی مراجعه کنید.

چرا این موضوع مهم است؟

این تغییر با بهره‌گیری از تجربه توسعه‌دهندگان در مدیریت اسکریپت‌ها، اتوماسیون کدنویسی را از «حدس زدن» به «اجرای دقیق» نزدیک می‌کند. اعتبار این سیستم در تفکیک دقیق دسترسی‌های مدل از کاربر است که ریسک اجرای دستورات destructive را کاهش می‌دهد.

تأثیر برای ایران

برنامه‌نویسان ایرانی که از Claude Code برای تسریع توسعه استفاده می‌کنند، می‌توانند با تعریف مهارت‌های محلی، هزینه‌ی توکن‌ها را کاهش داده و دقت مدل در پروژه‌های حجیم را بالا ببرند.

·نگاه ما
تحریریه دات‌هوش

جایگزینی میان‌برهای ساده با سیستم مهارت‌ها، در واقع گامی به سوی تبدیل IDE به یک سیستم عامل عامل‌محور است. آنتروپیک با این کار، مرز بین «پرامپت» و «کد» را می‌شکند و اجازه می‌دهد منطق اجرای ابزارها به جای اینکه در حافظه مدل باشد، در ساختار فایل‌های پروژه تعریف شود. این رویکرد باعث می‌شود توسعه‌دهندگان بتوانند رفتار مدل را بدون نیاز به تغییر پرامپت‌های سیستمی، به صورت ورژن‌کنترل شده (via Git) مدیریت کنند.

منابع

این گزارش با خط‌لولهٔ خودکار دات‌هوش از منابع معتبر جهانی تدوین و زیر نظر تحریریه منتشر شده است. روش کار ما

گفتگو

پنج‌شنبه‌های هوش‌محور

بسته‌ی هفتگی دات‌هوش

۵ خبر، ۲ ابزار، ۱ پرامپت در هر شماره. به‌زودی راه‌اندازی می‌شود — هر پنج‌شنبه صبح.

خبر کلیدی
ابزار کاربردی
پرامپت حرفه‌ای
تحلیل پژوهش
به‌زودی
زاویه‌ی ایرانی
به‌زودی
تمرین این هفته
به‌زودی

راهنماهای دات‌هوش

راهنماهای کاربردیِ دات‌هوش برای کار با هوش مصنوعی — از همین‌جا شروع کنید:

دات‌هوش

راهنمای فارسی هوش مصنوعی — با نگاه به ایران

اخبار روزانه، معرفی ابزارها و مدل‌ها، و آموزشِ کار با هوش مصنوعی؛ همیشه با این پرسش که از ایران چه چیزی کار می‌کند و چه چیزی نه.