بحث داغ کرنل لینوکس سر فایل AGENTS.md
خلاصهٔ کاملتر
AGENTS.md یه فایل متنی سادهست که توی ریشهی مخزن کد قرار میگیره و به ایجنتهای کدنویسی AI دستورهای ثابت میده: سندهای مهم کجان، چه قراردادهایی رعایت بشه و چه کارهایی ممنوعه. بیشتر ابزارها این فایل رو خودکار میخونن (Claude استثناست و CLAUDE.md رو ترجیح میده، ولی میشه بهش symlink زد). Sasha Levin، مهندس NVIDIA، پیشنهاد داد AGENTS.md به README کرنل symlink بشه. تو این مقاله اومده که این پیشنهاد به یه بحث جدی تو LKML (فهرست ایمیل کرنل لینوکس) تبدیل شد.
README کرنل از قبل به ابزارهای AI میگه فایل Documentation/process/coding-assistance.rst رو بخونن که سیاست رسمی کرنل دربارهی AI هست. مشکل اینه که ایجنت فقط وقتی این رو میبینه که اول README رو بخونه و معمولاً نمیخونه. تو یه تست، بدون AGENTS.md یه ایجنت خودش برچسب Signed-off-by رو اضافه کرد. این برچسب فقط کار انسانه، چون تأیید حقوقی Developer's Certificate of Origin هست. یه ایجنت دیگه هم اصلاً برچسب انتساب نزد. با AGENTS.md هر دو برچسب درست «Assisted-by» رو زدن.
اولین مخالفت از Theodore Ts'o بود: README پر از محتوایی هست که به درد ایجنت نمیخوره و خوندنش تو هر جلسه توکن هدر میده. پیشنهادش این بود که ایجنتها فقط فایلهای لازم مثل coding-assistance.rst یا submitting-patches.rst رو وقتی لازمه بخونن. یه توسعهدهندهی دیگه گفت ایجنتها با این فایلها یکسان رفتار نمیکنن و بعضی harnessها (یعنی برنامهای که ایجنت رو اجرا میکنه) ممکنه محتوا رو قبل از هر پیام دوباره بفرستن که هزینه رو چند برابر میکنه.
یه نگهدارنده گفت کرنل یه پروژهی واحد نیست، بلکه مجموعهای از زیرسیستمهاست با قراردادها و اشتباههای رایج متفاوت. یه فایل کلی یا شلوغ میشه یا به درد نمیخوره. پیشنهادش یه قالب با راهنمای نوشتن AGENTS.md شخصی و چند نمونه بود. Laurent Pinchart هم اصلاً با تشویق AI تو توسعهی کرنل مخالف بود و به همین دلیل به رد پچ رأی داد.
یه نگرانی دیگه نمادین بود: خود وجود AGENTS.md این پیام رو میده که پروژه کد LLM رو قبول میکنه. منتقدها میترسیدن مشارکتکنندههای بیدقت این رو اجازهای برای فرستادن پچهای AI بدون بازبینی کافی بدونن، چیزی که بهش «meat proxying» هم میگن، یعنی آدمی که فقط خروجی AI رو بدون فکر جابهجا میکنه. چند نگهدارنده هم گفتن توسعهدهندههای باتجربه به این فایل نیازی ندارن و یه فایل شخصی ۵ تا ۱۰ خطی براشون کافیه.
به گفتهی مقاله، بحث به نتیجه نرسید و هیچ پچ مورد توافقی ثبت نشد. چند نفر هم گفتن فایل میتونه خروجی ایجنت رو شبیه کار کرنل کنه، ولی جای فهمیدن معنی برچسب sign-off رو نمیگیره و این در اصل یه مسئلهی فرایند بازبینیه، نه قالب فایل.
نکات کلیدی:
- پچ Sasha Levin فقط AGENTS.md رو به README کرنل symlink میکرد.
- سیاست AI کرنل تو Documentation/process/coding-assistance.rst هست و برچسب «Assisted-by» رو برای کمک AI لازم میدونه.
- Signed-off-by فقط باید توسط انسان اضافه بشه و تو تست، یه ایجنت بدون AGENTS.md خودش اون رو اضافه کرد.
- Theodore Ts'o نگران هدر رفتن توکن با خوندن کل README بود.
- Laurent Pinchart با اصل استفاده از AI تو کرنل مخالفت کرد.
- هیچ پچ مورد توافقی تو این بحث ثبت نشد.




