ACAI؛ مدیریت اسپک نرمافزار برای آدم و ایجنت
خلاصهٔ کاملتر
این پروژه یه مجموعه ابزار متنبازه به اسم ACAI (مخفف Acceptance Criteria for AI) که میخواد توسعهٔ اسپکمحور رو راحت کنه. ایدهاش اینه که نیازمندیها و معیارهای پذیرش پروژه رو تو یه فرمت ساده به اسم feature.yaml مینویسی و این فایلها مرتب و قابلردیابی میمونن. به گفتهٔ سازندهها این کار میتونه جای تیکتهای گیتهاب و Linear رو بگیره.
ابزار سه بخش داره: یه فرمت اسپک ساده، یه CLI که خودت یا LLM باهاش اسپک و نیازمندی و وضعیت و کامنتها رو پوش و پول میکنین، و یه سرور و داشبورد برای QA و کدریویو و همکاری تیمی. شروع کارشم با یه دستور سادهست:
npx @acai.sh/cli --helpجالبترین بخش، سیستمیه که اسمش رو ACID گذاشتن: هر نیازمندی یه شناسهٔ یکتا، پایدار و خونا میگیره (مثل profile.AUTH.1) و این شناسه رو میتونی هر جای ریپو ارجاع بدی. بعد با یه دستور این ارجاعها از کد بیرون کشیده میشن، پس دقیقاً معلومه هر نیازمندی کجا پیاده و کجا تست شده.
به گفتهٔ نویسندهها این رویکرد برای ایجنتهای LLM عالیه؛ شناسهها باعث میشن ایجنت راحت context پیدا کنه و نیت یه پیادهسازی یا تست رو ردیابی کنه. مزیت دیگه اینه که وقتی ایجنت از مسیر منحرف میشه، پیشرفتت رو از دست نمیدی چون اسپک منبع حقیقت میمونه، حتی وقتی پیچیدگی زیاد میشه.
برای کدریویو هم پیشنهادشون اینه که به جای خوندن diffهای بزرگ از بالا به پایین، تو داشبورد مستقیم برو سراغ تابعها و تستها و کامنتهایی که به هر نیازمندی ارجاع دادن، و اول نیازمندیهای مهمتر مثل احراز هویت، امنیت و پرفورمنس رو بررسی کن. ACAI با مونوریپو و پلیریپو و هر جور گیت ورکفلویی کار میکنه و میشه بهتدریج به هر پروژهٔ موجودی اضافهاش کرد.
نکات کلیدی:
- نیازمندیها تو فایل feature.yaml نوشته میشن و قابلردیابی میمونن
- یه CLI برای پوش و پول اسپک، و یه سرور و داشبورد برای QA و همکاری
- سیستم ACID به هر نیازمندی یه شناسهٔ یکتا و گرپشدنی میده
- اسپک منبع حقیقت میمونه تا ایجنتهای هوش مصنوعی از مسیر منحرف نشن
- با مونوریپو، پلیریپو و هر گیت ورکفلویی سازگاره و تدریجی اضافه میشه




