Скиллы для Codex и OpenCode — как написать один скилл сразу для трёх ИИ-агентов
Содержание
Скилл — это папка с файлом SKILL.md, где описано, как выполнять определённую задачу. Агент знает только название и короткое описание скилла. Когда ваша задача подходит, он открывает инструкцию целиком. Формат у Codex, OpenCode и Claude Code почти одинаковый. А если положить скилл в папку .agents/skills/ проекта, его подхватят и Codex, и OpenCode. OpenCode к тому же читает скиллы Claude Code из .claude/skills/.
Получается, хороший скилл достаточно написать один раз и пользоваться им в любом агенте.
Как выглядит скилл
.agents/skills/
└── tg-post/
└── SKILL.md
---
name: tg-post
description: Пишет пост для Telegram-канала в моём стиле. Используй, когда просят пост, анонс или текст для канала. Не используй для статей в блог.
---
Пиши коротко: 5–8 абзацев по 1–3 предложения.
Первая строка — сразу суть. Без эмодзи в начале строк.
В конце — один вопрос к читателю.
Два обязательных поля — name и description. В описании пишите не только что делает скилл, но и когда его применять и когда нет. По этому тексту агент решает, включать ли скилл сам.
В OpenCode к имени строгие требования: строчные латинские буквы, цифры и одиночные дефисы, до 64 символов, и имя должно совпадать с названием папки. Если соблюдать это правило, скилл подойдёт всем трём агентам.
Где хранить: таблица для трёх агентов
| Где | Codex | OpenCode | Claude Code |
|---|---|---|---|
| В проекте | .agents/skills/ |
.opencode/skills/, .agents/skills/, .claude/skills/ |
.claude/skills/ |
| Для всех проектов | ~/.agents/skills/ |
~/.config/opencode/skills/, ~/.agents/skills/, ~/.claude/skills/ |
~/.claude/skills/ |
Универсальный рецепт: держите скиллы в .agents/skills/ (или ~/.agents/skills/ для личных). Их увидят Codex и OpenCode. Для Claude Code сделайте копию или ссылку в .claude/skills/.
Как вызвать скилл
Codex:
- сам, если задача подходит под описание;
- вручную — наберите
$и имя скилла ($tg-post) или откройте список командой/skills; - в ChatGPT — через
@.
OpenCode:
- агент подгружает скилл встроенным инструментом
skill, когда задача подходит; - права настраиваются в
opencode.jsonв разделеpermission.skill: разрешить сразу, спрашивать или запретить. Можно указывать шаблоны, напримерinternal-*.
Claude Code: сам по описанию или командой /имя-скилла. Подробно — в статье «Скиллы Claude Code».
Встроенные помощники Codex
В Codex есть системные скиллы, которые облегчают старт:
$skill-creator— помогает написать новый скилл по вашему описанию;$skill-installer— ставит готовые скиллы.
Отключить ненужный скилл в Codex можно в ~/.codex/config.toml: укажите путь к его SKILL.md и enabled = false, затем перезапустите Codex.
Скиллы и плагины — в чём разница
Скилл — сама инструкция. Плагин — способ раздать набор скиллов, иногда вместе с подключениями к внешним сервисам (MCP). Пишут и пробуют скиллы в локальной папке, а когда набор готов, его можно упаковать в плагин. Что такое MCP — в статье «MCP простыми словами».
Какие скиллы завести первыми
- Проверка безопасности перед запуском: оплата, админка, секреты в коде.
- Ваш стиль текстов для постов, описаний и ответов клиентам.
- Чек-лист выкладки: тесты, переменные окружения, резервная копия.
- Шаблон нового бота, чтобы все боты собирались по одним правилам.
Осторожно с чужими скиллами
В папке скилла могут лежать скрипты, и агент их выполнит. Перед установкой откройте SKILL.md и файлы рядом. Не ставьте скиллы, которые просят отправлять куда-то ключи, настройки или данные. В OpenCode для незнакомых скиллов удобно поставить режим ask, чтобы агент спрашивал разрешение перед загрузкой.
Готовые скиллы для проверки безопасности
Я собрал набор скиллов, которые ищут дыры в проекте: оплата, админка, база, код. Формат — тот самый SKILL.md, так что работают они в разных агентах.
Как я пишу и использую скиллы в своих проектах, показываю в Telegram-канале — там же анонсы курсов по вайбкодингу.
Частые вопросы
Где хранить скиллы для Codex?
В проекте — в .agents/skills/, для всех проектов — в ~/.agents/skills/. Каждый скилл — отдельная папка с файлом SKILL.md.
Как вызвать скилл в Codex?
Codex может включить его сам по описанию. Вручную — наберите $ и имя скилла или откройте список командой /skills.
Где хранить скиллы для OpenCode?
В .opencode/skills/, .agents/skills/ или .claude/skills/ проекта, либо в ~/.config/opencode/skills/, ~/.agents/skills/ и ~/.claude/skills/ для всех проектов.
Можно ли использовать одни скиллы в Codex, OpenCode и Claude Code?
Да. Формат SKILL.md у них почти одинаковый. Положите скилл в .agents/skills/ — его увидят Codex и OpenCode, а для Claude Code сделайте копию в .claude/skills/.
Чем скилл отличается от плагина?
Скилл — это инструкция для агента. Плагин — способ распространять набор скиллов, иногда вместе с подключениями к внешним сервисам.