Перейти до основного вмісту

Пакети плагінів

OpenClaw може встановлювати плагіни з трьох зовнішніх екосистем: Codex, Claude і Cursor. Вони називаються пакетами — наборами вмісту та метаданих, які OpenClaw зіставляє з нативними можливостями, як-от Skills, hooks і інструменти MCP.
Пакети не є тим самим, що й нативні плагіни OpenClaw. Нативні плагіни працюють у процесі й можуть реєструвати будь-які можливості. Пакети є наборами вмісту з вибірковим зіставленням можливостей і вужчою межею довіри.

Навіщо існують пакети

Багато корисних плагінів публікуються у форматах Codex, Claude або Cursor. Замість того щоб змушувати авторів переписувати їх як нативні плагіни OpenClaw, OpenClaw виявляє ці формати й зіставляє підтримуваний у них вміст із нативним набором можливостей. Це означає, що ви можете встановити набір команд Claude або пакет Skills Codex і відразу почати ним користуватися.

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

1

Установлення з каталогу, архіву або marketplace

# Локальний каталог
openclaw plugins install ./my-bundle

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

# Marketplace Claude
openclaw plugins marketplace list <marketplace-name>
openclaw plugins install <plugin-name>@<marketplace-name>
2

Перевірка виявлення

openclaw plugins list
openclaw plugins inspect <id>
Пакети відображаються як Format: bundle із підтипом codex, claude або cursor.
3

Перезапуск і використання

openclaw gateway restart
Зіставлені можливості (Skills, hooks, інструменти MCP, типові значення LSP) будуть доступні в наступному сеансі.

Що OpenClaw зіставляє з пакетів

Не всі можливості пакетів сьогодні виконуються в OpenClaw. Нижче наведено, що працює, а що виявляється, але ще не підключене.

Підтримується зараз

МожливістьЯк зіставляєтьсяЗастосовується до
Вміст SkillsКорені Skills пакетів завантажуються як звичайні Skills OpenClawУсі формати
Командиcommands/ і .cursor/commands/ обробляються як корені SkillsClaude, Cursor
Пакети hooksМакети в стилі OpenClaw HOOK.md + handler.tsCodex
Інструменти MCPКонфігурація MCP пакета об’єднується з вбудованими налаштуваннями Pi; завантажуються підтримувані сервери stdio і HTTPУсі формати
Сервери LSPClaude .lsp.json і оголошені в маніфесті lspServers об’єднуються з типовими значеннями LSP вбудованого PiClaude
НалаштуванняClaude settings.json імпортується як типові значення вбудованого PiClaude

Вміст Skills

  • корені Skills пакетів завантажуються як звичайні корені Skills OpenClaw
  • корені Claude commands обробляються як додаткові корені Skills
  • корені Cursor .cursor/commands обробляються як додаткові корені Skills
Це означає, що markdown-файли команд Claude працюють через звичайний завантажувач Skills OpenClaw. Markdown-команди Cursor працюють через той самий шлях.

Пакети hooks

  • корені hooks пакета працюють лише тоді, коли вони використовують звичайний макет пакета hooks OpenClaw. Сьогодні це переважно випадок сумісності з Codex:
    • HOOK.md
    • handler.ts або handler.js

MCP для Pi

  • увімкнені пакети можуть додавати конфігурацію сервера MCP
  • OpenClaw об’єднує конфігурацію MCP пакета в ефективні вбудовані налаштування Pi як mcpServers
  • OpenClaw надає підтримувані інструменти MCP пакета під час ходів агента вбудованого Pi, запускаючи сервери stdio або підключаючись до HTTP-серверів
  • локальні для проєкту налаштування Pi застосовуються після типових значень пакета, тому налаштування робочого простору можуть за потреби перевизначати записи MCP пакета
  • каталоги інструментів MCP пакета сортуються детерміновано перед реєстрацією, щоб зміни у порядку listTools() на рівні джерела не розхитували блоки інструментів у prompt-cache
Транспорти
Сервери 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"; якщо не вказано, OpenClaw використовує sse
  • дозволено лише схеми 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_- замінюються на -
  • префікси серверів обмежуються 30 символами
  • повні назви інструментів обмежуються 64 символами
  • порожні назви серверів замінюються на mcp
  • конфліктні санітизовані назви розрізняються числовими суфіксами
  • остаточний порядок видимих інструментів є детермінованим за безпечною назвою, щоб повторні ходи Pi залишалися стабільними для кешу

Вбудовані налаштування Pi

  • Claude settings.json імпортується як типові вбудовані налаштування Pi, коли пакет увімкнено
  • OpenClaw санітизує ключі перевизначення оболонки перед застосуванням
Санітизовані ключі:
  • shellPath
  • shellCommandPrefix

Вбудований LSP Pi

  • увімкнені пакети Claude можуть додавати конфігурацію сервера LSP
  • OpenClaw завантажує .lsp.json, а також будь-які шляхи lspServers, оголошені в маніфесті
  • конфігурація LSP пакета об’єднується з ефективними типовими значеннями LSP вбудованого Pi
  • сьогодні можна запускати лише підтримувані LSP-сервери на основі stdio; непідтримувані транспорти все одно відображаються в openclaw plugins inspect <id>

Виявляється, але не виконується

Ці можливості розпізнаються і показуються в діагностиці, але OpenClaw їх не виконує:
  • Claude agents, автоматизація hooks.json, outputStyles
  • Cursor .cursor/agents, .cursor/hooks.json, .cursor/rules
  • Вбудовані/застосункові метадані Codex поза межами звітування про можливості

Формати пакетів

Маркери: .codex-plugin/plugin.jsonНеобов’язковий вміст: skills/, hooks/, .mcp.json, .app.jsonПакети Codex найкраще підходять для OpenClaw, коли вони використовують корені Skills і каталоги пакетів hooks у стилі 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 імпортується у вбудовані налаштування Pi (ключі перевизначення оболонки санітизуються)
  • .mcp.json надає підтримувані інструменти stdio для вбудованого Pi
  • .lsp.json разом із шляхами lspServers, оголошеними в маніфесті, завантажуються у типові значення LSP вбудованого Pi
  • 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 використовує нативний шлях. Це запобігає частковому встановленню пакетів із подвійним форматом як пакетів.

Безпека

Пакети мають вужчу межу довіри, ніж нативні плагіни:
  • OpenClaw не завантажує довільні runtime-модулі пакета в процес
  • шляхи Skills і пакетів hooks мають залишатися в межах кореня плагіна (перевірка меж)
  • файли налаштувань читаються з тими самими перевірками меж
  • підтримувані сервери stdio MCP можуть запускатися як підпроцеси
Це робить пакети безпечнішими типово, але вам усе одно слід вважати сторонні пакети довіреним вмістом для тих можливостей, які вони все ж надають.

Усунення неполадок

Виконайте openclaw plugins inspect <id>. Якщо можливість указано, але позначено як не підключену, це обмеження продукту, а не зламана інсталяція.
Переконайтеся, що пакет увімкнено, а markdown-файли розташовані всередині виявленого кореня commands/ або skills/.
Підтримуються лише вбудовані налаштування Pi з settings.json. OpenClaw не обробляє налаштування пакета як необроблені патчі конфігурації.
hooks/hooks.json лише виявляється. Якщо вам потрібні hooks, які можна виконувати, використовуйте макет пакета hooks OpenClaw або постачайте нативний плагін.

Пов’язане