Plugin guides

Нативні плагіни Codex

Вбудована підтримка плагінів Codex дає змогу агенту OpenClaw у режимі Codex використовувати власні можливості застосунків і плагінів Codex app-server у тому самому потоці Codex, який обробляє хід OpenClaw. Виклики плагінів залишаються у вбудованому журналі Codex; Codex app-server відповідає за виконання MCP на основі застосунків. OpenClaw не перетворює плагіни Codex на синтетичні динамічні інструменти OpenClaw codex_plugin_*.

Використовуйте цю сторінку після того, як базовий рушій Codex запрацює.

Вимоги

  • Середовищем виконання агента має бути вбудований рушій Codex.
  • plugins.entries.codex.enabled має значення true.
  • plugins.entries.codex.config.codexPlugins.enabled має значення true.
  • Цільовий Codex app-server має бачити очікуваний перелік маркетплейсів, плагінів і застосунків.
  • Міграція підтримує лише плагіни openai-curated, які вона виявила як встановлені з джерела у вихідному домашньому каталозі Codex.
  • Налаштовані вручну плагіни workspace-directory потребують Codex app-server, у якому plugin/list приймає marketplaceKinds, а зведення робочих просторів без шляхів містять remotePluginId. Плагін уже має бути встановлений і ввімкнений, а належні йому застосунки мають бути доступними в app/list.

codexPlugins не впливає на запуски через провайдера OpenClaw, прив’язки розмов ACP або інші рушії, оскільки ці шляхи ніколи не створюють потоки Codex app-server із вбудованою конфігурацією apps.

Обліковий запис Codex на стороні OpenAI, доступність застосунків і засоби керування застосунками та плагінами робочого простору визначаються обліковим записом Codex, у який виконано вхід. Див. Використання Codex із вашим планом ChatGPT щодо моделі облікових записів і адміністрування OpenAI.

Швидкий початок

Попередньо перегляньте міграцію з вихідного домашнього каталогу Codex:

bash
openclaw migrate codex --dry-run

Додайте --verify-plugin-apps, щоб під час міграції викликати вихідний app/list і вимагати наявності, увімкненості та доступності кожного належного застосунку перед плануванням вбудованої активації:

bash
openclaw migrate codex --dry-run --verify-plugin-apps

Застосуйте міграцію, коли план має належний вигляд:

bash
openclaw migrate apply codex --yes

Міграція записує явні записи codexPlugins для придатних плагінів і викликає plugin/install Codex app-server для вибраних плагінів. Мігрована конфігурація має такий вигляд:

json5
{  plugins: {    entries: {      codex: {        enabled: true,        config: {          codexPlugins: {            enabled: true,            allow_destructive_actions: true,            plugins: {              "google-calendar": {                enabled: true,                marketplaceName: "openai-curated",                pluginName: "google-calendar",              },            },          },        },      },    },  },}

Міграція й надалі обмежена openai-curated. Щоб використовувати наявний плагін workspace-directory, додайте його вручну з точним ідентифікатором summary.id із зазначенням маркетплейсу, який повертає plugin/list. Наприклад, якщо Codex повертає example-plugin@workspace-directory, налаштуйте саме це повне значення, а не його відображувану назву:

json5
{  plugins: {    entries: {      codex: {        enabled: true,        config: {          codexPlugins: {            enabled: true,            plugins: {              "example-plugin": {                enabled: true,                marketplaceName: "workspace-directory",                pluginName: "example-plugin@workspace-directory",              },            },          },        },      },    },  },}

OpenClaw не викликає plugin/install і не починає автентифікацію для плагіна workspace-directory. Установіть, увімкніть і автентифікуйте його в Codex до додавання або ввімкнення політики OpenClaw. OpenClaw приховує застосунки, коли у відповіді немає точних відомостей про маркетплейс, ідентифікатор плагіна, ідентифікатор деталей або готовність застосунку. Якщо Codex відхиляє явний запит plugin/list робочого простору, OpenClaw повідомляє marketplace_missing для кожного ввімкненого плагіна робочого простору та залишає доступними всі незалежно виявлені куровані плагіни.

