Нихрена интересного
Тут должен был быть воскресный #digest агентского тулинга, но ничего полезного за неделю не было. Если что-то проглядел, закиньте в чат, там же обсудим.
Вместо этого хочу рассказать о своем опыте с rtk. Это такая штука, которая заворачивает произвольные bash-команды и форматирует их вывод, уменьшая потребление контекста.
В июльском разборе скиллов я написал про него - "юзаю, но по мелочи". С конца мая он висел у меня глобальным хуком на всех bash-командах, а сейчас я решил посчитать, сколько он мне дал на самом деле.
Счетчик в интерфейсе показывал экономию 92,9%. На полной выборке в 32 000 команд вышло 22,1%. Медианный вызов сжал ровно ноль токенов - больше половины команд прошли сквозь rtk и вышли обратно такими же😑
Помесячно еще веселее: май 54,7%, июнь 56,1%, июль 15,1%, август 21,5%. И тут видно, что в мае я давал агенту вызывать rtk на любых командах, а к июлю повесил глобальный хук и ограничил его whitelist'ом команд🤷♂️
Проблема в том, что когда агент вызывал через rtk что хотел, он действительно сжимал МНОГО. Например, вызовы pytest ужимались на 80%. И rtk весело репортил в статистике, что пожал 100500 токенов. Но вот только rtk не учитывал, что после его пережатия агент плевался "мне тут rtk вызов попортил, пойду запущу команду в обход". Вот я и ограничил ему список команд, на которые стоит запускаться. Но сделал я это эмпирически.
И вот, спустя месяц, я решил проверить, а как на самом деле работает rtk? Отправил агента парсить логи всех своих сессий с момента установки rtk и искать ровно эти паттерны - когда агент плюнул на rtk и пошел в обход. В общем, спойлер, я оказался прав - тесты запускать не стоит.
Но всплыло еще кое-что интересное: например, я завернул все вызовы grep в rtk. А по статистике оказалось, что он падал с ошибкой на любые флаги - в 23,7% кейсов. Сначала я хотел вообще снести rtk нахрен, но потом умный Claude полез в релиз-ноуты. Оказывается, я два месяца сидел с багом, который давно пофиксили. Так что я обновился, перенастроил конфиг и юзаю его дальше.
Сейчас в whitelist восемь позиций: cat / head / tail (у rtk это все один фильтр read), ls, grep, find, diff, wc, gh и весь git, кроме status и log. Все остальное идет мимо хука.
Смешное тут, что в README у rtk заявлено 100+ команд, и половина списка: pytest, ruff, mypy, tsc, eslint, prettier, curl. Все это я у себя выключил. Оставшиеся девяносто с чем-то - AWS, kubectl, pulumi, cargo, sbt, rubocop, rspec - я просто не запускаю, ни разу за три месяца. А из тех восьми, что дожили, 84% всей экономии дает один cat🌚
Спустя неделю после обновления цифры такие:
• на командах, где он запускается, экономия 44,5% • отказы парсинга упали с 23,7% до 1,2% - это когда rtk падает сам • медианный вызов на произвольных командах как был нулем, так и остался
Читается это так: rtk работает, чето экономит на командах, где ему разрешили, но 99% команд идут мимо него - ну и пусть идут. Главное, что агент перестал переспрашивать команды после форматирования rtk, так что пусть экономит свои крохи. Он все равно стоит хуком, контекст не ест.
Теперь к дайджесту.
Что интересного все-таки нашлось:
• Archify - прикольная рисовалка архитектуры по коду. Помогает визуально понять, что за архитектурные схемы вам агент пытается построить в коде; • BrowserSkill от Tencent - отдает агенту твой настоящий залогиненный браузер, вкладку он обязан одолжить и вернуть. Ставится одной фразой самому агенту, дальше он справляется сам; • claude-mem - память между сессиями, но ценен протокол доступа: search отдает индекс по 50-100 токенов на результат, детали тянутся потом и только по отфильтрованным ID. Заявлена экономия ×10; • Skill Sunset - аудит накопленных CLAUDE.md и SKILL.md: ищет раздутые always-loaded файлы и протухшие правила. Локально, без единого вызова модели.
Все, что проходит фильтр рубрики, копится в репозитории awesome-engineering-ai - там же мои вердикты по тем, что успел потыкать.
В этом посте были ссылки, но мы их удалили по правилам Сетки