Диагностика Codex, как и любая диагностика, подчиняется одному правилу: менять одну переменную за шаг и не уничтожать улики. Базовый триаж прост и его стоит выполнять до любых радикальных действий. codex --version фиксирует версию, codex doctor проверяет установку и окружение, codex login status показывает состояние входа. Эти три команды отвечают на вопрос "что вообще сейчас в игре", и с них начинают, а не со сноса ~/.codex, который уничтожает и конфигурацию, и улики разом.
Для более глубокой диагностики есть журнал, но включают его осознанно. Опциональный plaintext TUI-лог для локальной диагностики включается через RUST_LOG=debug с указанием log_dir. Полезно один раз увидеть эту команду. Но у неё есть прямое следствие для безопасности: логи и транскрипты сессий могут содержать промпты, пути к файлам, вывод команд и секреты. Поэтому включённый debug-лог трактуют как чувствительный артефакт - его не прикладывают к публичному issue не глядя и не хранят где попало.
Правило про чувствительность логов важнее, чем кажется, и его выносят отдельно. Транскрипт или debug-лог - это не безобидный технический вывод: в нём могут оказаться секреты, приватные пути и содержимое команд. Прежде чем поделиться таким артефактом для отчёта, его проверяют и очищают. Для бага безопаснее санитизированный фрагмент, чем сырой дамп сессии. Это та же дисциплина, что и с секретами в контексте: чувствительное не должно утекать через диагностику, которую делают ради помощи.
Codex Security - это отдельный продуктовый workflow, а не другое имя обычного /review, и путать их нельзя. Он предназначен для поиска и подтверждения уязвимостей - специализированная задача со своим жизненным циклом находок, а не общий обзор кода. Доступен он и как plugin/cloud-опыт, и как публичный CLI и TypeScript SDK @openai/codex-security. Ожидать от обычного /review того, что даёт Codex Security, - значит недооценить специализированный инструмент, а от Codex Security - что это просто "обзор построже".
Полезно один раз увидеть, как запускается security-скан. Ниже - установка пакета, проверка версии и скан текущего каталога с аутентификацией через ChatGPT. Скан требует авторизации - это не анонимная операция. А глубокие и массовые сканы, интеграция в CI, экспорт, валидация и жизненный цикл находок имеют отдельную официальную справочную страницу. То есть базовый скан прост, но полноценный security-процесс - это отдельная область со своей документацией, которую сверяют, а не воспроизводят по памяти.
Production runbook обновления Codex держится на дисциплине версий, потому что продукт меняется быстро. Разумный ритм: держать проверенную версию как основу, читать changelog на security-фиксы, удалённые команды и миграции конфига, обновлять осознанно, а не автоматически на всё подряд. После обновления особенно перепроверяют поведение permissions, sandbox, approvals, hooks и MCP - именно здесь чаще всего живут значимые изменения. Обновление без проверки этих границ рискует унести в прод поведение, которое вы считали прежним.
Смысл этой главы - в том, что диагностика, безопасность и обновление образуют эксплуатационную дисциплину, а не набор разовых действий. Триаж без уничтожения улик, осторожность с чувствительными логами, специализированный security-workflow вместо общего обзора, осознанный ритм обновлений с перепроверкой границ. Всё это - часть того, что превращает Codex из набора функций в управляемую систему: среду, поведение которой воспроизводимо, диагностируемо и предсказуемо после каждого изменения.
Типичные провалы вокруг эксплуатации предсказуемы. Снести ~/.codex до триажа и потерять и конфигурацию, и улики. Приложить сырой debug-лог с секретами к публичному issue. Спутать Codex Security с обычным /review и недооценить специализированный инструмент. И обновиться, не перепроверив permissions, sandbox и hooks. Начинайте с триажа командами, обращайтесь с логами как с чувствительными, используйте Codex Security как отдельный workflow и после обновления проверяйте границы, а не только новую версию.
# Базовый триаж (до любых радикальных действий)
codex --version
codex doctor
codex login status
# Opt-in plaintext TUI log (содержит prompts, paths, output, secrets - чувствителен!)
RUST_LOG=debug codex -c log_dir=./.codex-log# Codex Security - отдельный workflow, не другое имя /review
npm install @openai/codex-security
npx @openai/codex-security --version
npx @openai/codex-security scan . --auth chatgpt
# deep/bulk scans, CI, export, validation, finding lifecycle - отдельная official reference