RTK сжимает вывод команд и экономит до 90% токенов в ИИ-агентах
Rust-обёртка фильтрует шум из git, тестов и логов до того, как он попадёт в контекст модели. В агенте вроде Claude Code это режет расход токенов на 60-90%.
Каждый, кто гоняет ИИ-агента по своему коду, знает эту боль по счёту в конце месяца. Просишь Claude Code прогнать тесты — он покорно тащит в контекст все двести строк вывода cargo test: трейсбеки, повторы, предупреждения, которые к делу не относятся. Модель платит токенами за каждый символ этого лога. За получасовую сессию так утекают десятки тысяч токенов, и почти все на шум.
RTK (Rust Token Killer) чинит ровно это. Маленькая утилита на Rust встаёт между агентом и терминалом: перехватывает команду, прогоняет её вывод через фильтры и отдаёт модели сжатую суть вместо простыни. Разработчики заявляют экономию 60-90% токенов, и цифры в их таблице выглядят правдоподобно.
В чём проблема
Контекст ИИ-агента — ресурс дорогой и конечный. Каждый git status, ls, grep или прогон тестов уходит в него целиком. Проблема двойная. Деньги: токены на входе стоят, и лог на сорок тысяч символов превращается в прямые расходы. Качество: чем больше мусора в контексте, тем труднее модели держать в голове саму задачу. Она видит стену текста, а не то, что сломалось.
Обычный вывод команд разработчика на 70-90% состоит из шума. Пустые строки, boilerplate, повторяющиеся предупреждения, дубли в логах. Человек проматывает их глазами за секунду. Модель читает всё и за всё платит.
Что делает RTK
Утилита применяет к выводу каждой команды четыре приёма:
- Умная фильтрация — выкидывает шум: комментарии, пустые строки, шаблонные куски.
- Группировка — сворачивает похожее: файлы по папкам, ошибки по типам.
- Обрезка — оставляет релевантный контекст, режет дублирование.
- Дедупликация — схлопывает одинаковые строки лога и пишет, сколько их было.
Результат нагляден. git push на пятнадцать строк и ~200 токенов превращается в ok main — десять токенов. Падение cargo test на двести строк ужимается до двадцати. Для модели это разница между «прочитать роман» и «взглянуть на суть».
Сколько это экономит
В README есть таблица за получасовую сессию Claude Code. Чтение файлов, grep, git-статусы, прогоны тестов — суммарно около 118 тысяч токенов обычным способом против ~24 тысяч с RTK. Экономия примерно 80% и около 94 тысяч токенов за полчаса. На тестах (cargo test, pytest, go test) сжатие доходит до 90%: именно там больше всего повторов и трейсбеков.
Цифры зависят от проекта: на маленькой кодовой базе выигрыш скромнее. Но порядок понятен — при активной разработке это не проценты, а разы.
С чем работает
RTK не привязан к одному агенту. Официально поддержаны Claude Code, GitHub Copilot в VS Code, Cursor, Gemini CLI, Windsurf, Cline и Roo Code, OpenCode, Google Antigravity, Factory Droid и другие. Для каждого своя команда установки.
Механизмов интеграции три. Хук (Claude Code, Copilot, Cursor) самый чистый: RTK ставит нативный бинарный хук в конфиг агента, тот перехватывает bash-команду перед запуском и молча переписывает git status в rtk git status. Оверхеда на токены ноль. Плагин (OpenCode, Hermes) — интеграция через API инструмента. И правила в файлах проекта (.clinerules, .agents/rules) для агентов, которые читают инструкции оттуда.
Как попробовать
Установка в одну строку:
brew install rtk
или
curl -fsSL https://raw.githubusercontent.com/rtk-ai/rtk/master/install.sh | sh
Дальше подключаешь к своему агенту:
rtk init -g # Claude Code
rtk init -g --agent cursor # Cursor
rtk init --agent antigravity # Antigravity
После этого перезапускаешь агента, и хук начинает работать сам. Проверить эффект помогает команда rtk gain: она показывает, сколько токенов уже сэкономлено, а rtk gain --graph рисует график за месяц.
Работает и вручную, без хука: rtk cargo test, rtk git diff, rtk grep "pattern" ., rtk read file.rs. Есть даже rtk read file.rs -l aggressive — отдаёт только сигнатуры функций.
Нюансы, о которых стоит знать
Хук перехватывает только вызовы через Bash. Встроенные инструменты Claude Code — Read, Grep, Glob — идут мимо, их RTK не трогает. Максимальный эффект получаешь, когда агент работает через терминал.
Когда команда падает, RTK не выкидывает полный лог, а сохраняет его в файл (tee-режим). Агент при желании прочитает нефильтрованный вывод, не перезапуская команду. Сжатие не должно стоить тебе деталей отладки.
Обработка идёт локально, на твоей машине, данные никуда не уходят. Телеметрия по умолчанию выключена и включается только явным согласием; даже включённая она не собирает код, аргументы команд, переменные окружения и секреты.
Технически это один Rust-бинарник без зависимостей, оверхед меньше 10 мс на команду, лицензия Apache 2.0, больше сотни поддержанных команд.
Итог
RTK решает узкую, но реальную задачу: контекст ИИ-агента забивается мусором из терминала, и ты платишь за него дважды — деньгами и вниманием модели. Обёртка, которая отдаёт агенту суть вместо простыни, — простая идея, но на активной разработке она экономит и токены, и нервы. Если гоняешь Claude Code или Cursor каждый день, поставить и забыть точно стоит.
Репозиторий и гайды — на github.com/rtk-ai/rtk.