أوامر Slash
أنشئ أوامر slash مخصصة لأتمتة المهام المتكررة وشغّل الأوامر المدمجة ووسّع وظائف Bob بملفات markdown بسيطة.
نظرة عامة
للبدء، اكتب / في المحادثة لرؤية جميع الأوامر المتاحة، أو أنشئ أوامر مخصصة بإضافة ملف markdown إلى .bob/commands/ أو ~/.bob/commands/.
الفوائد الرئيسية:
- أتمتة سير العمل: حوّل العمليات متعددة الخطوات المعقدة إلى أوامر واحدة
- توحيد الفريق: شارك الأوامر مع فريقك لممارسات متسقة
- الحفاظ على السياق: أدرج سياقاً خاصاً بالمشروع في كل أمر
- الوصول السريع: بحث غير دقيق وإكمال تلقائي للاكتشاف الفوري للأوامر
الأوامر المدمجة
يتضمن Bob عدة أوامر مدمجة توفر وظائف أساسية:
/init
تهيئة مشروع أو مساحة عمل جديدة مع Bob. يساعد هذا الأمر في إعداد التهيئة والهيكل الضروري للعمل مع Bob في مشروعك.
/review
مراجعة تغييرات الأكواد بتحليل شامل. يمكن استخدام هذا الأمر بطرق متعددة:
/review- مراجعة التغييرات المحلية غير المُنفَّذة في مجلد العمل/review <branch>- مقارنة فرع مقابل فرعك الحالي (HEAD)/review #<issue-number> --issue-coverage- التحقق من التغييرات المحلية مقابل issue في GitHub/review <issue-url> --issue-coverage- التحقق من التغييرات المحلية مقابل عنوان URL لـ issue في GitHub
يُجري أمر review تحليلاً شاملاً للأكواد يشمل اكتشاف الأخطاء وفحوصات الأمان ومشكلات الأداء واتساق الأسلوب.
/create-pr
أنشئ pull request مع وصف مولَّد بالذكاء الاصطناعي. يحلل هذا الأمر تغييراتك ويولّد وصفاً شاملاً لـ PR بناءً على الفرق بين الفروع.
إنشاء أوامر مخصصة
تُوسّع الأوامر المخصصة وظائف Bob بإضافة ملفات markdown إلى مجلدات محددة:
- خاص بالمشروع:
.bob/commands/في جذر مساحة العمل - عام:
~/.bob/commands/في المجلد الرئيسي
اسم الملف يصبح اسم الأمر. مثلاً:
review.md→/reviewtest-api.md→/test-apideploy-check.md→/deploy-check
صيغة الأمر الأساسية
أنشئ أمراً بسيطاً بإضافة ملف markdown:
ساعدني في مراجعة هذا الكود للمشكلات الأمنية واقتراح التحسينات.أمر متقدم مع frontmatter
أضف بيانات وصفية باستخدام frontmatter لوظائف محسّنة:
---
description: أنشئ نقطة نهاية API جديدة
argument-hint: <endpoint-name> <http-method>
---
أنشئ نقطة نهاية API RESTful جديدة مع معالجة الأخطاء والتحقق من الصحة.معالجة اسم الأمر
تُحوّل أسماء الأوامر تلقائياً إلى صيغة slug: تتحول إلى أحرف صغيرة، وتُحذف الأحرف الخاصة، وتُستبدل المسافات بشرطات. وتُضاف امتداد .md أو تُزال عند الحاجة.
أمر متقدم مع واجهة أمامية
أضف بيانات وصفية باستخدام واجهة أمامية لتحسين الوظائف:
---
description: Create a new API endpoint
argument-hint: <endpoint-name> <http-method>
---
Create a new API endpoint called $1 that handles $2 requests.
Include proper error handling and documentation.حقول الواجهة الأمامية
description: تظهر في قائمة الأوامر لمساعدة المستخدمين على فهم غرض الأمر.argument-hint: تعرض تلميحاً للوسائط المتوقعة عند استخدام الأمر.
واجهة إدارة الأوامر
يوفر Bob واجهة مخصصة لإدارة الأوامر المخصصة.
انقر أيقونة الأوامر في لوحة Bob لفتح مدير الأوامر.
إنشاء أمر جديد
- اكتب اسم الأمر في حقل الإدخال، مثل
Sample command name. - انقر زر
+لإنشاء الأمر. - سيُنشأ ملف جديد ويُفتح تلقائياً، مثل
sample-command-name.md.
استخدام أوامر slash
اكتب / في المحادثة لعرض قائمة موحّدة تضم نوعَي الأوامر. تعرض القائمة أوامر سير العمل المخصصة وأوامر تبديل الأوضاع في الواجهة نفسها.
- قائمة موحّدة: تظهر أوامر سير العمل المخصصة وأوامر تبديل الأوضاع معاً.
- الإكمال التلقائي: ابدأ بالكتابة لتصفية الأوامر، مثل
/samلعرضsample-command-name. - البحث التقريبي: اعثر على الأوامر حتى مع المطابقات الجزئية.
- معاينة الوصف: اطّلع على أوصاف الأوامر في القائمة.
- مؤشرات مرئية: تُميّز أوامر الأوضاع من الأوامر المخصصة بأيقونات خاصة.
تلميحات الوسائط
تقدم تلميحات الوسائط مساعدة فورية لأوامر slash، إذ توضح نوع المعلومات التي ينبغي تقديمها عندما يتوقع الأمر إدخالاً إضافياً.
عند كتابة / لفتح قائمة الأوامر، تعرض الأوامر التي تتوقع وسائط تلميحاً رمادياً فاتحاً بجانبها. يوضح هذا التلميح نوع الوسيطة التي يتوقعها الأمر.
مثال:
/mode <mode_slug>— يشير التلميح<mode_slug>إلى ضرورة توفير اسم وضع مثلcodeأوdebug./api-endpoint <endpoint-name> <http-method>— يوضح أنك تحتاج إلى اسم نقطة نهاية وطريقة HTTP.
بعد اختيار الأمر، يُدرج في إدخال المحادثة متبوعاً بمسافة. لا يُدرج التلميح؛ فهو دليل مرئي فقط يساعدك على معرفة ما ينبغي كتابته بعد ذلك. يجب أن تكتب الوسيطة يدوياً بعد الأمر.
إضافة تلميحات الوسائط إلى الأوامر المخصصة
يمكنك إضافة تلميحات وسائط إلى أوامرك المخصصة باستخدام الحقل argument-hint في الواجهة الأمامية:
---
description: Create a new API endpoint
argument-hint: <endpoint-name> <http-method>
---
Create a new API endpoint called $1 that handles $2 requests.سيظهر ذلك في قائمة الأوامر بالشكل /api-endpoint <endpoint-name> <http-method>.
أفضل الممارسات لتلميحات الوسائط
- كن محدداً: استخدم عناصر نائبة وصفية مثل
<file-path>بدلاً من عناصر عامة مثل<arg>. - أظهر الوسائط المتعددة: إذا احتاج أمرك إلى عدة مدخلات، فأظهرها جميعاً:
<source><destination>. - استخدم تنسيقاً متسقاً: ضع العناصر النائبة دائماً بين أقواس زاوية:
<placeholder>. - اجعله موجزاً: ينبغي أن تكون التلميحات قصيرة وواضحة.
أسئلة شائعة
- ماذا إذا لم أقدم الوسيطة؟ قد لا يعمل الأمر كما هو متوقع، أو قد يطلب منك مزيداً من المعلومات. وُضع التلميح لمساعدتك على إتمامه بشكل صحيح من المرة الأولى.
- هل كل الأوامر لها تلميحات؟ لا، فقط الأوامر المصممة لقبول وسائط لها تلميحات. الأوامر التي تعمل من دون إدخال إضافي لا تعرض تلميحاً.
- هل يمكنني استخدام أمر من دون استبدال التلميح؟ يجب استبدال نص التلميح، مثل
<mode_slug>، بقيم فعلية. فتركه كما هو قد يؤدي إلى فشل الأمر أو سلوك غير متوقع.
أفضل الممارسات
تسمية الأوامر
- استخدم أسماء وصفية موجّهة إلى إجراء.
- اجعل الأسماء موجزة وواضحة.
- استخدم الشرطات في الأوامر متعددة الكلمات.
- تجنب الأسماء العامة مثل
helpأوtest. - ملاحظة: تُحوّل الأسماء تلقائياً إلى صيغة slug، بأحرف صغيرة ومن دون أحرف خاصة.
- تُضاف امتداد
.mdأو تُزال تلقائياً عند الحاجة.
محتوى الأمر
- ابدأ بتوجيه واضح.
- استخدم تنسيقات منظمة، مثل القوائم والأقسام.
- أدرج متطلبات محددة.
- أشِر إلى اتفاقيات المشروع.
- اجعل كل أمر مركزاً على مهمة واحدة.
التنظيم
- اجمع الأوامر ذات الصلة في مجلدات فرعية.
- استخدم أنماط تسمية متسقة.
- وثّق الأوامر المعقدة.
- أدر أوامرك في نظام التحكم بالإصدارات.
- شارك أوامر الفريق في مستودع المشروع.
استكشاف الأخطاء وإصلاحها
عدم ظهور الأوامر
- تحقّق من موقع الملف: تأكد من وجود ملفات الأوامر المخصصة في
.bob/commands/أو~/.bob/commands/. - تحقّق من امتداد الملف: يجب أن تكون الأوامر المخصصة ملفات
.md.
عدم العثور على الأمر
عند عدم العثور على أمر slash، سيرى النموذج:
The slash command '/unknown-command' was not found. Please check the command name and try again.تعارض الأوامر
- تتجاوز أوامر المشروع المخصصة أوامر المستخدم العامة المخصصة ذات الاسم نفسه.
- استخدم أسماء فريدة لتجنب التعارضات.
- عند إنشاء أسماء مكررة عبر الواجهة، تُلحق أرقام، مثل
new-command-1وnew-command-2.
حول أوامر الأوضاع
تتضمن قائمة slash أوامر لتبديل الأوضاع، مثل /code و/ask، تغيّر وضع تشغيل الذكاء الاصطناعي جذرياً. فهي لا تضيف نصاً فحسب، بل تبدّل سياق الذكاء الاصطناعي كاملاً. وتظهر الأوضاع المخصصة التي تنشئها أيضاً بوصفها أوامر slash؛ فالوضع ذو الاسم المختصر reviewer يصبح /reviewer. ولا يمكن لأوامر سير العمل المخصصة تجاوز أوامر الأوضاع هذه.
تعرّف على المزيد في الأوضاع والأوضاع المخصصة.