Plugin guides
Среда Codex
Официальный плагин codex выполняет встроенные обращения к агенту OpenAI через Codex
app-server вместо встроенной среды OpenClaw. Codex управляет
низкоуровневым сеансом агента: нативным возобновлением потока, нативным продолжением работы инструментов,
нативной Compaction и выполнением на app-server. OpenClaw по-прежнему управляет каналами
чатов, файлами сеансов, выбором модели, динамическими инструментами OpenClaw, подтверждениями,
доставкой медиафайлов и видимой копией транскрипта.
Используйте канонические ссылки на модели OpenAI, например openai/gpt-5.6-sol. Не настраивайте
устаревшие ссылки на GPT-модели Codex; указывайте порядок аутентификации агента OpenAI в auth.order.openai.
Устаревшие идентификаторы профилей аутентификации Codex и устаревшие записи порядка аутентификации Codex
исправляются командой openclaw doctor --fix.
Если политика среды выполнения провайдера/модели не задана или имеет значение auto, один лишь префикс openai/*
никогда не выбирает эту среду. OpenAI может неявно выбрать Codex только для
точного официального HTTPS-маршрута Platform Responses или ChatGPT Responses без
явного переопределения запроса. См.
Неявная среда выполнения агента OpenAI.
Если Codex получает управление аутентификацией до определения маршрутизации через Platform или ChatGPT, OpenClaw
по-прежнему требует, чтобы каждый потенциальный маршрут явно поддерживал совместимость с Codex. Одного лишь
нативного управления аутентификацией недостаточно для обхода этой проверки маршрута.
Когда песочница OpenClaw не активна, OpenClaw запускает потоки Codex app-server
с включённым нативным режимом кода Codex (режим «только код» по умолчанию остаётся выключенным), поэтому
нативные возможности рабочей области и кода остаются доступны вместе с динамическими инструментами
OpenClaw, направляемыми через мост app-server item/tool/call. Активная
песочница OpenClaw или ограничивающая политика инструментов полностью отключает нативный режим кода,
если только не включён экспериментальный путь exec-server песочницы.
При значении tools.exec.host: "auto" по умолчанию и отсутствии активной песочницы OpenClaw
Codex также получает инструменты node_exec и node_process для выполнения команд на сопряжённых
узлах. Нативная оболочка продолжает работать на хосте и в рабочей области Codex app-server
(локально на Gateway для развёртывания stdio по умолчанию); node_exec выбирает узел по
имени или идентификатору и сохраняет действие политики подтверждений узлов OpenClaw. Если конечный
разрешающий список среды выполнения отключает нативный режим кода и оставляет обращение без
среды выполнения, вместо него OpenClaw сохраняет доступными свои отфильтрованные политикой инструменты exec и process
для прямого выполнения без песочницы.
Эта нативная функция Codex отличается от
режима кода OpenClaw — включаемой по желанию среды выполнения QuickJS-WASI
для обычных запусков OpenClaw с другой формой входных данных exec. Общее описание
разделения модели, провайдера и среды выполнения см. в разделе
Среды выполнения агентов: openai/gpt-5.6-sol — это ссылка на
модель, codex — среда выполнения, а Telegram, Discord, Slack или другой
канал — поверхность взаимодействия.
Требования
- Установлен официальный плагин
@openclaw/codex. Добавьтеcodexвplugins.allow, если в конфигурации используется разрешающий список. - Codex app-server версии
0.143.0или новее. По умолчанию плагин управляет совместимым исполняемым файлом, поэтому командаcodexвPATHне влияет на обычный запуск. - Аутентификация Codex через
openclaw models auth login --provider openai, учётную запись app-server, уже имеющуюся в домашнем каталоге Codex агента, или явно заданный профиль аутентификации Codex с ключом API.
Сведения о приоритетах аутентификации, изоляции среды, пользовательских командах app-server, обнаружении моделей и полном списке полей конфигурации см. в справочнике по среде Codex.
Быстрый старт
Установите официальный плагин, затем войдите через Codex OAuth:
openclaw plugins install @openclaw/codexopenclaw models auth login --provider openaiВключите плагин codex и выберите модель агента OpenAI:
{ plugins: { entries: { codex: { enabled: true, }, }, }, agents: { defaults: { model: "openai/gpt-5.6-sol", }, },}Если в конфигурации используется plugins.allow, также добавьте туда codex:
{ plugins: { allow: ["codex"], entries: { codex: { enabled: true, }, }, },}После изменения конфигурации плагина перезапустите Gateway. Если чат уже имеет
сеанс, сначала выполните /new или /reset, чтобы при следующем обращении среда
была определена по текущей конфигурации.
Совместное использование потоков с Codex Desktop и CLI
Значение appServer.homeScope: "agent" по умолчанию изолирует каждого агента OpenClaw от
нативного состояния Codex оператора. Чтобы владелец мог просматривать и управлять
теми же нативными потоками, которые отображаются в Codex Desktop и Codex CLI, включите
использование пользовательского домашнего каталога Codex:
{ plugins: { entries: { codex: { enabled: true, config: { appServer: { homeScope: "user", }, }, }, }, },}Режим пользовательского домашнего каталога поддерживает локальный управляемый процесс stdio или общий транспорт
через Unix-сокет. Он использует $CODEX_HOME, если эта переменная задана, и ~/.codex в противном случае, включая
нативную аутентификацию Codex, конфигурацию, плагины и хранилище потоков из этого домашнего каталога. OpenClaw
не внедряет профиль аутентификации OpenClaw в этот app-server.
Обращения владельца получают инструмент codex_threads: он позволяет выводить список, искать, читать, создавать ответвления, переименовывать,
архивировать и восстанавливать нативные потоки. Создайте ответвление потока, чтобы продолжить его в
OpenClaw; ответвление присоединяется к текущему сеансу OpenClaw и остаётся
видимым другим нативным клиентам Codex. Для архивирования требуется явное
подтверждение, что поток закрыт в других клиентах. Если также включён надзор,
поля и изменения транскрипта требуют соответствующего разрешения
supervision.allowRawTranscripts или supervision.allowWriteControls.
Не возобновляйте и не изменяйте один и тот же поток одновременно через независимые управляемые stdio App Server. Codex координирует активные процессы записи внутри одного App Server, но не между отдельными процессами. Создание ответвления — безопасный способ сосуществования обычных сеансов stdio с пользовательским домашним каталогом.
Один лишь appServer.homeScope: "user" не управляет каталогом парка. Обнаружение нативных
сеансов включено, пока активен плагин; задайте
sessionCatalog.enabled: false, чтобы убрать его с боковой панели OpenClaw, не
отключая Codex. Каталог использует отдельное соединение надзора; без
явных настроек соединения appServer оно по умолчанию использует управляемый
stdio пользовательского домашнего каталога, тогда как обычная среда остаётся привязанной к агенту. Явные
настройки appServer применяются к обоим путям. Явно задайте homeScope: "user",
как показано выше, если обычная среда также должна совместно использовать нативное состояние.
Надзор за сеансами Codex
Тот же плагин codex может выводить список неархивированных сеансов Codex с компьютера Gateway
и сопряжённых узлов, для которых это разрешено. Сохранённый или бездействующий локальный сеанс Gateway может
создать привязанный к модели чат, который зеркально отображает ограниченную сохранённую историю сообщений пользователя и ассистента.
Его закрытая привязка использует соединение надзора для нативного
снимка состояния, канонической ветви и последующих обращений, тогда как обычные сеансы Codex остаются
привязанными к агенту. При первом каноническом запуске используются именно те модель и провайдер, которые
Codex возвращает для ответвления снимка состояния. При последующих возобновлениях выбор остаётся за
нативной конфигурацией Codex; внешняя модель OpenClaw и цепочка резервных вариантов никогда не
заменяют его. Сохранённые и бездействующие строки можно архивировать после явного подтверждения
отсутствия других исполнителей. Активные источники нельзя использовать для создания ветви или архивировать; существующий
контролируемый чат по-прежнему можно открыть. Сеансы сопряжённых узлов остаются доступными только в виде метаданных.
Сведения о настройке, правилах ветвления, ограничениях сопряжённых узлов, раскрытии метаданных и устранении неполадок см. в разделе Надзор за сеансами Codex.
Конфигурация
| Задача | Настройка | Где |
|---|---|---|
| Включить среду | plugins.entries.codex.enabled: true |
Конфигурация OpenClaw |
| Скрыть обнаружение нативных сеансов Codex | plugins.entries.codex.config.sessionCatalog.enabled: false |
Конфигурация плагина Codex |
| Сохранить установленный плагин при разрешающем списке | Добавьте codex в plugins.allow |
Конфигурация OpenClaw |
| Разрешить подходящим обращениям OpenAI неявно использовать Codex | Точный официальный HTTPS-маршрут Responses/ChatGPT, без явного переопределения запроса, среда выполнения не задана/auto |
Конфигурация провайдера/модели OpenAI |
| Войти через ChatGPT/Codex OAuth | openclaw models auth login --provider openai |
Профиль аутентификации CLI |
| Добавить резервный ключ API для запусков Codex | Профиль ключа API openai:*, указанный после аутентификации по подписке в auth.order.openai |
Профиль аутентификации CLI + конфигурация OpenClaw |
| Аварийно завершать работу, если Codex недоступен | agentRuntime.id: "codex" провайдера или модели |
Конфигурация модели/провайдера OpenClaw |
| Использовать прямой трафик API OpenAI | agentRuntime.id: "openclaw" провайдера или модели с обычной аутентификацией OpenAI |
Конфигурация модели/провайдера OpenClaw |
| Настроить поведение app-server | plugins.entries.codex.config.appServer.* |
Конфигурация плагина Codex |
| Включить нативные приложения плагинов Codex | plugins.entries.codex.config.codexPlugins.* |
Конфигурация плагина Codex |
| Включить Codex Computer Use | plugins.entries.codex.config.computerUse.* |
Конфигурация плагина Codex |
Для порядка «сначала подписка, затем резервный ключ API» предпочтительно использовать auth.order.openai.
Существующие устаревшие идентификаторы профилей аутентификации Codex и устаревший порядок аутентификации Codex являются
устаревшим состоянием, обрабатываемым только doctor; не добавляйте новые устаревшие ссылки на GPT-модели Codex.
{ auth: { order: { openai: ["openai:[email protected]", "openai:api-key-backup"], }, },}Для эффективного маршрута, совместимого с Codex, оба указанных выше профиля остаются потенциальными вариантами для одного запуска Codex. Порядок профилей выбирает учётные данные, а не среду выполнения. Изменение порядка аутентификации не делает пользовательский маршрут, маршрут Completions, HTTP-маршрут или маршрут с переопределением запроса совместимым с Codex.
Compaction
Не задавайте compaction.model или compaction.provider для агентов,
работающих через Codex. Codex выполняет Compaction через состояние нативного потока app-server, поэтому
OpenClaw игнорирует эти локальные переопределения суммаризатора во время выполнения, а
openclaw doctor --fix удаляет их, когда агент использует Codex.
Lossless по-прежнему поддерживается как механизм контекста для сборки, приёма данных и
обслуживания вокруг обращений Codex и настраивается через
plugins.slots.contextEngine: "lossless-claw" и
plugins.entries.lossless-claw.config.summaryModel, а не через
agents.defaults.compaction.provider. openclaw doctor --fix переносит
старую структуру compaction.provider: "lossless-claw" в слот механизма контекста
Lossless, когда Codex является активной средой выполнения, но Compaction по-прежнему
управляется нативным Codex. Нативная среда app-server поддерживает механизмы контекста,
которым требуется сборка перед формированием запроса; универсальные серверные части CLI, включая codex-cli,
не предоставляют такую возможность хоста.
Для агентов, работающих через Codex, /compact запускает нативную Compaction Codex app-server
в привязанном потоке. OpenClaw не ожидает завершения,
не устанавливает тайм-аут OpenClaw, не перезапускает общий app-server и не переключается резервно на
механизм контекста или общедоступный суммаризатор OpenAI. Если нативная привязка потока Codex
отсутствует или устарела, команда аварийно завершается вместо незаметного
переключения серверной части Compaction.
Остальная часть этой страницы посвящена структуре развёртывания, маршрутизации с аварийным завершением, политике подтверждений guardian, нативным плагинам Codex и Computer Use. Полные списки параметров, значения по умолчанию, перечисления, обнаружение, изоляцию среды, тайм-ауты и поля транспорта app-server см. в справочнике по среде Codex.
Проверка среды выполнения Codex
Используйте /status в чате, где ожидается Codex. Ход агента OpenAI
на базе Codex показывает:
Среда выполнения: OpenAI CodexЗатем проверьте состояние app-server Codex:
/codex status/codex models/codex status сообщает о подключении к app-server, учётной записи, лимитах
запросов, серверах MCP и навыках. /codex models выводит актуальный каталог
app-server Codex для обвязки и учётной записи. Если /status выглядит неожиданно, см.
Устранение неполадок.
Маршрутизация и выбор модели
Храните ссылки на провайдеров и политику среды выполнения раздельно:
- Используйте
openai/gpt-*для канонического выбора модели OpenAI. Один только префикс никогда не выбирает Codex. - Если среда выполнения не задана или указано
auto, Codex может быть выбран неявно только для точного официального HTTPS-маршрута Platform Responses или ChatGPT Responses без заданного автором переопределения запроса. - Не используйте устаревшие ссылки Codex GPT в конфигурации; выполните
openclaw doctor --fix, чтобы исправить устаревшие ссылки и закреплённые в сеансах неактуальные маршруты. agentRuntime.id: "codex"делает Codex обязательным с закрытым отказом для совместимого маршрута. Эта настройка не делает несовместимый итоговый маршрут совместимым.agentRuntime.id: "openclaw"явно переводит провайдера или модель на встроенную среду выполнения OpenClaw, когда это сделано намеренно./codex ...управляет нативными беседами app-server Codex из чата.- ACP/acpx — отдельный путь внешней обвязки. Используйте его, только когда пользователь запрашивает ACP/acpx или адаптер внешней обвязки.
| Намерение пользователя | Использование |
|---|---|
| Подключить текущий чат | /codex bind [thread-id] [--cwd <path>] [--model <model>] [--provider <provider>] |
| Возобновить существующую ветку Codex | /codex resume <thread-id> |
| Вывести или отфильтровать ветки Codex | /codex threads [filter] |
| Вывести нативные плагины Codex | /codex plugins list |
| Включить или отключить настроенный нативный плагин Codex | /codex plugins enable <name>, /codex plugins disable <name> |
| Возобновить сохранённый сеанс Codex CLI как ход сопряжённого Node | /codex sessions --host <node> [filter], затем /codex resume <session-id> --host <node> --bind here |
| Просмотреть неархивированные сеансы Codex на разных компьютерах | Включите наблюдение за Codex и откройте Codex Sessions |
| Изменить модель, быстрый режим или разрешения привязанной ветки | /codex model <model>, /codex fast [on|off|status], /codex permissions [default|yolo|status] |
| Остановить или скорректировать активный ход | /codex stop, /codex steer <text> |
| Отсоединить текущую привязку | /codex detach (псевдоним /codex unbind) |
| Только отправить отзыв о Codex | /codex diagnostics [note] |
| Запустить задачу ACP/acpx | Команды сеанса ACP/acpx, а не /codex |
| Сценарий использования | Настройка | Проверка | Примечания |
|---|---|---|---|
| Допустимый маршрут OpenAI с нативной средой выполнения Codex | Точный официальный маршрут HTTPS Responses/ChatGPT без заданного автором переопределения запроса, а также включённый плагин codex |
/status показывает Runtime: OpenAI Codex |
Неявный путь, когда среда выполнения не задана или указано auto |
| Закрытый отказ, если Codex недоступен | agentRuntime.id: "codex" провайдера или модели |
Ход завершается ошибкой вместо отката ко встроенной среде | Используйте для развёртываний только с Codex |
| Прямой трафик с ключом API OpenAI через OpenClaw | agentRuntime.id: "openclaw" провайдера или модели и обычная аутентификация OpenAI |
/status показывает среду выполнения OpenClaw |
Используйте, только когда OpenClaw выбран намеренно |
| Устаревшая конфигурация | устаревшие ссылки Codex GPT | openclaw doctor --fix перезаписывает её |
Не создавайте новую конфигурацию таким способом |
| Адаптер Codex для ACP/acpx | ACP sessions_spawn({ runtime: "acp" }) |
Состояние задачи/сеанса ACP | Отделён от нативной обвязки Codex |
agents.defaults.imageModel использует то же разделение по префиксам. Используйте openai/gpt-*
для обычного маршрута OpenAI, а codex/gpt-* — только когда распознавание изображений
должно выполняться посредством ограниченного хода app-server Codex. Doctor преобразует устаревшие
ссылки Codex GPT в openai/gpt-*.
Схемы развёртывания
Базовое развёртывание Codex
Используйте конфигурацию быстрого старта для модели OpenAI, чей итоговый официальный HTTPS-маршрут допускает неявный выбор Codex:
{ plugins: { entries: { codex: { enabled: true, }, }, }, agents: { defaults: { model: "openai/gpt-5.6-sol", }, },}Развёртывание с несколькими провайдерами
Оставьте Claude агентом по умолчанию и добавьте именованный агент Codex:
{ plugins: { entries: { codex: { enabled: true, }, }, }, agents: { defaults: { model: "anthropic/claude-opus-4-6", }, list: [ { id: "main", default: true, model: "anthropic/claude-opus-4-6", }, { id: "codex", name: "Codex", model: "openai/gpt-5.6-sol", }, ], },}Агент main использует свой обычный путь провайдера. Агент codex использует
app-server Codex, пока его итоговый маршрут OpenAI остаётся совместимым; добавьте явную
область действия модели agentRuntime.id: "codex", если это должно быть обязательным
условием с закрытым отказом.
Развёртывание Codex с закрытым отказом
Допустимый точный официальный HTTPS-маршрут OpenAI может разрешаться в Codex, когда доступен встроенный плагин. Добавьте явную политику среды выполнения для заданного правила с закрытым отказом:
{ models: { providers: { openai: { agentRuntime: { id: "codex", }, }, }, }, agents: { defaults: { model: "openai/gpt-5.6-sol", }, }, plugins: { entries: { codex: { enabled: true, }, }, },}При принудительном использовании Codex OpenClaw завершается с ошибкой на раннем этапе, если итоговый маршрут не объявлен совместимым с Codex, плагин отключён, app-server слишком стар или app-server не удаётся запустить.
Политика app-server
По умолчанию плагин локально запускает управляемый OpenClaw бинарный файл Codex с
транспортом stdio. Задавайте appServer.command только для намеренного запуска
другого исполняемого файла. Используйте транспорт WebSocket, только когда app-server
уже запущен в другом месте:
{ plugins: { entries: { codex: { enabled: true, config: { appServer: { transport: "websocket", url: "ws://gateway-host:39175", authToken: "${CODEX_APP_SERVER_TOKEN}", }, }, }, }, },}Локальные сеансы app-server со stdio по умолчанию используют модель доверенного локального
оператора: approvalPolicy: "never", approvalsReviewer: "user" и
sandbox: "danger-full-access". Если локальные требования Codex запрещают такую
неявную модель YOLO, OpenClaw вместо неё выбирает разрешённые права Guardian.
Когда для сеанса активна песочница OpenClaw, OpenClaw отключает для этого хода
нативный Code Mode Codex, пользовательские серверы MCP и выполнение плагинов,
поддерживаемых приложениями, вместо использования песочницы Codex на стороне хоста.
Доступ к оболочке вместо этого осуществляется через динамические инструменты на базе
песочницы OpenClaw, такие как sandbox_exec и sandbox_process, когда доступны
обычные инструменты выполнения и процессов.
Используйте нормализованный режим выполнения OpenClaw для нативной автоматической проверки Codex до выхода из песочницы или предоставления дополнительных разрешений:
{ tools: { exec: { mode: "auto", }, }, plugins: { entries: { codex: { enabled: true, }, }, },}Для сеансов app-server Codex tools.exec.mode: "auto" сопоставляется с одобрениями,
проверенными Codex Guardian: обычно approvalPolicy: "on-request",
approvalsReviewer: "auto_review" и sandbox: "workspace-write", когда
локальные требования допускают эти значения. В tools.exec.mode: "auto"
OpenClaw не сохраняет устаревшие небезопасные переопределения Codex approvalPolicy: "never"
или sandbox: "danger-full-access"; используйте tools.exec.mode: "full" для
намеренного режима Codex без одобрений. Устаревшая предустановка
plugins.entries.codex.config.appServer.mode: "guardian" по-прежнему
работает, но tools.exec.mode: "auto" является нормализованной поверхностью OpenClaw.
Сравнение режимов с одобрениями выполнения на хосте и разрешениями ACPX см. в разделе Режимы разрешений. Все поля app-server, порядок аутентификации, изоляция среды и поведение тайм-аутов описаны в Справочнике по обвязке Codex.
Команды и диагностика
Плагин codex регистрирует /codex как slash-команду в любом канале,
поддерживающем текстовые команды OpenClaw.
Для нативного выполнения и управления требуется владелец или клиент Gateway с operator.admin:
привязка или возобновление веток, отправка или остановка ходов,
изменение модели, быстрого режима или состояния разрешений, уплотнение или проверка,
а также отсоединение привязки. Для остальных авторизованных отправителей доступны только
команды чтения состояния, справки, учётной записи, моделей, веток, серверов MCP,
навыков и сведений о привязке.
Распространённые формы:
/codex statusпроверяет подключение к app-server, модели, учётную запись, лимиты запросов, серверы MCP и навыки./codex modelsвыводит актуальные модели app-server Codex./codex threads [filter]выводит последние ветки app-server Codex./codex resume <thread-id>подключает текущий сеанс OpenClaw к существующей ветке Codex./codex bind [thread-id] [--cwd <path>] [--model <model>] [--provider <provider>]подключает текущий чат./codex detach(или/codex unbind) отсоединяет текущую привязку./codex bindingописывает текущую привязку./codex stopостанавливает активный ход;/codex steer <text>корректирует его./codex model <model>,/codex fast [on|off|status]и/codex permissions [default|yolo|status]изменяют состояние отдельной беседы./codex compactзапрашивает у app-server Codex уплотнение подключённой ветки./codex reviewзапускает нативную проверку Codex для подключённой ветки./codex diagnostics [note]запрашивает подтверждение перед отправкой отзыва о Codex для подключённой ветки./codex accountпоказывает состояние учётной записи и лимитов запросов./codex mcpвыводит состояние серверов MCP app-server Codex./codex skillsвыводит навыки app-server Codex./codex plugins list,/codex plugins enable <name>и/codex plugins disable <name>управляют настроенными нативными плагинами Codex./codex computer-use [status|install]управляет Codex Computer Use./codex helpвыводит полное дерево команд.
В большинстве обращений в службу поддержки начните с /diagnostics [note] в
разговоре, где произошла ошибка. Эта команда создаёт один диагностический
отчёт Gateway и, для сеансов среды Codex, запрашивает разрешение на отправку
соответствующего пакета обратной связи Codex. Модель конфиденциальности и поведение
в групповых чатах описаны в разделе
Экспорт диагностики. Используйте /codex diagnostics [note], только если требуется
отправить отзыв Codex для текущей подключённой ветки без
полного диагностического пакета Gateway.
Локальная проверка веток Codex
Часто самый быстрый способ исследовать неудачный запуск Codex — открыть соответствующую ветку непосредственно в нативном Codex:
codex resume <thread-id>Идентификатор ветки можно получить из завершённого ответа /diagnostics, /codex binding
или /codex threads [filter].
Механизм отправки и границы диагностики на уровне среды выполнения описаны в разделе Среда выполнения оболочки Codex.
Порядок аутентификации
В домашнем каталоге агента по умолчанию аутентификация выбирается в следующем порядке:
- Упорядоченные профили аутентификации OpenAI для агента, предпочтительно в
auth.order.openai. Запуститеopenclaw doctor --fix, чтобы перенести старые устаревшие идентификаторы профилей аутентификации Codex и устаревший порядок аутентификации Codex. - Существующая учётная запись app-server в домашнем каталоге Codex этого агента.
- Только для локальных запусков app-server через stdio:
CODEX_API_KEY, затемOPENAI_API_KEY, если учётная запись app-server отсутствует, но аутентификация OpenAI по-прежнему требуется.
Когда OpenClaw обнаруживает профиль аутентификации Codex по подписке ChatGPT, он
удаляет CODEX_API_KEY и OPENAI_API_KEY из порождённого дочернего
процесса Codex. Благодаря этому API-ключи уровня Gateway остаются доступными для эмбеддингов или
прямых моделей OpenAI, но нативные обращения Codex app-server не начинают
случайно оплачиваться через API. Явные профили Codex с API-ключами и локальный
резервный вариант с ключом из окружения для stdio используют вход в app-server вместо унаследованного
окружения дочернего процесса. Подключения app-server через WebSocket не получают резервный
API-ключ Gateway из окружения; используйте явный профиль аутентификации или собственную
учётную запись удалённого app-server.
Если профиль подписки достигает лимита использования Codex, OpenClaw записывает
время сброса, когда Codex его сообщает, и пробует следующий упорядоченный профиль аутентификации
для того же запуска Codex. После наступления времени сброса профиль
подписки снова становится доступным без изменения выбранной модели openai/gpt-*
или среды выполнения Codex.
Если настроены нативные плагины Codex, OpenClaw устанавливает или обновляет
их через подключённый app-server, прежде чем предоставить принадлежащие плагинам
приложения ветке Codex. app/list остаётся источником истины для идентификаторов
приложений, доступности и метаданных, однако решение о включении для каждой ветки
принимает OpenClaw: если политика разрешает указанное доступное приложение, OpenClaw
отправляет thread/start.config.apps[appId].enabled = true, даже если app/list
в данный момент сообщает, что приложение отключено. Этот путь не выполняет
установку приложений с неизвестными идентификаторами; OpenClaw активирует только плагины из магазина
с plugin/install, а затем обновляет инвентарь.
Изоляция окружения
При локальных запусках app-server через stdio OpenClaw задаёт CODEX_HOME как
отдельный каталог для каждого агента, чтобы конфигурация Codex, файлы аутентификации и учётной записи, кэш и данные плагинов,
а также нативное состояние веток по умолчанию не читались из личного
~/.codex оператора и не записывались туда. OpenClaw сохраняет обычный процессный HOME;
подпроцессы запусков Codex по-прежнему могут находить конфигурацию и токены в домашнем каталоге пользователя, а
Codex может обнаруживать общие записи $HOME/.agents/skills и
$HOME/.agents/plugins/marketplace.json. При использовании
appServer.homeScope: "user" OpenClaw вместо этого использует нативный пользовательский домашний каталог Codex
и его существующую учётную запись, не внедряя профиль аутентификации OpenClaw.
Если развёртыванию требуется дополнительная изоляция окружения, добавьте эти
переменные в appServer.clearEnv:
{ plugins: { entries: { codex: { enabled: true, config: { appServer: { clearEnv: ["CODEX_API_KEY", "OPENAI_API_KEY"], }, }, }, }, },}appServer.clearEnv влияет только на порождённый дочерний процесс
Codex app-server. OpenClaw удаляет CODEX_HOME и HOME из этого списка при
нормализации локального запуска: CODEX_HOME продолжает указывать на выбранную
область агента или пользователя, а HOME продолжает наследоваться, чтобы подпроцессы могли использовать
обычное состояние домашнего каталога пользователя.
Динамические инструменты и веб-поиск
По умолчанию динамические инструменты Codex загружаются через searchable. Обычно OpenClaw
не предоставляет динамические инструменты, дублирующие нативные операции Codex с рабочей областью:
read, write, edit, apply_patch, exec, process, update_plan,
tool_call, tool_describe, tool_search и tool_search_code. Большинство
остальных интеграционных инструментов OpenClaw, таких как обмен сообщениями, мультимедиа, cron,
браузер, узлы, Gateway и heartbeat_respond, доступны через
поиск инструментов Codex в пространстве имён openclaw, что уменьшает начальный контекст
модели. Резервная оболочка для ограниченных обращений является исключением для
exec и process, когда конечный список разрешений отключает нативный Code Mode;
списки разрешений среды выполнения и codexDynamicToolsExclude по-прежнему применяются.
Инструменты с отметкой catalogMode: "direct-only", включая инструмент OpenClaw computer,
используют пространство имён openclaw_direct. Codex рассматривает это пространство имён
как DirectModelOnly, поэтому эти инструменты остаются непосредственно видимыми модели в обычных
ветках и ветках только с Code Mode, а не проходят через вложенные вызовы Code Mode tools.*.
По умолчанию веб-поиск использует размещённый инструмент Codex web_search, если поиск
включён и управляемый поставщик не выбран. Нативный размещённый поиск и
управляемый динамический инструмент OpenClaw web_search являются взаимоисключающими, чтобы
управляемый поиск не мог обходить нативные ограничения доменов. OpenClaw использует
управляемый инструмент, когда размещённый поиск недоступен, явно отключён или
заменён выбранным управляемым поставщиком. OpenClaw оставляет автономное
расширение Codex web.run отключённым, поскольку производственный трафик app-server отклоняет
его пользовательское пространство имён web. tools.web.search.enabled: false
отключает оба пути, как и запуски только с LLM и отключёнными инструментами. Codex рассматривает
"cached" как предпочтение и преобразует его в активный внешний доступ для
неограниченных обращений app-server. Автоматический управляемый резервный вариант работает с отказом по умолчанию, когда
заданы нативные allowedDomains, чтобы список разрешений нельзя было обойти.
Постоянные изменения действующей политики поиска сменяют привязанную ветку Codex
перед следующим обращением; временные ограничения для отдельного обращения используют временную
ограниченную ветку и сохраняют существующую привязку для последующего возобновления.
sessions_yield и ответы источника только для инструмента сообщений остаются прямыми, поскольку
это контракты управления обращением. sessions_spawn остаётся доступным для поиска, чтобы
нативный spawn_agent Codex оставался основным механизмом субагентов Codex,
при этом явное делегирование OpenClaw или ACP по-прежнему доступно через
пространство имён динамических инструментов openclaw. Инструкции по совместной работе Heartbeat
предписывают Codex искать heartbeat_respond перед завершением обращения Heartbeat,
если инструмент ещё не загружен.
Задавайте codexDynamicToolsLoading: "direct" только при подключении к пользовательскому
Codex app-server, который не умеет искать отложенные динамические инструменты, или при
отладке полного набора инструментов.
Поля конфигурации
Поддерживаемые поля верхнего уровня плагина Codex:
| Поле | Значение по умолчанию | Назначение |
|---|---|---|
codexDynamicToolsLoading |
"searchable" |
Используйте "direct", чтобы поместить динамические инструменты OpenClaw непосредственно в начальный контекст инструментов Codex. |
codexDynamicToolsExclude |
[] |
Дополнительные имена динамических инструментов OpenClaw, которые следует исключить из обращений Codex app-server. |
codexPlugins |
отключено | Поддержка нативных плагинов и приложений Codex для перенесённых курируемых плагинов, установленных из исходного кода. |
sessionCatalog |
включено | Обнаружение на боковой панели нативных сеансов Codex в этом Gateway и подходящих сопряжённых узлах. |
supervision |
отключено | Доступная агенту политика стенограммы нативного сеанса и управления записью. |
Поддерживаемые поля appServer:
| Поле | Значение по умолчанию | Значение |
|---|---|---|
transport |
"stdio" |
"stdio" запускает Codex; явное значение "unix" подключается к локальному управляющему сокету; "websocket" подключается к url. |
homeScope |
"agent" |
"agent" изолирует обычное состояние среды выполнения для каждого агента OpenClaw. "user" — это явное согласие на совместное использование нативного $CODEX_HOME или ~/.codex, применение нативной аутентификации и включение управления потоками только владельцем. Пользовательская область поддерживает локальный stdio- или Unix-транспорт. Для отдельного подключения супервизора незаданное значение разрешается в "user" для stdio или Unix и в "agent" для WebSocket. |
command |
управляемый исполняемый файл Codex | Исполняемый файл для stdio-транспорта. Оставьте незаданным, чтобы использовать управляемый исполняемый файл; задавайте только для явного переопределения. |
args |
["app-server", "--listen", "stdio://"] |
Аргументы для stdio-транспорта. |
url |
не задано | URL App Server для WebSocket или URL unix://. Явно заданный пустой Unix-путь выбирает канонический управляющий сокет в домашнем каталоге пользователя. |
authToken |
не задано | Bearer-токен для WebSocket-транспорта. Принимает строковый литерал или SecretInput, например ${CODEX_APP_SERVER_TOKEN}. |
headers |
{} |
Дополнительные заголовки WebSocket. Значения заголовков принимают строковые литералы или значения SecretInput, например x-codex-client-session-token: "${CODEX_CLIENT_SESSION_TOKEN}". |
clearEnv |
[] |
Имена дополнительных переменных среды, удаляемых из запущенного stdio-процесса app-server после того, как OpenClaw сформирует наследуемое окружение. При локальных запусках OpenClaw сохраняет выбранное значение CODEX_HOME и унаследованное значение HOME. |
codeModeOnly |
false |
Включает поверхность инструментов Codex, доступную только в режиме кода. Обычные динамические инструменты OpenClaw остаются доступны через вложенные вызовы tools.*; инструменты openclaw_direct остаются непосредственно видимыми модели. |
remoteWorkspaceRoot |
не задано | Корневой каталог рабочего пространства удалённого app-server Codex. Если он задан, OpenClaw определяет корневой каталог локального рабочего пространства из разрешённого рабочего пространства OpenClaw, сохраняет текущий суффикс cwd относительно этого удалённого корня и отправляет Codex только итоговый cwd app-server. Если cwd находится за пределами разрешённого корневого каталога рабочего пространства OpenClaw, OpenClaw безопасно завершает операцию с ошибкой, а не отправляет локальный для Gateway путь удалённому app-server. |
requestTimeoutMs |
60000 |
Время ожидания вызовов плоскости управления app-server. |
turnCompletionIdleTimeoutMs |
60000 |
Период бездействия после того, как Codex принимает ход, или после относящегося к ходу запроса app-server, пока OpenClaw ожидает turn/completed. |
postToolRawAssistantCompletionIdleTimeoutMs |
300000 |
Ограничитель бездействия при завершении и хода выполнения, используемый после передачи управления инструменту, завершения нативного инструмента, необработанного хода выполнения ассистента после инструмента, завершения необработанного рассуждения или хода рассуждения, пока OpenClaw ожидает turn/completed. Используйте его для доверенных или ресурсоёмких рабочих нагрузок, где синтез после инструмента может обоснованно оставаться бездействующим дольше, чем допускает бюджет окончательного ответа ассистента. |
mode |
"yolo", если локальные требования Codex не запрещают YOLO |
Предустановка для выполнения в режиме YOLO или с проверкой контролёром. При локальном stdio требования, в которых отсутствуют danger-full-access, подтверждение never или проверяющий user, неявно выбирают контролёра по умолчанию. |
approvalPolicy |
"never" или разрешённая политика подтверждения контролёра |
Нативная политика подтверждения Codex, отправляемая при запуске, возобновлении потока или начале хода. Настройки контролёра по умолчанию предпочитают "on-request", когда это разрешено. |
sandbox |
"danger-full-access" или разрешённая песочница контролёра |
Нативный режим песочницы Codex, отправляемый при запуске или возобновлении потока. Настройки контролёра по умолчанию предпочитают "workspace-write", когда это разрешено, иначе — "read-only". Когда песочница OpenClaw активна, ходы danger-full-access используют workspace-write Codex с сетевым доступом, определяемым настройкой исходящего трафика песочницы OpenClaw. |
approvalsReviewer |
"user" или разрешённый проверяющий контролёра |
Используйте "auto_review", чтобы Codex мог проверять запросы нативного подтверждения, когда это разрешено; в противном случае используйте guardian_subagent или user. guardian_subagent остаётся устаревшим псевдонимом. |
serviceTier |
не задано | Необязательный уровень обслуживания app-server Codex. "priority" включает маршрутизацию в быстром режиме, "flex" запрашивает гибкую обработку, null сбрасывает переопределение, а устаревшее значение "fast" принимается как "priority". |
networkProxy |
отключено | Включает сетевой доступ на основе профиля разрешений Codex для команд app-server. OpenClaw определяет выбранную конфигурацию permissions.<profile>.network и выбирает её с помощью default_permissions вместо отправки sandbox. |
experimental.sandboxExecServer |
false |
Предварительная функция, включаемая явно и регистрирующая в поддерживаемом app-server Codex окружение Codex на основе песочницы OpenClaw, чтобы нативное выполнение Codex могло работать внутри активной песочницы OpenClaw. |
appServer.networkProxy задаётся явно, поскольку изменяет контракт песочницы
Codex. Когда эта функция включена, OpenClaw также задаёт features.network_proxy.enabled
и default_permissions в конфигурации потока Codex, чтобы созданный
профиль разрешений мог запустить управляемый Codex сетевой доступ. По умолчанию OpenClaw
создаёт устойчивое к коллизиям имя профиля openclaw-network-<fingerprint>
из тела профиля; используйте profileName только тогда, когда требуется
стабильное локальное имя.
{ plugins: { entries: { codex: { config: { appServer: { sandbox: "workspace-write", networkProxy: { enabled: true, domains: { "api.openai.com": "allow", "blocked.example.com": "deny", }, unixSockets: { "/tmp/proxy.sock": "allow", "/tmp/blocked.sock": "none", }, allowUpstreamProxy: true, proxyUrl: "http://127.0.0.1:3128", }, }, }, }, }, },}Если обычной средой выполнения app-server была бы danger-full-access, включение
networkProxy использует доступ к файловой системе в стиле рабочей области для создаваемого
профиля разрешений: управляемое Codex применение сетевых ограничений представляет собой изолированную
сетевую среду, поэтому профиль полного доступа не защищал бы исходящий трафик.
Записи доменов используют allow или deny; записи сокетов Unix используют значения Codex
allow или none.
Динамические тайм-ауты вызовов инструментов
Вызовы динамических инструментов, принадлежащих OpenClaw, ограничиваются независимо от
appServer.requestTimeoutMs: для запросов Codex item/tool/call по умолчанию используется 90-секундный
сторожевой таймер OpenClaw. Положительный аргумент timeoutMs для отдельного вызова
увеличивает или уменьшает бюджет этого конкретного инструмента, но не более 600000 мс.
Инструмент image_generate использует agents.defaults.imageGenerationModel.timeoutMs,
если вызов инструмента не задаёт собственный тайм-аут, а в остальных случаях — 120-секундный
тайм-аут генерации изображений по умолчанию. Инструмент анализа медиа image
использует tools.media.image.timeoutSeconds или свой 60-секундный тайм-аут медиа по умолчанию; при
анализе изображений этот тайм-аут применяется к самому запросу и не
уменьшается из-за ранее выполненной подготовительной работы. При истечении тайм-аута OpenClaw прерывает сигнал
инструмента, если это поддерживается, и возвращает Codex ответ о сбое динамического инструмента,
чтобы ход мог продолжиться, а сеанс не оставался в состоянии processing.
Этот сторожевой таймер представляет собой внешний динамический бюджет item/tool/call; тайм-ауты
запросов конкретных провайдеров действуют внутри этого вызова и сохраняют собственную семантику тайм-аутов.
После того как Codex принимает ход, а также после того как OpenClaw отвечает на относящийся к ходу
запрос app-server, среда ожидает, что Codex продолжит обработку текущего хода
и в итоге завершит нативный ход с помощью turn/completed. Если
app-server не проявляет активности в течение appServer.turnCompletionIdleTimeoutMs, OpenClaw
по возможности прерывает ход Codex, регистрирует диагностический тайм-аут и
освобождает полосу сеанса OpenClaw, чтобы последующие сообщения чата не
ожидали завершения устаревшего нативного хода. Большинство нетерминальных уведомлений того же
хода отключают этот короткий сторожевой таймер, поскольку Codex подтвердил, что ход
всё ещё активен.
Для передачи управления инструментам используется более длительный бюджет бездействия после инструмента: после того как OpenClaw возвращает
ответ item/tool/call, после завершения нативных элементов инструментов, таких как
commandExecution, после необработанных завершений custom_tool_call_output,
а также после необработанного прогресса ассистента, завершений рассуждений
или прогресса рассуждений, следующих за инструментом. Защитный механизм использует
appServer.postToolRawAssistantCompletionIdleTimeoutMs, если он настроен, а в противном случае
по умолчанию — пять минут; тот же бюджет также продлевает
сторожевой таймер прогресса на период безмолвного формирования ответа до того, как Codex выдаст
следующее событие текущего хода. Глобальные уведомления app-server, например
обновления ограничений частоты запросов, не сбрасывают отслеживание отсутствия прогресса хода. За завершениями рассуждений,
завершениями commentary agentMessage и необработанным прогрессом рассуждений или
ассистента перед инструментом может следовать автоматический финальный ответ, поэтому для них используется
защитный механизм ответа после прогресса, а полоса сеанса не освобождается
немедленно.
Только завершённые финальные элементы agentMessage, не относящиеся к commentary, и необработанные
завершения ассистента перед инструментом активируют освобождение по выводу ассистента: если после этого Codex
не проявляет активности без turn/completed, OpenClaw по возможности прерывает нативный
ход и освобождает полосу сеанса. Если другой наблюдатель хода выигрывает эту гонку
за освобождение, OpenClaw всё равно принимает завершённый финальный элемент ассистента, когда
не остаётся активных нативных запросов, элементов или завершений динамических инструментов и
освобождение по выводу ассистента всё ещё относится к последнему завершённому элементу,
а более поздних завершений элементов нет. Это позволяет сохранить финальный ответ после
завершённой работы инструментов без повторного выполнения хода. Частичные дельты ассистента,
устаревшие предыдущие ответы и пустые более поздние завершения не учитываются.
Безопасные для повторного выполнения сбои stdio app-server, включая тайм-ауты бездействия при завершении хода без признаков ответа ассистента, работы инструмента, активного элемента или побочного эффекта, повторяются один раз в новой попытке app-server. При небезопасных тайм-аутах зависший клиент app-server всё равно выводится из эксплуатации, а полоса сеанса OpenClaw освобождается; кроме того, устаревшая привязка нативной ветки очищается вместо автоматического повторного выполнения. При тайм-аутах ожидания завершения отображается текст тайм-аута, относящийся к Codex: в безопасных для повторного выполнения случаях указывается, что ответ может быть неполным, а в небезопасных случаях пользователю предлагается проверить текущее состояние перед повторной попыткой. Общедоступная диагностика тайм-аутов включает структурные поля, такие как метод последнего уведомления app-server, идентификатор, тип и роль элемента необработанного ответа ассистента, количество активных запросов и элементов, а также состояние активированного наблюдателя; если последним уведомлением является элемент необработанного ответа ассистента, диагностика также включает ограниченный по длине предварительный просмотр текста ассистента. Необработанное содержимое промпта или инструмента не включается.
Переопределения переменных среды для локального тестирования
OPENCLAW_CODEX_APP_SERVER_BINобходит управляемый исполняемый файл, когдаappServer.commandне задан.OPENCLAW_CODEX_APP_SERVER_ARGSOPENCLAW_CODEX_APP_SERVER_MODE=yolo|guardianOPENCLAW_CODEX_APP_SERVER_APPROVAL_POLICYOPENCLAW_CODEX_APP_SERVER_SANDBOX
OPENCLAW_CODEX_APP_SERVER_GUARDIAN=1 был удалён. Вместо него используйте
plugins.entries.codex.config.appServer.mode: "guardian" или
OPENCLAW_CODEX_APP_SERVER_MODE=guardian для однократного локального тестирования. Для
воспроизводимых развёртываний предпочтительна конфигурация, поскольку она хранит поведение плагина
в том же проверенном файле, что и остальные настройки среды Codex.
Нативные плагины Codex
Поддержка нативных плагинов Codex использует собственные возможности приложений и плагинов
app-server Codex в той же ветке Codex, что и ход среды OpenClaw. OpenClaw
не преобразует плагины Codex в синтетические динамические инструменты OpenClaw codex_plugin_*.
codexPlugins влияет только на сеансы, в которых выбрана нативная среда Codex.
Он не влияет на запуски встроенной среды, обычные запуски провайдера OpenAI, привязки
диалогов ACP или другие среды.
Минимальная перенесённая конфигурация:
{ plugins: { entries: { codex: { enabled: true, config: { codexPlugins: { enabled: true, allow_destructive_actions: true, plugins: { "google-calendar": { enabled: true, marketplaceName: "openai-curated", pluginName: "google-calendar", }, }, }, }, }, }, },}Конфигурация приложений ветки вычисляется, когда OpenClaw устанавливает сеанс среды
Codex или заменяет устаревшую привязку ветки Codex; она не пересчитывается при
каждом ходе. После изменения codexPlugins используйте /new, /reset или перезапустите
Gateway, чтобы будущие сеансы среды Codex запускались с обновлённым набором
приложений.
Сведения о пригодности для миграции, перечне приложений, политике разрушительных действий, запросах данных у пользователя и диагностике нативных плагинов см. в разделе Нативные плагины Codex.
Доступ к приложениям и плагинам на стороне OpenAI контролируется учётной записью Codex, в которой выполнен вход, а для рабочих областей Business и Enterprise/Edu — также элементами управления приложениями рабочей области. Обзор управления учётными записями и рабочими областями OpenAI см. в разделе Использование Codex с тарифным планом ChatGPT.
Управление компьютером
Для управления компьютером предусмотрено отдельное руководство по настройке: Управление компьютером с помощью Codex.
Кратко: OpenClaw не включает приложение управления рабочим столом в свой состав и не выполняет
действия на рабочем столе самостоятельно. Он подготавливает app-server Codex, проверяет доступность
MCP-сервера computer-use, а затем позволяет Codex управлять нативными
вызовами инструментов MCP во время ходов в режиме Codex.
Границы среды выполнения
Среда Codex изменяет только низкоуровневый встроенный исполнитель агента.
- Динамические инструменты OpenClaw поддерживаются. Codex запрашивает у OpenClaw выполнение этих инструментов, поэтому OpenClaw остаётся в цепочке выполнения.
- Нативные инструменты оболочки, исправлений, MCP и приложений Codex управляются Codex. OpenClaw может наблюдать за выбранными нативными событиями или блокировать их через поддерживаемую ретрансляцию, но не переписывает аргументы нативных инструментов.
- Нативная Compaction управляется Codex. OpenClaw хранит зеркало стенограммы для
истории канала, поиска,
/new,/resetи будущего переключения модели или среды, но не заменяет Compaction Codex механизмом суммаризации OpenClaw или контекстного движка. - Генерация медиа, анализ медиа, TTS, подтверждения и вывод инструментов обмена сообщениями продолжают использовать соответствующие настройки провайдера и модели OpenClaw.
tool_result_persistприменяется к результатам инструментов стенограммы, принадлежащих OpenClaw, а не к записям результатов нативных инструментов Codex.
Сведения об уровнях перехватчиков, поддерживаемых поверхностях V1, обработке нативных разрешений, управлении очередью, механизмах отправки отзывов Codex и Compaction см. в разделе Среда выполнения Codex.
Устранение неполадок
Codex не отображается как обычный провайдер /model: это ожидаемо для новых
конфигураций. Выберите модель openai/gpt-*, включите
plugins.entries.codex.enabled и проверьте, не исключает ли plugins.allow
codex.
OpenClaw использует встроенную среду вместо Codex: убедитесь, что фактический
маршрут является точным официальным HTTPS-маршрутом Platform Responses или ChatGPT Responses,
не содержит пользовательского переопределения запроса, а плагин Codex установлен и
включён. Одного префикса openai/gpt-* недостаточно. Для строгой проверки во время
тестирования задайте для провайдера или модели agentRuntime.id: "codex"; принудительное использование Codex завершается
ошибкой вместо отката, если маршрут или среда несовместимы.
Среда выполнения OpenAI Codex откатывается к пути с API-ключом: соберите отредактированный фрагмент журнала Gateway, содержащий модель, среду выполнения, выбранного провайдера и ошибку. Попросите затронутых участников выполнить следующую команду только для чтения на их хосте OpenClaw:
( pattern='openai/gpt-5\.[45]|openai[-]codex|agentRuntime(\.id)?|harnessRuntime|Runtime: OpenAI Codex|legacy OpenAI Codex prefix|resolveSelectedOpenAIRuntimeProvider|candidateProvider[": ]+openai|status[": ]+401|Incorrect API key|No API key|api-key path|API-key path|OAuth' if ls /tmp/openclaw/openclaw-*.log >/dev/null 2>&1; then grep -E -i -n "$pattern" /tmp/openclaw/openclaw-*.log 2>/dev/null || true else journalctl --user -u openclaw-gateway --since today --no-pager 2>/dev/null \ | grep -E -i "$pattern" || true fi) | sed -E \ -e 's/(Authorization: Bearer )[A-Za-z0-9._~+\/-]+/\1[REDACTED]/Ig' \ -e 's/(Bearer )[A-Za-z0-9._~+\/-]+/\1[REDACTED]/Ig' \ -e 's/(api[_ -]?key[=: ]+)[^ ,}"]+/\1[REDACTED]/Ig' \ -e 's/(OPENAI_API_KEY[=: ]+)[^ ,}"]+/\1[REDACTED]/Ig' \ -e 's/sk-[A-Za-z0-9_-]{12,}/sk-[REDACTED]/g' \ -e 's/[A-Za-z0-9._%+-]+@[A-Za-z0-9.-]+\.[A-Za-z]{2,}/[EMAIL-REDACTED]/g' \ | tail -200Полезные фрагменты обычно включают openai/gpt-5.6-sol или openai/gpt-5.6-luna,
Runtime: OpenAI Codex, agentRuntime.id или harnessRuntime,
candidateProvider: "openai", а также результат 401, Incorrect API key или
No API key. Исправленный запуск должен показывать путь OAuth OpenAI
вместо обычной ошибки API-ключа OpenAI.
В конфигурации остались устаревшие ссылки на модели Codex: выполните openclaw doctor --fix.
Doctor заменяет устаревшие ссылки на модели на openai/*, удаляет устаревшие закрепления среды выполнения
сеанса и всего агента и сохраняет существующие переопределения профиля аутентификации.
App-server отклоняется: используйте app-server Codex 0.143.0 или новее.
Предварительные выпуски той же версии или версии с суффиксом сборки, такие как
0.143.0-alpha.2 или 0.143.0+custom, отклоняются, поскольку OpenClaw проверяет
стабильную минимальную версию протокола 0.143.0.
/codex status не удается подключиться: проверьте, что плагин codex
включен, что plugins.allow включает его, если настроен список
разрешений, и что все пользовательские appServer.command, url, authToken и
заголовки допустимы.
Обнаружение моделей выполняется медленно: уменьшите
plugins.entries.codex.config.discovery.timeoutMs или отключите обнаружение.
См. справочник по среде выполнения Codex.
Транспорт WebSocket сразу завершается с ошибкой: проверьте appServer.url,
authToken, заголовки и убедитесь, что удаленный сервер приложения использует ту же версию
протокола сервера приложения Codex.
Встроенные инструменты оболочки или применения исправлений блокируются с ошибкой Native hook relay unavailable: поток Codex по-прежнему пытается использовать
идентификатор встроенной ретрансляции хуков, который больше не зарегистрирован в OpenClaw.
Это проблема транспорта встроенных хуков Codex, а не сбой бэкенда ACP, провайдера,
GitHub или команды оболочки. Запустите новый сеанс в затронутом чате с помощью
/new или /reset, затем повторите безопасную команду. Если она сработает
один раз, но следующий вызов встроенного инструмента снова завершится ошибкой, считайте
/new только временным обходным решением: скопируйте запрос в новый сеанс после
перезапуска сервера приложения Codex или Gateway OpenClaw, чтобы старые потоки были удалены,
а регистрации встроенных хуков созданы заново.
Вызовы инструментов Codex создают слишком много кратковременных процессов хуков: задайте
plugins.entries.codex.config.appServer.loopDetectionPreToolUseRelay: false
и перезапустите Gateway. Это отключает только подпроцесс Codex PreToolUse,
используемый для обнаружения циклов OpenClaw, и его маркер отсутствия политики. Обязательные
before_tool_call и ретрансляции политик доверенных инструментов останутся включенными.
Модель, отличная от Codex, использует встроенную среду выполнения: это ожидаемо, если только политика
среды выполнения провайдера или модели не направляет ее в другую среду выполнения. Обычные ссылки
на провайдеров, отличных от OpenAI, остаются на своем стандартном пути провайдера в режиме
auto.
Computer Use установлен, но инструменты не запускаются: проверьте
/codex computer-use status в новом сеансе. Если инструмент сообщает
Native hook relay unavailable, воспользуйтесь описанным выше восстановлением встроенной ретрансляции хуков.
См. Computer Use для Codex.
Связанные материалы
- Справочник по среде выполнения Codex
- Среда выполнения Codex
- Надзор за Codex
- Нативные плагины Codex
- Computer Use для Codex
- Среды выполнения агентов
- Провайдеры моделей
- Провайдер OpenAI
- Справка по OpenAI Codex
- Плагины среды выполнения агентов
- Хуки плагинов
- Экспорт диагностических данных
- Состояние
- Тестирование