AGENTO
v1.1.0 · التوثيق
التوثيق/أدلة ومراجع/كيف تعمل المكتبة من الداخل؟

كيف تعمل المكتبة من الداخل؟

2026-10-15·المصدر 4bebed4·3 دقائق للقراءة·27 / 27

ستتعلم: اعرف أي جزء من المكتبة مسؤول عن السلوك الذي تريد تغييره.

استخدم البنية لتحديد مكان القرار

لتطوير التطبيق، ابدأ بـتصميم الإعداد. هذا المرجع لفهم موضع فرض السلوك أو تتبّع خطأ داخل المكتبة مفتوحة المصدر.

في مثال الحجز، يفحص الـ Compiler العلاقات بين الـ Tools وينشئ تعريفًا للـ AI Model وتعريفًا للتنفيذ. يحدد الـ Router العملية المقصودة، ويدير الـ Runtime خطوات الـ Dependencies وحالات المتابعة. بعد ذلك يجهّز الـ Mapper طلب HTTP، ويتولى الـ Executor إرساله، ويضمن الـ Store معالجة التفاعلات بالتتابع.

تجيب كل طبقة عن سؤال مختلف. يثبت اختبار compiler رفض إعداد غير آمن، ويثبت اختبار mapper القيمة الخارجة، ويثبت اختبار Runtime عدم الكتابة قبل الموافقة، ويثبت اختبار Provider معالجة البروتوكول. لا يغني أي منها عن اختبار صلاحيات API في تطبيقك.

تتبّع تغيير إعداد واحد

تؤثر إضافة depends_on.map في تجهيز الـ Config وتنفيذها: يخفي الـ Compiler حقول المستوى الأول التي توفرها الـ Dependency عن الـ Input المعروض للـ AI Model، ثم يملؤها الـ Runtime من البيانات التي جلبها. وتضيف confirmation.required توقفًا بعد تجهيز الـ Request لانتظار الموافقة. أما response.model_view فتغيّر البيانات المتاحة لصياغة الرد، ولا تغيّر طلب HTTP أو شكل الـ Response الأصلي من الـ API.

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

تصميم بطبقات

┌─────────────────────────────────────────────┐
│ Host application                            │
│ web · Discord · CLI · MCP                   │
└───────────────────┬─────────────────────────┘
                    │
┌───────────────────▼─────────────────────────┐
│ AgentRuntime API                            │
│ chat · invoke · select · confirm · cancel   │
└───────────────────┬─────────────────────────┘
                    │
┌───────────────────▼─────────────────────────┐
│ Session + explicit state machine            │
│ history · facts · frames · refs · pending   │
└───────────────────┬─────────────────────────┘
                    │
┌───────────────────▼─────────────────────────┐
│ Hybrid routing                              │
│ lexical → semantic recall → model selection │
└───────────────────┬─────────────────────────┘
                    │
┌───────────────────▼─────────────────────────┐
│ Deterministic orchestration                 │
│ input → dependencies → selection → confirm  │
└───────────────────┬─────────────────────────┘
                    │
┌───────────────────▼─────────────────────────┐
│ Execution boundary                          │
│ mapping → auth → HTTP → validate → redact   │
└───────────────────┬─────────────────────────┘
                    │
┌───────────────────▼─────────────────────────┐
│ Existing REST APIs                          │
│ authentication · authorization · business   │
└─────────────────────────────────────────────┘

الفصل أثناء compilation

يتحوّل تعريف الـ Tool في YAML إلى تمثيلين داخل Runtime:

                 tool config
                     │
          ┌──────────┴──────────┐
          ▼                     ▼
model-facing registry      execution registry
name                       URL/method
summary                    auth
input schema               mappings
                           dependencies
                           retries
                           effect/confirmation
                           output validation

يقلّل هذا الفصل المعلومات التي يحتاج الـ AI Model إلى رؤيتها.

وحدات المصدر الأساسية

src/v2/
  config/           strict schema + compiler + migration
  conversation/     safe no-tool conversation/presentation prompts
  execution/        explicit value-source mapping
  http/             bounded transport, retry, circuit breaker
  mcp/              protocol-independent tools/list + tools/call adapter
  models/           model capability interface + provider adapters
  observability/    rate limiter, hooks, metrics
  runtime/          AgentRuntime orchestration + state transitions
  security/         redaction
  session/          state, facts, frames, transaction contract
  tools/            lexical retrieval, semantic recall, routing, evals

حدود الثقة

الـ AI Model

يُوثق به لتفسير اللغة ضمن Schemas يجري التحقق منها. ولا يُوثق به لبيانات الاعتماد أو IDs التي يملكها الخادم أو صلاحية التنفيذ أو حقائق العمل التي لم يتلقّها.

Runtime

يُوثق به لتطبيق القواعد التي جهّزها الـ Compiler، واستمرارية الـ Session، والـ Mapping، والـ Confirmation، وضوابط النقل، وحجب البيانات الحساسة.

التطبيق المضيف

يربط التطبيق المضيف كل Session ID بالمستخدم الفعلي، ويوفر السياق وبيانات الاعتماد الخاصة بكل Request.

API المستقبِلة

هي المرجع للـ Auth والصلاحيات وصحة البيانات والآثار الفعلية على العمل.

لماذا يهم هذا الفصل؟

يضبط Runtime في V2 ما يمكن تنفيذه وفق الـ Config. يشارك الـ AI Model في فهم اللغة، بينما يطبق الـ Runtime قواعد محددة في الخطوات التي تؤثر على الأمان وصحة النتائج. لذلك تتجاوز وظيفته مجرد إتاحة fetch للـ AI Model.