Після зміни codexPlugins нові розмови Codex автоматично отримують оновлений набір застосунків. Виконайте /new або /reset, щоб оновити поточну розмову. Для змін увімкнення чи вимкнення плагінів перезапуск Gateway не потрібен.

Керування плагінами із чату

/codex plugins перевіряє або змінює налаштовані вбудовані плагіни Codex із того самого чату, де ви використовуєте рушій Codex:

text
/codex plugins/codex plugins list/codex plugins disable google-calendar/codex plugins enable google-calendar

/codex plugins — це псевдонім для /codex plugins list. У списку показано ключ кожного налаштованого плагіна, його стан увімкнення, назву плагіна Codex і маркетплейс із plugins.entries.codex.config.codexPlugins.plugins.

enable/disable записують зміни лише до ~/.openclaw/openclaw.json; вони ніколи не редагують ~/.codex/config.toml і не встановлюють нові плагіни Codex. Виконувати їх може лише власник або клієнт Gateway з областю дії operator.admin.

Увімкнення налаштованого плагіна також активує глобальний перемикач codexPlugins.enabled. Якщо курований плагін було записано як вимкнений через те, що міграція повернула auth_required, повторно авторизуйте застосунок у Codex, перш ніж вмикати його в OpenClaw. Для запису workspace-directory увімкнення тут змінює лише політику OpenClaw; плагін і застосунок уже мають бути активними в Codex.

Як працює налаштування вбудованих плагінів

Інтеграція відстежує три стани:

Стан Значення
Установлено Codex має пакет плагіна в цільовому середовищі виконання app-server.
Увімкнено Codex повідомляє, що плагін увімкнено, а конфігурація OpenClaw дозволяє його для ходів рушія Codex.
Доступно Codex app-server підтверджує, що записи застосунків плагіна доступні для активного облікового запису та відповідають налаштованій ідентичності плагіна.

Для плагінів openai-curated міграція є сталим етапом установлення та перевірки придатності:

  • Під час планування OpenClaw читає вихідні відомості plugin/read Codex і перевіряє, що обліковий запис вихідного Codex app-server є обліковим записом із підпискою ChatGPT. Відповідь із відсутнім обліковим записом або обліковим записом не ChatGPT призводить до пропуску плагінів на основі застосунків із codex_subscription_required.
  • За замовчуванням міграція пропускає виклик вихідного app/list: вихідні плагіни на основі застосунків, які проходять перевірку облікового запису, плануються без перевірки доступності вихідних застосунків, а помилки транспорту під час отримання облікового запису призводять до пропуску з codex_account_unavailable.
  • З --verify-plugin-apps міграція отримує свіжий знімок вихідного app/list і вимагає наявності, увімкненості та доступності кожного належного застосунку перед плануванням вбудованої активації. У такому разі помилки транспорту під час отримання облікового запису передаються до перевірки вихідного переліку застосунків, а не спричиняють негайний пропуск.

Для плагінів workspace-directory налаштування відбувається поза OpenClaw. OpenClaw опитує цей маркетплейс, лише коли налаштовано принаймні один увімкнений запис робочого простору, визначає кожен плагін за точним summary.id і повторно використовує наявні перевірки належності plugin/read і готовності app/list. Невстановлений, вимкнений, недоступний або неавтентифікований плагін не надає жодних застосунків; OpenClaw не намагається встановлювати його чи виконувати автентифікацію.

Перелік застосунків середовища виконання є перевіркою доступності цільового сеансу як для мігрованих курованих плагінів, так і для налаштованих вручну плагінів робочого простору. Під час налаштування сеансу рушія Codex обчислюється обмежувальна конфігурація застосунків потоку на основі ввімкнених і доступних застосунків плагінів; вона не обчислюється повторно на кожному ході, тому /codex plugins enable/disable впливають лише на нові розмови Codex. Використовуйте /new або /reset, щоб застосувати зміну в поточній розмові.

