الميزات

إشارات السياق

أشر إلى عناصر محددة في مشروعك مباشرةً في محادثات Bob باستخدام إشارات @ للحصول على مساعدة دقيقة تراعي السياق.

أنواع الإشارات

باستخدام إشارات السياق، يمكنك الإشارة إلى عناصر متنوعة من مشروعك:

نوع الإشارةالصيغةالوصفمثال على الاستخدام
ملف@/path/to/file.tsيُدرج محتويات الملف في سياق الطلباشرح الدالة في @/src/utils.ts
مجلد@/path/to/folderيُدرج محتويات جميع الملفات مباشرةً في المجلد (غير متكرر)حلّل الكود في @/src/components
مشكلات@problemsيُدرج تشخيصات لوحة IBM Bob Problems@problems أصلح جميع الأخطاء في كودي
طرفية@terminalيُدرج أمر الطرفية الأخير ومخرجاتهأصلح الأخطاء المعروضة في @terminal
Git commit@a1b2c3dيُشير إلى commit محدد بـ hashما الذي تغيّر في commit @a1b2c3d؟
تغييرات Git@git-changesيعرض التغييرات غير المُنفَّذةاقترح رسالة لـ @git-changes
URL@https://example.comيستورد محتوى موقع الويبلخّص @https://docusaurus.io/

إشارات الملفات

إشارات الملفات هي النوع الأكثر استخداماً، وتتيح لك تضمين محتويات ملفات محددة في محادثتك مع Bob.

الإمكانيةالتفاصيل
الصيغة@/path/to/file.ts (دائماً ابدأ بـ / من جذر مساحة العمل)
يوفرمحتويات الملف الكاملة مع أرقام الأسطر
يعمل معملفات النص وPDF وملفات DOCX (مع استخراج النص)
يعمل فيالطلبات الأولية وردود التعليقات والرسائل اللاحقة
القيودالملفات الكبيرة جداً قد تُقطَع؛ الملفات الثنائية غير مدعومة
نصيحة:

للملفات الكبيرة، يمكنك الإشارة إلى أقسام محددة باستخدام مسار الملف متبوعاً بأرقام الأسطر، مثل @/src/app.js:10-20 لتضمين الأسطر 10-20 فقط.

إشارات المجلدات

تتيح لك إشارات المجلدات الإشارة إلى ملفات متعددة دفعة واحدة، مما يوفر سياقاً أوسع من مجلد.

الإمكانيةالتفاصيل
الصيغة@/path/to/folder (من دون شرطة مائلة في النهاية)
يوفرالمحتويات الكاملة لجميع الملفات داخل الدليل
يتضمنمحتويات ملفات النص غير الثنائية الموجودة مباشرةً في المجلد، وليس بشكل متكرر
الأنسب لـتوفير سياق من عدة ملفات في دليل واحد
نصيحةانتبه إلى حدود نافذة السياق عند الإشارة إلى أدلة كبيرة
ملاحظة:

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

إشارة المشكلات

تستورد إشارة المشكلات التشخيصات من لوحة IBM Bob's Problems، مما يساعدك على حل مشكلات متعددة دفعة واحدة.

الإمكانيةالتفاصيل
الصيغة@problems
يوفرجميع الأخطاء والتحذيرات في لوحة المشكلات الخاصة بـ IBM Bob
يتضمنمسارات الملفات وأرقام الأسطر ورسائل التشخيص
التجميعمشكلات منظمة بحسب الملف لوضوح أفضل
الأنسب لـإصلاح الأخطاء من دون نسخ يدوي

مثال على الاستخدام: @problems هل يمكنك مساعدتي في إصلاح جميع هذه المشكلات؟

إشارة الطرفية

تلتقط إشارات الطرفية مخرجات الأوامر الأخيرة، مما يساعدك على تصحيح أخطاء البناء أو تحليل نتائج الأوامر.

الإمكانيةالتفاصيل
الصيغة@terminal
يلتقطآخر أمر ومخرجاته الكاملة
يحافظ علىحالة الطرفية، ولا يمسحها
القيديقتصر على محتوى مخزن الطرفية المرئي
الأنسب لـتصحيح أخطاء البناء وتحليل نتائج الأوامر
نصيحة:

