Всем привет!
Некоторое время назад я опубликовал статью о своём опыте AI-кодинга и поделился рабочими практиками. В комментариях нашёл много полезного — в частности, упоминания методологии SDD.
Это натолкнуло меня на идею: собрать инструмент, который позволяет управлять и автоматизировать процесс разработки, основанной на спецификациях и контроле генерации кода. Я приступил к реализации — очень плотно и почти без сна за все эти дни o_O.
Основная идея проста: разработчик формирует спецификации, ИИ генерирует код. Принципы — не терять и не размывать контекст, контролировать структуру и качество кода.
Вчера я завершил работу над MVP. Продукт свежий и местами сырой — решил, что шлифовать его лучше уже имея пользовательский фидбек.
Знакомьтесь: Skaro.

Как это устроено
Процесс разработки в Skaro выстроен в последовательный пайплайн:
Конституция — стек, стандарты кода, требования к тестам, политики безопасности, правила для LLM
Архитектура — описание проекта, компоненты, хранение данных, взаимодействия, инфраструктура, интеграции, компромиссы
План разработки — вехи (milestones) и задачи
Задачи — каждая задача проходит свой пайплайн: спецификация → уточнение → план → реализация → тесты
Ревью — проверка репозитория на соответствие всем этапам, чат с LLM для устранения замечаний
Все артефакты (спецификации, планы, ответы на вопросы LLM) хранятся в директории .skaro/ рядом с кодом и попадают в репозиторий. Контекст не теряется между сессиями.
Роли
Каждой роли можно назначить свою модель — одни модели лучше справляются с кодингом, другие сильнее в планировании и понимании архитектуры. Я лично использую Anthropic Opus 4.6 для всех ролей.
Роль | Задача |
|---|---|
Архитектор | Генерация и ревью архитектуры, ADR |
Кодер | Реализация задач по этапам |
Ревьюер | Проверка репозитория, исправление ошибок |
Дашборд

В дашборде отображается статистика по проекту: расход токенов в разрезе ролей и задач, статистика по файлам, прогресс пайплайна.
1. Установка
Для работы требуется Python 3.11+.
Windows (PowerShell):
irm https://raw.githubusercontent.com/skarodev/skaro/main/install.ps1 | iex
Linux / macOS:
curl -fsSL https://raw.githubusercontent.com/skarodev/skaro/main/install.sh | sh
Скрипт создаёт изолированный venv в ~/.skaro/ и устанавливает CLI. При повторном запуске скрипт обнаруживает существующий venv и обновляет пакет на месте.
Альтернативно — через pipx или uv:
pipx install skaro # или uv tool install skaro
Проверить установку:
skaro --version
2. Инициализация проекта

cd my-project skaro init skaro ui
skaro init поддерживает два сценария. Для нового проекта создаётся директория .skaro/ с пустыми шаблонами конституции, архитектуры и конфигурацией. Для существующего репозитория Skaro анализирует кодовую базу и автоматически генерирует конституцию и архитектуру на основе найденного кода — остаётся только создать план и задачи.
skaro ui запускает веб-дашборд по адресу http://localhost:4700.
Можно запускать несколько проектов одновременно, каждый последующий откроется на порту 4700 + 1
Посмотреть текущее состояние проекта из терминала:
skaro status
3. Настройка LLM

Провайдер и модели настраиваются через UI — отдельно для каждой роли (архитектор, кодер, ревьюер).
Поддерживаемые провайдеры:
Провайдер | Требует ключ | Модель по умолчанию |
|---|---|---|
Anthropic | да | claude-sonnet-4-6 |
OpenAI | да | gpt-5.2 |
Groq | да | llama-3.3-70b-versatile |
Ollama | нет | qwen3:32b |
Ключи хранятся локально и не передаются никуда, кроме выбранного провайдера.
4. Конституция

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

