Перейти к содержимому

Правила

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

Окно терминала
bee hook rule add "не вызывай GetCollection напрямую — используй DataSource"
bee hook rule list
bee hook rule rm <id>
Окно терминала
bee hook rule add "<текст>" --scope always|session|prompt|file
область доставка
always (по умолчанию) в начале сессии и на каждом запросе
session один раз, в начале сессии
prompt на каждом запросе
file только когда пишется подходящий файл — см. ниже

Правила по путям — те, что экономят токены

Заголовок раздела «Правила по путям — те, что экономят токены»

Правило может назвать файлы, о которых оно:

Окно терминала
bee hook rule add "DataSource никогда не вызывает GetCollection" --path '*DataSource.cs'
bee hook rule add "у каждого компонента есть тест Vitest" --path 'src/**/*.vue'

--path подразумевает пофайловую доставку. И в этом весь смысл: правило, называющее файлы, полностью исключается из блока, идущего каждый ход. Пятьдесят ходов, не касающихся ничего релевантного, перестают за него платить, а тот один, который касается, получает его не погребённым под неприменимыми правилами.

Намеренно в стиле gitignore, потому что это нотация, которую люди уже знают:

шаблон совпадает с
*DataSource.cs этим именем файла где угодно в дереве
src/**/*.vue любым .vue внутри src/, на любой глубине
deploy/** всем внутри каталога
src/*.cs только непосредственно в src/* останавливается на /

Сопоставление без учёта регистра: автор правила описывает соглашение, а не адресует inode.

По умолчанию правило направляет только этот проект — он определяется по git remote, поэтому та же копия на другой машине — тот же проект. Чтобы направлять всё:

Окно терминала
bee hook rule add "сообщения коммитов на английском" --global

Каждое правило запоминает, кто его написал; имя читается из конфигурации самого git (локальная для репозитория личность важнее глобальной). В общем хранилище bee hook rule list скажет вам, чьему соглашению вы следуете.

Окно терминала
bee budget

Разбивает добавляемый контекст по компонентам — для начала сессии и для примерного запроса. Если набор правил стал дорогим, это видно здесь.