← العودة إلى المدونة
Aiحوالي 1 دقيقة قراءة

ThinkRail من JetBrains: كل وكيل في شجرة عمل خاصة به

نُشر في 2 نوفمبر 2026
ThinkRail من JetBrains: كل وكيل في شجرة عمل خاصة به

لـJetBrains عادة في شحن أدوات تفترض أنك تعرف ما تفعله. ThinkRail مختلف، والفرق في جملة واحدة من README: افتح مستودع git كمشروع، واقطع منه مساحات عمل كـgit worktrees.

هذه هي الأطروحة كلها، وهي أطروحة أفضل من «بيئة تطوير بالذكاء الاصطناعي». ThinkRail مشروع من حاضنة JetBrains، عند نحو 7,100 نجمة بإضافة 5,760 في الأسبوع الماضي، ومبني حول pi، وكيل البرمجة المفتوح. وما أضافته JetBrains ليس لوحة دردشة. إنه السباكة التي تتيح لعدة وكلاء العمل في وقت واحد دون أن يدوس أحدهم على الآخر.

Worktrees بدل الأمل

إن شغّلت وكيلين على المستودع نفسه، تعرف نمط الفشل. واحد يبدأ تحرير auth.ts، والآخر يقرر إعادة هيكلة auth.ts، وتنفق الأصيل في التنقيب داخل تعارض دمج يظن كل طرف أنه كتبه.

جواب ThinkRail أن كل مساحة عمل هي git worktree بفرعها ومجلد عملها. الوكلاء يعملون بالتوازي ولا أحد منهم يمسّ نسختك المستخرجة. تدمج الفرع الذي يعجبك وتحذف الباقي.

وفوق ذلك ترتيب منزلي لطيف: مساحات العمل المنتهية والخامدة تستقر من تلقاء نفسها على رفٍّ لكل مشروع، عندما يُدمج طلب السحب الخاص بها أو يُغلق، أو بعد أسبوع هادئ، وتعود في اللحظة التي تعمل فيها بها مجدداً. فإن سبق أن كان لديك عشرون فرعاً بائتاً باسم fix-thing-2، فهذه هي الميزة التي لم تكن تعرف أنك تريدها.

Four identical wooden workbenches in a workshop, each lit by its own lamp

الشريط العلوي يتتبع موقع الفرع النشط بالنسبة إلى origin وطلب السحب الخاص به، ويضع الخطوة التالية على بعد نقرة: نشر، أو دفع، أو فتح PR موصوف من الخطة، أو من الـcommits، أو من قالبك، أو من مسودة يكتبها وكيل. وبعد فتح PR يعرض فحوص CI وقرار المراجعة، ويتيح إعادة الفحوص الفاشلة أو الفرع المتباعد إلى الوكيل.

الجزء الخاص بالمحرر حقيقي، لا زخرفي

تبويبات Monaco قابلة للتقسيم، وشجرة ملفات بعلامات تغيير git الحية، وعرض للملفات المتغيرة، وطرفيات، ومستندات، كلها محصورة في مساحة العمل النشطة. يمكنك ترك تعليقات مراجعة مثبتة على الملفات والـdiffs وإرسالها إلى الدردشة كسياق منظم. أو افتح شجرة العمل في محررك المثبت، وهذا اعتراف صادق بأن بعضنا ما زال يريد WebStorm.

الدردشات تُبثّ مع عرض حي للرموز والكلفة لكل جلسة، وهذا نوع التفصيل الذي يظهر فقط حين يكون من يبنون الأداة يدفعون فواتيرهم بأنفسهم. يمكنك توجيه دور جارٍ، وإضافة متابعة إلى الطابور، وتفويض وكلاء فرعيين، والعمل على خطة مشتركة يحدّثها الوكيل أثناء تحريرك لها. وكل خطوة مكتملة يمكن إيداعها ومراجعتها وحدها، وهي وحدة مراجعة أفضل بكثير من «هاك 38 ملفاً».

ولوحة الأوامر على ⌘K، أو نقرة مزدوجة على Shift، تجد الدردشات ومساحات العمل والمشاريع في كل مشروع مفتوح. وبلا كتابة شيء تسرد الدردشات التي تنتظرك، وهذا هو الافتراضي الصحيح لأداة تدير جلسات كثيرة.

المواصفات هي ما يبقى

الميزة التي أعود إليها هي رسم المواصفات. مجموعة مترابطة من ملفات SPEC.md تعيش بجانب الكود، ويقرأها الوكيل ويبحث فيها ويصونها عبر أدوات spec_* مخصصة. وأداة Specs للقراءة فقط تعرض الرسم كشجرة في مساحة العمل.

