Codex Skills: как создать навык для повторяющегося процесса

Опубликовано 20.09.202610 мин чтенияСредний
Открытая папка «SKILL» с документом, из которого вылетают светящиеся символы пошагового процесса.
Что узнаешь
  • Что такое навык (skill) в Codex и чем он отличается от файла AGENTS.md
  • Устройство SKILL.md: обязательные поля, инструкции, вложенные папки
  • Где Codex ищет навыки и как он решает, какой из них вызвать
  • Как создать свой навык пошагово и какую модель под него выбрать
Средний
17просмотров

Если ты по пять раз в неделю объясняешь Codex одно и то же - как оформлять отчёт, как разбирать почту, как готовить тексты в твоём стиле, - эту инструкцию можно записать один раз в навык. Дальше агент находит её по описанию, если оно совпадает с задачей, или по явному вызову. Навык - это обычная папка с текстовым файлом SKILL.md, никакого программирования для базового сценария не нужно.

Ниже - устройство навыка, места, где Codex его ищет, пошаговое создание и выбор модели по цене. Команды и цены сверены с официальной документацией OpenAI 20 сентября 2026. Установку самого Codex здесь не повторяем: она есть в гайде Codex от OpenAI: что это, как установить и запустить.

В Telegram-канале - что нового в вайб-кодинге: инструменты, находки, ошибки.

Что такое навык в Codex?

Формат называется Agent Skills - это открытый стандарт, изначально разработанный Anthropic и опубликованный на agentskills.io. Стандарт поддерживают разные агенты: Codex, Claude Code и другие совместимые клиенты. Простой навык из одних текстовых инструкций переносится между ними копированием папки. Если внутри есть скрипты, зависимости или файл agents/openai.yaml, после переноса навык нужно проверить: часть настроек привязана к конкретному клиенту.

Этот способ загрузки называется прогрессивным раскрытием. По имени и описанию агент определяет, когда навык уместен. Когда задача совпадает с описанием, агент дочитывает полный SKILL.md и следует ему. Поэтому в Codex можно держать десятки навыков, не загружая все инструкции в контекст: на стартовый список выделяется не больше 2% окна контекста (или 8000 символов, если размер окна неизвестен). Если навыков очень много, Codex сначала укорачивает описания, а при совсем большом наборе может опустить часть списка и предупредить об этом.

Навык легко перепутать с AGENTS.md. Этот файл Codex читает всегда, в каждой сессии проекта. В нём хранят постоянные правила: стек, договорённости, стиль кода. Навык загружается по требованию, когда задача под него подходит. Поэтому постоянные правила записывай в AGENTS.md, а повторяющийся процесс с шагами - в навык.

У Hermes Agent навыки устроены похоже, но лежат в других папках и устанавливаются иначе - про него отдельный гайд: скиллы Hermes Agent: установка и создание. Здесь речь только про Codex.

Из чего состоит навык?

Структура папки навыка:

my-skill/
  SKILL.md        - обязательный: метаданные и инструкции
  scripts/        - опционально: исполняемый код
  references/     - опционально: документы для подгрузки
  assets/         - опционально: шаблоны и ресурсы
  agents/
    openai.yaml   - опционально: внешний вид и зависимости

Сам SKILL.md начинается с блока метаданных между тремя дефисами, а ниже идёт текст инструкций на markdown:

markdown
---
name: weekly-sales-report
description: Собрать еженедельный отчёт по продажам из выгрузки CSV. Использовать, когда просят отчёт по продажам за неделю или сводку по менеджерам.
---

1. Прочитай файл выгрузки, путь к которому дал пользователь.
2. Сгруппируй строки по менеджерам и посчитай сумму и число сделок.
3. Сравни с прошлой неделей, если файл за прошлую неделю лежит рядом. Если его нет, прямо напиши об этом в отчёте.
4. Сохрани результат в report.md: таблица по менеджерам, итог, главные изменения с числами - до трёх, сколько подтвердится данными.

