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

جدا کردن دستورالعمل‌های عامل‌های AI از کد؛ راهکاری برای مدیریت مقیاس‌پذیر

·۱۱ تیر ۱۴۰۵۴ دقیقه مطالعه
راهنما
نمونه و نحوه نوشتن CLAUDE.md/AGENTS.md برای عامل FastAPI نسخه ۲۰۲۶
نمونه و نحوه نوشتن CLAUDE.md/AGENTS.md برای عامل FastAPI نسخه ۲۰۲۶
اشتراک‌گذاری
واقعاً چه چیز جدید است؟

جدا کردن کامل دستورالعمل‌های رفتاری عامل‌ها از کد منبع و تبدیل آن‌ها به فایل‌های پیکربندی ورژن‌دار (مدل‌های .md) برای ابزارهای توسعه مدرن.

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

به نقل از وب‌سایت dev.to، در ۲ ژوئیه ۲۰۲۶ چارچوبی عملیاتی و مفصل معرفی شد که نشان می‌دهد چگونه می‌توان رفتار عامل‌ها را از منطق برنامه در سرویس‌های FastAPI جدا کرد و از فایل‌های قوانین اختصاصی برای این منظور استفاده نمود. این رویکرد، مشکل «پرامپت‌های متورم» (Bloated Prompts) را حل می‌کند، زیرا از فایل‌هایی بهره می‌برد که ابزارهایی مانند Claude Code، Cursor و OpenAI Agents SDK هنگام شروع به کار به‌طور خودکار بارگذاری می‌کنند. در این مدل، به‌جای به‌روزرسانی یک رشته متنی (String) در کدبیس، توسعه‌دهنده یک فایل متنی ساده را ویرایش می‌کند. این بدان معناست که هر تغییر رفتاری از طریق Git ردیابی می‌شود و بازرسی‌ها (Audits) و بررسی‌های همتا (Peer Reviews) را بسیار ساده می‌کند. این متدولوژی در واقع تکامل یافته‌ی رویکردهای سیستمی برای هم‌ترازی استانداردهای کدنویسی AI با معماری پروژه است که پیش‌تر برای محیط‌های توسعه بررسی شده بود.

همان‌طور که در تحلیل‌های پیشین ما درباره‌ی امنیت مدل‌های بازمتن اشاره کردیم، شفافیت در دستورالعمل‌ها اولین قدم برای جلوگیری از رفتارهای پیش‌بینی‌نشده است. در این معماری پیشنهادی، برای حفظ سازگاری، قوانین به سه سطح و نقش متمایز تقسیم می‌شوند:

  • CLAUDE.md: توسط Claude Code CLI برای اعمال قراردادهای کدنویسی و تعریف عملیات‌های ممنوعه در کل کدبیس استفاده می‌شود.
  • .cursorrules: مخصوص Cursor IDE طراحی شده است تا سبک تکمیل خودکار کد (Completions) و استایل تولید محتوا را هدایت کند.
  • AGENTS.md: برای OpenAI Agents SDK طراحی شده تا قوانین سطح بالا را بین دسته‌ای از عامل‌ها (Multi-agent swarms) به اشتراک بگذارد.

برای یک پروژه معمولی FastAPI، توصیه می‌شود فایل CLAUDE.md در ریشه (Root) مخزن قرار گیرد. طبق مستندات این راهنما، این فایل باید استک فنی و محدودیت‌های عملیاتی صریح را به‌طور دقیق تعریف کند.

