FAQ
Кому это? Любому, кто оценивает или уже пользуется и у кого есть короткий вопрос — не баг и не проблема установки. Когда читать? До того, как заводить issue. Если что-то сломалось — что делать; чтобы разобраться с инструментом — гайд.
Выбор
Обязательно внедрять всё?
Нет. Одна проверка — уже реальное улучшение, а doctor продолжит честно говорить про
остальные восемь. Репозиторий, где включено две проверки и все это знают, в лучшем
состоянии, чем тот, где верят, что включено девять.
Когда честный ответ — «вам это не нужно»?
Когда вы в репозитории один, работа агента помещается в голову целиком и вы её целиком читаете. Проверки окупаются там, где никто не читает весь дифф: второй участник, долгий прогон без присмотра, работа, растянутая на несколько сессий. Ниже этой черты они — церемония, а церемония, которая стоит дороже ошибки, от которой защищает, это не дисциплина.
Это замена тестам?
Нет. Проверяется, что ваши утверждения указывают на существующее и всё ещё проходящее. Тест, который ничего не утверждает, удовлетворяет любому правилу отсюда.
Работает с моим агентом?
Да. Проверки — это команды: читают файлы, запускают ваши команды, ходят по истории git.
Claude Code, Codex, Cursor, Copilot, DeepSeek, ваш собственный агент — ни один из них не
зашит в код, потому что ни у одного ничего не спрашивают. harnessimo agent печатает
контракт в три строки, который вставляется в любой файл инструкций, а
hooks install --agent подключает тот единственный инструмент, у которого есть API
стартовых хуков.
У меня не JavaScript.
Нормально. Укажите в docs.commands ваш Makefile или Taskfile.yml и работайте. Node
нужен, чтобы запускать сам инструмент; проекту быть на JavaScript не требуется.
Стоит ли ставить ещё и code-graph или codebase-memory?
Да, и отдельно. Те индексируют репозиторий и отдают его агенту — они отвечают на вопрос «что мне нужно прочитать». Этот отвечает на «закончено ли». Они подходят к одной и той же проблеме с разных сторон, и объединять их дороже, чем оставить порознь.
Эксплуатация
Какую проверку включать первой?
Ту, что отвечает боли, которая реально была у вас в этом месяце. Таблица в гайде сопоставляет симптомы и проверки. Включить все девять разом — получить один огромный красный прогон, который никто не прочитает.
Как выключить проверку?
Удалить её секцию из harnessimo.config.json. Проверка работает, когда есть её
конфигурация, и doctor после этого покажет её как «not set» — то есть честно, а не тихо.
Это медленно?
Пре-коммит-хук запускает только гейты секундного масштаба; перепроверка, холодный старт и ваши собственные команды — это CI. Хук, который делает каждый коммит долгим, начинают обходить, а обойдённый гейт не защищает ни от чего.
Что он кладёт в репозиторий?
.harness/ (пять папок стартовых документов, которые вы должны переписать), specs/
(индекс треков и шаблоны) и harnessimo.config.json. Больше ничего, и ни одной рантайм
зависимости — по правилу, которое проверяет собственный CI.
Может ли агент поправить правила, чтобы его работа прошла?
Не незаметно. Для этого есть locked: файлы, определяющие успех, перечислены в конфиге, и
коммит с трейлером агента, который их трогает, падает. Сдвинуть границу можно — отдельным
коммитом, который видит человек.
Помогает ли это с расходом токенов?
Для этого есть harnessimo budget и guard на чтение. Guard отклоняет повторное чтение
файла, который не менялся, и говорит, сколько это сэкономило; budget печатает, во что
обошлась сессия и какая её доля была повторами. Все цифры — оценка из расчёта четыре байта
на токен, и об этом сказано прямо: контекст модели нам не виден, а точное число, которое
никто не может проверить, хуже приблизительного, которое в этом признаётся.
Доверие
Почему я должен верить, что проверки работают?
У каждого правила есть тест, доказывающий, что оно срабатывает на плохом входе, — правило, которое умеет только проходить, это допущение в одежде правила. Все девять применяются к самому этому репозиторию, включая холодный старт с клонированием в пустой каталог, а каждая опубликованная версия собирается и подписывается workflow без единого сохранённого секрета.
Что делать, если правило неверное?
Заведите issue или пришлите пул-реквест. Правило, которое существует в двух экземплярах — здесь и форкнутым у вас, — это ровно та проблема, ради которой всё и делалось.
Кто за этим стоит и что будет, если это забросят?
Один автор, два продакшн-репозитория на нём, лицензия MIT, ноль рантайм-зависимостей. Если завтра проект забросят, проверки — это несколько тысяч строк чистых функций, которые переносятся к себе за вечер. Так задумано: гейт, который нельзя забрать себе, — это гейт, от которого не стоит зависеть.
Ответа не нашлось
Если сломалось — что делать. Иначе заводите issue: https://github.com/atamaniuc/Harnessimo/issues.