Sub-Agents
قم بإنشاء وكلاء فرعيين للمهام المعقدة أو طويلة المدى. كل وكيل فرعي له سياقه الخاص ويمكنه العمل بشكل مستقل.
متى تستخدم Sub-Agents
- المهام المعقدة: المشاريع متعددة الخطوات التي تحتاج إلى سياق مخصص
- العمل طويل المدى: المهام التي تستغرق > 5 دقائق
- التنفيذ المتوازي: تشغيل مهام متعددة في نفس الوقت
- المهام المجدولة: الوكلاء الفرعيون يمكنهم الاستمرار بعد انتهاء الجلسة الرئيسية
إنشاء Subagent
{
"tool": "subagent",
"action": "spawn",
"label": "data-processor",
"prompt": "معالجة ملف CSV وإنشاء تقرير",
"channel": "telegram",
"replyTo": "<message-id>"
}المعاملات:
label: معرف فريد للوكيل الفرعيprompt: المهمة/التعليمات للوكيل الفرعيchannel: أين يرسل النتائجreplyTo: ID الرسالة للرد عليهاmodel(اختياري): نموذج LLM للاستخدامthinkingLevel(اختياري): off | low | medium | high
إدارة Subagents
قائمة الوكلاء الفرعيون:
{"tool":"subagent","action":"list"}إيقاف Subagent:
{"tool":"subagent","action":"kill","label":"data-processor"}إرسال رسالة إلى Subagent:
{"tool":"agent_send","target":"data-processor","message":"ما هي الحالة؟"}أفضل الممارسات:
- استخدم labels وصفية للوكلاء الفرعيين
- قدم تعليمات واضحة في
prompt - راقب الوكلاء الفرعيون النشطة بانتظام
- قم بالتنظيف بعد اكتمال المهمة
دورة حياة Subagent
- Spawn: إنشاء وكيل فرعي بـ
labelوprompt - Execute: الوكيل الفرعي يعمل على المهمة بشكل مستقل
- Report: يرسل تحديثات/نتائج إلى
channel - Complete: الوكيل الفرعي ينتهي ويرسل الرسالة النهائية
مثال: معالج دفعات
// 1. إنشاء subagent
{
"tool": "subagent",
"action": "spawn",
"label": "batch-processor",
"prompt": "معالجة جميع ملفات CSV في /data/ وإنشاء تقرير ملخص",
"channel": "telegram"
}
// 2. التحقق من الحالة
{"tool":"subagent","action":"list"}
// 3. التواصل إذا لزم الأمر
{"tool":"agent_send","target":"batch-processor","message":"ما النسبة المئوية للاكتمال؟"}
// 4. الانتظار حتى يرسل الوكيل الفرعي النتائج
// (سيرسل إلى Telegram تلقائيًا عند الانتهاء)الإعدادات
{
agents: {
defaults: {
subagents: {
maxConcurrent: 5,
defaultModel: "anthropic/claude-sonnet-4-5",
defaultThinkingLevel: "low"
}
}
}
}