SKILL.md с YAML-
метаданными и телом в формате Markdown. OpenClaw загружает встроенные навыки и все локальные
переопределения, а при загрузке фильтрует их на основе окружения, конфигурации и
наличия исполняемых файлов.
Создание навыков
Создайте и протестируйте собственный навык с нуля.
Мастерская навыков
Проверяйте и утверждайте предложения навыков, подготовленные агентом.
Конфигурация навыков
Полная схема конфигурации
skills.* и списки разрешённых навыков для агентов.ClawHub
Просматривайте и устанавливайте навыки сообщества.
Порядок загрузки
OpenClaw загружает навыки из следующих источников, начиная с источника с наивысшим приоритетом. Если навык с одним и тем же именем встречается в нескольких местах, используется источник с наивысшим приоритетом.
Корневые каталоги навыков поддерживают сгруппированную структуру. OpenClaw обнаруживает навык, если
SKILL.md находится в любом месте внутри настроенного корневого каталога (на глубине до 6 уровней):
name (или из имени каталога, если name
отсутствует). Списки разрешённых навыков для агентов (см. ниже) также сопоставляются по этому name.
Собственный каталог
$CODEX_HOME/skills в Codex CLI не является корневым каталогом навыков
OpenClaw. Используйте openclaw migrate plan codex, чтобы получить список этих навыков, а затем
openclaw migrate codex, чтобы скопировать их в рабочую область OpenClaw.Навыки, размещённые на Node
Подключённый Node без графического интерфейса может публиковать навыки, установленные в его активном каталоге навыков OpenClaw (~/.openclaw/skills по умолчанию; применяются переопределения окружения
профиля). Они отображаются в обычном списке навыков агента, пока Node подключён,
и исчезают после его отключения. При совпадении имён локальный навык или навык Gateway сохраняет своё имя;
навык Node получает детерминированное имя с префиксом Node.
Для навыков, размещённых на Node, в версии v1 имя каталога должно совпадать с полем метаданных
name навыка.
Запись навыка содержит адрес Node. Его файлы, относительные ссылки и
исполняемые файлы находятся на Node, поэтому загружайте и выполняйте его с помощью
exec host=node node=<node-id>. После изменения файлов навыка перезапустите хост Node.
Сведения о сопряжении и способах отключения см. в разделе Node.
Навыки отдельного агента и общие навыки
В конфигурациях с несколькими агентами у каждого агента есть собственная рабочая область. Используйте путь, соответствующий требуемой области видимости:Списки разрешённых навыков для агентов
Расположение навыка (приоритет) и видимость навыка (какой агент может его использовать) управляются отдельно. Используйте списки разрешённых навыков, чтобы ограничить навыки, доступные агенту, независимо от источника их загрузки.Плагины и навыки
Плагины могут поставлять собственные навыки, перечисляя каталогиskills в
openclaw.plugin.json (пути указываются относительно корневого каталога плагина). Навыки плагина загружаются,
когда плагин включён. Например, плагин браузера поставляет навык
browser-automation для многоэтапного управления браузером.
Каталоги навыков плагинов объединяются на том же уровне с низким приоритетом, что и
skills.load.extraDirs, поэтому встроенный, управляемый, агентский навык или навык рабочей области
с тем же именем переопределяет их. Управляйте применимостью самого навыка плагина с помощью
metadata.openclaw.requires в его метаданных, как и для любого другого навыка.
Полное описание системы плагинов см. в разделах Плагины и Инструменты.
Мастерская навыков
Мастерская навыков — это очередь предложений между агентом и активными файлами навыков. Когда агент обнаруживает работу, пригодную для повторного использования, он создаёт предложение вместо непосредственной записи вSKILL.md. Вы проверяете и утверждаете
предложение до внесения каких-либо изменений.
Установка из ClawHub
ClawHub — это общедоступный реестр навыков. Используйте командыopenclaw skills для установки и обновления или CLI clawhub для
публикации и синхронизации.
Сведения об установке
Сведения об установке
openclaw skills install по умолчанию устанавливает навык в каталог skills/
активной рабочей области. Добавьте --global, чтобы установить его в общий
каталог ~/.openclaw/skills, доступный всем локальным агентам, если их списки
разрешённых навыков не ограничивают доступ.При установке из Git и локального источника ожидается наличие SKILL.md в корне источника. Идентификатор берётся
из name метаданных SKILL.md, если значение допустимо, иначе используется
имя каталога или репозитория. Для переопределения используйте --as <slug>.
openclaw skills update отслеживает только установки из ClawHub — для обновления источников Git или
локальных источников установите их повторно.Проверка и сканирование безопасности
Проверка и сканирование безопасности
openclaw skills verify @owner/<slug> запрашивает у ClawHub
контур доверия clawhub.skill.verify.v1 навыка. Установленные навыки ClawHub проверяются
по версии и реестру, записанным в .clawhub/origin.json.
Идентификаторы без имени владельца по-прежнему принимаются для уже установленных или однозначно определяемых навыков, но
ссылки с указанием владельца устраняют неоднозначность издателя.Перед установкой на страницах навыков ClawHub отображается состояние последнего сканирования безопасности,
а отдельные страницы содержат сведения о VirusTotal, ClawScan и статическом анализе. Команда
завершается с ненулевым кодом, если ClawHub помечает проверку как неуспешную. Издатели
устраняют ложные срабатывания через панель управления ClawHub или
clawhub skill rescan @owner/<slug>.Установка из частных архивов
Установка из частных архивов
Клиенты Gateway, которым требуется доставка не через ClawHub, могут подготовить ZIP-архив навыка
с помощью
skills.upload.begin, skills.upload.chunk и skills.upload.commit,
а затем установить его с помощью skills.install({ source: "upload", ... }). Этот путь
по умолчанию отключён и требует skills.install.allowUploadedArchives: true в
openclaw.json. Для обычной установки из ClawHub этот параметр не требуется.Безопасность
Ограничение путей
Ограничение путей
Обнаружение навыков рабочей области, агента проекта и дополнительных каталогов принимает только корневые каталоги
навыков, разрешённый реальный путь которых остаётся внутри настроенного корневого каталога, если только
skills.load.allowSymlinkTargets явно не определяет целевой корневой каталог как доверенный.
Мастерская навыков выполняет запись через такие доверенные цели, только если
включён skills.workshop.allowSymlinkTargetWrites.
Управляемый каталог ~/.openclaw/skills и личный каталог ~/.agents/skills могут содержать
папки навыков, являющиеся символическими ссылками, но реальный путь каждого SKILL.md всё равно должен оставаться
внутри его разрешённого каталога навыка.Политика установки оператора
Политика установки оператора
Настройте
security.installPolicy для выполнения доверенной локальной команды политики
перед продолжением установки навыка. Политика получает метаданные и путь к подготовленному
источнику, применяется к ClawHub, загруженным архивам, Git, локальным источникам, обновлениям и
путям установки зависимостей и запрещает операцию, если команда не может вернуть
допустимое решение.Область внедрения секретов
Область внедрения секретов
skills.entries.*.env и skills.entries.*.apiKey внедряют секреты в
процесс хоста только на время текущего хода агента, но не в песочницу. Не включайте
секреты в промпты и журналы.Формат SKILL.md
Каждый навык должен содержать как минимумname и description в метаданных:
OpenClaw следует спецификации AgentSkills. Сначала метаданные
разбираются как YAML; если это не удаётся, используется резервный анализатор,
поддерживающий только одну строку. Вложенные блоки
metadata (включая многострочные сопоставления YAML)
преобразуются в строку JSON и повторно разбираются как JSON5, поэтому форма блока, показанная
в разделе Ограничение доступности, работает. Используйте {baseDir} в теле, чтобы ссылаться на
путь к папке навыка.Необязательные ключи метаданных
string
URL, отображаемый как “Website” в интерфейсе Skills для macOS. Также поддерживается через
metadata.openclaw.homepage.boolean
по умолчанию:"true"
Когда
true, навык доступен как вызываемая пользователем команда с косой чертой.boolean
по умолчанию:"false"
Когда
true, OpenClaw не включает инструкции навыка в обычный
промпт агента. Навык по-прежнему доступен как команда с косой чертой, если user-invocable
также имеет значение true."tool"
Если установлено значение
tool, команда с косой чертой обходит модель и направляется
непосредственно зарегистрированному инструменту.string
Имя инструмента, вызываемого при установленном
command-dispatch: tool."raw"
по умолчанию:"raw"
При направлении инструменту передаёт ему исходную строку аргументов без
разбора ядром. Инструмент получает
{ command: "<raw args>", commandName: "<slash command>", skillName: "<skill name>" }.Условия доступности
OpenClaw фильтрует навыки во время загрузки с помощьюmetadata.openclaw (объекта JSON5,
встроенного во frontmatter; см. примечание о разборе выше). Навык без блока
metadata.openclaw всегда доступен, если он не отключён явно.
boolean
Когда
true, навык всегда включается, а все остальные условия пропускаются.string
Необязательный эмодзи, отображаемый в интерфейсе Skills для macOS.
string
Необязательный URL-адрес, отображаемый как “Website” в интерфейсе Skills для macOS.
("darwin" | "linux" | "win32")[]
Фильтр платформ. Если он задан, навык доступен только в одной из указанных ОС.
string[]
Каждый исполняемый файл должен существовать в
PATH.string[]
В
PATH должен существовать хотя бы один исполняемый файл.string[]
Каждая переменная окружения должна существовать в процессе или предоставляться через конфигурацию.
string[]
Каждый путь
openclaw.json должен иметь истинное значение.string
Имя переменной окружения, связанной с
skills.entries.<name>.apiKey.object[]
Необязательные спецификации установщиков, используемые интерфейсом Skills для macOS (brew / node / go / uv / download).
Устаревшие блоки
metadata.clawdbot по-прежнему принимаются при отсутствии
metadata.openclaw, поэтому ранее установленные навыки сохраняют свои
условия зависимостей и подсказки установщика. Новые навыки должны использовать
metadata.openclaw.Спецификации установщиков
Спецификации установщиков указывают интерфейсу Skills для macOS, как установить зависимость:Правила выбора установщика
Правила выбора установщика
- Если указано несколько установщиков, Gateway выбирает один предпочтительный вариант (brew, если он доступен, иначе node).
- Если все установщики имеют тип
download, OpenClaw выводит каждую запись, чтобы вы могли увидеть все доступные артефакты. - Спецификации могут включать
os: ["darwin"|"linux"|"win32"]для фильтрации по платформе. - При установке через Node учитывается
skills.install.nodeManagerвopenclaw.json(по умолчанию: npm; варианты: npm / pnpm / yarn / bun). Это влияет только на установку навыков; средой выполнения Gateway по-прежнему должен быть Node. - Порядок предпочтения установщиков Gateway: Homebrew → uv → настроенный менеджер Node → go → download.
Сведения об отдельных установщиках
Сведения об отдельных установщиках
- Homebrew: OpenClaw не устанавливает Homebrew автоматически и не преобразует формулы brew
в команды системного менеджера пакетов. В контейнерах Linux без
brewустановщики, использующие только brew, скрыты; используйте пользовательский образ или установите зависимость вручную. - Go: для автоматической установки навыков OpenClaw требуется Go 1.21 или новее.
Если
goотсутствует, но доступен Homebrew, OpenClaw сначала устанавливает Go через Homebrew; в Linux без Homebrew вместо этого можно использоватьapt-getот имени root или черезsudoбез запроса пароля, если обновлённый кандидатgolang-goсоответствует минимальной версии. Фактическийgo installдля зависимости всегда указывает на отдельный каталог исполняемых файлов под управлением OpenClaw (binHomebrew при новой установке, иначе~/.local/bin), а не на настроенный вамиGOBIN— ваши переменные окруженияGOBIN,GOPATHиGOTOOLCHAINсчитываются, но никогда не перезаписываются. - Загрузка:
url(обязательно),archive(tar.gz|tar.bz2|zip),extract(по умолчанию: автоматически при обнаружении архива),stripComponents,targetDir(по умолчанию:~/.openclaw/tools/<skillKey>).
Примечания о песочнице
Примечания о песочнице
requires.bins проверяется на хосте во время загрузки навыка. Если агент
работает в песочнице, исполняемый файл также должен существовать внутри контейнера.
Установите его с помощью agents.defaults.sandbox.docker.setupCommand или пользовательского
образа. setupCommand выполняется один раз после создания контейнера и требует
исходящего сетевого доступа, доступной для записи корневой файловой системы и пользователя root в песочнице.Переопределение конфигурации
Включайте, отключайте и настраивайте встроенные или управляемые навыки вskills.entries файла
~/.openclaw/openclaw.json:
boolean
false отключает навык, даже если он встроен или установлен. Встроенный навык coding-agent
требует явного включения — установите skills.entries.coding-agent.enabled: true
и убедитесь, что один из claude, codex, opencode или другой поддерживаемый CLI
установлен и аутентифицирован.string | { source, provider, id }
Вспомогательное поле для навыков, объявляющих
metadata.openclaw.primaryEnv.
Поддерживает строку с открытым текстом или объект SecretRef.Record<string, string>
Переменные окружения, внедряемые на время выполнения агента. Внедряются только в том случае,
если переменная ещё не задана в процессе.
object
Необязательный набор пользовательских полей конфигурации для отдельного навыка.
string[]
Необязательный список разрешённых только для встроенных навыков. Если он задан, доступны только
встроенные навыки из списка. Управляемые навыки и навыки рабочей области не затрагиваются.
По умолчанию ключи конфигурации соответствуют имени навыка. Если навык определяет
metadata.openclaw.skillKey, вместо этого используйте данный ключ в skills.entries.
Имена с дефисами заключайте в кавычки: JSON5 допускает ключи в кавычках.Внедрение переменных окружения
Когда начинается выполнение агента, OpenClaw:1
Читает метаданные навыков
OpenClaw определяет итоговый список навыков для агента, применяя правила доступности,
списки разрешённых элементов и переопределения конфигурации.
2
Внедряет переменные окружения и ключи API
skills.entries.<key>.env и skills.entries.<key>.apiKey применяются к
process.env на время выполнения.3
Формирует системный промпт
Доступные навыки компилируются в компактный блок XML и внедряются в
системный промпт.
4
Восстанавливает окружение
После завершения выполнения исходное окружение восстанавливается.
claude-cli OpenClaw также материализует тот же
снимок доступных навыков как временный плагин Claude Code и передаёт его через
--plugin-dir. Другие бэкенды CLI используют только каталог промпта.
Снимки и обновление
OpenClaw создаёт снимок доступных навыков при запуске сеанса и повторно использует этот список для всех последующих ходов в сеансе. Изменения навыков или конфигурации вступают в силу в следующем новом сеансе. Навыки обновляются посреди сеанса в двух случаях:- Наблюдатель навыков обнаруживает изменение
SKILL.md. - Подключается новый доступный удалённый узел.
Удалённые узлы macOS (Gateway в Linux)
Удалённые узлы macOS (Gateway в Linux)
Если Gateway работает в Linux, но подключён узел macOS, на котором разрешён
system.run, OpenClaw может считать доступными навыки только для macOS, если
необходимые исполняемые файлы присутствуют на этом узле. Агент должен запускать такие
навыки через инструмент exec с host=node.Автономные узлы не делают видимыми навыки, доступные только удалённо. Если узел перестаёт
отвечать на проверки исполняемых файлов, OpenClaw очищает кеш совпадений исполняемых файлов.Влияние на количество токенов
Когда навыки доступны, OpenClaw внедряет компактный блок XML в системный промпт. Затраты детерминированы и линейно растут с каждым навыком:- Базовые накладные расходы (только если доступен хотя бы 1 навык): фиксированный блок вводного
текста и обёртка
<available_skills>. - На каждый навык: ~97 символов + длина полей
name,descriptionиlocation. - Экранирование XML преобразует
& < > " 'в сущности, добавляя несколько символов при каждом вхождении. - При ~4 символах на токен 97 символов ≈ 24 токена на навык без учёта длины полей.
skills.limits.maxSkillsPromptChars), OpenClaw сначала сохраняет столько идентификаторов
навыков (имя, расположение и версию), сколько помещается в компактном формате
без описаний. Затем оставшийся бюджет используется для сокращённых описаний. Если
бюджета на описания не осталось, они опускаются. Когда требуется компактное
форматирование или усечение списка, в промпт включается примечание со ссылкой на
openclaw skills check.
Делайте описания краткими и информативными, чтобы минимизировать объём промпта.
См. также
Создание навыков
Пошаговое руководство по созданию собственного навыка.
Мастерская навыков
Очередь предложений навыков, подготовленных агентами.
Конфигурация навыков
Полная схема конфигурации
skills.* и списки разрешений агентов.Команды с косой чертой
Как регистрируются и маршрутизируются команды навыков с косой чертой.
ClawHub
Просматривайте и публикуйте навыки в общедоступном реестре.
Плагины
Плагины могут поставлять навыки вместе с инструментами, которые они документируют.