عند استكشاف فشل بناء وإصلاحه، جرّب ما الخطأ في @terminal؟ للحصول على تحليل فوري من دون نسخ المخرجات يدوياً.

إشارات Git

إشارات Git تساعدك على العمل مع التحكم بالإصدارات عبر الإشارة إلى commits والتغييرات.

النوعالصيغةيوفرالقيود
Commit@a1b2c3dرسالة commit والمؤلف والتاريخ والـ diff الكامليعمل في repository من Git فقط
تغييرات العمل@git-changesمخرجات git status وdiff التغييرات غير المنفذةيعمل في repository من Git فقط

مثال على الاستخدام: ما الغرض من @a1b2c3d؟ أو اقترح رسالة commit لـ @git-changes

إشارات URL

تتيح لك إشارات URL الإشارة إلى محتوى الويب الخارجي في محادثاتك مع Bob.

الإمكانيةالتفاصيل
الصيغة@https://example.com
المعالجةتستخدم متصفحاً بلا واجهة لجلب المحتوى
التنقيةتزيل السكربتات والأنماط وعناصر التنقل
الناتجتحوّل المحتوى إلى Markdown لتسهيل قراءته
القيدقد لا تتحول الصفحات المعقدة بدقة كاملة
نصيحة:

تفيد إشارات URL في الرجوع إلى الوثائق. جرّب هل يمكنك شرح @https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Promise للحصول على مساعدة مع الوثائق الرسمية كسياق.

استخدام إشارات السياق

اكتب @ في إدخال المحادثة لتشغيل قائمة الاقتراحات المنسدلة.

استمر في الكتابة لتصفية الاقتراحات أو استخدم مفاتيح الأسهم للتنقل.

اختر بمفتاح Enter أو نقرة الفأرة.

ادمج إشارات متعددة في طلب: "أصلح @problems في @/src/component.ts"

نصيحة:

حدد النص واستخدم اختصار لوحة المفاتيح + L لإضافته إلى المحادثة.

تقترح القائمة المنسدلة تلقائياً:

  • الملفات المفتوحة حديثاً.
  • المجلدات المرئية.
  • أحدث commits من Git.
  • الكلمات الخاصة (problems وterminal وgit-changes).
  • جميع الملفات المفتوحة حالياً، بصرف النظر عن إعدادات التجاهل أو عوامل تصفية الأدلة.

تستبعد القائمة تلقائياً الأدلة الشائعة مثل node_modules و.git وdist وout لتقليل التشويش، مع أنه يمكنك تضمين محتواها بكتابتها يدوياً.

نصيحة:

يمكنك جمع عدة إشارات في طلب واحد. جرّب قارن @/src/v1/api.js مع @/src/v2/api.js واشرح الاختلافات.

السلوكيات المهمة

التفاعل مع ملفات التجاهل

إشارات السياق لها سلوكيات محددة عند التعامل مع الملفات المتجاهلة:

السلوكالوصف
تجاوز .bobignoreإشارات @ للملفات والمجلدات تتجاوز فحوصات .bobignore عند جلب المحتوى للسياق.
تجاوز .gitignoreبالمثل، إشارات @ للملفات والمجلدات لا تحترم قواعد .gitignore عند جلب المحتوى.
احترام أوامر Gitالإشارات المتعلقة بـ Git (@git-changes، @commit-hash) تحترم .gitignore لأنها تعتمد على أوامر Git.

تتجاوز إشارات السياق قواعد التجاهل، لذا يمكنك الإشارة إلى ملفات محددة قد يتجاهلها Bob أو Git عادةً. يفيد ذلك خصوصاً عندما تحتاج إلى مناقشة الملفات المنشأة أو غيرها من الملفات المتجاهلة غالباً.

الجمع بين كل شيء

إشارات السياق تُحسّن تفاعلاتك مع Bob بتوفير مراجع دقيقة لعناصر مشروعك. بدلاً من نسخ ولصق الأكواد أو وصف مواقع الملفات، يمكنك الإشارة مباشرةً إلى ما تناقشه.

مجموعات فعّالة من أنواع الإشارات المختلفة:

  • أصلح @problems في @/src/components واشرح ما كان خاطئاً
  • راجع @git-changes واقترح تحسينات
  • قارن @/v1/api.js مع @https://api-docs.example.com وتحقق من التناسقات
ما رأيك في هذا الموضوع؟