Skip to content
Apothem
مرجع واجهة سطر الأوامر

doctor

مرجع واجهة سطر الأوامر لأمر apothem doctor.

فحص سلامة ما هو مُثبَّت. فبينما يتحقّق apothem verify من أُطُر العمل التي تختارها، يفحص doctor كل إطار عمل مُثبَّت والملف التعريفي المشترك في تمريرة واحدة.

الموجز

apothem doctor [--project PATH] [--quiet|-q] [--verbose|-v]
               [--format plain|json] [--json] [--no-color]

ما الذي يفحصه

  • الملف التعريفي المشترك. يُتحقَّق من الملف التعريفي الموجود مقابل المخطط المُحزَّم؛ ويفشل الملف المشوَّه برمز تشخيصه. أما الملف التعريفي المفقود فيُبلَّغ عنه ولا يُعَدّ فشلًا (يُنشئ install واحدًا).
  • أُطُر العمل المُثبَّتة فقط. يُبلَّغ عن إطار العمل غير المُثبَّت بالحالة not_installed ولا يُعَدّ فشلًا، لذا يجتاز الفحصَ جهازٌ فيه إطار عمل سليم واحد. وتُفحَص أُطُر العمل ذات نطاق المشروع عندما يُسمّي --project جذرها؛ ومن دونه يُبلَّغ عنها بالحالة needs_project.
  • التحقّق. يجب أن يجتاز كل إطار عمل مُثبَّت الفحص نفسه الذي يُجريه verify.
  • زمن تشغيل الخطّافات. لكل إطار عمل جرى التحقّق منه، يقرأ doctor الملفات التي كتبها أحدث تثبيت له، ويعثر على أوامر الخطّافات التي سجّلها Apothem هناك، ويُشغِّل كل مُفسِّر وكل برنامج خطّاف نصّي مرة واحدة بحمولة لا تفعل شيئًا (الوسائط المُسجَّلة مضافًا إليها --help، و{} على stdin، ودليل عمل مؤقّت، مع إزالة PYTHONPATH). لا يُكتَب أي شيء. ويُفشِل الفحصَ مُفسِّرٌ مفقود، أو برنامج نصّي مفقود، أو انهيار وقت الاستيراد.

يُسمّي كل فحص فاشل إصلاحًا له. يخرج بالرمز 0 عندما لا يفشل أي فحص، وبالرمز 1 خلاف ذلك.

مخرجات JSON

يحتفظ --json بالحقول السابقة (version، وpython، وplatform، وprofile_path، وprofile_exists، وprofile_valid، وharnesses، وall_ok، وprofile_error عندما يكون الملف التعريفي غير صالح) ويضيف:

  • profile_error_code — رمز تشخيص الملف التعريفي، عندما يكون الملف التعريفي غير صالح.
  • project — جذر --project المُحلَّل، أو null.
  • harnesses[].status — ok، أو not_installed، أو needs_project، أو verify_failed، أو hook_failed، أو error؛ إضافةً إلى verified وhooks ({"probed": N, "failed": [...]}، أو null عندما لا يوجد سجلّ تثبيت).
  • checks — سجلّ واحد لكل فحص: code (مثل harness.verify_failed، أو hook.start_failed، أو ledger.unreadable، أو رمز profile.*)، وstatus (pass، أو fail، أو info)، وharness، وmessage، وfix.
{
  "schema_version": 1,
  "all_ok": false,
  "checks": [
    {
      "code": "hook.start_failed",
      "status": "fail",
      "harness": "claude-code",
      "message": "claude-code: a registered hook command cannot start: …",
      "fix": "Check that the interpreter in the hook command exists and runs, then …"
    }
  ]
}

الخيارات

الخيارالوصف
--project PATHجذر المشروع لأُطُر العمل ذات نطاق المشروع؛ ومن دونه يُبلَّغ عنها بالحالة needs_project.
--quiet، -qيُخمِد المخرجات المعلوماتية؛ لا تُصدَر إلا الأخطاء.
--verbose، -vيُقبَل من أجل الاتّساق مع الأوامر الأخرى؛ ولا يطبع هذا الأمر أي مخرجات إضافية.
--format plain|jsonصيغة المخرجات (الافتراضي: plain).
--jsonاختصار لـ --format json.
--no-colorيعطّل رموز ألوان ANSI في المخرجات.
-h، --helpيعرض المساعدة ويخرج.

أمثلة

apothem doctor
apothem doctor --project .
apothem doctor --json

تطبع الصيغة الافتراضية plain تشخيصات مقروءة للبشر؛ ويُصدِر --json (المكافئ لـ --format json) مستندًا قابلًا للقراءة آليًا على stdout، مناسبًا لتمريره عبر الأنابيب إلى أدوات أخرى.

رموز الخروج

الرمزالمعنى
0نجحت كل الفحوص (وكذلك عندما لا يكون أي إطار عمل مُثبَّتًا بعد)
1إطار عمل مُثبَّت لا يجتاز التحقّق، أو أمر خطّاف مُسجَّل يتعذّر بدؤه، أو محوّل تعذّر تحميله أو فحصه، أو ملف تعريفي موجود فشل في التحقّق من المخطط
64خطأ في الاستخدام: خيار أو أمر غير معروف، أو قيمة خيار مفقودة أو غير صالحة. مع --json يكون الخطأ غلاف JSON بالرمز cli.usage.

انظر أيضًا

  • apothem harnesses — يسرد أُطُر العمل المُسجَّلة ويفحصها
  • apothem verify — يتحقّق من تثبيت محوّل إطار عمل

On this page