Plugin reference

Перевизначення встановлення Plugin

Перевизначення встановлення Plugin дають змогу супроводжувачам спрямовувати встановлення Plugin під час налаштування на певний пакет npm або локальний tarball, створений командою npm pack, замість джерела з каталогу, вбудованого чи стандартного джерела npm. Вони призначені лише для E2E та перевірки пакетів; звичайні користувачі встановлюють плагіни за допомогою openclaw plugins install.

Середовище

Перевизначення вимкнені, якщо не задано обидві змінні:

bash
export OPENCLAW_ALLOW_PLUGIN_INSTALL_OVERRIDES=1export OPENCLAW_PLUGIN_INSTALL_OVERRIDES='{  "codex": "npm-pack:/tmp/openclaw-codex-2026.5.8.tgz",  "openclaw-web-search": "npm:@openclaw/web-search@2026.5.8"}'

Мапа перевизначень має формат JSON із ключами за ідентифікаторами плагінів. Значення підтримують:

Префікс Джерело
npm:<registry-spec> Пакети реєстру, точні версії або теги
npm-pack:<path.tgz> Локальні tarball-файли, створені командою npm pack; відносні шляхи визначаються від поточного робочого каталогу

Поведінка

Коли процес налаштування встановлює плагін, ідентифікатор якого є в мапі, OpenClaw використовує джерело перевизначення замість джерела з каталогу, вбудованого чи стандартного джерела npm. Це стосується початкового налаштування та будь-яких інших процесів, що використовують спільний інсталятор Plugin під час налаштування.

  • Перевизначення й надалі забезпечують відповідність очікуваному ідентифікатору плагіна: tarball, зіставлений із codex, має встановлювати плагін, ідентифікатор маніфесту якого — codex.
  • Перевизначення не успадковують офіційний статус довіреного джерела. Навіть коли запис каталогу зазвичай представляє пакет, що належить OpenClaw, перевизначення розглядається як надані оператором тестові вхідні дані.
  • Файли .env робочого простору не можуть увімкнути перевизначення встановлення; обидві змінні середовища є в списку заблокованих змінних dotenv робочого простору. Задавайте їх у довіреній оболонці, завданні CI або віддаленій тестовій команді, яка запускає OpenClaw.

E2E пакета

Використовуйте ізольований каталог стану, щоб установлені пакети та записи про встановлення не зачіпали ваш звичайний стан OpenClaw:

bash
npm pack extensions/codex --pack-destination /tmp OPENCLAW_STATE_DIR="$(mktemp -d)" \OPENCLAW_ALLOW_PLUGIN_INSTALL_OVERRIDES=1 \OPENCLAW_PLUGIN_INSTALL_OVERRIDES='{"codex":"npm-pack:/tmp/openclaw-codex-2026.5.8.tgz"}' \pnpm openclaw onboard --mode local

Перевірте встановлений пакет у каталозі стану:

bash
find "$OPENCLAW_STATE_DIR/npm/projects" -path '*/node_modules/@openclaw/codex/package.json' -printgrep -R '"@openclaw/codex"' "$OPENCLAW_STATE_DIR/npm/projects"/*/package-lock.json

Для E2E із реальним провайдером отримайте справжній ключ API з довіреної оболонки або секрету CI перед запуском тестової команди. Не виводьте ключі; повідомляйте лише джерело та чи був ключ наявний.

Was this useful?
On this page

On this page