English | Русский
Что такое SENAR?
SENAR (Software Engineering Norms for AI-Assisted Research) — открытый инженерный стандарт, определяющий как AI-агенты должны работать над программными проектами. Думайте о нём как о строительном кодексе для AI-разработки — набор правил, которые делают работу агента предсказуемой, проверяемой и безопасной.
Полная спецификация: senar.tech | GitHub
TAUSIK (Технический Агент Унифицированного Сопровождения, Инспекции и Контроля) — эталонная реализация SENAR. Каждое правило, описанное ниже, применяется TAUSIK автоматически — вам не нужно читать спецификацию, чтобы использовать фреймворк.
Какую проблему решает SENAR
ИИ-агенты для программирования мощные, но ненадёжные. Без структуры они:
- Начинают писать код, не определив что значит «готово»
- Заявляют что задача выполнена, не запуская тесты
- Забывают всё между сессиями
- Пробуют один и тот же неработающий подход три раза подряд
AGENTS.md и .cursorrules — это рекомендации, которые агент может проигнорировать. SENAR обеспечивает принудительный контроль: жёсткие блокировки, которые физически не дают агенту пропустить шаги.
Ключевые концепции
Quality Gates
Два контрольных пункта, которые должна пройти каждая задача:
QG-0 — Context Gate (перед началом работы):
- Задача должна иметь чётко сформулированную цель
- Критерии приёмки должны быть записаны — что считается «готово»
- Обязателен хотя бы один негативный сценарий (что происходит при ошибке, некорректном вводе и т.д.)
- Для задач, связанных с безопасностью (авторизация, платежи, персональные данные), выводится предупреждение, если нет критериев безопасности
QG-2 — Implementation Gate (перед закрытием задачи):
- Каждый критерий приёмки должен иметь задокументированное подтверждение (вывод тестов, шаги проверки)
- Все шаги плана должны быть выполнены
- Автоматические проверки должны пройти (тесты, линтеры — в зависимости от стека)
Эти quality gates — жёсткие блокировки: агент буквально не может продолжить, не выполнив требования. Никакого --force, никакого обхода.
Почему QG-0 и QG-2, а не QG-1? Нумерация следует спецификации SENAR: QG-0 срабатывает при старте задачи (до начала работы), QG-2 — при завершении (после всей работы). QG-1 зарезервирован в спецификации для промежуточной проверки, но пока не реализован.
Управление сессиями
Рабочие сессии имеют структуру:
- Старт сессии — загрузка контекста из предыдущей работы (что сделано, что заблокировано, что не сработало)
- Лимит сессии (180 мин) — предотвращает деградацию контекста в длинных сессиях. Агенту блокируется старт новых задач после 3 часов. Можно продлить через
session extend. - Контрольные точки — периодические снимки контекста, чтобы ничего не потерялось при сбое сессии
- Конец сессии — сохранение передачи: что выполнено, что не закончено, какие решения приняты
Отслеживание тупиков
Когда агент пробует подход и он не работает — он записывает тупик: что пробовали и почему не сработало. В следующей сессии, когда возникает похожая задача, агент видит неудачный подход и не повторяет его.
Метрики
Шесть метрик отслеживаются автоматически, без ручного ввода:
| Метрика | Что измеряет |
|---|---|
| Производительность | Задач завершено за сессию |
| Доля успеха с первой попытки | % задач, решённых без повторных заходов |
| Уровень пропущенных дефектов | % задач, в которых потом нашли дефект |
| Время выполнения | Среднее время от создания задачи до завершения |
| Доля тупиков | Доля тупиков относительно общего числа задач |
| Стоимость задачи | Среднее время по уровню сложности |
Эти метрики помогают ответить: работает ли агент эффективно или тратит время на повторы и тупики?
Что вы заметите на практике
При использовании TAUSIK SENAR проявляется так:
- Агент всегда спрашивает "что считается готовым?" перед написанием кода — это QG-0
- Агент не может закрыть задачу, просто сказав "готово" — он должен показать подтверждение по каждому критерию — это QG-2
- Начало новой сессии загружает предыдущий контекст — вы не объясняете проект с нуля
- Неудачные подходы запоминаются — агент не будет пробовать одно и то же сломанное решение дважды
- Длинные сессии получают предупреждение — после 3 часов агент предложит сохранить контрольную точку
Правила SENAR кратко
| Правило | Что говорит | Как TAUSIK применяет |
|---|---|---|
| Rule 1 | Нет кода без задачи | Хук блокирует редактирование файлов без активной задачи |
| Rule 2 | Определить границы задачи | Задача имеет поля scope и scope_exclude |
| Rule 3 | Проверять по критериям | QG-0 + QG-2 совместный контроль |
| Rule 6 | Планировать откат | Поле rollback_plan: QG-0 блокирует старт medium/complex без плана отката; task done предупреждает |
| Rule 7 | Найти первопричину дефектов | Предупреждение если в задаче-дефекте нет первопричины |
| Rule 8 | Фиксировать знания | Предупреждение при закрытии если не записаны решения и закономерности |
| Rule 9.2 | Лимит времени сессии | Жёсткая блокировка после 180 минут |
| Rule 9.3 | Периодические контрольные точки | Автонапоминание после 40 вызовов инструментов |
| Rule 9.4 | Документировать тупики | Специальный инструмент + напоминания в скиллах |
| Rule 9.5 | Периодический аудит | Автопроверка при старте сессии |
Почему нумерация правил пропускает 4-5? SENAR покрывает больше, чем TAUSIK реализует. Правила 4 (внешняя проверка) и 5 (контрольный список верификации — частично реализован) существуют в спецификации, но пока не применяются как жёсткие блокировки. Правило 6 (планирование отката) реализовано с v1.5: поле
rollback_planобязательно на QG-0 для medium/complex задач. TAUSIK фокусируется на правилах с наибольшим влиянием на надёжность ИИ-агента.
Полная матрица соответствия: Матрица соответствия SENAR
Что дальше
- Быстрый старт — настроить TAUSIK за 10-15 минут
- Рабочий процесс — как выглядит типичный рабочий день
- Матрица соответствия SENAR — детальный статус по каждому правилу