Бандлы — не то же самое, что нативные плагины OpenClaw. Нативные плагины работают
внутри процесса и могут регистрировать любые возможности. Бандлы — это пакеты контента с
выборочным сопоставлением функций и более узкой границей доверия.
Зачем нужны бандлы
Многие полезные плагины публикуются в формате Codex, Claude или Cursor. Вместо того чтобы требовать от авторов переписать их как нативные плагины OpenClaw, OpenClaw обнаруживает эти форматы и сопоставляет их поддерживаемый контент с нативным набором возможностей. Это значит, что вы можете установить пакет команд Claude или бандл Skills Codex и сразу использовать его.Установка бандла
Что 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
Пакеты хуков
- корневые каталоги хуков бандла работают только тогда, когда используют обычную
разметку пакета хуков OpenClaw. Сегодня это в основном совместимый с Codex случай:
HOOK.mdhandler.tsилиhandler.js
MCP для встроенного OpenClaw
- включенные бандлы могут добавлять конфигурацию MCP-сервера
- OpenClaw объединяет конфигурацию MCP бандла с эффективными встроенными настройками OpenClaw как
mcpServers - OpenClaw предоставляет поддерживаемые инструменты MCP бандла во время ходов встроенного агента OpenClaw, запуская серверы stdio или подключаясь к HTTP-серверам
- профили инструментов
codingиmessagingпо умолчанию включают инструменты MCP бандла; используйтеtools.deny: ["bundle-mcp"], чтобы отключить их для агента или Gateway - локальные для проекта настройки встроенного агента по-прежнему применяются после значений бандла по умолчанию, поэтому настройки рабочей области могут при необходимости переопределять записи MCP бандла
- каталоги инструментов MCP бандла сортируются детерминированно перед регистрацией, поэтому
изменения порядка upstream
listTools()не приводят к постоянному изменению блоков инструментов в кэше промпта
Транспорты
MCP-серверы могут использовать транспорт stdio или HTTP: Stdio запускает дочерний процесс:sse по умолчанию или через streamable-http, если это запрошено:
transportможно задать как"streamable-http"или"sse"; если он опущен, OpenClaw используетssetype: "http"— это нативная downstream-форма CLI; используйтеtransport: "streamable-http"в конфигурации OpenClaw.openclaw mcp setиopenclaw doctor --fixнормализуют распространенный алиас.- разрешены только схемы URL
http:иhttps: - значения
headersподдерживают интерполяцию${ENV_VAR} - запись сервера с одновременными
commandиurlотклоняется - учетные данные URL (userinfo и параметры запроса) редактируются из описаний инструментов и журналов
connectionTimeoutMsпереопределяет стандартный 30-секундный тайм-аут подключения для транспортов stdio и HTTP
Именование инструментов
OpenClaw регистрирует инструменты MCP бандла с безопасными для провайдера именами в формеserverName__toolName. Например, сервер с ключом "vigil-harbor", предоставляющий инструмент
memory_search, регистрируется как vigil-harbor__memory_search.
- символы вне
A-Za-z0-9_-заменяются на- - фрагменты, которые начинались бы не с буквы, получают буквенный префикс, поэтому числовые
ключи серверов, такие как
12306, становятся безопасными для провайдера префиксами инструментов - префиксы серверов ограничены 30 символами
- полные имена инструментов ограничены 64 символами
- пустые имена серверов откатываются к
mcp - конфликтующие нормализованные имена различаются числовыми суффиксами
- итоговый порядок предоставляемых инструментов детерминирован по безопасному имени, чтобы повторные ходы встроенного агента оставались стабильными для кэша
- фильтрация профилей считает все инструменты с одного MCP-сервера бандла принадлежащими плагину
bundle-mcp, поэтому allowlist и deny list профилей могут включать либо отдельные предоставляемые имена инструментов, либо ключ плагинаbundle-mcp
Встроенные настройки OpenClaw
- Claude
settings.jsonимпортируется как встроенные настройки OpenClaw по умолчанию, когда бандл включен - OpenClaw очищает ключи переопределения shell перед применением
shellPathshellCommandPrefix
Встроенный LSP OpenClaw
- включенные бандлы Claude могут добавлять конфигурацию LSP-сервера
- OpenClaw загружает
.lsp.jsonплюс любые объявленные в манифесте путиlspServers - конфигурация LSP бандла объединяется с эффективными встроенными значениями LSP OpenClaw по умолчанию
- сегодня запускаться могут только поддерживаемые LSP-серверы на базе stdio; неподдерживаемые
транспорты все равно отображаются в
openclaw plugins inspect <id>
Обнаруживается, но не выполняется
Эти элементы распознаются и показываются в диагностике, но OpenClaw их не запускает:- Claude
agents, автоматизацияhooks.json,outputStyles - Cursor
.cursor/agents,.cursor/hooks.json,.cursor/rules - встроенные метаданные Codex и метаданные приложения, кроме отчетности о возможностях
Форматы бандлов
Бандлы Codex
Бандлы Codex
Маркеры:
.codex-plugin/plugin.jsonНеобязательный контент: skills/, hooks/, .mcp.json, .app.jsonБандлы Codex лучше всего подходят OpenClaw, когда используют корневые каталоги Skills и каталоги
пакетов хуков в стиле OpenClaw (HOOK.md + handler.ts).Бандлы Claude
Бандлы Claude
Два режима обнаружения:
- На основе манифеста:
.claude-plugin/plugin.json - Без манифеста: стандартная разметка Claude (
skills/,commands/,agents/,hooks/,.mcp.json,.lsp.json,settings.json)
commands/обрабатывается как контент Skillssettings.jsonимпортируется во встроенные настройки OpenClaw (ключи переопределения shell очищаются).mcp.jsonпредоставляет поддерживаемые инструменты stdio встроенному OpenClaw.lsp.jsonплюс объявленные в манифесте путиlspServersзагружаются во встроенные значения LSP OpenClaw по умолчаниюhooks/hooks.jsonобнаруживается, но не выполняется- пользовательские пути компонентов в манифесте являются аддитивными (они расширяют значения по умолчанию, а не заменяют их)
Бандлы Cursor
Бандлы 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только обнаруживаются
Приоритет обнаружения
OpenClaw сначала проверяет формат нативного плагина:openclaw.plugin.jsonили допустимыйpackage.jsonсopenclaw.extensions— обрабатывается как нативный плагин- Маркеры бандла (
.codex-plugin/,.claude-plugin/или стандартная разметка Claude/Cursor) — обрабатываются как бандл
Зависимости времени выполнения и очистка
- Сторонние совместимые бандлы не получают восстановление
npm installпри запуске. Они должны устанавливаться черезopenclaw plugins installи поставлять все необходимое в установленном каталоге плагина. - Бандлы плагинов, принадлежащие OpenClaw, либо поставляются в облегченном виде в core, либо скачиваются через установщик плагинов. Запуск Gateway никогда не запускает для них менеджер пакетов.
openclaw doctor --fixудаляет устаревшие подготовленные каталоги зависимостей и может восстановить скачиваемые плагины, отсутствующие в локальном индексе плагинов, когда конфигурация ссылается на них.
Безопасность
У бандлов более узкая граница доверия, чем у нативных плагинов:- OpenClaw не загружает произвольные runtime-модули бандла внутри процесса
- Пути Skills и пакетов хуков должны оставаться внутри корня плагина (с проверкой границ)
- Файлы настроек читаются с теми же проверками границ
- Поддерживаемые MCP-серверы stdio могут запускаться как подпроцессы
Устранение неполадок
Бандл обнаружен, но возможности не запускаются
Бандл обнаружен, но возможности не запускаются
Выполните
openclaw plugins inspect <id>. Если возможность указана, но помечена как
не подключенная, это ограничение продукта, а не сломанная установка.Файлы команд Claude не отображаются
Файлы команд Claude не отображаются
Убедитесь, что бандл включен, а markdown-файлы находятся внутри обнаруженного
корневого каталога
commands/ или skills/.Настройки Claude не применяются
Настройки Claude не применяются
Поддерживаются только встроенные настройки OpenClaw из
settings.json. OpenClaw
не обрабатывает настройки бандла как необработанные патчи конфигурации.Хуки Claude не выполняются
Хуки Claude не выполняются
hooks/hooks.json только обнаруживается. Если вам нужны запускаемые хуки, используйте
разметку пакета хуков OpenClaw или поставляйте нативный плагин.Связанные материалы
- Установка и настройка плагинов
- Создание плагинов — создайте нативный плагин
- Манифест плагина — схема нативного манифеста