برای عاملهای هوش مصنوعی، CLIات رو بازنویسی نکن
خلاصهٔ کاملتر
یه توصیهای این روزها دستبهدست میشه: برای اینکه عاملهای هوش مصنوعی بهتر بتونن از ابزار خط فرمان (CLI) تو استفاده کنن، آرگومانها رو با یه پیلود واحد --json جایگزین کن. منطقش اینه که عاملها ذاتاً با فرمتهای ساختاریافته فکر میکنن و داده تودرتو تمیز به JSON نگاشت میشه، در حالی که آرگومانهای تخت قراردادهای ناجوری مثل تکرار --service-name رو مجبور میکنن که مبهمه. نویسنده (تیم مایکروسافت) میگه این یه فرضیه معقوله، ولی خواستن ببینن زیر ذرهبین اندازهگیری هم دووم میآره یا نه.
برای تست، یه CLI مصنوعی به اسم podctl ساختن که استقرارهای چندسرویسی میسازه. سناریو عمداً پیچیده بود: دو سرویس با پیکربندی مستقل، سه سطح تودرتویی، آرایهها، انواع داده مخلوط و ارجاع متقابل بین سرویسها — بیش از ۳۰ مقدار مجزا. دو نسخه از CLI ساختن که یکی فقط آرگومان جدا میپذیرفت و اون یکی فقط پیلود --json، ولی هردو همون backend اعتبارسنجی رو داشتن و به یه ساختار متعارف نرمال میشدن.
طبق روش کار، چون CLI برای مدل ناشناخته بود، عامل باید از صفر مدل ورودی رو کشف میکرد؛ برای حالت آرگومان یعنی صدا زدن help، و برای JSON یعنی صدا زدن help بهعلاوه یه دستور اضافه که اسکیمای JSON رو برمیگردوند. هر مدل پنج بار به ازای هر حالت ورودی با پرامپت یکسان اجرا شد و از GitHub Copilot Chat بهعنوان بستر استفاده شد. مدلهای تستشده شامل Claude Haiku 4.5، Sonnet 4.6، Sonnet 5، GPT-5.3-Codex و MAI-Code-1-Flash بودن.
نتیجه غافلگیرکننده بود: توی حالت آرگومان، همه مدلها در هر پنج اجرا درستی کامل (۵ از ۵) داشتن — حتی Haiku 4.5 که کوچیکترین مدل بود، بهاندازه Sonnet 5 قابلاتکا استقرار درست تولید کرد. ولی توی حالت JSON تصویر فرق داشت: سه مدل قویتر ۵ از ۵ گرفتن، اما دو مدل کوچیکتر نه؛ Haiku 4.5 فقط ۲ از ۵ و MAI-Code-1-Flash ۳ از ۵ استقرار درست دادن.
جمعبندی نویسنده اینه که برخلاف اون توصیه رایج، بازنویسی CLI برای پذیرفتن یه پیلود JSON نهتنها لزوماً کمک نمیکنه، بلکه میتونه درستی رو مخصوصاً برای مدلهای کوچیکتر پایین بیاره. آرگومانهای ساده و آشنا انتخاب مطمئنتری موندن.
نکات کلیدی:
- فرضیه رایج: برای عاملهای AI، آرگومانهای CLI رو با پیلود JSON جایگزین کن
- مایکروسافت با یه CLI آزمایشی (podctl) و پنج مدل این رو سنجید
- حالت آرگومان روی همهٔ مدلها درستی کامل (۵ از ۵) داشت
- حالت JSON روی مدلهای کوچیکتر ضعیفتر بود (Haiku 4.5 فقط ۲ از ۵)
- نتیجه: لازم نیست CLIات رو برای عاملها بازنویسی کنی




