استكشاف أخطاء Bob Shell
ابحث عن حلول للمشاكل التي قد تواجهها عند استخدام Bob Shell.
المصادقة
أخطاء الشهادات
الخطأ: Unable to verify certificate
السبب: أنت على شبكة شركة تحتوي على جدار حماية يعترض ويفحص حركة مرور SSL/TLS. يتطلب هذا الثقة بشهادة CA مخصصة من قِبل Node.js.
الحل: عيّن متغير البيئة NODE_EXTRA_CA_CERTS على المسار المطلق لملف شهادة CA الجذرية للشركة:
export NODE_EXTRA_CA_CERTS=/path/to/your/corporate-ca.crtتكامل IDE
فشل الاتصال
الخطأ: لا يستطيع Bob Shell الاتصال بـ IDE.
السبب: قد لا تكون إضافة Bob Shell Companion مثبّتة أو تعمل، أو قد يكون Bob Shell يعمل خارج مجلد مساحة العمل.
الحل:
- ثبّت إضافة Bob Shell Companion في IDE الخاص بك.
- انتقل إلى مجلد مساحة عملك في الطرفية.
- ابدأ Bob Shell من مجلد مساحة العمل.
- شغّل
/ide enableفي Bob Shell.
فشل الاتصال في حاوية dev container
الخطأ: لا يستطيع Bob Shell الاتصال بـ IDE عند التشغيل داخل حاوية dev container.
السبب: منفذ Bob Shell غير محوَّل من حاوية dev container إلى الجهاز المضيف.
الحل:
- احصل على منفذ Bob Shell من الطرفية داخل حاوية dev container:
مثال على الإخراج:echo $BOB_SHELL_CLI_IDE_SERVER_PORT42991 - افتح لوحة الأوامر في IDE وحدد Forward a Port.
- أضف المنفذ الظاهر في الخطوة 1 (مثل
42991). - ابدأ Bob Shell:
bob - فعّل تكامل IDE:
أو تحقق من حالة الاتصال:/ide enable/ide status
فشل الاتصال بإضافة IDE المرافقة
الخطأ: 🔴 Disconnected: Failed to connect to IDE companion extension
السبب: إضافة Bob Shell Companion غير مثبّتة أو غير مفعّلة أو لا تعمل في IDE الخاص بك.
الحل:
- تحقق من تثبيت وتفعيل إضافة Bob Shell Companion في IDE الخاص بك.
- افتح طرفية جديدة في IDE الخاص بك.
- شغّل
/ide enableفي Bob Shell.
انقطاع الاتصال بشكل غير متوقع
الخطأ: 🔴 Disconnected: IDE connection error. The connection was lost unexpectedly
السبب: انقطع اتصال IDE بسبب مشكلة في الشبكة أو إعادة تشغيل IDE.
الحل:
- شغّل
/ide enableلإعادة الاتصال. - إذا استمرت المشكلة، أعد تشغيل IDE الخاص بك.
عدم تطابق المجلدات
الخطأ: 🔴 Disconnected: Directory mismatch
السبب: يعمل Bob Shell في مجلد مختلف عن مساحة العمل المفتوحة في IDE الخاص بك.
الحل:
- انتقل إلى نفس المجلد المفتوح في IDE الخاص بك.
- أعد تشغيل Bob Shell من ذلك المجلد.
لا يوجد مجلد مساحة عمل مفتوح
الخطأ: 🔴 Disconnected: To use this feature, please open a workspace folder
السبب: لا يوجد مجلد أو مساحة عمل مفتوحة في IDE الخاص بك.
الحل:
- افتح مجلدًا أو مساحة عمل في IDE الخاص بك.
- أعد تشغيل Bob Shell.
تكامل IDE غير مدعوم
الخطأ: IDE integration is not supported in your current environment
السبب: Bob Shell لا يعمل من داخل الطرفية المدمجة في IDE مدعوم.
الحل: شغّل Bob Shell من داخل الطرفية المدمجة في IDE مدعوم.
مشاكل الإعداد
.bobignore لا يعمل
الخطأ: يتجاهل Bob Shell ملفات تريد منه الوصول إليها، أو يصل إلى ملفات تريد تجاهلها.
السبب: قد يحتوي ملف .bobignore على أنماط متعارضة أو ترتيب غير صحيح للأنماط أو يكون في موقع خاطئ. ربما لم تصبح التغييرات سارية المفعول بعد.
الحل:
- تحقق من ملف
.bobignoreللأنماط المتعارضة. - تأكد من أن الأنماط الأكثر تحديدًا (مثل النفي بـ
!) تأتي بعد الأنماط العامة. - أعد تشغيل جلسة Bob Shell بعد إجراء التغييرات على
.bobignore. - استخدم المسارات المطلقة إذا لم تعمل المسارات النسبية كما هو متوقع.
- تحقق من أن ملف
.bobignoreموجود في مجلد جذر مشروعك.
الإعدادات لا تُطبَّق
الخطأ: لا تُسري تغييرات إعدادات Bob Shell.
السبب: قد يكون ملف الإعدادات في موقع خاطئ أو يحتوي على صيغة JSON غير صالحة أو يُتجاوز بواسطة مصادر إعداد ذات أولوية أعلى. ربما لم تصبح التغييرات سارية المفعول بعد.
الحل:
- تحقق من موقع ملف الإعدادات:
- إعدادات المشروع:
.bob/settings.jsonفي مجلد مشروعك - إعدادات المستخدم:
~/.bob/settings.jsonفي مجلدك الرئيسي
- إعدادات المشروع:
- تحقق من صحة صيغة JSON (استخدم مدققًا لـ JSON).
- تذكر ترتيب أولوية الإعداد:
- وسيطات سطر الأوامر (أعلى أولوية)
- متغيرات البيئة
- إعدادات المشروع
- إعدادات المستخدم
- إعدادات النظام الافتراضية (أدنى أولوية)
- أعد تشغيل Bob Shell بعد تغيير ملفات الإعدادات.
التعليمات المخصصة لا تُحمَّل
الخطأ: لا تُطبَّق التعليمات المخصصة على جلسات Bob Shell.
السبب: قد تكون ملفات التعليمات المخصصة في موقع خاطئ أو تحتوي على امتدادات ملفات غير صحيحة أو لم تُحمَّل في السياق الحالي.
الحل:
- تحقق من أن الملفات في الموقع الصحيح:
- على مستوى مساحة العمل:
.bob/rules/في جذر مشروعك - خاصة بالوضع:
.bob/rules-{modeSlug}/في جذر مشروعك
- على مستوى مساحة العمل:
- تأكد من أن الملفات تحتوي على الامتدادات الصحيحة (
.mdأو.txtأو.xml). - استخدم
/memory refreshلإعادة تحميل جميع ملفات السياق. - استخدم
/memory showللتحقق من السياق الحالي.
مشاكل تشغيل الأوامر
الأمر غير موجود
الخطأ: command not found: bob
السبب: Bob Shell غير مثبّت بشكل صحيح أو غير موجود في PATH الخاص بنظامك.
الحل:
- تحقق من تثبيت Bob Shell:
which bob - إذا لم يُعثر عليه، أعد تثبيت Bob Shell باتباع تعليمات التثبيت.
- تأكد من أن
PATHالخاص بشيل النظام يتضمن مجلد تثبيت Bob Shell.
وضع الشل لا يعمل
الخطأ: وضع الشل (أمر !) لا يشغّل الأوامر.
السبب: قد لا تكون تكتب ! في موجّه فارغ، أو تفتقر إلى الأذونات اللازمة، أو قد يكون الأمر نفسه غير صالح.
الحل:
- تحقق من أنك تكتب
!في موجّه فارغ. - تأكد من أن لديك الأذونات اللازمة لتشغيل أوامر الشل.
- جرّب تشغيل الأمر مباشرةً في طرفيتك أولاً للتحقق من أنه يعمل.
مشاكل الأداء
بطء في أوقات الاستجابة
الخطأ: يستجيب Bob Shell ببطء للطلبات.
السبب: مشاكل في اتصال الشبكة أو كثرة الملفات المحمّلة كسياق أو وجود ملفات ثنائية كبيرة في السياق.
الحل:
- تحقق من اتصال الشبكة.
- قلّص عدد الملفات في السياق باستخدام
.bobignore. - تجنب تضمين الملفات الثنائية الكبيرة أو المجلدات مثل
node_modules/. - فكّر في استخدام إشارات ملفات أكثر تحديدًا بـ
@بدلاً من تحميل جميع الملفات.
استخدام مرتفع للذاكرة
الخطأ: يستهلك Bob Shell ذاكرة مفرطة.
السبب: كثرة الملفات المحمّلة كسياق أو عدم استبعاد مجلدات كبيرة أو وجود استيرادات دائرية في ملفات الذاكرة.
الحل:
- قيّد عدد الملفات المحمّلة كسياق.
- استخدم
.bobignoreلاستبعاد المجلدات الكبيرة. - أعد تشغيل Bob Shell بشكل دوري خلال الجلسات الطويلة.
- تحقق من وجود استيرادات دائرية في ملفات الذاكرة.
نصائح لتصحيح أخطاء Bob Shell
تفعيل سجلات التصحيح
لزيادة تفصيل السجلات لجلسة، استخدم علامة --log-level أو متغير البيئة BOB_LOG_LEVEL:
bob run --log-level debug "Explain @app.js"
BOB_LOG_LEVEL=debug bob chatيمكنك أيضًا ضبط مستوى سجل دائم في ملف إعداداتك:
{
"logging": {
"logLevel": "debug"
}
}التحقق من إصدارك من Bob Shell
شغّل الأمر التالي لرؤية إصدارك من Bob Shell:
جلسة تفاعلية:
/aboutجلسة غير تفاعلية:
bob --versionملفات السجل
يكتب Bob Shell ملفات السجل إلى ~/.bob/logs/shell/. تُدار ملفات السجل تلقائيًا:
- يُحتفظ بحد أقصى 10 ملفات سجل
- يُحدد حجم كل ملف بـ 5 ميجابايت
للعثور على ملف السجل الحالي لجلسة:
ls -lt ~/.bob/logs/shell/ | headشارك مقتطفات السجل ذات الصلة عند الإبلاغ عن المشاكل.
تحديد جذر مساحة العمل
يحدد Bob Shell جذر مساحة العمل بالصعود من مجلد العمل الحالي حتى يجد مجلد .git أو .bob. أول تطابق يصبح جذر مساحة العمل.
إذا لم يُعثر على مجلد .git أو .bob، يستخدم Bob Shell مجلد العمل الحالي كجذر لمساحة العمل.