Межі підтримки V1

  • Лише плагіни openai-curated, уже встановлені в переліку вихідного Codex app-server, придатні для міграції.
  • Середовище виконання також підтримує явні записи workspace-directory у збірках app-server, де plugin/list реалізує marketplaceKinds і повертає remotePluginId для зведень робочого простору без шляхів. Ці записи мають використовувати точний summary.id із зазначенням маркетплейсу та вже бути встановленими, увімкненими й доступними для застосунків. Відхилений запит списку робочого простору створює наявну діагностику marketplace_missing для кожного плагіна; за відсутності підтвердження маркетплейсу, плагіна, деталей або застосунку жоден застосунок робочого простору не надається. Курований перелік із типового запиту списку залишається придатним до використання.
  • Вихідні плагіни на основі застосунків мають пройти перевірку підписки під час міграції. --verify-plugin-apps додає перевірку вихідного переліку застосунків. Облікові записи, обмежені вимогою підписки, а в режимі перевірки — недоступні, вимкнені чи відсутні вихідні застосунки або помилки оновлення їх переліку, повідомляються як пропущені ручні елементи замість увімкнених записів конфігурації. Плагіни, відомості про які неможливо прочитати, пропускаються до перевірки переліку застосунків.
  • Міграція записує явні ідентичності плагінів (marketplaceName і pluginName); вона не записує локальні шляхи кешу marketplacePath.
  • codexPlugins.enabled — єдиний глобальний перемикач увімкнення; немає шаблону plugins["*"] або ключа конфігурації, що надає довільні повноваження на встановлення.
  • Некуровані маркетплейси, кешовані пакети плагінів, перехоплювачі та файли конфігурації Codex зберігаються у звіті про міграцію для ручного перегляду, а не активуються автоматично. Середовище виконання приймає налаштовані вручну записи workspace-directory; інші маркетплейси не підтримуються.

Перелік застосунків і належність

OpenClaw читає перелік застосунків Codex через app/list app-server, кешує його в пам’яті протягом однієї години та асинхронно оновлює застарілі або відсутні записи. Кеш є локальним для процесу; перезапуск CLI або Gateway очищує його, після чого OpenClaw відновлює його під час наступного читання app/list.

Міграція та середовище виконання використовують окремі ключі кешу:

  • Перевірка вихідної міграції використовує вихідний домашній каталог Codex і параметри запуску. Вона виконується лише з --verify-plugin-apps і примусово здійснює свіжий обхід вихідного app/list для цього запуску планування.
  • Налаштування цільового середовища виконання використовує ідентичність Codex app-server цільового агента під час побудови конфігурації застосунків потоку. Активація курованого плагіна робить цей цільовий ключ кешу недійсним, а потім примусово оновлює його після plugin/install. Налаштування workspace-directory ніколи не запускає цей шлях активації.

Застосунок плагіна надається лише тоді, коли OpenClaw може зіставити його з налаштованим плагіном через стабільну належність: точний ідентифікатор застосунку з відомостей про плагін, відому назву сервера MCP або унікальні стабільні метадані. Належність лише за відображуваною назвою або неоднозначна належність виключається, доки наступне оновлення переліку не підтвердить її.

Застосунки підключеного облікового запису

Агенти, якими керує власник, можуть дозволити всі застосунки, уже підключені до їхнього облікового запису Codex, без потреби у відповідному пакеті плагіна:

json5
{  plugins: {    entries: {      codex: {        enabled: true,        config: {          codexPlugins: {            enabled: true,            allow_all_plugins: true,            allow_destructive_actions: "auto",          },        },      },    },  },}

allow_all_plugins: true отримує повний знімок app/list під час створення нового вбудованого потоку Codex і допускає лише застосунки, позначені як доступні для цього облікового запису. Цей параметр не встановлює, не автентифікує та не вмикає застосунки глобально. Наявні потоки зберігають свій записаний набір застосунків; використовуйте /new, /reset або перезапустіть Gateway, щоб застосувати нові підключені або відкликані застосунки.