Три правила из официальных рекомендаций OpenAI:

  • Один навык - одна задача. Вместо «Веди мне весь маркетинг» выбери конкретную задачу: «собери отчёт по продажам из этой выгрузки». Крупный процесс раздели на отдельные навыки для последовательного вызова.
  • Пиши шаги прямо, с явными входами и выходами: что взять, что сделать, куда положить результат.
  • Начни с текстовых инструкций. Скрипты в scripts/ нужны, когда шаг должен выполняться строго одинаково - например, конвертация файла или вызов внешней системы.

По полю description Codex подбирает навык под задачу, поэтому в начало описания ставь саму задачу и слова, которыми ты обычно её формулируешь.

Где Codex ищет навыки?

УровеньПутьДля чего
Проект.agents/skills в текущей папке и выше до корня репозиторияНавыки под конкретный проект, можно хранить в git вместе с кодом
Пользователь$HOME/.agents/skillsТвои личные навыки, видны во всех проектах на машине
Системный/etc/codex/skillsОбщие навыки для всех пользователей машины или контейнера
ВстроенныеПоставляются с CodexБазовые навыки от OpenAI, например создатель навыков

Проектные навыки удобно сохранять в git вместе с кодом: тогда вся команда получает одинаковый набор. Личные подходят для твоих собственных процессов вроде стиля писем. Если два навыка на разных уровнях называются одинаково, Codex их не объединяет: оба появятся в списке, что затрудняет выбор. Держи имена уникальными.

Для сравнения: в Claude Code навыки лежат в папке .claude/skills, у каждого свой SKILL.md, и там работает тот же открытый стандарт. Простой навык туда переносится копированием папки, после чего его стоит запустить и проверить вызов. Про выбор между расширениями Claude Code есть разбор Skills, Subagents, MCP или Plugins.

Как Codex решает, какой навык вызвать?

Явный вызов надёжнее на первых порах: в Codex CLI укажи $weekly-sales-report, чтобы выбрать именно этот процесс. Неявный вызов удобнее в повседневной работе. После написания навыка проверь его на обычных формулировках: попроси Codex выполнить задачу своими словами, без $, и посмотри, выбрал ли он навык. Если нет, сначала проверь, видит ли Codex навык в /skills, лежит ли он в одной из папок загрузки и не отключён ли сам навык или его автоматический вызов. Если с доступностью и настройками всё в порядке, уточни description: укажи задачу и привычные формулировки запроса.

Если навык нужен только по явной команде, это тоже настраивается: в файле agents/openai.yaml параметр allow_implicit_invocation: false запрещает автоматический вызов, а $имя продолжает работать. Полностью отключить навык без удаления можно через ~/.codex/config.toml:

toml
[[skills.config]]
path = "/полный/путь/к/навыку/SKILL.md"
enabled = false

После правки config.toml Codex нужно перезапустить. Изменения в самих папках навыков он подхватывает сам, но если новый навык не появился - перезапусти Codex.

На практикуме за 3 эфира собираешь связку из трёх частей методологии: ИИ-клон + Второй мозг + Контекст-инжиниринг. Работа с навыками - часть этой связки.

Практикум по вайб-кодингу
+Твой второй мозг
3 вечера - инструменты, метод, первый проект
Старт 22–24 сентября  ·  2 000 ₽
Записаться →

