GitHub Spec Kit: обзор инструментария для spec-driven development
GitHub Spec Kit — это open-source-инструментарий для spec-driven
development: связка CLI (specify) и шаблонов, которая разворачивает в
проекте каркас для разработки через спецификации и настраивает его под
выбранный AI-агент. Он берёт методологию
spec-driven development — сначала зафиксировать
намерение, потом по нему писать и сверять код — и превращает её в готовый
рабочий процесс с командами и файлами, а не оставляет сводом рекомендаций,
который каждая команда собирает заново.
GitHub открыла Spec Kit в сентябре 2025 года; о подходе в анонсе и в сопровождающей статье Den Delimarsky прямо противопоставил его «vibe coding» — стилю, когда цель описывают в чате и принимают сгенерированный код на глаз. Идея Spec Kit обратная: «preemptively outline the concrete project requirements, motivations, and technical aspects before handing that off to AI agents» — проговорить требования, мотивацию и технические решения до того, как агент начнёт писать. Исходники и документация лежат в репозитории github/spec-kit.
Из чего состоит Spec Kit
Инструментарий держится на трёх частях:
- CLI
specify— утилита, которая бутстрапит проект: скачивает официальные шаблоны под ваш агент и раскладывает каркас SDD так, чтобы агент мог сразу с ним работать. constitution.md— документ с неизменными принципами проекта: ограничения и правила, которые агент обязан соблюдать во всех задачах (стек, архитектурные запреты, требования к тестам).- Шаблоны и команды спецификации, плана и задач — тот самый рабочий процесс, который агент проходит по шагам.
Спеки живут файлами в репозитории, а не в стороннем трекере, — агент читает их в каждой сессии без интеграций.
Рабочий процесс: от конституции до реализации
Spec Kit задаёт последовательность шагов, каждый оформлен командой агента:
- constitution — зафиксировать принципы проекта (границы, которые нельзя нарушать).
- specify — описать что и зачем: требования и мотивацию. Из этого собирается PRD фичи.
- plan — описать как: стек, библиотеки, архитектуру, инфраструктуру.
- tasks — разбить спеку и план на управляемые, поэтапные задачи для агента.
- implement — выполнить реализацию по задачам, сверяясь со спекой.
Процесс не застыл: на старте команд было три (/specify, /plan,
/tasks), позже добавились отдельная конституция, шаг реализации и сверка
кодовой базы со спецификациями, а сами команды получили префикс speckit..
Точный текущий набор и синтаксис держите по
документации — они меняются от версии
к версии, и это нормально: инструмент растёт вместе с подходом.
С какими агентами работает
На старте Spec Kit поддерживал три инструмента — GitHub Copilot, Claude Code и Gemini CLI. В текущих версиях их больше тридцати: Copilot, Claude Code, Codex, Gemini, Cursor, Zed и другие CLI- и IDE-ассистенты, плюс generic-интеграция как запасной вариант для инструмента, которого нет в списке. Практический смысл — процесс один, а агента можно менять: спеки и план остаются в репозитории и не привязаны к конкретному вендору.
Как начать
Нужен uv — быстрый пакетный менеджер для
Python от Astral (авторов линтера Ruff), написанный на Rust; он заменяет
связку pip/pipx/virtualenv и, среди прочего, умеет ставить CLI-утилиты вроде
specify глобально. Если Python-стек вам не родной — это единственная внешняя
зависимость Spec Kit, ставится один раз. Установка CLI и инициализация проекта
— два шага:
uv tool install specify-cli
specify init мой-проект --integration claude
Флаг --integration выбирает агента (например copilot, codex,
claude). После инициализации в проекте появляется каркас SDD и команды
агента — дальше идёте по шагам constitution → specify → plan → tasks →
implement. Точную команду установки под свежую версию (иногда её пинуют к
конкретному релизу) берите из README репозитория.
Spec Kit, Kiro или свой каркас
Spec Kit — не единственный способ поставить у себя spec-driven-процесс.
- Kiro (AWS) — агентный IDE, построенный вокруг того же цикла «требования → дизайн → задачи → код». Даёт целостную среду, но привязывает к своему IDE; Spec Kit, наоборот, кроссагентный и живёт поверх инструмента, который у вас уже есть.
- Свой каркас —
AGENTS.mdс правилами, папкаdocs/specs/и одно правило без исключений: фича не начинается без утверждённой спеки (как в разборе подготовки проекта к AI-агентам). Гибко и без зависимостей, но собирать и поддерживать шаблоны придётся самим — Spec Kit даёт это из коробки.
Суть при этом не в инструменте: Spec Kit удобно снимает старт, но spec-driven development — это дисциплина «сначала намерение, потом код», и она внедряется в любом стеке. Инструмент экономит время на каркасе, а не заменяет саму практику.
В своей разработке мы пользуемся spec-driven-подходом — не как единственно верным способом, а как рабочим инструментом наравне с другими практиками; и Spec Kit, и самодельный каркас мы проверяли на своих проектах. Если присматриваетесь к SDD для своей команды — расскажите о задаче, поделимся тем, что у нас сработало.