ThinkRail: IDE ایجنتی جتبرینز که پروژهت رو یاد میگیره
خلاصهٔ کاملتر
ThinkRail یه IDE ایجنتی از جتبرینزه که دور ایجنت کدنویسی pi ساخته شده. تیم سازنده میگه هدفش IDEیه که هر بار استفادهش کنی بهتر بشه: امروز با «اسپکهای زنده» پروژهت رو یاد میگیره و قراره بعداً با پشتیبانی کامل از extension، ابزارهای مورد نیازش رو خودش بسازه.
پایهٔ کار workspaceهای ایزولهست. هر workspace یه git worktree هست (یعنی یه پوشهٔ کاری جدا با برنچ خودش از همون ریپو). اینجوری چند ایجنت میتونن موازی کار کنن بدون اینکه به checkout اصلیت دست بزنن؛ برنچ خوب رو merge میکنی و بقیه رو پاک میکنی. نوار بالا وضعیت برنچ نسبت به origin و PR رو نشون میده و میشه از همونجا push کرد، PR باز کرد، چکهای CI رو دید یا تستهای fail شده رو داد دست ایجنت.
برای اینکه هدف و تصمیمهای پروژه بعد از بستهشدن سشن از دست نره، یه گراف از فایلهای SPEC.md کنار کد نگه داشته میشه. ایجنت با ابزارهای spec_* این اسپکها رو میخونه، توشون جستجو میکنه و بهروزشون میکنه. خود ThinkRail هم همینجوری توسعه داده میشه: کنار هر ماژول یه SPEC.md هست و هر تغییری که مرز یا قراردادی رو جابهجا کنه، اسپک رو هم تو همون تغییر آپدیت میکنه.
دور ایجنت یه IDE واقعی هم هست: ادیتور Monaco، درخت فایل با علامت تغییرات git، ترمینال و امکان کامنتگذاشتن روی فایل و diff که به شکل context ساختاریافته به چت فرستاده میشه. تو هر workspace چند سشن pi همزمان با مدل و هزینهٔ توکن جدا میچرخه و میشه کار رو به subagentها سپرد. از سرورهای MCP هم پشتیبانی میکنه و قبل از صدازدن ابزاری که read-only نیست، تو چت اجازه میگیره.
از نظر فنی، ThinkRail یه میزبان سبکه که pi رو داخل همون پروسه اجرا میکنه و به یه UI وب وصلش میکنه. خود pi مدلها، مهارتها، compaction و وضعیت سشن رو مدیریت میکنه و ThinkRail پشت سرت پرامپت سرهم نمیکنه. UI با React 19، Zustand و Tailwind v4 نوشته شده. حساب کاربری جدا نداره و یا با JetBrains AI لاگین میکنی یا از اعتبارنامههای provider خودت تو pi استفاده میکنی. آمار استفادهٔ پایه و گزارش خطا همیشه فرستاده میشه، ولی طبق README شامل پرامپت، کد یا فایل نیست.
نکات کلیدی:
- روی ایجنت متنباز pi ساخته شده و لایسنسش Apache 2.0 هست
- هر workspace یه git worktree جداست تا ایجنتها موازی کار کنن
- دانش پروژه تو فایلهای SPEC.md ذخیره میشه و ایجنت با ابزارهای spec_* مدیریتش میکنه
- نسخهٔ دسکتاپ برای macOS 14+، ویندوز x64 و لینوکس (Ubuntu 24.04 به بالا) و یه CLI که اپ رو تو مرورگر باز میکنه
- برای توسعه به Bun 1.4.4 و Node.js 22.19 به بالا نیاز داره
- زبانهای داخلی: انگلیسی، ژاپنی، چینی ساده و اسپانیایی




