Plugins
Наборы плагинов
OpenClaw может устанавливать плагины из трёх внешних экосистем: Codex, Claude и Cursor. Они называются пакетами — наборами содержимого и метаданных, которые OpenClaw сопоставляет со встроенными возможностями, такими как Skills, хуки и инструменты MCP.
Зачем нужны пакеты
Многие полезные плагины публикуются в формате Codex, Claude или Cursor. Вместо того чтобы требовать от авторов переписывать их как нативные плагины OpenClaw, OpenClaw обнаруживает эти форматы и сопоставляет поддерживаемое ими содержимое с набором встроенных возможностей. Вы можете установить пакет команд Claude или пакет Skills Codex и сразу начать им пользоваться.
Установка пакета
Установка из каталога, архива или маркетплейса
# Локальный каталогopenclaw plugins install ./my-bundle # Архивopenclaw plugins install ./my-bundle.tgz # Маркетплейс Claudeopenclaw plugins marketplace list <source>openclaw plugins install <plugin> --marketplace <source><source> — это локальный путь к маркетплейсу/репозиторию или источник git/GitHub.
Проверка обнаружения
openclaw plugins listopenclaw plugins inspect <id>Для пакетов отображается Format: bundle, а также значение Bundle format:: codex,
claude или cursor.
Перезапуск и использование
openclaw gateway restartСопоставленные возможности (Skills, хуки, инструменты MCP, настройки LSP по умолчанию) доступны в следующем сеансе.
Что 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 запускает дочерний процесс:
{ "mcp": { "servers": { "my-server": { "command": "node", "args": ["server.js"], "env": { "PORT": "3000" } } } }}HTTP подключается к работающему серверу MCP, по умолчанию используя sse, если
не запрошено streamable-http:
{ "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 очищает ключи переопределения оболочки:
shellPathshellCommandPrefix
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, кроме отчётности о возможностях
Форматы пакетов
Пакеты Codex
Маркеры: .codex-plugin/plugin.json
Необязательное содержимое: skills/, hooks/, .mcp.json, .app.json
Пакеты Codex лучше всего интегрируются с OpenClaw, когда используют корневые каталоги Skills и каталоги
пакетов хуков в стиле OpenClaw (HOOK.md + handler.ts).
Пакеты Claude
Два режима обнаружения:
- На основе манифеста:
.claude-plugin/plugin.json - Без манифеста: стандартная структура Claude (
skills/,commands/,agents/,hooks/,.mcp.json,.lsp.json,settings.json)
Особенности поведения Claude:
commands/обрабатывается как содержимое Skillssettings.jsonимпортируется в настройки встроенного OpenClaw (ключи переопределения оболочки очищаются).mcp.jsonпредоставляет поддерживаемые инструменты stdio встроенному OpenClaw.lsp.jsonвместе с путямиlspServers, объявленными в манифесте, загружается в настройки LSP встроенного OpenClaw по умолчаниюhooks/hooks.jsonобнаруживается, но не выполняется- Пользовательские пути компонентов в манифесте являются дополнительными: они расширяют настройки по умолчанию, а не заменяют их
Пакеты 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) — обрабатывается как пакет
Если каталог содержит оба формата, OpenClaw использует нативный путь. Это предотвращает частичную установку пакетов с двумя форматами как пакетов.
Зависимости среды выполнения и очистка
- Для совместимых сторонних пакетов при запуске не выполняется восстановление
npm install. Их следует устанавливать черезopenclaw plugins install, и они должны содержать всё необходимое в каталоге установленного плагина. - Плагины из комплекта OpenClaw либо поставляются в облегчённом виде в составе ядра, либо загружаются через установщик плагинов. При запуске Gateway менеджер пакетов для них никогда не запускается.
openclaw doctor --fixудаляет устаревшие записи об установке локальных плагинов из комплекта и может восстанавливать загружаемые плагины, отсутствующие в локальном индексе плагинов, если на них по-прежнему ссылается конфигурация.
Безопасность
У пакетов более узкая граница доверия, чем у нативных плагинов:
- OpenClaw не загружает произвольные модули среды выполнения пакета внутри процесса.
- Пути Skills и пакетов хуков должны оставаться внутри корневого каталога плагина (границы проверяются).
- Файлы настроек читаются с теми же проверками границ.
- Поддерживаемые серверы MCP stdio могут запускаться как подпроцессы.
Благодаря этому пакеты по умолчанию безопаснее, но сторонние пакеты всё равно следует считать доверенным содержимым в отношении предоставляемых ими возможностей.
Устранение неполадок
Пакет обнаружен, но возможности не работают
Выполните openclaw plugins inspect <id>. Если возможность указана в списке, но отмечена как
неподключённая, это ограничение продукта, а не ошибка установки.
Файлы команд Claude не отображаются
Убедитесь, что пакет включён, а файлы Markdown находятся внутри обнаруженного
корневого каталога commands/ или skills/.
Настройки Claude не применяются
Поддерживаются только встроенные настройки OpenClaw из settings.json. OpenClaw
не обрабатывает настройки пакета как необработанные патчи конфигурации.
Хуки Claude не выполняются
hooks/hooks.json предназначен только для обнаружения. Если вам нужны выполняемые хуки, используйте
структуру пакета хуков OpenClaw или поставляйте нативный плагин.
Связанные материалы
- Установка и настройка плагинов
- Создание плагинов — создание нативного плагина
- Манифест плагина — схема нативного манифеста