Skills от dzhng — 30 навыков для агентов, которые пишут код сами

· 9 мин чтения
ai-agents agent-skills spec-driven-development code-review planning
📂 Исходный код на GitHub

Коллекция из 30 навыков для AI-агентов от dzhng: от исследования неизвестностей до ревью кода и визуальной проверки. Работает с любым агентом, который поддерживает навыки. Лицензия MIT, около 1.3k звёзд.

Skills от dzhng — 30 навыков для агентов, которые пишут код сами

Отдать фичу AI-агенту — это не то же самое, что поставить задачу и уйти. Сложность в другом: агент должен сам разобраться, где границы работы, что уже известно, а что придётся исследовать, и не бросить задачу на середине. Репозиторий dzhng/skills — это 30 навыков, которые превращают такую работу в повторяемый цикл: нарезать, собрать, проверить, повторить.

Что это за набор

Это личная библиотека автора репозитория, а не продукт компании. Навыки не привязаны к предметной области — они работают с любой кодовой базой. Каждый навык — это папка с файлом SKILL.md, который агент читает в момент вызова. Навыки небольшие, их можно свободно комбинировать и переписывать под себя.

Установка одна команда:

npx skills add dzhng/skills

Ключ --list покажет список и позволит выбрать нужные навыки по отдельности. Другой путь — просто скопировать папку skills/<категория>/<название>/ в папку навыков вашей обвязки агента (например, .claude/skills/).

Если репозиторий уже скачан, тот же результат даёт npm-скрипт из package.json:

npm run install-skills              # в ~/.agents/skills, с симлинком из ~/.claude/skills
npm run install-skills -- ../my-app # в конкретный репозиторий, а не в домашнюю папку
npm run install-skills -- --only write-spec,review ../my-app
npm run list-skills                 # имена и категории

Настоящие файлы лежат в .agents/skills/<название>/ — одной плоской копии без категорий. В .claude/skills/<название> лежит относительная символическая ссылка на неё, поэтому обе обвязки читают один и тот же набор. Повторный запуск перезаписывает установленные копии, но если .claude/skills/<название> у вас остался обычной папкой, скрипт его не тронет. Ключ --dry-run сначала показывает план.

Навыки работают с любой обвязкой агента, которая их поддерживает: Claude Code, Codex, opencode, Cursor, duet и ещё семьдесят с лишним. Полный список — в репозитории vercel-labs/skills.

Программная фабрика

Автор считает, что разработка уходит от разовых задач к фабрикам: агент сам идёт к цели и не останавливается, пока результат нельзя принять. Трудность не в том, чтобы разбить цель на задачи, — это умеет любой планировщик. Трудность в том, чтобы разбить её на куски, каждый из которых можно проверить по отдельности, и вообще понять, где эти куски проходят.

Сами навыки работают с метафорой тумана войны. Сначала местность картируют, потом вырезают из неё территории, которые строятся и проверяются независимо, а всё, что скрывает за собой новую карту, режут заново. Перепланирование не заканчивается вместе с планированием: спецификация остаётся живым документом и перенарезается прямо во время работы, как только выясняется, что план устарел. Каждый кусок обязан доказать, что он готов: ревью архитектуры, ревью кода и — для всего визуального — сверка с базовым изображением.

В качестве доказательства автор приводит один запуск Codex без присмотра: 3 дня 18 минут агент шёл к одной цели, сам нарезал работу и повторял цикл, пока не закончил.

Полный цикл: большая фича от начала до конца

  1. Карта тумана. Навык /explore-unknowns разбирает идею по четырём квадрантам. Сначала он выясняет то, что уже известно, потом проводит интервью, показывает готовые артефакты, которые можно потрогать и отреагировать на них, и в конце делает отдельный проход по слепым зонам. На выходе — полная карта из четырёх квадрантов.

  2. Формализация. Навык /write-spec превращает карту в спецификацию. Большая часть решений уже принята выше по потоку, поэтому этот шаг — переписывание, и автор в это время не читает текст. Если встречается что-то действительно новое, навык спрашивает, а не решает сам.

  3. Сборка. Дальше включается цикл:

/goal /implement-spec specs/<feature>

/goal переводит обвязку агента в режим цикла — такой же приём работает и в Claude Code, и в Codex, — а спецификация им управляет. Маленькая фича занимает пару часов, большая — два-три дня. Команду можно уточнить: например, указать ветку или сказать, что код пишет Codex, а вы остаётесь главным оркестратором и ревьюером.

  1. Ревью решений, а не правок. В конце запуска навык сводит файл specs/<feature>/choices.md — все решения, которые агент принял там, где спецификация молчала, от наименее уверенных. Это и есть то, что вы смотрите. Если решение не нравится, отправляете правку назад, и следующий проход проверяет себя заново. Каждый раз, когда ИИ пишет код, вы ревьюите то, что он выбрал.

Остальное срабатывает само: в конце каждого среза — проход /review, для всего визуального — /screenshot-critique и /compare-screenshots, после последнего среза — /close-spec, а если реализация показывает, что план устарел, план нарезается заново.

По времени вы потратите от 30 минут до нескольких часов на шаги 1–2 и столько же на шаг 4. Если прогон идёт два дня, по два-три часа уходит на каждом конце. Ваше время — это начало и конец, середина идёт без вас.

Исследование через быстрые эксперименты

Когда очередное решение требует не мнения, а данных, включается навык /auto-research. Он начинает с одной быстрой показательной задачи, проверяет короткую серию гипотез, перебирает их сочетания и расширяет перебор по мере того, как подход становится рабочим. Каждая новая неудача становится центром внимания, а уже пройденные задачи превращаются в проверки на то, что старое не сломалось. Реальный пример команды:

