RTK — как сократить расход токенов в Claude Code на 60–90%

Как установить и настроить RTK (Rust Token Killer) для фильтрации вывода терминальных команд в Claude Code и экономии 60–90% токенов.

Dmitrij Tamarov Dmitrij Tamarov 20 марта 2026 г. · 6 мин
Claude Code RTK LLM оптимизация токенов разработка CLI

Работая с Claude Code, огромная часть контекстного окна уходит на сырой вывод терминальных команд. git log на 200 строк, npm install с деревом зависимостей, cargo build с предупреждениями — всё это съедает токены, не принося пользы.

Решение — RTK (Rust Token Killer). Это CLI-прокси, который перехватывает команды и фильтрует их вывод перед тем, как он попадёт в контекст LLM.

Установка

На macOS через Homebrew:

Terminal — zsh
brew install rtk

Альтернативные способы: curl-скрипт (curl -fsSL https://raw.githubusercontent.com/rtk-ai/rtk/refs/heads/master/install.sh | sh) или cargo install --git https://github.com/rtk-ai/rtk, если есть Rust.

Инициализация

Terminal — zsh
rtk init --global

Команда создаёт три файла:

  • ~/.claude/hooks/rtk-rewrite.sh — Bash-скрипт хука, перехватывает команды
  • ~/.claude/RTK.md — Справка для Claude о командах rtk
  • ~/.claude/CLAUDE.md — Добавлена ссылка @RTK.md

Настройка хука в settings.json

rtk init попросит пропатчить ~/.claude/settings.json. Если это не произошло автоматически, нужно вручную добавить блок PreToolUse внутри hooks:

data.json
{
  "hooks": {
    "PreToolUse": [
      {
        "matcher": "Bash",
        "hooks": [
          {
            "type": "command",
            "command": "~/.claude/hooks/rtk-rewrite.sh"
          }
        ]
      }
    ]
  }
}

Что здесь что:

  • PreToolUse — хук срабатывает до выполнения инструмента
  • "matcher": "Bash" — перехватываются только Bash-команды
  • command — путь к скрипту-перехватчику

После правки перезапустите Claude Code.

Как работает перехват

На каждый Bash-вызов происходит следующее:

Схема перехвата команд RTK в Claude Code

Примеры подмен:

text
git status  →  rtk git status
git log     →  rtk git log
npm install →  rtk npm install

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

Что именно делает rtk с выводом

Когда выполняется rtk git status вместо git status, rtk:

  • Запускает оригинальную команду
  • Фильтрует вывод, убирая шум (пустые строки, повторы, нерелевантные данные)
  • Отдаёт сжатый результат в контекст Claude

Экономия: 60–90% токенов на типичных командах (git log, npm install, cargo build и т.д.).

Мониторинг экономии

Terminal — zsh
rtk gain              # статистика экономии
rtk gain --history    # история команд с экономией
rtk discover          # анализ истории Claude Code — где можно было сэкономить
rtk --version         # проверка версии

Требования

  • rtk >= 0.23.0
  • jq — для парсинга JSON в хуке (обычно уже есть на macOS)
  • Перезапуск Claude Code после настройки settings.json

Итог

Настройка занимает пару минут: brew install rtk, rtk init --global, одна правка в settings.json. Взамен — ощутимая экономия контекстного окна без каких-либо компромиссов в работе.

Репозиторий: github.com/rtk-ai/rtk

Dmitrij Tamarov
Dmitrij Tamarov

AI architect