Open-source для разработки AI-инструментов
AI-агенты часто создают код, который выглядит правильно, но не всегда работает или подходит для сложных проектов. Это связано не с их возможностями, а с тем, как мы их используем: им нужны точные инструкции, а не общие запросы. Живая и постоянно обновляемая спецификация помогает получать качественный результат и служит основой для работы с кодом.
На GitHub обнаружил open-source платформу для работы с AI-инструментами — Spec Kit. Легко может интегрироваться с GitHub Copilot, Claude Code и Gemini CLI.
Работу платформы можно описать с помощью четырех букв (SPTI):
S (Specify) — создаете подробное описание того, что хотите сделать через AI, а он создает подробную спецификацию.
P (Plan) — вы формулируете архитектуру, ограничения и используемые технологии, AI создает подробный технический план с возможными альтернативами.
T(Tasks) — AI делит архитектурный план на шаги, которые можно реализовать и протестировать по отдельности.
I (Implement) — AI поочередно выполняет задачи, а вы на каждом этапе оцениваете результат: соответствует ли он требованиям, правильно ли реализованы архитектурные решения.
Как использовать Spec Kit для работы в связке с AI?
Spec Kit позволяет управлять кодовыми помощниками вроде GitHub Copilot, Claude Code и Gemini CLI с помощью простых команд. Агент в ответ создает нужные документы: спецификации, технические планы и задачи.
Установка и запуск платформы
Запуск происходит просто. Сначала устанавливается CLI-инструмент specify, который подготовит проект и создаст нужные папки:
uvx --from git+https://github.com/github/spec-kit.git specify init <ИМЯ_ПРОЕКТА>
После инициализации:
- С помощью /specify опишите суть и цель проекта. Агент подготовит детальное описание.
- Воспользуйтесь /plan для генерации технического плана с учётом ограничений и архитектуры.
- Команда /tasks преобразует описание и план в список конкретных задач для выполнения.
Такой порядок помогает превратить неясные идеи в чёткие шаги, обеспечивая последовательную работу агента.
Почему это лучше подсказок и сценариев?
Генеративные модели хорошо продолжают заданные шаблоны, но не могут читать ваши мысли. Если просто сказать «добавь фотографию», системе придётся догадываться о деталях, и часть важных нюансов может быть упущена.
Если же вы сразу составляете подробную спецификацию и разбиваете работу на задачи, агент получает ясные инструкции — что делать, как и в какой последовательности. Такой подход работает с любыми языками программирования, будь то Python, JavaScript или Go.
Когда метод особенно эффективен:
- Для новых проектов: помогает определить правильный вектор развития и избежать шаблонных решений.
- При добавлении функций: органично вписывает новшества в текущую систему, чтобы они выглядели естественно.
В процессе обновления устаревших систем: фиксирует бизнес-логику в новой документации, выстраивает современную архитектуру и позволяет восстановить продукт без накопленных проблем.
Здесь пишу о сервисах, которые облегчают жизнь системному администратору, разработчику и CIO.