/auto-research Reduce cost per task by at least 15% relative to the saved
baseline, without reducing task success. Start with one fast development task.

Если непонятно, что считать оценкой, какой метрикой мерить и что за база, навык спрашивает до начала экспериментов. Пройти проверку и попасть в целевой процент — это два разных требования. На выходе вы получаете лучший проверенный артефакт и карту влияния параметров: что проверяли, где помогает, где мешает и как изменения взаимодействуют. Дальше эти данные идут в спецификацию.

Когда цикл не нужен

Полный конвейер требуется не всегда. Навыки можно брать по отдельности.

  • Обсуждение превратилось в фичу. /explore-unknowns полезен и в начале, и в конце разговора: запустите его, чтобы собрать углы, которые ни вы, ни собеседник не подумали, и продолжите со второго шага.
  • Правка, которая вышла за рамки. Случайный фикс, который задел больше ожидаемого: сначала /review (refactor-clean → code-review → write-docs), потом /audit-choices. Если правка слишком велика, чтобы её прочитать, сводка choices.md остаётся единственным способом понять, что теперь происходит в вашей кодовой базе.

Состав навыков

Engineering — нарезать, собрать, проверить, повторить

Навык Что делает
explore-unknowns Разбирает неизвестности задачи по квадрантам: сначала известное, потом интервью, артефакты, куда можно отреагировать, и отдельный проход по слепым зонам. На выходе — полная карта.
auto-research Оптимизирует через быстрые последовательные эксперименты, выдаёт проверенный вариант и карту влияния параметров.
write-spec Дробит большую фичу на срезы, которые можно проверить и принять по отдельности, с границами API и работающими контрольными точками.
implement-spec Собирает готовую спецификацию до конца, по одному принимаемому проходу, поручая независимые срезы параллельно.
implement-spec-with-goal Включает режим цели в обвязке агента, дальше идёт по implement-spec до конца.
implement-spec-with-codex Код пишет Codex, вы выступаете оркестратором, интегрируете и проверяете каждый проход.
close-spec Архивирует выпущенную спецификацию и переписывает её из плана сборки в постоянную запись о решениях со ссылками на код.
handoff-spec Передаёт спецификацию, которая в работе, другой машине или агенту: сначала записывает в неё всё, что знает текущая сессия. Вызывается вручную.
refactor-clean Убирает дублирование, перенося владение к одной чистой идее вместо наслаивания слоёв совместимости рядом с проблемой.
write-tests Пишет тесты по одной трассерной пуле за раз и закрепляют реальное поведение, а не детали реализации, значения конфигурации или случайные примеры.
audit-tests Сопоставляет контракты с независимыми доказательствами из тестов, убирает дубли и вычищает технику, которая нужна только ради тестов.
audit-performance Находит горячие места, которые усиливают нагрузку или повторяют её без пользы, ранжирует их по риску и предлагает самое маленькое исправление.
write-docs Пишет документацию как глоссарий принципов и ссылок, а не как копию кода, которая устареет.
code-review Проверяет правку на устаревшие имена, мёртвые ссылки, лишнюю сложность и комментарии, которые пересказывают код вместо его объяснения. В конце — вердикт.
audit-choices Проверяет решения исполнителя, а не его правку. Итоговый сводный список показывает архитектуру и решения, принятые за вас.
retro Разбирает сессию работы и предлагает улучшения окружения агента, проверок, указаний и доступа к информации. Вызывается вручную.
eli5 Объясняет спецификацию или изменение простым языком, не теряя точности. Остальные навыки берут этот приём для разборов.
review Закрывает готовое изменение одним проходом: refactor-clean, затем code-review, затем write-docs.
codex Использует локальный Codex CLI как второго независимого агента для ревью и — по прямой просьбе — для делегированной сборки.
claude То же самое через Claude Code (claude -p): консультация и делегированная сборка по прямой просьбе.
marketing-pages Правила для написания и проверки маркетинговых страниц по их типам.

Visual review — не принимать картинку на глаз

Навык Что делает
design-with-images Перебирает визуальные варианты, сохраняет выбранный образец и гоняет настоящие скриншоты против него, пока реализация не совпадёт.
compare-screenshots Сравнивает снимки с утверждённым дизайном или с ожидаемым результатом и находит расхождения по телеметрии, а не считает старый эталон заведомо верным.
screenshot-critique Даёт второму агенту, ничего не знавшему о задаче, посмотреть на результат свежим взглядом. Обязателен, прежде чем объявить визуальный баг исправленным.
preview-shots Открывает отобранные снимки в одном окне Preview на macOS, чтобы вы могли посмотреть их глазами.

Authoring — держать сами навыки в форме

Навык Что делает
write-skills Создаёт и правит навыки: триггеры, первые слова, постепенное раскрытие и типичные ошибки, которые стоит вычистить.
audit-agents Проверяет или переписывает AGENTS.md так, чтобы там остались только долговечные принципы, а скорость итераций стояла на первом месте.
eval-skills Проверяет навык на эталонных случаях: слепые прогоны в свежих подагентах, отдельный судья и правки по найденным пробелам.

Graphics

Навык Что делает
renderer Правила архитектуры для GPU-рендеринга на TypeGPU и WebGPU: один оркестратор кадра, единственные владельцы ресурсов, реестр ресурсов, договорённости о глубине и композитинге, проверка, которая смотрит на пиксели.
launch-video Ставит ролик-запуск кодом: одна визуальная идея, выросшая из проекта, картинка и синтезированный звук привязаны к одному таймингу.

Лицензия и благодарности

Набор распространяется по лицензии MIT.

Навык retro скопирован у Мэтта Покока. Идеи тумана войны и «нарисуй карту» пришли от него же и от Тхарика. Навыки доступны на skills.sh/dzhng/skills.

Источник: https://github.com/dzhng/skills