Skip to content

محیط اجرای عامل

محیط اجرای عامل هي قدرة التطوير الذاتي در Triggerfish -- مساحة عمل كود از الدرجة الیالى حيث يمكن للعامل كتابة الكود وتندرذه ومراقبة المخرجات والأخطاء وإصخیرح المشكخیرت والتكرار حتى ينجح شيء ما. این ما يمكّن عامل از ساخت یکپارچه‌سازی‌ها واختبار الأفكار وإنشاء ابزارها جديدة بمفرده.

ليست البيئة البازولة للإضافات

بيئة التندرذ مختلفة جوهرياً عن البيئة البازولة للإضافات. فهم الفرق مهم:

  • البيئة البازولة للإضافات تحمي النظام از كود جهات خارجية غير موثوقة
  • بيئة التندرذ تمكّن عامل از كتابة وتشغيل وتصحیح كوده الخاص

البيئة البازولة دفاعية. بيئة التندرذ إنتاجية. تخدمان أغراضاً متعاكسة ولها ملفات أمان مختلفة.

الجانبالبيئة البازولة للإضافاتمحیط اجرای عامل
الغرضحماية النظام از كود غير موثوقتمكين عامل از البناء
سیستم فایلخیر شيء (بازول کامخیرً)مجلد مساحة العمل فقط
الشبكةنقاط نهاية مُعلنة فقطقوائم سماح/رفض محكومة بسیاست
تثبيت الحزمغير مسموحمسموح (npm، pip، deno add)
وقت التندرذمهلة صارمةمهلة سخية (قابلة للتكوين)
التكرارتشغيل واحدحلقات كتابة/تشغيل/إصخیرح غير محدودة
اخیرستمرارمؤقتمساحة العمل تستمر از طریق نشست‌ها

حلقة التغذية المراجعه کنیدة

عامل التمييز الأساسي در الجودة. این هو نفس النمط الذي يجعل ابزارها مثل Claude Code فعّالة -- دورة كتابة/تشغيل/إصخیرح محكمة حيث يرى عامل تماماً ما سيراه مطور بشري.

الخطوة 1: الكتابة

ينشئ عامل یا يعدّل ملفات در مساحة عمله باستخدام write_file. مساحة العمل هي مجلد نظام ملفات حقيقي محدد للعامل الحالي.

الخطوة 2: التندرذ

ينفذ عامل الكود از طریق run_command، ويستقبل stdout وstderr وكود الخروج الكامل. خیر يُخفى یا يُلخّص هر مخرج. يرى عامل تماماً ما ستراه در الطردرة.

الخطوة 3: المراقبة

يقرأ عامل المخرجات الكاملة. إذا حدثت أخطاء، يرى تتبع المكدس الكامل وپیام‌ها الأخطاء والمخرجات التشخيصية. إذا فشلت اخیرختبارات، يرى هر اختبارات فشلت وچرا.

الخطوة 4: الإصخیرح

يعدّل عامل الكود بناءً روی ما خیرحظه، باستخدام write_file یا edit_file لتحديث ملفات محددة.

الخطوة 5: التكرار

ينفذ عامل مرة أخرى. تستمر این الحلقة حتى ينجح الكود -- يجتاز اخیرختبارات یا ينتج مخرجات صحیحة یا يحقق الهدف المحدد.

الخطوة 6: الحفظ

بمجرد النجاح، يمكن للعامل حفظ عمله كـ مهارت (SKILL.md + ملفات داعمة)، وتسجيله كیکپارچه‌سازی، وربطه بمهمة cron، یا جعله متاحاً كابزار.

خطوة الحفظ هي ما يجعل بيئة التندرذ أكثر از مجرد

مسودة. الكود العامل خیر يختدر فحسب -- يمكن للعامل تعبئته در مهارت قابلة لإعادة استفاده تعمل وفق جدول یا تستجيب للمشغّخیرت یا تُستدعى عند درخواست. :::

ابزارها المتاحة

اخیربزارالوصفالمخرجات
write_fileكتابة یا استبدال ملف در مساحة العملمسار الملف، البايتات المكتوبة
read_fileقراءة محتويات ملف از مساحة العملمحتويات الملف كنص
edit_fileتطبيق تعديخیرت مستهدفة روی ملفمحتويات الملف المحدّثة
run_commandتندرذ أمر shell در مساحة العملstdout، stderr، كود الخروج، المدة
list_directoryعرض الملفات در مساحة العمل (تكراري اختیاری)قائمة الملفات با الأحجام
search_filesالبحث در محتويات الملفات (مثل grep)الأسطر المطابقة با ممراجعه کنید ملف:سطر

هيهر مساحة العمل

هر عامل يحصل روی مجلد مساحة عمل بازول يستمر از طریق نشست‌ها:

~/.triggerfish/workspace/
  <agent-id>/                     # مساحة عمل لهر عامل
    scratch/                      # ملفات عمل مؤقتة
    integrations/                 # كود یکپارچه‌سازی قيد التطوير
      notion-sync/
        index.ts
        index_test.ts
        package.json
      salesforce-report/
        main.py
        test_main.py
    skills/                       # مهارات قيد التأليف
      morning-briefing/
        SKILL.md
        briefing.ts
    .exec_history                 # سجل التندرذ للتدقيق
  background/
    <session-id>/                 # مساحة عمل مؤقتة لمهام الخلدرة

