failproofai-sdk بحيث يمكن لـ Failproof AI إعادة بناء كل تشغيل، وتدقيق سلوكه، والعثور على الأخطاء المدعومة بالأدلة. يكتب SDK أحداثًا منظمة لـ Failproof daemon لتسليمها إلى Cloud. يتطلب Python 3.10 أو أحدث.
يجعل التتبع الوكلاء المخصصين قابلين للملاحظة والتدقيق. يتطلب منع إجراء غير آمن قبل تنفيذه أيضًا خطاف إنفاذ في وقت التشغيل الخاص بك.
لفرض السياسات في إعداد وكيل مخصص، اتصل بـ Failproof AI. سنساعدك في ربط نموذج وقت التشغيل الخاص بك والأداة وحدود دورة الحياة بـ policy hooks.
تثبيت failproofai-sdk
يتم توزيع SDK حاليًا كعجلة خاصة. اطلب من جهة اتصالك في Failproof AI الحصول على الإصدار الحالي وإمكانية التنزيل.
uv، قم بتنزيل العجلة أولاً وقم بتشغيل uv add ./failproofai_sdk-${VERSION}-py3-none-any.whl. قم بتثبيت العجلة في مستودع آثار خاص أو قفل التبعيات.
يتم تثبيت الحزمة باسم failproofai-sdk وتُستورد في Python باسم failproofai.
توصيل Failproof daemon
- لوحة التحكم
- CLI
-
انتقل إلى Admin → Keys وأنشئ مفتاحًا باستخدام
events:add. - وصّل Failproof daemon إلى Cloud على جهاز الوكيل.
- قم بتشغيل جلسة واحدة مزودة بتتبع، ثم ابحث عن معرّفها الدقيق ضمن Observe → Events.
-
انتقل إلى Observe → Sessions، واختر نفس البيئة، وافتح الآثار المعاد بناؤها.

تتبع تشغيل كامل
استدعconfigure() مرة واحدة أثناء بدء العملية. كل استدعاء حدث هو keyword-only ويتطلب session_id و agent_id مستقرة.
agent_start مرة واحدة لكل فاعل. بالنسبة للوكلاء الفرعيين، أعد استخدام session_id الخاص بالأب، وأعط كل فاعل agent_id مميز، واضبط parent_id على معرّف الوكيل الأب، وليس معرّف الجلسة.
مرجع التكوين
يكتب SDK إلى
base_dir الصريح عند تعيينه. وإلا، فإنه يستخدم spool custom-agents الخاص بـ Failproof daemon ضمن FAILPROOFAI_HOME أو ~/.failproofai.
يقوم SDK بطلب الاستدعاءات في الذاكرة ويكتب دفعات على سلسلة خيط في الخلفية. كما يحاول التنظيف النهائي من خلال معالجة Python atexit. بالنسبة للعمال قصيري الأجل، اسمح بإيقاف المترجم الطبيعي؛ قد يؤدي إنهاء العملية الثابتة إلى فقدان الأحداث التي لا تزال في الذاكرة.
فهرس الأحداث
جميع الطرق ترجعNone. يتم حذف الحقول المتروكة كـ None بدلاً من كتابتها كـ JSON null.
استخدم
outcome="failed"، "error"، "timeout"، أو "rejected" عندما يجب أن تُعتبر عملية الإكمال بمثابة فشل. القيم الأخرى، بما فيها "failure"، لا تُصنف كفشل من قبل backend الحالي.
قواعد الارتباط والمدة
- أعد استخدام نفس
tool_call_idأوhook_idأوpause_idأوinput_idلحدث الإكمال المطابق. - يحسب SDK
duration_msلـtool_resultوhook_completedوagent_resumeوhuman_input. تمرير قيمة بنفسك إلى تلك الطرق يرفعValueError. - معرفات الأداة والخطاف تشترك في خريطة انتظار واحدة على مستوى العملية. اجعلها فريدة عالميًا عبر الجلسات المتزامنة وعبر كلا المساحة؛ معرّفات الموفر أو UUIDs هي الأكثر أمانًا.
- الزوج المنقسم عبر العمليات لا يزال يرتبط بالتطبيق، لكن SDK لا يمكنه حساب مدته داخل العملية.
- تحتفظ خريطة الانتظار بـ 10000 بداية على الأكثر وتزيل الإدخال الأقدم عند امتلاء الحد.
الحقول المخصصة والبيانات الضخمة
كل حدث يقبل حقول keyword إضافية. استخدم القيم المتوافقة مع JSON عندما تحتاج الاستعلامات الموضوعية إلى البنية. الأوراق غير المدعومة مثل UUIDs والتواريخ والكسور العشرية والمجموعات والبايتات وكائنات النموذج يتم تحويلها إلى نصوص من قبل الكاتب. الأسماء المخصصة المحجوزة هيtimestamp و session_id و agent_id و type و environment. الأخطاء المطبعية في الحقول الاختيارية يتم قبولها كحقول مخصصة جديدة، لذلك قم بمراجعة JSON المُرسل عندما لا يظهر حقل قياسي في Cloud.
التسليم والتحقق
- لوحة التحكم
- CLI
في Observe → Events، تحقق من وجود
agent_start أولاً و agent_end أخيرًا. ثم افتح Observe → Sessions وتأكد من ظهور أحداث النموذج والأداة والإنسان والخطاف والخطأ بالترتيب المقصود. استخدم معرّف الجلسة كمفتاح استكشاف الأخطاء الأساسي.$FAILPROOFAI_HOME/custom-agents/events، وإلا ~/.failproofai/custom-agents/events. ملفات JSONL تثبت انبعاث SDK؛ يشير spool متزايد إلى تكوين daemon أو تسليم، بينما يشير spool فارغ إلى تتبع أو عمر العملية.

