> ## Documentation Index
> Fetch the complete documentation index at: https://docs2.openclaw.ai/llms.txt
> Use this file to discover all available pages before exploring further.

# Переопределения установки плагинов

Переопределения установки плагинов позволяют сопровождающим направлять выполняемую во время настройки установку плагинов на
определённый пакет npm или локальный tarball-пакет npm вместо источника из каталога,
встроенного источника или источника npm по умолчанию. Они предназначены только для E2E и проверки пакетов;
обычные пользователи устанавливают плагины с помощью
[`openclaw plugins install`](https://docs2.openclaw.ai/ru/cli/plugins).

> [!WARNING]
>
> Переопределения выполняют код плагина из указанного вами источника. Используйте их только
> в изолированном каталоге состояния или на одноразовой тестовой машине.

## Переменные окружения

Переопределения отключены, если не заданы обе переменные:

```bash theme={"theme":{"light":"min-light","dark":"min-dark"}}
export OPENCLAW_ALLOW_PLUGIN_INSTALL_OVERRIDES=1
export 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.
Это относится к первоначальной настройке и любому другому потоку, использующему общий
установщик плагинов во время настройки.

* Переопределения по-прежнему требуют ожидаемый идентификатор плагина: tarball, сопоставленный с `codex`,
  должен устанавливать плагин, идентификатор которого в манифесте — `codex`.
* Переопределения не наследуют статус официального доверенного источника. Даже если
  запись каталога обычно представляет пакет, принадлежащий OpenClaw, переопределение
  считается тестовыми входными данными, предоставленными оператором.
* Файлы `.env` рабочей области не могут включать переопределения установки; обе переменные среды входят
  в список заблокированных переменных dotenv рабочей области. Задайте их в доверенной оболочке, задании CI или
  удалённой тестовой команде, запускающей OpenClaw.

## Сквозное тестирование пакета

Используйте изолированный каталог состояния, чтобы установка пакетов и записи об установке не
затрагивали обычное состояние OpenClaw:

```bash theme={"theme":{"light":"min-light","dark":"min-dark"}}
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 theme={"theme":{"light":"min-light","dark":"min-dark"}}
find "$OPENCLAW_STATE_DIR/npm/projects" -path '*/node_modules/@openclaw/codex/package.json' -print
grep -R '"@openclaw/codex"' "$OPENCLAW_STATE_DIR/npm/projects"/*/package-lock.json
```

Для сквозного тестирования реального провайдера получите настоящий ключ API из доверенной оболочки или секрета
CI перед запуском тестовой команды. Не выводите ключи; сообщайте только
источник и наличие ключа.