Как создать свой навык: пошагово

  1. Выбрать одну задачу

    Возьми процесс, который ты повторяешь регулярно и у которого есть понятный результат: отчёт, таблица, письмо, разбор. Если ты ещё ни разу не получал такого результата, сначала выполни задачу с агентом вручную - полученный итог станет эталоном для инструкций.

  2. Создать навык

    Чтобы создать навык через встроенного помощника, в сессии Codex набери $skill-creator. Он спросит, что делает навык, когда его вызывать и нужны ли скрипты, и соберёт каркас сам. Ручной вариант - создать в проекте папку .agents/skills с подпапкой под навык, например .agents/skills/weekly-sales-report, и положить туда SKILL.md по образцу выше.

  3. Написать инструкции

    Запиши шаги пронумерованным списком, с явным входом и выходом. Если процесс требует точности (перенести данные, переименовать, посчитать), подробно пропиши каждый шаг. Для творческих задач (написать текст, подобрать аргументы) задай рамки и критерии хорошего результата, а свободу оставь модели.

  4. Проверить вызов

    Попроси Codex выполнить задачу своими словами, не называя навык. Если он выбрал нужный навык, описание сработало на этой формулировке. Затем проверь явный вызов через $имя. Если навык не вызывается, проверь папку, наличие в /skills и настройки отключения, описанные выше. Если новый навык не появился в списке, перезапусти Codex. Когда явный вызов работает и автоматический вызов разрешён, но запрос своими словами не срабатывает, уточни начало description: сначала задача, потом типовые формулировки. Повтори проверку.

  5. Дорабатывать после запусков

    После каждого запуска смотри на результат и говори агенту, что поправить в навыке: «в следующий раз в итоговой таблице добавь столбец с долей». Навык для творческой работы дорабатывай по обратной связи, если первая версия не даёт нужного результата.

Готовые навыки от OpenAI и сообщества устанавливаются командой $skill-installer с именем навыка. Свои навыки для других людей распространяют через плагины - это отдельная упаковка с каталогом, для личного использования она не нужна.

Как проверять результат агента?

Проверки бывают объективными и субъективными. Объективные - те, что можно посчитать: «в отчёте есть все 12 менеджеров из выгрузки», «сумма по таблице сходится с итогом CSV». Их записывай как жёсткие требования. Субъективные - про качество: «текст читается как мой», «выводы короткие». Их тоже можно формализовать: дать в навыке пример хорошего фрагмента и попросить агента сверить свой результат с примером.

Рабочий приём - проверочный цикл: после подготовки результата агент проходит по списку критериев, исправляет найденное и только потом показывает тебе. У Anthropic похожий паттерн называется evaluator-optimizer: один исполнитель делает работу, отдельный оценщик разбирает её и возвращает замечания, и так по кругу до приёмки. Внутри одного навыка обычно получается упрощённый вариант - финальный шаг самопроверки по списку. Учитывай его ограничение: он слабее независимого оценщика, потому что исполнитель может не заметить собственную ошибку.

Пример блока проверки для нашего отчёта:

markdown
## Перед сдачей проверь
- Все менеджеры из выгрузки присутствуют в таблице, никого не потерял.
- Итоговая сумма совпадает с суммой по CSV до копейки.
- Каждое главное изменение подтверждено числом; если данных для сравнения нет, в отчёте прямо сказано об этом.
- Файл сохранён по пути report.md, путь сообщён пользователю.

Какую модель выбрать для навыка?

МодельВход, $/млн токеновВыход, $/млн токеновС чего начать проверку
GPT-6 Astra1050Навыки с длинными рассуждениями, картинками и браузером
GPT-5.6 Sol420Текстовые навыки средней сложности
GPT-5.6 Terra2.5015Простые процессы с понятным результатом
GPT-5.6 Luna0.201.20Механические задачи: переформатировать, посчитать, собрать список

Правый столбец предлагает задачи для первых проверок. Это не рейтинг и не результат сравнения: подходящую модель для твоего навыка можно определить только после запуска и сравнения с эталонным результатом.

Цены в таблице - тарифы API со страниц моделей на 20 сентября 2026, а не цены подписки ChatGPT: при работе через подписку расход идёт из её лимитов. На эту дату у Sol действует промо-тариф $4/$20 минимум до 21 ноября 2026, стандартная цена - $5/$30. Перед большим регулярным запуском сверься со страницей тарифов: промо у OpenAI меняются.

Запусти один и тот же навык на соседней, более дешёвой модели и сравни результат с эталоном. Если качество сохраняется, проверь следующую, ещё более дешёвую модель. Если снизилось - вернись к предыдущей. У моделей есть и уровни усилий (effort): у Astra от low до max, у семейства 5.6 от none до max. Их тоже стоит перебрать на том же эталоне: сначала подобрать модель, потом уровень.

