تصور کنید ساعتها وقت صرف نوشتن دستورالعملهای دقیق برای عامل هوش مصنوعی خود کردهاید، اما مدل بدون هیچ هشداری تمام آنها را نادیده میگیرد. این اتفاق در Claude Code نسخه ۲.۱.۲۸۰ رخ میدهد؛ جایی که یک گیت پنهان در سمت سرور، دسترسی به خواندن دستورالعملهای محلی پروژه را برای کاربرانی که به حریم خصوصی اهمیت میدهند، به طور مخفیانه غیرفعال میکند. اگر تلمتری (Telemetry) را غیرفعال کرده باشید، این ابزار فایل AGENTS.md شما را بدون هیچ پیامی نادیده میگیرد و بسیاری از کاربران به اشتباه تصور میکنند که مدل صرفاً در پیروی از پرامپتها شکست خورده است.
این کشف در حالی صورت میگیرد که توسعهدهندگان به طور فزایندهای برای هدایت عاملهای هوش مصنوعی به فایلهای پیکربندی محلی متکی شدهاند. همانطور که در تحلیل قبلی ما دربارهی تلاشهای Anthropic برای کاهش هزینههای مدلهای سطح بالا مانند Claude Opus اشاره کردیم، این شرکت اکنون در حال انتقال قابلیتهای عاملمحور (Agentic) — یعنی تواناییهایی که به مدل اجازه میدهد ابزارها را مستقیماً در محیط شل (Shell) محلی اجرا کند — به محیط ترمینال است. اما این پیادهسازی خاص، برای کسانی که تنظیمات سختگیرانهی حریم خصوصی دارند، یک نقطه اصطکاک و مانع جدی ایجاد کرده است. این چالشهای عملیاتی در حالی رخ میدهد که بسیاری از عاملهای سفارشی Claude Code به دلیل عدم بهرهوری یا مشکلات پیکربندی، در ماه اول هیچ فراخوانیای نداشتهاند.
سازوکار فنی مسدودسازی
بر اساس یک گزارش فنی که در ۲۳ سپتامبر ۲۰۲۶ توسط وبسایت blog.szypowi.cz منتشر شد، پلاگین agents-md با مقدار isOnByDefault برابر با false ثبت شده است. ابزار سپس سعی میکند یک پرچم ویژگی (Feature Flag) از راه دور به نام tengu_agents_md_mod را فراخوانی کند تا تعیین کند آیا این قابلیت باید فعال باشد یا خیر.
در بسته نرمافزاری نسخه ۲.۱.۲۸۰، منطق ثبت به این صورت تعریف شده است: var W = !1; var B = () => Oa("tengu_agents_md_mod", W);. در اینجا، W همان مقدار پیشفرض (false) است و B تابع isAvailable است. اگر Claude Code نتواند این پرچم را از سرور دریافت کند، پلاگین غیرقابل دسترس باقی میماند و فایل محلی هرگز خوانده نمیشود.
این بدان معناست که یک عملیات سادهی خواندن فایل محلی، که اساساً به هیچ دسترسی شبکهای نیاز ندارد، به طور کامل به یک سوئیچ در سمت سرور وابسته شده است. بررسیها نشان داد که تنظیمات محیطی زیر باعث فعال شدن این مسدودسازی میشوند:
DISABLE_TELEMETRY=1CLAUDE_CODE_DISABLE_NONESSENTIAL_TRAFFIC=1
اندازهگیری و تستهای عملی
برای تایید این ادعا، نویسنده از یک تست «کلمه قناری» (Canary Word) استفاده کرد. او یک دایرکتوری خالی ایجاد کرد که تنها شامل یک فایل AGENTS.md با متن «کلمه قناری PERIWINKLE است» بود. سپس دستور زیر را اجرا کرد: claude -p 'What is the canary word from the project instructions? Answer NONE if you have none. Do not read files.'
اندازهگیریها چندین رفتار بحرانی را افشا کرد:
- پایداری خطا: تغییر مقدار هر یک از متغیرهای محیطی مذکور به
0کمکی نمیکند؛ مسدودسازی همچنان پابرجا میماند. - محدودیت دامنه: ایجاد یک بلوک محیطی در فایل
.claude/settings.jsonکه هر دو متغیر را پاک میکند، هیچ اثری ندارد. این یعنی هیچ راهی برای فعال کردن این قابلیت تنها برای یک مخزن (Repository) خاص وجود ندارد. - جایگزینهای نشست: یک بازنویسی در سطح نشست (Session-level override) از نشست دوم به بعد با استفاده از دستور زیر عمل میکند:
claude --settings '{"env":{"DISABLE_TELEMETRY":"","CLAUDE_CODE_DISABLE_NONESSENTIAL_TRAFFIC":""}}'. - مشکل گیتویها: کاربرانی که از گیتویهای شخص ثالث مانند Bedrock و Vertex استفاده میکنند، با همین مشکل مواجه هستند، زیرا پرچم راه دور در این محیطها نمیتواند به مقدار true تغییر یابد.
تستها تایید کردند که وقتی این متغیرها تنظیم شده باشند، مدل در پاسخ به پرسشهای مربوط به دستورالعملها، کلمه «NONE» را برمیگرداند، حتی اگر فایل AGENTS.md روی دیسک موجود باشد. هیچیک از این موارد شکست، هیچ هشدار یا خطایی چاپ نمیکنند؛ نشست به سادگی شروع میشود و مدل بدون دسترسی به دستورالعملها پاسخ میدهد.
راهکار جایگزین (Workaround)
برای کسانی که امروز به یک راه حل نیاز دارند، نویسنده یک راهکار ساده را پیشنهاد میکند: ایجاد یک فایل تکخطی به نام CLAUDE.md که حاوی عبارت @AGENTS.md باشد. از آنجایی که وارد کردن فایلها از طریق @path به پرچم تلمتری راه دور وابسته نیست، این کار ابزار را مجبور میکند تا دستورالعملها را بدون توجه به تنظیمات حریم خصوصی شما بارگذاری کند.
این کار را میتوان از طریق دستور زیر انجام داد:echo '@AGENTS.md' > CLAUDE.md
با وجود این فایل، تست کلمه قناری حتی با فعال بودن CLAUDE_CODE_DISABLE_NONESSENTIAL_TRAFFIC=1 پاسخ درست را برمیگرداند. تنها هزینه این کار، اضافه شدن یک فایل اضافی به هر مخزن است؛ دقیقاً همان چیزی که پشتیبانی از AGENTS.md قصد داشت آن را حذف کند.
تحلیل شکست تجربه کاربری
این رفتار نشاندهنده یک نقص جدی در تجربه توسعهدهنده (DX) است. وقتی یک تنظیم حریم خصوصی به طور خاموش یک قابلیت محلی و بیربط را غیرفعال میکند، یک حلقه «شکست خاموش» ایجاد میشود. توسعهدهندگان ساعتها وقت صرف اصلاح پرامپتها میکنند تا یک خطای استدلالی احتمالی را رفع کنند، در حالی که اصلاً خبر ندارند فایل ورودی هرگز به مدل نرسیده است.
این گیت به طور خاص کاربرانی را هدف قرار میدهد که احتمالاً بیشترین نیاز به AGENTS.md را دارند: کسانی که یک فایل دستورالعمل برای چندین عامل نگهداری میکنند و در مورد انتقال دادهها حساس هستند، یا تیمهایی در Bedrock و Vertex که طبق سیاستهای سازمانی، ترافیک غیرضروری را غیرفعال میکنند.
فقدان قابلیتهای محلی-محور
علاوه بر گیت تلمتری، این گزارش به نبود پشتیبانی بومی از مهارتهای مشترک عاملها و پیکربندیهای جهانی اشاره میکند:
- دستورات جهانی: برخلاف Codex که فایل
~/.codex/AGENTS.mdرا میخواند، Claude Code فقط در دایرکتوریهای پروژه به دنبالAGENTS.mdمیگردد. هیچ فایلی در سطح کاربر در کنارCLAUDE.mdکاربر وجود ندارد. - انحراف مهارتها (Skill Drift): نسخه ۲.۱.۲۸۰ Claude Code مهارتها را در مسیر
.agents/skillsتنها در هنگام اجرای دستور/importشناسایی میکند، که منجر به ایجاد یک کپی استاتیک در.claude/skillsمیشود. چون این کپیها از منبع اصلی فاصله میگیرند (منسوخ میشوند)، نویسنده توصیه میکند که.claude/skillsرا به../.agents/skillsلینک نمادین (Symlink) کنید تا مطمئن شوید بهروزرسانیها اعمال میشوند. برای دستیابی به نتایج پایدارتر، میتوان از عادات کلیدی در ساخت مهارتهای قابل اعتماد برای Claude بهره برد تا اثرات منفی انحراف مهارتها کاهش یابد.
در نهایت، این موضوع نشاندهنده تضاد بین تمایل Anthropic برای عرضه مرحلهای قابلیتها از طریق Feature Flagها و انتظارات توسعهدهندگان حرفهای است که به رفتاری قطعی (Deterministic) و محلی-محور (Local-first) در زنجیره ابزارهای خود نیاز دارند.
گام بعدی شما
- اگر از Claude Code استفاده میکنید و احساس میکنید دستورات پروژه شما نادیده گرفته میشوند، فوراً فایل
CLAUDE.mdرا با ارجاع به@AGENTS.mdایجاد کنید. - متغیرهای محیطی
DISABLE_TELEMETRYرا بررسی کنید تا متوجه شوید آیا در معرض این شکست خاموش هستید یا خیر. - برای مدیریت مهارتها، از لینکهای نمادین (Symlinks) استفاده کنید تا تغییرات در مهارتهای عامل بهصورت آنی اعمال شود.
اما داستان سختافزاری این تحول حتی شگفتانگیزتر است — به تحلیل ما دربارهی تراشههای Blackwell مراجعه کنید.




گفتگو