OpenSpec: как спецификации упорядочивают работу ИИ-ассистентов кода
OpenSpec: как спецификации упорядочивают работу ИИ-ассистентов кода Репозиторий OpenSpec от Fission-AI за сутки собрал почти 300 звёзд — проект предлагает перевести разработку с участием ассистентов на базе искусственного интеллекта (ИИ) на спецификации. Подход называется…
Главное
- OpenSpec переносит акцент с промптов на проверяемые спецификации
- Проект написан на TypeScript и работает как CLI-инструмент
- Спецификации задают критерии приёмки до написания кода
- Подход делает генерацию кода более предсказуемой и прозрачной
- Инструмент хранит спецификации в репозитории и проверяет их в pull request
Репозиторий OpenSpec от Fission-AI за сутки собрал почти 300 звёзд — проект предлагает перевести разработку с участием ассистентов на базе искусственного интеллекта (ИИ) на спецификации. Подход называется spec-driven development: сначала фиксируется ожидаемое поведение системы, затем код пишется под эти требования. В отличие от описания задачи в свободной форме, спецификация задаёт чёткие границы и критерии приёмки.
Проект написан на TypeScript и поставляется как инструмент командной строки. Он позволяет описывать изменения в виде набора спецификаций, которые может прочитать и выполнить ассистент. Такой формат снижает неоднозначность: модель получает не общее пожелание, а структурированное описание входов, выходов, ограничений и тестов. Для команды это удобно ещё и тем, что спецификации можно хранить в репозитории и просматривать в обычных pull request.
Идея не нова: спецификации давно используют при проектировании API и систем с высокой ответственностью. Новизна в том, что теперь их потребляет не только человек, но и ИИ-кодер. Ассистент на выходе выдаёт код, который должен соответствовать заранее заданным правилам, а разработчик проверяет результат по тем же спецификациям. Это превращает генерацию кода из «чёрного ящика» в проверяемый процесс.
Пока инструмент молодой, но сигнал показательный: комьюнити ищет способы сделать ИИ-ассистентов предсказуемыми. Вместо того чтобы полагаться на удачу, разработчик описывает намерение, а модель занимается реализацией. Если практика приживётся, спецификации могут стать стандартным интерфейсом между человеком и кодовым ассистентом.