Регулярный запуск навыка означает повторяющийся расход. Разница между Astra и Luna по цене входа - 50 раз, поэтому один и тот же регулярный навык на разных моделях заметно различается по стоимости. Для навыка, который разбирает скриншоты и документы, слабая модель может обойтись дороже за счёт переделок.

Ошибки при создании и использовании навыка

  • Навык «на всё». Один процесс - один навык, так советует и документация OpenAI. Универсальный навык на десять страниц сложно описать точно, а именно по описанию Codex подбирает навык под задачу.
  • Расплывчатое описание. По фразе «Помогает с отчётами» неясно, для каких отчётов нужен навык. Задача и типовые формулировки - в начало description.
  • Инструкции без результата. Если не написано, что должно получиться и куда это положить, итог разных запусков может различаться.
  • Проверки нет вовсе. Без финального шага с критериями результат может остаться сырым черновиком, который придётся проверять целиком самому.
  • Самая сильная модель по умолчанию. Сначала проверь, справляется ли более дешёвая: запусти тот же навык и сравни результат с эталоном. Переходи на неё, только если качество сохраняется.
  • Одинаковые имена в разных папках. Codex не объединяет такие навыки, и выбрать нужный становится сложнее.

С чего начать и как перенести навык в Claude Code

Если работаешь в нескольких агентах, папку с SKILL.md из одних текстовых инструкций можно перенести в Claude Code - там навыки лежат в .claude/skills и вызываются через /имя. Навык со скриптами, зависимостями или agents/openai.yaml после переноса нужно проверить. Про библиотеку навыков под Claude Code есть гайд Claude Code Skills: как собрать набор под себя, а про выбор между Codex и Claude Code - сравнение Codex vs Claude Code.

Источники

Полная схема по вайб-кодингу: ИИ-клон + Второй мозг + Контекст-инжиниринг. 3 эфира, 2 000 ₽. Записи остаются у тебя.

Практикум по вайб-кодингу
+Твой второй мозг
3 вечера - инструменты, метод, первый проект
Старт 22–24 сентября  ·  2 000 ₽
Записаться →

Новые материалы - дайджестом, без спама

Гайды выходят регулярно. Подпишись, чтобы не пропускать: пришлю подборку в Telegram или на email. Раз в неделю или каждый день - выбираешь сам.

Была инструкция полезна?
Артемий Миллер
Автор
Артемий Миллер
Предприниматель и вайб-кодер

Артемий Миллер - предприниматель и вайб-кодер. Бывший программист, собирает продукты исключительно вместе с ИИ-агентами, без найма разработчиков.

Связанные инструкции

Codex worktree: как создать отдельную рабочую копию для второй задачи

Разбор экспериментальной функции worktrees в Codex CLI 0.155.1: команда запуска, от чего создаётся копия, чего в ней не будет и как проверить результат через git worktree list.

4 мин

WhatsApp Business Tools MCP: как подключить WhatsApp Business к ИИ-агенту

15 сентября 2026 Meta выпустила официальный MCP-сервер для WhatsApp Business Platform. Разбираем, что он умеет, как подключить его к Claude Code, Codex или ChatGPT и какие ограничения у бета-версии.

9 мин

Omnigent: одна оболочка для Claude Code, Codex и Cursor - что это и как поставить

Omnigent - открытая оболочка, из которой запускаются Claude Code, Codex, Cursor, Hermes, Pi и твои собственные агенты. Как поставить её, запустить первую сессию и совмещать агентов в одной работе с учётом ограничений alpha-версии.

9 мин

Claude Code теперь читает AGENTS.md: что изменилось в 2.1.277

Claude Code 2.1.277 (18.09.2026) научился читать AGENTS.md без импорта. Когда это срабатывает автоматически, как выбрать один из 4 режимов Project instructions и что делать со старым обходным путём.

8 мин

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