---
read_when:
    - Вы хотите установить пакет, совместимый с Codex, Claude или Cursor
    - Вам необходимо понимать, как OpenClaw преобразует содержимое пакета в нативные функции
    - Вы отлаживаете обнаружение пакета или отсутствующие возможности
summary: Установка и использование наборов Codex, Claude и Cursor в качестве плагинов OpenClaw
title: Наборы плагинов
x-i18n:
    generated_at: "2026-07-13T18:26:45Z"
    model: gpt-5.6
    postprocess_version: locale-links-v1
    prompt_version: 24
    provider: openai
    source_hash: d44006866238f53ee2e3e8126cc4f7ed6f7413534257775f7904c9b877778c59
    source_path: plugins/bundles.md
    workflow: 16
---

OpenClaw может устанавливать плагины из трёх внешних экосистем: **Codex**, **Claude**
и **Cursor**. Они называются **пакетами** — наборами содержимого и метаданных,
которые OpenClaw сопоставляет со встроенными возможностями, такими как Skills, хуки и инструменты MCP.

<Info>
  Пакеты — **не** то же самое, что нативные плагины OpenClaw. Нативные плагины
  выполняются внутри процесса и могут регистрировать любые возможности. Пакеты представляют собой наборы содержимого
  с выборочным сопоставлением возможностей и более узкой границей доверия.
</Info>

## Зачем нужны пакеты

Многие полезные плагины публикуются в формате Codex, Claude или Cursor. Вместо
того чтобы требовать от авторов переписывать их как нативные плагины OpenClaw, OpenClaw
обнаруживает эти форматы и сопоставляет поддерживаемое ими содержимое с набором встроенных
возможностей. Вы можете установить пакет команд Claude или пакет Skills Codex и сразу
начать им пользоваться.

## Установка пакета

<Steps>
  <Step title="Установка из каталога, архива или маркетплейса">
    ```bash
    # Локальный каталог
    openclaw plugins install ./my-bundle

    # Архив
    openclaw plugins install ./my-bundle.tgz

    # Маркетплейс Claude
    openclaw plugins marketplace list <source>
    openclaw plugins install <plugin> --marketplace <source>
    ```

    `<source>` — это локальный путь к маркетплейсу/репозиторию или источник git/GitHub.

  </Step>

  <Step title="Проверка обнаружения">
    ```bash
    openclaw plugins list
    openclaw plugins inspect <id>
    ```

    Для пакетов отображается `Format: bundle`, а также значение `Bundle format:`: `codex`,
    `claude` или `cursor`.

  </Step>

  <Step title="Перезапуск и использование">
    ```bash
    openclaw gateway restart
    ```

    Сопоставленные возможности (Skills, хуки, инструменты MCP, настройки LSP по умолчанию) доступны в следующем сеансе.

  </Step>
</Steps>

## Что OpenClaw сопоставляет из пакетов

В настоящее время в OpenClaw работают не все возможности пакетов. Ниже указано, что работает,
а что обнаруживается, но пока не подключено.

### Поддерживается сейчас

| Возможность        | Способ сопоставления                                                                                     | Применимо к    |
| ------------------ | -------------------------------------------------------------------------------------------------------- | -------------- |
| Содержимое Skills  | Корневые каталоги Skills пакета загружаются как обычные Skills OpenClaw                                  | Все форматы    |
| Команды            | `commands/` и `.cursor/commands/` обрабатываются как корневые каталоги Skills                      | Claude, Cursor |
| Пакеты хуков       | Структуры в стиле OpenClaw: `HOOK.md` + `handler.ts`                                     | Codex          |
| Инструменты MCP    | Конфигурация MCP пакета объединяется со встроенными настройками OpenClaw; загружаются поддерживаемые серверы stdio и HTTP | Все форматы |
| Серверы LSP        | Claude `.lsp.json` и объявленные в манифесте `lspServers` объединяются со встроенными настройками LSP OpenClaw по умолчанию | Claude |
| Настройки          | Claude `settings.json` импортируются как встроенные настройки OpenClaw по умолчанию                   | Claude         |

#### Содержимое Skills

- Корневые каталоги Skills пакета загружаются как обычные корневые каталоги Skills OpenClaw.
- Корневые каталоги Claude `commands/` обрабатываются как дополнительные корневые каталоги Skills.
- Корневые каталоги Cursor `.cursor/commands/` обрабатываются как дополнительные корневые каталоги Skills.

Файлы команд Claude в формате Markdown и команды Cursor в формате Markdown работают через
обычный загрузчик Skills OpenClaw.

#### Пакеты хуков

Корневые каталоги хуков пакета работают **только** при использовании обычной
структуры пакета хуков OpenClaw: `HOOK.md` вместе с `handler.ts` или `handler.js`. В настоящее время это прежде всего
случай, совместимый с Codex.

#### MCP для встроенного OpenClaw

- Включённые пакеты могут предоставлять конфигурацию сервера MCP.
- OpenClaw объединяет конфигурацию MCP пакета с итоговыми настройками встроенного OpenClaw
  в виде `mcpServers`.
