الوثائق

من الصفر إلى جاهز لاستدعاء الوكلاء

كل ما يلي يعمل على جهازك بواسطة Node.js فقط — بلا حسابات، بلا مفاتيح API، بلا اعتمادات إضافية. المنصة المستضافة تتبع التدفق نفسه.

التسجيل الذاتي — التدفق المستضاف

أسرع طريق لا يحتاج سطر أوامر ولا مواصفة OpenAPI: سجّل برابط موقعك واستلم ملف Agentify (سطر JSON واحد تضعه على موقعك مرة واحدة إلى الأبد). الباقة المجانية تعطيك تقرير الجاهزية فورًا دون أي ملف؛ والنشر الفعلي يتبع هذا التسلسل — الدفع يأتي بعد التحقق، لا قبله:

المرحلةماذا يحدث
0 — التحقق من الملكيةنطابق ملف /.well-known/agentify.json (أو سجل DNS TXT أو وسم meta) — لا يُنشر شيء لنطاق لا تملكه، وعندها فقط يُفتح الدفع
1 — المسحنزحف موقعك (مع احترام robots.txt): الصفحات، والنماذج، وأي مواصفة OpenAPI في المسارات المعروفة
2 — التوليفتتحول الصفحات إلى أدوات search_site/get_page؛ وتتحول مواصفة OpenAPI إلى أدوات وظيفية محددة النوع؛ ويُثري تحليل ذكي الأوصاف ويصنّف المخاطر
3 — المراجعة (أنت)التحليل اقتراح لا قرار: تختار بالضبط ما يُكشف للوكلاء وسياسة الموافقة لكل أداة — لا يُنشر شيء قبل ضغطة "انشر المحدد"
4 — النشريُفعَّل مستأجرك على البوابة بالأدوات التي اخترتها فقط؛ وتُحفظ بيانات الاعتماد في الخزنة؛ ويُصدر رمز تسجيل لوكلائك
5 — التحققنتصرف كوكيل حقيقي تجاه نقطة اتصالك الجديدة — تسجيل OAuth، ومصافحة MCP، واستدعاءات أدوات فعلية — قبل الإعلان عن أنها جاهزة

وبعد الإطلاق تبقى مُدارًا: إعادة تحليل عند الطلب ضمن حصة باقتك عندما يتغير موقعك، وتحديث محتوى يومي مجاني (البحث لا يخدم بيانات قديمة أبدًا)، ونبضة تحقق يومية من ملفك، واكتشاف تلقائي للأدوات المعطوبة من حركة الوكلاء الفعلية — وكلها تُدار من لوحة التحكم.

تشاهد كل مرحلة مباشرةً على صفحة حالتك (يصلك الرابط مع مفتاح الوصول عند التسجيل)، وتراجع هناك المرشحات المستخرجة من النماذج، وتجمع مخرجاتك: نقطة اتصال MCP، ورمز التسجيل، وملفات الاكتشاف، وتقرير جاهزية مع سجل تدقيق كامل.

كل ما يلي أدناه هو الآلية ذاتها التي تعمل يدويًا — مفيدة للتقييم المحلي ونشر باقة Sovereign (الاستضافة الذاتية). تدفق الأعمال من البداية للنهاية متاح أيضًا كاختبار: node scripts/e2e-scenario.js.

البداية السريعة — تشغيل العرض الكامل

يوفر المستودع حلقة عمل كاملة: متجر تجريبي، وطبقة مصادقة، وبوابة MCP، ووكيل مبرمج يختبر كل ذلك. يتطلب Node إصدار 18 فأعلى، ولا شيء آخر.

terminal
# clone, then from the repo root:
node scripts/e2e.js

# boots demo-site (:4100), auth (:4200), gateway (:4300),
# registers an agent, gets a token, and runs 14 end-to-end checks.
# Expected final line:
🎉 E2E PASSED
يشغّل العرض التجريبي كل شيء على localhost مع ALLOW_PRIVATE_HOSTS=1. في بيئة الإنتاج يمنع حارس SSRF الوصول للمضيفين الخاصين — راجع صفحة الأمان.