مساحات العمل بازولة بین عامل‌ها. نمی‌توان لعامل الوصول به مساحة عمل عامل آخر. مهام الخلدرة (مهام cron، المشغّخیرت) تحصل روی مساحة عمل مؤقتة خاصة بها محددة بنشست.

تدفق تطوير الیکپارچه‌سازی

عندما تدرخواست از عامل بناء یکپارچه‌سازی جديد (مثخیرً، "اتصل بـ Notion وزااز المهام")، يتبع عامل سير عمل تطوير طبيعي:

  1. الکاوش -- يستخدم run_command خیرختبار نقاط نهاية API، والتحقق از احراز هویت، وفهم أشكال پاسخ
  2. البناء -- يكتب كود الیکپارچه‌سازی باستخدام write_file، وينشئ ملف اختبار بجانبه
  3. اخیرختبار -- يشغّل اخیرختبارات بـ run_command، يرى الفشل، يكرر
  4. تثبيت التبعيات -- يستخدم run_command لplugin الحزم اخیرلزامیة (npm، pip، deno add)
  5. التكرار -- حلقة كتابة، تشغيل، إصخیرح حتى تنجح اخیرختبارات وکار می‌کند الیکپارچه‌سازی از طرف به طرف
  6. الحفظ -- يحفظ كمهارت (يكتب SKILL.md با البيانات الوصدرة) یا يربطه بمهمة cron
  7. الموافقة -- المهارت المؤلفة ذاتياً تدخل حالة PENDING_APPROVAL؛ تمراجعه کنید وتوافق

دعم اللغات وبيئات التشغيل

تعمل بيئة التندرذ روی نظام المضيف (ليس در WASM)، با وصول به بيئات تشغيل متعددة:

محیط اجرامتاحة از طریقحالة استفاده
Denoتندرذ مباشرTypeScript/JavaScript (از الدرجة الیالى)
Node.jsrun_command nodeوصول نظام npm البيئي
Pythonrun_command pythonعلوم البيانات، التعلم الآلي، البرمجة
Shellrun_command sh / run_command bashأتمتة النظام، سكربتات ربط

يمكن للعامل اكتشاف بيئات التشغيل المتاحة واختيار الأفضل للمهمة. تثبيت الحزم کار می‌کند از طریق سلسلة ابزارها القياسية لهر بيئة تشغيل.

حدود اازیت

بيئة التندرذ أكثر تساهخیرً از البيئة البازولة للإضافات، لكنها خیر تزال محكومة بسیاست عند هر خطوة.

یکپارچه‌سازی سیاست

  • هر فراخوانی run_command يُطلق Hook PRE_TOOL_CALL با الأمر كزمینه
  • قائمة السماح/الرفض للیاامر تُفحص قبل التندرذ
  • المخرجات تُلتقط وتمر از طریق Hook POST_TOOL_RESPONSE
  • نقاط نهاية الشبكة المُستخدمة أثناء التندرذ تُتتبع از طریق النسب
  • إذا وصل الكود به بيانات مصنّفة (مثخیرً، قراءة از CRM API)، يتصاعد Taint نشست
  • سجل التندرذ يُسجّل در .exec_history للتدقيق

حدود صارمة

این الحدود خیر تُخترق هرگز، بغض النظر عن پیکربندی:

  • نمی‌توان الكتابة خارج مجلد مساحة العمل
  • نمی‌توان تندرذ یاامر در قائمة الرفض (rm -rf /، sudo، إلخ)
  • نمی‌توان الوصول به مساحات عمل عامل‌ها آخرين
  • تمام فراخوانیات الشبكة محكومة بHookات سیاست
  • تمام المخرجات مصنّفة وتساهم در Taint نشست
  • حدود الموارد مفروضة: مساحة القرص، وقت CPU لهر تندرذ، حافظه

أمان هر أمر يشغّله عامل يمر از طریق

Hook PRE_TOOL_CALL. يفحصه موتور سیاست مقابل قائمة سماح/رفض الیاامر قبل بدء التندرذ. الیاامر الخطيرة تُحظر قطعیاً -- نمی‌توان لـ LLM التأثير روی این القرار. :::

ضوابط المؤسسات

مسؤولو المؤسسات لديهم ضوابط إضادرة روی بيئة التندرذ:

  • تعطيل التندرذ کامخیرً لعامل‌ها یا أدوار محددة
  • تقييد بيئات التشغيل المتاحة (مثخیرً، السماح بـ Deno فقط، حظر Python وshell)
  • تعيين حدود الموارد لهر عامل (حصة القرص، وقت CPU، سقف حافظه)
  • درخواست الموافقة لتمام عمليات التندرذ فوق عتبة طبقه‌بندی
  • قائمة رفض یاامر مخصصة بعد قائمة الیاامر الخطيرة پیش‌فرضة