تخطَّ إلى المحتوى

النشر من Monorepo

يكون النشر من monorepo مفيداً عندما يحتوي مستودع واحد على عدة أتمتات أو حزم مشتركة أو كود تطبيقات آخر:

company-ai/
|-- uv.lock
|-- packages/
| `-- shared_tools/
`-- crews/
|-- support_agent/
| |-- pyproject.toml
| |-- crew.jsonc
| `-- agents/
| `-- support_agent.jsonc
`-- research_flow/
|-- pyproject.toml
`-- src/
`-- research_flow/
`-- main.py

لنشر support_agent، اضبط دليل العمل على:

crews/support_agent

لا يزال AMP يجلب المستودع كاملاً أو يرفعه، لكنه يتعامل مع المجلد المحدد كجذر مشروع الأتمتة.

ما الذي يتحكم به دليل العمل

Section titled “ما الذي يتحكم به دليل العمل”

عند تعيين دليل عمل، يستخدم AMP ذلك المجلد من أجل:

  • التحقق من المشروع، بما في ذلك pyproject.toml وملفات crew JSON وأي نقطة دخول كلاسيكية لـ Crew أو Flow
  • تثبيت الاعتماديات باستخدام uv
  • دليل العمل للعملية قيد التشغيل
  • متغير البيئة CREW_ROOT_DIR

ترك الحقل فارغاً يحافظ على السلوك الحالي ويستخدم جذر المستودع.

يمكنك تعيين دليل عمل عند إنشاء نشر من:

  • مستودع GitHub متصل
  • مستودع Git مكوّن في AMP
  • رفع ملف ZIP

يمكنك أيضاً إضافة دليل العمل أو تغييره في نشر موجود من صفحة Settings الخاصة بالنشر. يسري التغيير في النشر التالي.

  1. افتح Deploy from Code

    في CrewAI AMP، أنشئ نشراً جديداً واختر المصدر: GitHub أو Git Repository أو رفع ZIP.

  2. اختر المستودع أو الفرع أو ملف ZIP

    اختر المستودع والفرع اللذين يحتويان على monorepo، أو ارفع ملف ZIP يحتوي جذره على محتويات monorepo.

  3. افتح الإعدادات المتقدمة

    وسّع قسم Advanced في نموذج النشر.

  4. أدخل دليل العمل

    أدخل المسار من جذر المستودع إلى مشروع Crew أو Flow:

    crews/support_agent

    لا تضف شرطة مائلة في البداية.

  5. انشر

    أضف أي متغيرات بيئة مطلوبة، ثم ابدأ النشر.

  1. افتح إعدادات النشر

    انتقل إلى الأتمتة في AMP وافتح Settings.

  2. أوقف auto-deploy إذا لزم الأمر

    إذا كان auto-deploy مفعلاً، أوقفه أولاً. لا يكون حقل دليل العمل متاحاً أثناء تشغيل auto-deploy.

  3. عيّن دليل العمل

    في Basic settings، أدخل مسار المجلد الفرعي، مثل:

    crews/support_agent
  4. أعد النشر

    احفظ الإعداد وأعد نشر الأتمتة. سيتم استخدام دليل العمل الجديد في النشر التالي.

يجب أن يكون دليل العمل مساراً نسبياً داخل جذر المستودع أو ZIP.

القاعدةالمثال
استخدم مساراً نسبياًcrews/support_agent
لا تبدأ بـ //crews/support_agent غير صالح
لا تستخدم مقاطع المسار . أو ..crews/../support_agent غير صالح
استخدم الأحرف والأرقام والشرطات والشرطات السفلية والنقاط والشرطات المائلة فقطcrews/support agent غير صالح
اجعل المسار 255 حرفاً أو أقليتم رفض المسارات الأطول

يزيل AMP المسافات البيضاء في البداية والنهاية، ويضغط الشرطات المائلة المتكررة، ويزيل الشرطة المائلة النهائية. تستخدم القيمة الفارغة جذر المستودع.

يجب أن يحتوي المجلد المحدد على pyproject.toml وملفات المشروع المناسبة لنوع الأتمتة:

  • crew بنمط JSON-first: ملف crew.jsonc أو crew.json مع مجلد agents/
  • Crew كلاسيكي أو Flow: مجلد src/ مع نقطة دخول Python المتوقعة

يمكن أن يوجد ملف uv.lock أو poetry.lock إما في المجلد المحدد أو في جذر المستودع.

يدعم هذا تخطيطي ملفات القفل الشائعين:

ملف قفل المشروع
company-ai/
`-- crews/
`-- support_agent/
|-- pyproject.toml
|-- uv.lock
|-- crew.jsonc
`-- agents/
`-- support_agent.jsonc
ملف قفل workspace
company-ai/
|-- uv.lock
|-- packages/
| `-- shared_tools/
`-- crews/
`-- support_agent/
|-- pyproject.toml
|-- crew.jsonc
`-- agents/
`-- support_agent.jsonc

استكشاف الأخطاء وإصلاحها

Section titled “استكشاف الأخطاء وإصلاحها”

لم يتم العثور على دليل العمل

Section titled “لم يتم العثور على دليل العمل”

تحقق من أن المسار نسبي إلى جذر المستودع أو ZIP. بالنسبة لرفع ZIP، يجب أن تتضمن محتويات ZIP مسار دليل العمل تماماً كما أدخلته.

يجب أن يشير دليل العمل إلى مجلد مشروع Crew أو Flow، وليس فقط إلى مجلد أب يحتوي على عدة مشاريع.

اعمل commit لملف قفل إما في مجلد المشروع المحدد أو في جذر المستودع. بالنسبة إلى UV workspaces، يتم دعم إبقاء uv.lock في جذر workspace.

يتم تعطيل auto-deploy أثناء تعيين دليل عمل. استخدم إعادة النشر اليدوية أو شغّل إعادة النشر من CI/CD باستخدام AMP API.

النشر على AMP

تابع دليل النشر بعد اختيار دليل عمل monorepo.