- OpenClaw предоставляет поддерживаемые инструменты MCP пакета во время
  запусков встроенного агента OpenClaw, запуская серверы stdio или подключаясь к серверам HTTP.
- Профили инструментов `coding` и `messaging` по умолчанию включают инструменты MCP пакета;
  используйте `tools.deny: ["bundle-mcp"]`, чтобы отключить их для агента или Gateway.
- Локальные настройки встроенного агента проекта по-прежнему применяются после настроек пакета по умолчанию, поэтому
  при необходимости настройки рабочей области могут переопределять записи MCP пакета.
- Каталоги инструментов MCP пакета детерминированно сортируются перед регистрацией, поэтому
  изменения порядка `listTools()` во внешнем источнике не вызывают постоянного изменения блоков инструментов в кэше промптов.

##### Транспорты

Серверы MCP могут использовать транспорт stdio или HTTP.

**Stdio** запускает дочерний процесс:

```json
{
  "mcp": {
    "servers": {
      "my-server": {
        "command": "node",
        "args": ["server.js"],
        "env": { "PORT": "3000" }
      }
    }
  }
}
```

**HTTP** подключается к работающему серверу MCP, по умолчанию используя `sse`, если
не запрошено `streamable-http`:

```json
{
  "mcp": {
    "servers": {
      "my-server": {
        "url": "http://localhost:3100/mcp",
        "transport": "streamable-http",
        "headers": {
          "Authorization": "Bearer ${MY_SECRET_TOKEN}"
        },
        "connectionTimeoutMs": 30000
      }
    }
  }
}
```

- `transport` принимает `"streamable-http"` или `"sse"`; если значение не указано, по умолчанию используется `sse`.
- `type: "http"` — это нативная для CLI форма нижележащей конфигурации; в конфигурации OpenClaw используйте `transport: "streamable-http"`. `openclaw mcp set` и `openclaw doctor --fix` нормализуют распространённый псевдоним.
- Разрешены только схемы URL `http:` и `https:`.
- Значения `headers` поддерживают подстановку `${ENV_VAR}`.
- Запись сервера, содержащая одновременно `command` и `url`, отклоняется.
- Учётные данные в URL (сведения о пользователе и параметры запроса) скрываются в описаниях
  инструментов и журналах.
- `connectionTimeoutMs` переопределяет стандартный 30-секундный тайм-аут подключения для
  транспортов stdio и HTTP. Тайм-аут запроса по умолчанию составляет 60 секунд и
  может быть переопределён с помощью `requestTimeoutMs`.

##### Именование инструментов

OpenClaw регистрирует инструменты MCP пакета с безопасными для провайдера именами в формате
`serverName__toolName`. Например, сервер с ключом `"vigil-harbor"`, предоставляющий
инструмент `memory_search`, регистрируется как `vigil-harbor__memory_search`.

- Символы, не входящие в `A-Za-z0-9_-`, заменяются на `-`.
- Фрагменты, которые начинались бы не с буквы, получают буквенный префикс, поэтому числовые
  ключи серверов, такие как `12306`, преобразуются в безопасные для провайдера префиксы инструментов.
- Длина префиксов серверов ограничена 30 символами.
- Длина полных имён инструментов ограничена 64 символами.
- Для пустых имён серверов используется резервное значение `mcp`.
- Коллизии очищенных имён устраняются с помощью числовых суффиксов.
- Итоговый порядок предоставляемых инструментов детерминирован по безопасному имени, благодаря чему повторные
  запуски встроенного агента сохраняют стабильность кэша.
- При фильтрации профилей каждый инструмент одного сервера MCP пакета считается
  принадлежащим плагину `bundle-mcp`, поэтому списки разрешений/запретов профиля могут ссылаться
  либо на отдельные предоставляемые имена инструментов, либо на ключ плагина `bundle-mcp`.

#### Настройки встроенного OpenClaw

Claude `settings.json` импортируется как настройки встроенного OpenClaw по умолчанию, когда
пакет включён. Перед применением OpenClaw очищает ключи переопределения оболочки:

- `shellPath`
- `shellCommandPrefix`

#### LSP встроенного OpenClaw

- Включённые пакеты Claude могут предоставлять конфигурацию сервера LSP.
- OpenClaw загружает `.lsp.json`, а также все пути `lspServers`, объявленные в манифесте.
- Конфигурация LSP пакета объединяется с итоговыми настройками LSP
  встроенного OpenClaw по умолчанию.
- В настоящее время могут выполняться только поддерживаемые серверы LSP на основе stdio; неподдерживаемые
  транспорты всё равно отображаются в `openclaw plugins inspect <id>`.

### Обнаруживается, но не выполняется

Следующие элементы распознаются и отображаются в диагностике, но OpenClaw их не запускает:

- Claude `agents`, автоматизация `hooks/hooks.json`, `outputStyles`
- Cursor `.cursor/agents`, `.cursor/hooks.json`, `.cursor/rules`
- Метаданные Codex `.app.json`, кроме отчётности о возможностях

## Форматы пакетов

