الانتقال إلى المحتوى الرئيسي

نظرة عامة

مكّن وكلاءك من إدارة المشكلات والمشاريع وسير العمل عبر Jira. أنشئ المشكلات وحدّثها، وتتبع تقدم المشاريع، وأدر التعيينات، وبسّط إدارة مشاريعك باستخدام الأتمتة المدعومة بالذكاء الاصطناعي.

المتطلبات الأساسية

قبل استخدام تكامل Jira، تأكد من توفر ما يلي:
  • حساب CrewAI AMP مع اشتراك فعّال
  • حساب Jira بصلاحيات المشروع المناسبة
  • ربط حساب Jira الخاص بك عبر صفحة التكاملات

إعداد تكامل Jira

1. ربط حساب Jira الخاص بك

  1. انتقل إلى تكاملات CrewAI AMP
  2. ابحث عن Jira في قسم تكاملات المصادقة
  3. انقر على Connect وأكمل عملية OAuth
  4. امنح الصلاحيات اللازمة لإدارة المشكلات والمشاريع
  5. انسخ رمز المؤسسة من إعدادات التكامل

2. تثبيت الحزمة المطلوبة

uv add crewai-tools

3. إعداد متغير البيئة

لاستخدام التكاملات مع Agent(apps=[]), يجب تعيين متغير البيئة CREWAI_PLATFORM_INTEGRATION_TOKEN برمز المؤسسة الخاص بك.
export CREWAI_PLATFORM_INTEGRATION_TOKEN="your_enterprise_token"
أو أضفه إلى ملف .env:
CREWAI_PLATFORM_INTEGRATION_TOKEN=your_enterprise_token

الإجراءات المتاحة

الوصف: إنشاء مشكلة في Jira.المعاملات:
  • summary (string, مطلوب): الملخص - ملخص موجز من سطر واحد للمشكلة. (مثال: “The printer stopped working”).
  • project (string, اختياري): المشروع - المشروع الذي تنتمي إليه المشكلة.
  • issueType (string, اختياري): نوع المشكلة - الافتراضي هو Task.
  • jiraIssueStatus (string, اختياري): الحالة - الافتراضي هو أول حالة في المشروع.
  • assignee (string, اختياري): المكلّف - الافتراضي هو المستخدم المصادق عليه.
  • description (string, اختياري): الوصف - وصف تفصيلي للمشكلة.
  • additionalFields (string, اختياري): حقول إضافية - حدد أي حقول أخرى بصيغة JSON.
الوصف: تحديث مشكلة في Jira.المعاملات:
  • issueKey (string, مطلوب): مفتاح المشكلة (مثال: “TEST-1234”).
  • summary (string, اختياري): الملخص.
  • issueType (string, اختياري): نوع المشكلة.
  • jiraIssueStatus (string, اختياري): الحالة.
  • assignee (string, اختياري): المكلّف.
  • description (string, اختياري): الوصف.
  • additionalFields (string, اختياري): حقول إضافية بصيغة JSON.
الوصف: الحصول على مشكلة بواسطة المفتاح في Jira.المعاملات:
  • issueKey (string, مطلوب): مفتاح المشكلة (مثال: “TEST-1234”).
الوصف: البحث عن المشكلات في Jira باستخدام الفلاتر.المعاملات:
  • jqlQuery (object, اختياري): فلتر بصيغة التعبير العادي المنفصل.
  • limit (string, اختياري): حدود النتائج - الافتراضي 10.
الوصف: البحث عن المشكلات بواسطة JQL في Jira.المعاملات:
  • jqlQuery (string, مطلوب): استعلام JQL (مثال: “project = PROJECT”).
  • paginationParameters (object, اختياري): معاملات الترقيم.
الوصف: الحصول على المخطط المتوقع لنوع مشكلة.المعاملات:
  • issueTypeId (string, مطلوب): معرّف نوع المشكلة.
  • projectKey (string, مطلوب): مفتاح المشروع.
  • operation (string, مطلوب): نوع العملية، مثال CREATE_ISSUE أو UPDATE_ISSUE.
الوصف: الحصول على المشاريع في Jira.المعاملات:
  • paginationParameters (object, اختياري): معاملات الترقيم.
الوصف: الحصول على أنواع المشكلات بواسطة المشروع في Jira.المعاملات:
  • project (string, مطلوب): مفتاح المشروع.
الوصف: الحصول على جميع أنواع المشكلات في Jira.المعاملات: لا توجد معاملات مطلوبة.
الوصف: الحصول على حالات المشكلات لمشروع معين.المعاملات:
  • project (string, مطلوب): مفتاح المشروع.
الوصف: الحصول على المكلّفين لمشروع معين.المعاملات:
  • project (string, مطلوب): مفتاح المشروع.

أمثلة الاستخدام

إعداد Agent أساسي لـ Jira

from crewai import Agent, Task, Crew
from crewai import Agent, Task, Crew

# Create an agent with Jira capabilities
jira_agent = Agent(
    role="Issue Manager",
    goal="Manage Jira issues and track project progress efficiently",
    backstory="An AI assistant specialized in issue tracking and project management.",
    apps=['jira']  # All Jira actions will be available
)

# Task to create a bug report
create_bug_task = Task(
    description="Create a bug report for the login functionality with high priority and assign it to the development team",
    agent=jira_agent,
    expected_output="Bug report created successfully with issue key"
)

# Run the task
crew = Crew(
    agents=[jira_agent],
    tasks=[create_bug_task]
)

crew.kickoff()

تحليل المشاريع وإعداد التقارير

from crewai import Agent, Task, Crew

project_analyst = Agent(
    role="Project Analyst",
    goal="Analyze project data and generate insights from Jira",
    backstory="An experienced project analyst who extracts insights from project management data.",
    apps=['jira']
)

# Task to analyze project status
analysis_task = Task(
    description="""
    1. Get all projects and their issue types
    2. Search for all open issues across projects
    3. Analyze issue distribution by status and assignee
    4. Create a summary report issue with findings
    """,
    agent=project_analyst,
    expected_output="Project analysis completed with summary report created"
)

crew = Crew(
    agents=[project_analyst],
    tasks=[analysis_task]
)

crew.kickoff()

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

المشاكل الشائعة

أخطاء الصلاحيات
  • تأكد من أن حساب Jira الخاص بك لديه الصلاحيات اللازمة للمشاريع المستهدفة
  • تحقق من أن اتصال OAuth يتضمن النطاقات المطلوبة لـ Jira API
مفاتيح المشاريع أو المشكلات غير الصالحة
  • تحقق جيداً من مفاتيح المشاريع ومفاتيح المشكلات للتأكد من صحة الصيغة (مثال: “PROJ-123”)
  • تأكد من وجود المشاريع وإمكانية الوصول إليها من حسابك
مشاكل استعلام JQL
  • اختبر استعلامات JQL في بحث مشكلات Jira قبل استخدامها في استدعاءات API
  • تأكد من صحة إملاء أسماء الحقول في JQL ووجودها في مثيل Jira الخاص بك

الحصول على المساعدة

تحتاج مساعدة؟

تواصل مع فريق الدعم للحصول على المساعدة في إعداد تكامل Jira أو استكشاف الأخطاء وإصلاحها.