در جزئیات فنی، یک قالب استاندارد برای CLAUDE.md پیشنهاد شده است تا کیفیت بالای کد تضمین شود. این فایل باید محیط دقیق و استانداردهای کدنویسی را به شرح زیر بیان کند:

  • تعاریف استک فنی: الزام استفاده از پایتون ۳.۱۲، FastAPI ۰.۱۱۵ و Pydantic v2. تمام پردازش‌های غیرهمزمان باید به‌صورت یکپارچه از طریق async/await مدیریت شوند و استفاده از ماژول threading به‌طور اکید ممنوع است. دسترسی به دیتابیس نیز باید محدود به نشست‌های غیرهمزمان (Async Sessions) در SQLAlchemy 2.0 باشد.
  • قراردادهای کدنویسی: تمامی نقاط انتهایی (Endpoints) باید در مسیر src/api/v1/ قرار گیرند. مدل‌های پاسخ (Response models) باید در پوشه schemas/ تعریف شوند و به‌جای استفاده از orm_mode=True (در نسخه‌های قدیمی)، از متد model_validate() استفاده شود. همچنین، استثناها (Exceptions) نباید مستقیماً با HTTPException ایجاد شوند، بلکه باید از طریق زیرکلاس‌های AppError در فایل src/exceptions.py مدیریت گردند.
  • عملیات‌های ممنوعه: فراخوانی مستقیم توابع os.system() یا subprocess ممنوع است. انجام عملیات‌های مستقیم DROP یا TRUNCATE بر روی دیتابیس‌های محیط عملیاتی (Production) ممنوع است و محتویات فایل .env هرگز نباید در لاگ‌ها چاپ شوند.
  • استانداردهای تست: هر نقطه انتهایی جدید باید یک تست pytest متناظر در مسیر tests/api/ داشته باشد. توسعه‌دهندگان باید به‌جای unittest.mock از mocker مربوط به کتابخانه pytest-mock استفاده کنند.
  • محدودیت‌های خاص عامل: حداکثر توکن‌های مجاز برای فراخوانی ابزار (Tool call) روی ۴۰۹۶ تنظیم شده است. در صورتی که عامل در مورد اقدامی عدم قطعیت داشته باشد، باید حتماً از ابزار ask_human استفاده کند. همچنین، هرگونه عملیات نوشتن (POST/PUT/DELETE) در APIهای خارجی نیازمند تأیید صریح کاربر است.

در بحث هماهنگی چندعاملی، زمانی که از OpenAI Agents SDK (v2) استفاده می‌شود، فایل AGENTS.md به عنوان لایه رفتاری مشترک برای زیر-عامل‌ها (Sub-agents) عمل می‌کند. منطق این فایل بر تعریف دقیق مرزها تمرکز دارد تا از «انحراف عامل» (Agent Drift) جلوگیری شود.

برای مثال، این چارچوب مرزهای نقش را به‌صورت صریح تعریف می‌کند: یک research_agent تنها به جمع‌آوری اطلاعات محدود است و از نوشتن فایل‌ها منع شده است؛ یک writer_agent فقط مجاز به تولید فایل‌های Markdown است و دسترسی به APIهای خارجی ندارد؛ و یک publish_agent تنها اجازه دارد محتوای تأییدشده را پست کند و انتشار خودکار پیش‌نویس‌ها (Drafts) برای او ممنوع است.

علاوه بر این، برای جلوگیری از شکست‌های هزینه‌بر یا ایجاد حلقه‌های بی‌نهایت (Infinite Loops)، حفاظ‌های عملیاتی سخت‌گیرانه‌ای اضافه شده است. این موارد شامل «قانون تشخیص حلقه» است که اگر یک ابزار سه بار متوالی فراخوانی شود، فرآیند را متوقف می‌کند. همچنین یک «سقف بودجه» تعریف شده که اگر هزینه یک تسک واحد از ۰.۱۰ دلار فراتر رود، پردازش را متوقف می‌سازد.

به باور نویسندگان این راهنما، فایل‌های قوانین نباید صرفاً «لیستی از نه» یا فهرستی از ممنوعیات باشند. اضافه کردن دلیل و منطق (Reasoning) پشت هر محدودیت — برای مثال ذکر اینکه حذف دیتابیس در محیط عملیاتی غیرقابل بازگشت است — به‌طور قابل توجهی نرخ پیروی عامل از قوانین را افزایش می‌دهد. این کار باعث می‌شود عامل از «اطاعت کورکورانه» به «پایبندی مبتنی بر بستر» (Context-aware adherence) برسد.

