تنسيق مواصفات الوكيل
تنسيق مواصفات الوكيل
تُعرَّف وكلاء Tajo في ملفات markdown. يحتوي كل ملف على frontmatter YAML (الهوية، الأدوات، القيود) وجسم markdown (التعليمات، الاستراتيجية، القواعد). هذا التنسيق مستوحى من أنماط وكلاء الإنتاج المستخدمة في أنظمة التنسيق متعدد الوكلاء.
بنية الملف
---name: agent-namedescription: What this agent does (max 160 chars)version: 1.0.0temperature: 0.2max_tokens: 4096tools: - brevo_contacts - brevo_email_campaign_management - brevo_sms_campaignstriggers: - event: cart_abandoned - schedule: "0 */4 * * *"permissions: - contacts:read - email:send - sms:send---
# Agent Name
Instructions for the agent in natural language...حقول Frontmatter
الحقول المطلوبة
| الحقل | النوع | الوصف |
|---|---|---|
name | string | معرّف فريد بصيغة kebab-case (مثل cart-recovery-agent) |
description | string | ما يفعله هذا الوكيل (حد أقصى 160 حرفاً) |
version | string | إصدار دلالي (مثل 1.0.0) |
tools | array | وحدات خادم Brevo MCP التي يمكن لهذا الوكيل الوصول إليها |
حقول السلوك
| الحقل | النوع | الافتراضي | الوصف |
|---|---|---|---|
temperature | float | 0.3 | درجة حرارة النموذج. أقل = أكثر حتمية. استخدم 0.1-0.2 لعمليات البيانات، 0.3-0.5 لتصميم الحملات |
max_tokens | integer | 4096 | الحد الأقصى لطول الاستجابة لكل دور |
model | string | claude-sonnet-4-6 | نموذج LLM المستخدم |
حقول المُشغّلات
| الحقل | النوع | الافتراضي | الوصف |
|---|---|---|---|
triggers | array | [] | الأحداث أو الجداول أو webhooks التي تنشّط هذا الوكيل |
triggers[].event | string | - | اسم الحدث (مثل cart_abandoned) |
triggers[].schedule | string | - | تعبير cron (مثل 0 9 * * * لكل يوم الساعة 9 صباحاً) |
triggers[].webhook | string | - | مسار webhook (مثل /agents/cart-recovery/trigger) |
triggers[].conditions | array | [] | شروط الفلترة للمُشغّل |
triggers[].debounce | string | - | نافذة debounce (مثل 5m, 1h) |
حقول الأذونات
| الحقل | النوع | الافتراضي | الوصف |
|---|---|---|---|
permissions | array | [] | نطاقات الأذونات المطلوبة لسجل التدقيق |
related_agents | array | [] | معرّفات الوكلاء التي يمكن لهذا الوكيل التفويض إليها |
escalation | string | - | وجهة التوجيه عند عدم اليقين (human، supervisor-agent) |
الأدوات: الربط بخوادم Brevo MCP
حقل tools يشير إلى أسماء وحدات خادم Brevo MCP:
tools: # جهات الاتصال والتقسيم - brevo_contacts # /v1/brevo_contacts/mcp - brevo_lists # /v1/brevo_lists/mcp - brevo_segments # /v1/brevo_segments/mcp - brevo_attributes # /v1/brevo_attributes/mcp
# الحملات والرسائل - brevo_email_campaign_management # /v1/brevo_email_campaign_management/mcp - brevo_templates # /v1/brevo_templates/mcp - brevo_sms_campaigns # /v1/brevo_sms_campaigns/mcp - brevo_whatsapp_campaigns # /v1/brevo_whatsapp_campaigns/mcp
# التحليلات - brevo_campaign_analytics # /v1/brevo_campaign_analytics/mcp
# CRM المبيعات - brevo_deals # /v1/brevo_deals/mcp - brevo_companies # /v1/brevo_companies/mcp - brevo_tasks # /v1/brevo_tasks/mcp - brevo_pipelines # /v1/brevo_pipelines/mcp - brevo_notes # /v1/brevo_notes/mcpTip
استخدم الحد الأدنى من الأدوات التي يحتاجها وكيلك. أدوات أقل = استدلال أفضل للذكاء الاصطناعي واستجابات أسرع. راجع خادم Brevo MCP لجميع الوحدات المتاحة.
سلاسل متعددة الوكلاء
للسير العمل المعقدة، يمكنك تأليف وكلاء متعددة في سلسلة:
name: quarterly-retention-campaignsteps: - agent: customer-intelligence input: | Analyze customer segments for Q2 retention campaign. Goal: {task}
Identify: 1. At-risk customers (declining purchase frequency) 2. VIP customers (top 10% by LTV) 3. Win-back candidates (90+ days since last order)
- agent: campaign-designer input: | Design retention campaigns for these segments: {previous}
- agent: campaign-executor input: | Execute these campaigns via Brevo: {previous}
- agent: campaign-reporter input: | Generate the retention campaign launch report: {previous}متغيرات السلسلة
| المتغير | الوصف |
|---|---|
{task} | الهدف/الطلب الأصلي |
{previous} | ناتج الخطوة السابقة |
{step_N} | ناتج الخطوة N (مُفهرسة من الصفر) |
{artifacts_dir} | مجلد مخرجات الملفات |
النشر
تشغيل وكيل برمجياً
import { TajoAgent } from "@tajo/agent-sdk";
const agent = new TajoAgent({ specPath: "./agents/cart-recovery-agent.md", brevoToken: process.env.BREVO_MCP_TOKEN, model: "claude-sonnet-4-6", autoConnectServers: true,});
const result = await agent.run( "Recover abandoned carts over $50 from the last 4 hours");
console.log(result.summary);console.log(result.toolCalls); // سجل تدقيق كاملconsole.log(result.metrics); // الأحداث المتتبعةالتشغيل عبر Claude Code
claude "Run the agent defined in ./agents/cart-recovery-agent.md for today's abandoned carts"الجدولة بـ Cron
# تشغيل وكيل استخبارات العملاء كل اثنين الساعة 6 صباحاً0 6 * * MON claude --print "Run ./agents/customer-intelligence.md weekly analysis" >> /var/log/tajo-agents.log 2>&1الخطوات التالية
- خادم Brevo MCP, الأدوات المتاحة وتكوين الخادم
- بناء أول وكيل لك, درس تطبيقي عملي
- مرجع المهارات, مهارات Tajo التي تتأسس على الوكلاء
- نظرة عامة على بنية MCP, كيف يتلاءم كل شيء معاً