والمنطق سليم. نوافذ السياق تنتهي. الجلسات تنتهي. وما يبقى هو ما كتبته. معظم أدوات الوكلاء تعامل «تذكّر الخطة» كمسألة ذاكرة؛ وThinkRail تعاملها كمسألة توثيق، وهي النسخة التي يستطيع إنسان أيضاً قراءتها بعد ستة أشهر.

وهي أيضاً الميزة الأكثر عرضة للتعفن. رسم مواصفات يصونه الوكيل ولا يراجعه أحد يصبح وصفاً واثقاً ومفصلاً جداً لبرمجية لم تعد موجودة. الأدوات تجعل الصيانة رخيصة؛ ولا تجعلها مجانية، والانضباط عليك.

التثبيت

صيغتان، كلتاهما إضافية: مثبّت سطح مكتب أصلي، وأداة سطر أوامر مكتفية بذاتها تفتح التطبيق نفسه في متصفحك. وكلتاهما تنشر SHA256SUMS في صفحة الإصدارات.

سطر الأوامر على macOS أو Linux، وعلى Windows تحت Git Bash:

curl -fsSL https://raw.githubusercontent.com/JetBrains/thinkrail/main/install.sh | bash

وعلى Windows، من cmd أو PowerShell:

powershell -c "irm https://raw.githubusercontent.com/JetBrains/thinkrail/main/install.ps1 | iex"

ثم:

thinkrail ~/code/my-repo

تحتاج git في PATH ومزوّد نموذج. سجّل الدخول بـJetBrains AI من التطبيق، أو اربط أي مزوّد عبر مصادقة pi نفسها. ولا حسابات ThinkRail، وهذه جملة لم أتوقعها من JetBrains.

إصدارات سطح المكتب على Linux تحتاج glibc 2.38 أو أحدث مع GTK 3 وWebKitGTK 4.1 وAyatana AppIndicator 3 وlibrsvg 2 — عملياً Ubuntu 24.04 أو أحدث. والمحدّث يظهر فقط عندما تحمل الحزمة هوية تغذية HTTPS صالحة، فالإصدارات الأقدم من تلك الهوية تحتاج تثبيتاً يدوياً واحداً أولاً.

التفصيل الذي يجعله محمولاً

يقرأ ThinkRail إعداد ~/.pi/agent الموجود لديك. وجّهه إلى مكان آخر بـPI_CODING_AGENT_DIR إن كنت تحتفظ بملف تعريف للعمل. وتحت الإعدادات، Custom servers يربط أي نقطة نهاية متوافقة مع OpenAI — LiteLLM وsglang وvLLM وOllama وLM Studio وllama.cpp — ويكتبها في models.json الخاص بـpi، فتظهر تلك النماذج في منتقي الدردشة وفي سطر الأوامر سواء.

وخوادم MCP من mcp.json تأتي معك أيضاً، بالسلوك الصحيح: يسأل ThinkRail في الدردشة قبل الاستدعاءات التي لا يعلّمها الخادم للقراءة فقط، ويُبقي الخوادم المعرّفة في المستودع معطّلة حتى توافق عليها، ويسجّلك في خوادم OAuth من الإعدادات.

وإضافات الوكيل عملية بالقدر نفسه. الإعدادات تسرد ما يحصل عليه الوكيل، وتتيح تعطيل كل واحدة، وتثبّت أي حزمة pi من مصدرها — npm أو git أو مجلد محلي — لك أو لمستودع. وأداتا ask-user-question وvisualize منشورتان كحزمتين منفصلتين، فيحصل pi العادي في طرفية على أسئلة الاختيار المتعدد نفسها والرسوم المضمّنة نفسها.

ما سأراقبه

سبعة آلاف وستمئة نجمة في أسبوع لمشروع في حاضنة رقم كبير من الاهتمام لشيء لم يمر بدورة إصدار JetBrains. ومشاريع الحاضنة في JetBrains لها تاريخ: إما تصبح منتجات أو تتوقف بهدوء، والنسخ التجريبية لها طريقة في أن تصير النسخة التي تعتمد عليها.

والخطر الآخر مفاهيمي. هذه أداة كاملة جداً بأسطح كثيرة: worktrees، ومواصفات، ولوحات، وإضافات، وMCP، وسمات، وخطوط، وأربع لغات مدمجة مع مسار موثّق لإضافة لغتك. كل واحد منها مكان للضبط بدل كتابة الكود. وأفضل نتيجة لـThinkRail أن يصبح نموذج شجرة العمل صحيحاً إلى حد البداهة بحيث لا يتحدث عنه أحد بعد الآن، وأن تتنحى بقية التطبيق جانباً.

جرّبه إن كنت تشغّل وكلاء متوازين بالفعل وجوابك الحالي «عدة نوافذ طرفية وأصابع مشدودة». عزل شجرة العمل وحده يستحق التنزيل. أما تجربته كمحرر عادي، فستجد أنه لا يحاول أن يكون واحداً.

مقالات ذات صلة