🧠هوش مصنوعیسال: ۱۴۰۵تکمیل‌شده

نیگان ایجنت

یک ایجنت کدنویسی که کار خودش را قضاوت می‌کند — به Rust، و آفلاین اجرا می‌شود

نیگان ایجنت cover
RustRatatuiWebSocketlocal model backendsTOML skill memory

بیشتر ابزارهای کدنویسی با AI، یک prompt و یک کلید API هستند. این یکی یک سیستم کوچک است که کار خودش را بررسی می‌کند.

چیست

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

در ظاهر ایدهٔ کوچکی است. در عمل رفتار کل سیستم را عوض می‌کند: چون هر گام بازبینی می‌شود، گامی که بی‌صدا هیچ کاری نکرده همان‌جا گرفته می‌شود نه سه گام بعدتر؛ و چون نقد ثبت می‌شود، تلاش بعدی روی همان نوع کار از چیزی که آموخته شده شروع می‌کند.

نکتهٔ دیگر: روی مدل‌های محلی اجرا می‌شود. بدون کلید API، بدون حساب، بدون شبکه. با هر مدلی که روی ماشین در حال اجراست حرف می‌زند.

چه کار می‌کند

  • برنامه‌ریزی یک هدف به گام‌های اجرایی.
  • بازبینی خروجی هر گام پیش از ادامه — این بخش مهم است.
  • امتیازدهی به کد روی یک مقیاس، تا «بهتر» یعنی چیز مشخص نه اینکه فقط حس بهتری داشته باشد.
  • نقد خود و ثبت اینکه کجا اشتباه رفت.
  • به‌خاطرسپاری مهارت‌ها به‌صورت فایل‌های کوچک TOML، تا یک درس دو بار آموخته نشود.
  • تمیز نگه‌داشتن کانتکست خودش، چون ایجنتی که در هر گام همه‌چیز را دوباره بخواند پیشرفت نمی‌کند.
  • پخش دوبارهٔ سشن‌های گذشته، تا یک اجرا قابل تکرار و مقایسه باشد.
  • جلوگیری از دستورهای خطرناک و محدود کردن فایل‌هایی که می‌تواند لمس کند.
  • رابط ترمینال و رابط مرورگر روی یک API وب‌سوکت.

اعداد

حدود ۲٬۸۰۰ خط Rust
بیش از ۳۰ ماژول
۰ کلید API لازم

چرا ارزش دیدن دارد

دلیل ساختن این، داشتن یک ایجنت نیست. این است که بفهمیم حلقهٔ «کار خودت را بررسی کن» واقعاً خروجی را بهتر می‌کند یا مدل فقط متقاعدکننده با خودش توافق می‌کند.

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

وضعیت فعلی

  • امتیازهای کیفیت خودِ مدل داده می‌شود، که ضعف بنیادی هر چیزی در این دسته است، از جمله چیز من.
  • کوچک است. سی ماژول، نه یک پلتفرم.
  • روی هر مدل محلی‌ای که به آن اشاره کنی اجرا می‌شود، پس کیفیت خروجی محدود به همان مدل است.

پروژه‌های بیشتر