---
read_when:
    - Тестирование процессов первоначальной настройки или конфигурации с локально упакованным плагином
    - Проверка пакета плагина перед публикацией
    - Замена автоматической установки плагина тестовым артефактом
sidebarTitle: Install overrides
summary: Тестирование переопределений упакованных плагинов с помощью процессов установки во время настройки
title: Переопределения установки плагинов
x-i18n:
    generated_at: "2026-07-13T18:21:33Z"
    model: gpt-5.6
    postprocess_version: locale-links-v1
    prompt_version: 24
    provider: openai
    source_hash: adc823f49ea9f8fa86e6a89933e43fdc309d808ac24397770495dbe81cb4b0d7
    source_path: plugins/install-overrides.md
    workflow: 16
---

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

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

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

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

```bash
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
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' -print
grep -R '"@openclaw/codex"' "$OPENCLAW_STATE_DIR/npm/projects"/*/package-lock.json
```

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