<AccordionGroup>
  <Accordion title="Пакеты Codex">
    Маркеры: `.codex-plugin/plugin.json`

    Необязательное содержимое: `skills/`, `hooks/`, `.mcp.json`, `.app.json`

    Пакеты Codex лучше всего интегрируются с OpenClaw, когда используют корневые каталоги Skills и каталоги
    пакетов хуков в стиле OpenClaw (`HOOK.md` + `handler.ts`).

  </Accordion>

  <Accordion title="Пакеты Claude">
    Два режима обнаружения:

    - **На основе манифеста:** `.claude-plugin/plugin.json`
    - **Без манифеста:** стандартная структура Claude (`skills/`, `commands/`, `agents/`, `hooks/`, `.mcp.json`, `.lsp.json`, `settings.json`)

    Особенности поведения Claude:

    - `commands/` обрабатывается как содержимое Skills
    - `settings.json` импортируется в настройки встроенного OpenClaw (ключи переопределения оболочки очищаются)
    - `.mcp.json` предоставляет поддерживаемые инструменты stdio встроенному OpenClaw
    - `.lsp.json` вместе с путями `lspServers`, объявленными в манифесте, загружается в настройки LSP встроенного OpenClaw по умолчанию
    - `hooks/hooks.json` обнаруживается, но не выполняется
    - Пользовательские пути компонентов в манифесте являются дополнительными: они расширяют настройки по умолчанию, а не заменяют их

  </Accordion>

  <Accordion title="Пакеты Cursor">
    Маркеры: `.cursor-plugin/plugin.json`

    Необязательное содержимое: `skills/`, `.cursor/commands/`, `.cursor/agents/`, `.cursor/rules/`, `.cursor/hooks.json`, `.mcp.json`

    - `.cursor/commands/` обрабатывается как содержимое Skills
    - `.cursor/rules/`, `.cursor/agents/` и `.cursor/hooks.json` только обнаруживаются

  </Accordion>
</AccordionGroup>

## Приоритет обнаружения

Сначала OpenClaw проверяет нативный формат плагина:

1. `openclaw.plugin.json` или корректный `package.json` с `openclaw.extensions` — обрабатывается как **нативный плагин**
2. Маркеры пакета (`.codex-plugin/`, `.claude-plugin/` или стандартная структура Claude/Cursor) — обрабатывается как **пакет**

Если каталог содержит оба формата, OpenClaw использует нативный путь. Это предотвращает
частичную установку пакетов с двумя форматами как пакетов.

## Зависимости среды выполнения и очистка

- Для совместимых сторонних пакетов при запуске не выполняется восстановление `npm install`. Их
  следует устанавливать через `openclaw plugins install`, и они должны содержать всё
  необходимое в каталоге установленного плагина.
- Плагины из комплекта OpenClaw либо поставляются в облегчённом виде в составе ядра, либо
  загружаются через установщик плагинов. При запуске Gateway менеджер
  пакетов для них никогда не запускается.
- `openclaw doctor --fix` удаляет устаревшие записи об установке локальных плагинов из комплекта
  и может восстанавливать загружаемые плагины, отсутствующие в локальном индексе плагинов,
  если на них по-прежнему ссылается конфигурация.

## Безопасность

У пакетов более узкая граница доверия, чем у нативных плагинов:

- OpenClaw **не** загружает произвольные модули среды выполнения пакета внутри процесса.
- Пути Skills и пакетов хуков должны оставаться внутри корневого каталога плагина (границы проверяются).
- Файлы настроек читаются с теми же проверками границ.
- Поддерживаемые серверы MCP stdio могут запускаться как подпроцессы.

Благодаря этому пакеты по умолчанию безопаснее, но сторонние
пакеты всё равно следует считать доверенным содержимым в отношении предоставляемых ими возможностей.

## Устранение неполадок

<AccordionGroup>
  <Accordion title="Пакет обнаружен, но возможности не работают">
    Выполните `openclaw plugins inspect <id>`. Если возможность указана в списке, но отмечена как
    неподключённая, это ограничение продукта, а не ошибка установки.
  </Accordion>

  <Accordion title="Файлы команд Claude не отображаются">
    Убедитесь, что пакет включён, а файлы Markdown находятся внутри обнаруженного
    корневого каталога `commands/` или `skills/`.
  </Accordion>

  <Accordion title="Настройки Claude не применяются">
    Поддерживаются только встроенные настройки OpenClaw из `settings.json`. OpenClaw
    не обрабатывает настройки пакета как необработанные патчи конфигурации.
  </Accordion>

  <Accordion title="Хуки Claude не выполняются">
    `hooks/hooks.json` предназначен только для обнаружения. Если вам нужны выполняемые хуки, используйте
    структуру пакета хуков OpenClaw или поставляйте нативный плагин.
  </Accordion>
</AccordionGroup>

## Связанные материалы

- [Установка и настройка плагинов](/ru/tools/plugin)
- [Создание плагинов](/ru/plugins/building-plugins) — создание нативного плагина
- [Манифест плагина](/ru/plugins/manifest) — схема нативного манифеста
