نظرة عامة
نظام الأدوات في CrewAI مصمم للتوسيع. إذا بنيت أداة يمكن أن تفيد الآخرين، يمكنك تعبئتها كمكتبة Python مستقلة ونشرها على PyPI وإتاحتها لأي مستخدم CrewAI — دون الحاجة لطلب سحب إلى مستودع CrewAI. يمشي هذا الدليل عبر العملية الكاملة: تنفيذ عقد الأدوات، وهيكلة حزمتك، والنشر على PyPI.إذا كنت تحتاج فقط أداة مخصصة لمشروعك، راجع دليل إنشاء أدوات مخصصة بدلاً من ذلك.
عقد الأدوات
كل أداة CrewAI يجب أن تستوفي إحدى الواجهتين:الخيار 1: وراثة BaseTool
ورث من crewai.tools.BaseTool وطبّق طريقة _run. عرّف name وdescription واختياريًا args_schema للتحقق من المدخلات.
الخيار 2: استخدام مزخرف @tool
للأدوات الأبسط، يحوّل مزخرف @tool دالة إلى أداة CrewAI. يجب أن تحتوي الدالة على سلسلة توثيق (تُستخدم كوصف الأداة) وتعليقات أنواع.
المتطلبات الأساسية
بغض النظر عن النهج الذي تستخدمه، يجب أن تحتوي أداتك على:name— معرّف قصير ووصفي.description— يخبر الـ Agent متى وكيف يستخدم الأداة._run(BaseTool) أو جسم الدالة (@tool) — منطق التنفيذ المتزامن.- تعليقات أنواع على جميع المعاملات وقيم الإرجاع.
- إرجاع نتيجة نصية (أو شيء يمكن تحويله لنص).
