Skip to content
Apothem
Справочник CLI

doctor

Справочник CLI для команды 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