برای حفظ یکپارچگی و سلامت این فایل‌ها، سه استراتژی مدیریتی پیشنهاد می‌شود:

  • یکپارچگی با Git: فایل‌های قانون باید در همان Pull Request (PR) همراه با تغییرات مربوط به کد ارسال شوند تا از عدم همزمانی (Desynchronization) بین مشخصات فنی و رفتار عامل جلوگیری شود.
  • اعتبارسنجی CI: ادغام ابزار markdownlint در خط‌لوله‌های CI. این کار تضمین می‌کند که فضاهای خالی تصادفی یا ساختارهای لیست شکسته منجر به تفسیر غلط مدل‌های زبانی بزرگ (LLM) نشود — شبیه کتابخانه‌داری که میلیاردها صفحه را خوانده و حالا با همان لحن جواب می‌دهد اما ممکن است یک علامت نادرست او را گمراه کند.
  • بازنویسی محلی (Overrides): استفاده از فایلی به نام CLAUDE.local.md (که در .gitignore قرار می‌گیرد) تا توسعه‌دهندگان بتوانند پیش‌فرض‌های تیمی را برای نیازهای شخصی خود بازنویسی کنند، بدون اینکه مخزن مشترک را آلوده سازند.

این رویکرد، مدیریت عامل‌ها را از یک تکلیف پیکربندی استاتیک به یک چرخه تکرارشونده تبدیل می‌کند. تیم‌ها می‌توانند با شروع از یک مجموعه قوانین حداقلی و افزودن محدودیت‌ها بر اساس گزارش‌های واقعی از شکست‌ها، قابلیت اطمینان عامل را بدون بازنویسی کد اصلی برنامه ارتقا دهند.

گام بعدی شما

  • دستورالعمل‌های پراکنده در پرامپت‌های سیستمی خود را استخراج کرده و در یک فایل .md متمرکز کنید.
  • برای هر محدودیت فنی در فایل قوانین، یک دلیل کوتاه (Reasoning) بنویسید تا نرخ خطای مدل کاهش یابد.
  • ابزار markdownlint را به CI/CD خود اضافه کنید تا ساختار دستورات عامل‌ها همواره استاندارد بماند.

اما اثر این جداسازی بر روی سرعت استنتاج و هزینه توکن‌ها در مقیاس بالا، ابعاد دیگری دارد — به تحلیل ما درباره‌ی بهینه‌سازی هزینه‌های GPU مراجعه کنید.

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

این تغییر رویکرد، قابلیت بازبینی (Reviewability) رفتار عامل‌ها را در تیم‌های مهندسی به شدت افزایش می‌دهد. با تکیه بر اعتبار متدولوژی‌های کنترل ورژن، خطاهای ناشی از تغییرات ناخواسته در پرامپت‌ها به حداقل می‌رسد.

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

برنامه‌نویسان ایرانی که از Cursor یا Claude Code برای توسعه پروژه‌های FastAPI استفاده می‌کنند، می‌توانند با این روش هزینه‌ی بازبینی کد و خطاهای رفتاری عامل‌ها را در تیم‌های کوچک کاهش دهند.

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

جابه‌جایی منطق رفتاری از کد به فایل‌های Markdown، در واقع تبدیل «برنامه‌نویسی عامل» به «مدیریت پیکربندی» است. این رویکرد نشان می‌دهد که در دنیای عامل‌محور، مدیریتِ بستر (Context Management) به اندازه خودِ کد اهمیت پیدا کرده و Git را به ابزاری برای کنترل رفتار AI تبدیل می‌کند.

منابع

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

گفتگو

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

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

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

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

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

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

دات‌هوش

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

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