Застосунки облікового запису успадковують глобальне значення codexPlugins.allow_destructive_actions, яке приймає true, false, "auto" або "ask". Явна політика для окремого плагіна перевизначає глобальну політику для ідентифікаторів застосунків, що перетинаються. У разі помилок отримання переліку система безпечно забороняє доступ замість повернення до необмеженого типового значення.

Конфігурація застосунків потоку

OpenClaw додає обмежувальний патч config.apps для потоку Codex: _default вимкнено, а ввімкнено лише застосунки, що належать увімкненим налаштованим плагінам, або доступні застосунки облікового запису, дозволені параметром allow_all_plugins.

Значення destructive_enabled для кожного застосунку визначається чинною глобальною або окремою для плагіна політикою allow_destructive_actions; true, "auto" і "ask" встановлюють destructive_enabled: true, а falsefalse. Codex і надалі застосовує метадані руйнівних інструментів зі своїх вбудованих анотацій інструментів застосунку. _default вимкнено зі значенням open_world_enabled: false; увімкнені застосунки плагінів отримують open_world_enabled: true. OpenClaw не надає окремого параметра політики відкритого світу на рівні плагіна й не підтримує окремі для кожного плагіна списки заборонених назв руйнівних інструментів.

Режим схвалення інструментів за замовчуванням є автоматичним для дозволених застосунків, тому неруйнівні інструменти читання запускаються без запиту на схвалення в тому самому потоці. Руйнівні інструменти залишаються під контролем політики destructive_enabled кожного застосунку.

Політика руйнівних дій

Руйнівні запити плагінів за замовчуванням дозволено для налаштованих плагінів Codex, тоді як небезпечні схеми та неоднозначна належність призводять до безпечної відмови:

  • Глобальне значення allow_destructive_actions за замовчуванням дорівнює true.
  • Окреме для плагіна значення allow_destructive_actions перевизначає глобальну політику для цього плагіна.
  • false: OpenClaw повертає детерміновану відмову.
  • true: OpenClaw автоматично приймає лише безпечні схеми, які може перетворити на відповідь про схвалення, наприклад логічне поле схвалення.
  • "auto": OpenClaw надає Codex доступ до руйнівних дій плагіна, а потім перетворює запити MCP на схвалення, належність яких підтверджено, на схвалення плагіна OpenClaw, перш ніж повернути Codex відповідь про схвалення.
  • "ask": OpenClaw використовує такі самі обмеження Codex для запису й руйнівних дій, що й "auto", очищує стійкі перевизначення схвалення Codex для окремих інструментів застосунку до запуску потоку та пропонує лише одноразове схвалення або відмову, щоб стійкі схвалення не могли приховувати подальші запити щодо дій запису. Для кожного дозволеного застосунку, що використовує "ask", OpenClaw вибирає рецензента людських схвалень Codex для цього застосунку, щоб Codex надсилав свої запити на схвалення до OpenClaw; інші застосунки та схвалення потоку, не пов’язані із застосунками, зберігають налаштованого рецензента й політику.
  • Відсутня ідентичність плагіна, неоднозначна належність, відсутній або невідповідний ідентифікатор ходу чи небезпечна схема запиту призводять до відмови замість показу запиту.

Усунення несправностей

