Skip to content

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 проявляется так:

  1. Агент всегда спрашивает "что считается готовым?" перед написанием кода — это QG-0
  2. Агент не может закрыть задачу, просто сказав "готово" — он должен показать подтверждение по каждому критерию — это QG-2
  3. Начало новой сессии загружает предыдущий контекст — вы не объясняете проект с нуля
  4. Неудачные подходы запоминаются — агент не будет пробовать одно и то же сломанное решение дважды
  5. Длинные сессии получают предупреждение — после 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


Что дальше