حوّل واجهتك البرمجية إلى أدوات وكيل

إذا كانت لديك مواصفة OpenAPI 3.x، فإن أداة التحويل تجمعها في ملف مانيفست وظيفي — وهو التمثيل الوسيط الموحّد الذي تخدمه البوابة.

terminal
node packages/transformer/src/cli.js your-openapi.json \
  --tenant your-business \
  --base-url https://api.your-site.com \
  --secret-ref YOUR_API_KEY_ENV \
  --out packages/gateway/tenants/your-business.manifest.json

قواعد التحويل: operationId ← اسم الأداة · GET ← صلاحية read، وعمليات التعديل ← صلاحية write · المعاملات وأجسام الطلبات ← مخطط inputSchema من نوع JSON-Schema مسطّح · x-requires-approval: true ← تفعيل الموافقة البشرية. كما تولّد أداة التحويل ملفات اكتشاف llms.txt وmcp.json لوضعها على موقعك.

المصادقة

لا تثق البوابة بأي طلب دون رمز Bearer، وتتحقق من كل رمز عبر طبقة المصادقة باستخدام فحص RFC 7662. تبدأ الوكلاء التدفق بالكامل تلقائيًا:

الخطوةماذا يحدث
1 — التحدياستدعاء غير مصادَق ← 401 + WWW-Authenticate يشير إلى بيانات وصف المورد وفق RFC 9728
2 — الاكتشافيقرأ الوكيل البيانات الوصفية ← يجد خادم التفويض والصلاحيات المدعومة
3 — التسجيلتسجيل عملاء ديناميكي (RFC 7591)، مقيّد برمز وصول أولي تصدره أنت
4 — الرمزتدفق ترخيص PKCE (بتفويض المستخدم) أو بيانات اعتماد العميل (آلة لآلة)، مع ربط resource (RFC 8707)
5 — الاستدعاءالرمز مرتبط بجهة محددة (مستأجرك) — غير صالح في أي مكان آخر

ربط وكيل

يتصل أي عميل يدعم MCP (Claude، ChatGPT، Copilot، Cursor) برابط:

mcp.json
{
  "mcpServers": {
    "your-business": {
      "url": "https://your-gateway/mcp/your-business",
      "transport": "http"
    }
  }
}

تطبّق البوابة النسخة عديمة الحالة من JSON-RPC عبر Streamable-HTTP — initialize، وtools/list، وtools/call، وping. البث عبر SSE واستئناف الجلسات على خارطة الطريق.

مرجع ملف المانيفست

your-business.manifest.json
{
  "manifestVersion": "1.0",
  "tenant": "your-business",
  "origin": {
    "baseUrl": "https://api.your-site.com",
    "allowedHosts": ["api.your-site.com"]   // SSRF allowlist
  },
  "auth": {
    "type": "apiKey",
    "header": "X-API-Key",
    "secretRef": "YOUR_API_KEY_ENV"       // injected server-side, never exposed
  },
  "tools": [{
    "name": "create_order",
    "description": "Create an order. Returns order id and total.",
    "scope": "write",
    "requiresApproval": true,
    "inputSchema": { /* JSON Schema */ },
    "request": { "method": "POST", "path": "/api/orders" }
  }]
}

تصنيف الأخطاء

تُعيَّن أخطاء التنفيذ إلى مفردات ثابتة حتى تستطيع الوكلاء (ولوحات التحكم لديك) الاستجابة برمجيًا:

الرمزالمعنى
invalid_argsفشلت المدخلات في اجتياز مخطط JSON Schema الخاص بالأداة — تحدد الرسالة الحقل بالضبط
forbiddenالصلاحية غير كافية، أو المضيف غير مسموح به، أو محظور بسياسة
needs_approvalالأداة تتطلب موافقة؛ يجب على إنسان التأكيد قبل التنفيذ
origin_unreachableلم يستجب موقعك (انتهت المهلة / خطأ اتصال)
origin_errorاستجاب موقعك بحالة خطأ (مع مقتطف من نص الاستجابة)
تفاصيل الوضع الأمني، ونموذج التهديد، وإقامة البيانات موجودة في صفحة الأمان.