Код Значення Виправлення
auth_required Міграція встановила плагін, але один із його застосунків усе ще потребує автентифікації. Запис зберігається вимкненим до повторної авторизації. Повторно авторизуйте застосунок у Codex, а потім увімкніть плагін в OpenClaw.
app_inaccessible, app_disabled, app_missing З --verify-plugin-apps вихідний перелік застосунків Codex не показав усі належні застосунки як наявні, увімкнені й доступні. Повторно авторизуйте або ввімкніть застосунок у Codex, а потім повторно запустіть міграцію з --verify-plugin-apps.
app_inventory_unavailable Було запитано сувору перевірку вихідних застосунків, але не вдалося оновити вихідний перелік застосунків Codex. Виправте доступ до вихідного сервера застосунків Codex або повторіть спробу без --verify-plugin-apps, щоб прийняти швидший план із перевіркою облікового запису.
codex_subscription_required Обліковий запис вихідного сервера застосунків Codex не був обліковим записом із підпискою ChatGPT. Увійдіть у застосунок Codex за допомогою автентифікації підписки, а потім повторно запустіть міграцію.
codex_account_unavailable Не вдалося прочитати обліковий запис вихідного сервера застосунків Codex. Виправте автентифікацію вихідного сервера застосунків Codex або повторно запустіть із --verify-plugin-apps, щоб придатність визначалася вихідним переліком застосунків.
marketplace_missing, plugin_missing Маркетплейс або точний плагін недоступний; явний запит каталогу робочого простору міг бути відхилений; застосунки робочого простору безпечно блокуються. Перевірте сумісний контракт сервера застосунків і точний ідентифікатор, описаний нижче.
plugin_detail_unavailable OpenClaw не вдалося прочитати відомості про належність плагіна. Перевірте відповіді plugin/list і plugin/read цільового сервера застосунків.
plugin_disabled Codex повідомляє, що плагін установлено, але вимкнено. Керована активація може виправити це; перед повторною спробою ввімкніть плагін робочого простору в Codex.
plugin_activation_failed Активацію плагіна не завершено. Скористайтеся доданою діагностикою, щоб розрізнити помилки маркетплейсу, автентифікації, оновлення або готовності робочого простору.
app_inventory_missing, app_inventory_stale Стан готовності застосунку отримано з порожнього або застарілого кешу. OpenClaw автоматично планує асинхронне оновлення; застосунки плагіна залишаються виключеними, доки не буде відома їхня належність і готовність.
app_ownership_ambiguous Перелік застосунків знайшов відповідність лише за відображуваною назвою. Застосунок залишається прихованим від потоку Codex, доки подальше оновлення не підтвердить його належність.

Плагін робочого простору встановлено, але він не відображається: переконайтеся, що результат plugin/list робочого простору повідомляє точний налаштований ідентифікатор як установлений і ввімкнений, а потім переконайтеся, що app/list повідомляє про доступність кожного належного застосунку для того самого облікового запису Codex. OpenClaw може ввімкнути доступний застосунок для потоку, навіть якщо перелік облікового запису наразі повідомляє, що цей застосунок вимкнено. Якщо ви змінили цей стан після того, як Gateway кешував перелік застосунків, зачекайте на щогодинне оновлення кешу або перезапустіть Gateway, а потім скористайтеся /new чи /reset. OpenClaw не виправляє й не автентифікує плагіни робочого простору. Якщо явний запит списку робочого простору відхилено, кожен увімкнений запис робочого простору повідомляє marketplace_missing; обробка непов’язаних керованих записів продовжується на основі стандартної відповіді списку.

Для plugin_detail_unavailable зведення робочого простору без шляху має містити remotePluginId; OpenClaw зберігає належні застосунки прихованими, якщо цей селектор або подальший результат plugin/read недоступний. Для plugin_activation_failed керовані плагіни можуть повідомляти про помилку маркетплейсу, автентифікації або оновлення після встановлення. Плагін робочого простору повідомляє цей код, коли він ще не активний; установіть, увімкніть і автентифікуйте його поза OpenClaw.

Конфігурацію змінено, але агент не бачить плагін: виконайте /codex plugins list, щоб підтвердити налаштований стан, а потім /new або /reset. Наявні прив’язки потоку Codex зберігають конфігурацію застосунків, з якою їх було запущено, доки OpenClaw не створить новий сеанс середовища виконання або не замінить застарілу прив’язку.

Руйнівну дію відхилено: перевірте глобальне й окремі для плагінів значення allow_destructive_actions. Навіть із true, "auto" або "ask" небезпечні схеми запитів і неоднозначна ідентичність плагіна все одно призводять до безпечної відмови.

Пов’язані матеріали

Was this useful?
On this page

On this page