Skip to main content
OpenClaw может устанавливать плагины из трёх внешних экосистем: Codex, Claude и Cursor. Они называются пакетами — наборами содержимого и метаданных, которые OpenClaw сопоставляет со встроенными возможностями, такими как Skills, хуки и инструменты MCP.
Пакеты — не то же самое, что нативные плагины OpenClaw. Нативные плагины выполняются внутри процесса и могут регистрировать любые возможности. Пакеты представляют собой наборы содержимого с выборочным сопоставлением возможностей и более узкой границей доверия.

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

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

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

1

Установка из каталога, архива или маркетплейса

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

Проверка обнаружения

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

Перезапуск и использование

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

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

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

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

Содержимое 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 запускает дочерний процесс:
HTTP подключается к работающему серверу MCP, по умолчанию используя sse, если не запрошено streamable-http:
  • 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, кроме отчётности о возможностях

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

Маркеры: .codex-plugin/plugin.jsonНеобязательное содержимое: skills/, hooks/, .mcp.json, .app.jsonПакеты Codex лучше всего интегрируются с OpenClaw, когда используют корневые каталоги Skills и каталоги пакетов хуков в стиле OpenClaw (HOOK.md + handler.ts).
Два режима обнаружения:
  • На основе манифеста: .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 обнаруживается, но не выполняется
  • Пользовательские пути компонентов в манифесте являются дополнительными: они расширяют настройки по умолчанию, а не заменяют их
Маркеры: .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 проверяет нативный формат плагина:
  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 могут запускаться как подпроцессы.
Благодаря этому пакеты по умолчанию безопаснее, но сторонние пакеты всё равно следует считать доверенным содержимым в отношении предоставляемых ими возможностей.

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

Выполните openclaw plugins inspect <id>. Если возможность указана в списке, но отмечена как неподключённая, это ограничение продукта, а не ошибка установки.
Убедитесь, что пакет включён, а файлы Markdown находятся внутри обнаруженного корневого каталога commands/ или skills/.
Поддерживаются только встроенные настройки OpenClaw из settings.json. OpenClaw не обрабатывает настройки пакета как необработанные патчи конфигурации.
hooks/hooks.json предназначен только для обнаружения. Если вам нужны выполняемые хуки, используйте структуру пакета хуков OpenClaw или поставляйте нативный плагин.

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