Доступные пресеты: React, Next.js, SvelteKit, Vue, Angular, FastAPI, Django, NestJS, Express, Flutter, React Native, Kotlin Multiplatform.
Пример блока конституции:
## LLM Rules - Не оставлять заглушки без явного TODO с обоснованием - Не дублировать код: предпочитать переиспользование и чёткие абстракции - Не делать скрытых допущений — при неопределённости задавать вопрос - Всегда генерировать AI_NOTES.md по шаблону
5. Архитектура

Архитектура — ключевой документ для LLM. Начинается с раздела Overview: описание того, что разрабатывается и какую проблему решает. Без этого контекста модель не понимает цели проекта. Далее описываются компоненты и их зоны ответственности, хранилища данных, протоколы взаимодействия, инфраструктура, внешние интеграции, известные компромиссы.
LLM-архитек��ор анализирует заполненный документ и предлагает свою версию.

После утверждения архитектура фиксируется и становится контекстом для всех последующих задач.
5.1 ADR

После утверждения архитектуры Skaro предлагает сгенерировать ADR (Architecture Decision Records) — документы, фиксирующие ключевые архитектурные решения: что было решено, какие альтернативы рассматривались и почему они были отклонены. ADR хранятся в репозитории и служат историческим контекстом для всей команды.
6. План разработки

План разработки структурирован по вехам (milestones). Каждая веха содержит список задач с указанием зависимостей и статуса.

Задачи можно сгенерировать из архитектуры через LLM или добавить вручную. Шаблон плана хранится в .skaro/devplan.md и доступен для редактирования напрямую.
7. Задачи
7.1 Генерация задач из плана разработки

Задачи генерируются из плана одним действием. Для каждой задачи создаётся отдельная директория в .skaro/milestones/<milestone>/<task>/.
7.2 Спецификация задачи

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

После прочтения спецификации LLM-архитектор задаёт уточняющие вопросы. Ответы сохраняются в артефактах задачи и включаются в контекст при генерации.
7.4 Генерация плана реализации и разбивка по этапам

На основе спецификации и ответов LLM-роль «Кодер» строит пошаговый план реализации. Каждый этап — это атомарный набор изменений, который можно реализовать и проверить независимо.
7.5 Реализация по этапам

LLM-роль «Кодер» реализует задачу поэтапно. На каждом этапе генерируется список файлов с содержимым.
7.6 Подтверждение сохранения файлов

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

Отчет о том что было сделано и почему именно так:

7.7 Git

Встроенный Git-раздел отображает список изменённых файлов с их статусом. Для каждого файла можно просмотреть diff, выбрать файлы для stage, написать сообщение коммита, запушить изменения или создать новую ветку — всё из интерфейса дашборда.
7.8 Тесты

Фаза тестирования выполняет структурную проверку задачи: все ли файлы из плана присутствуют на диске, есть ли тестовые файлы в проекте, заполнена ли спецификация, завершены ли все этапы реализации. Дополнительно можно настроить произвольные команды верификации в verify.yaml — они будут выполнены автоматически.

LLM предлагает исправленные файлы

8. Ревью
8.1 Проверка репозитория

Ревью выполняет проверку на уровне всего проекта: утверждена ли конституция, подтверждена ли архитектура, все ли задачи реализованы и протестированы, есть ли незакрытые вехи. Дополнительно запу��каются глобальные команды верификации из конфигурации.
8.2 Чат с LLM, устранение ошибок

По результатам ревью открывается чат-сессия. Перед отправкой можно выбрать scope — конкретные задачи или вехи, которые LLM возьмёт в контекст. Разработчик описывает проблему, LLM предлагает исправления с тем же механизмом просмотра diff и подтверждения файлов.
9. Dashboard нашего незавершенного проекта

Пользуйтесь :)
Проект имеет лицензию AGPL-3.0 — ядро остаётся открытым и бесплатным.
Пример первого проекта, собранного в Skaro: Tic-Tac-Toe.
Надеюсь, Skaro окажется полезным в вашей работе! Жду фидбек и любую критику :)
Ссылки:
