Markdown version of https://extraheadroom.com/rtk-alternatives

# RTK alternatives: what to use instead

[RTK](https://github.com/rtk-ai/rtk) rewrites the shell commands your coding agent runs so their output comes back shorter. It only touches shell output: file reads, search results, MCP tool results and the conversation history reach the model as they were. These alternatives cover the same ground, or all of it. We make Headroom, the first entry, so weigh it accordingly.

## Quick answer

To cut more than shell output, use a compressor that sees every tool result: Headroom (a desktop app, or the free CLI) or Caveman's proxy. To stay with a hook-based setup like RTK's, lean-ctx and Chisle compress command output through hooks, and context-mode keeps large output out of the context entirely. Remove RTK first, so two tools are not trimming the same output.

## What you would be replacing

RTK installs a hook that rewrites commands such as `git status` into `rtk` equivalents, which print a compact summary. It supports Claude Code, Codex, Cursor, Gemini CLI and 14 more agents. The CLI is Apache-2.0; its engine and proxy are under BUSL-1.1, which allows free production use. Maker's claim: 60 to 90% smaller output on common dev commands, estimated from bytes rather than counted tokens. An alternative has to match that on shell output, or cut more of the context around it.

## The alternatives

### 1. Headroom: compress everything, not only shell output

[Headroom](/) routes Claude Code and ChatGPT Codex through a local proxy, so it sees the whole request rather than one command's output. It compresses tool output of every kind, logs and history by content type, and keeps the originals retrievable so the model can ask for detail back. No command changes, so it works the same whatever your agent runs. The Extra Headroom app sets itself up and updates itself, paid after a 7-day trial; the engine is the free, Apache-2.0 [Headroom CLI](/headroom-desktop-vs-cli). Across 183 Claude Code users in one week, it removed 34% of input tokens ([our production data](/blog/claude-code-savings-real-usage)).

### 2. Caveman: a proxy plus terse replies

[Caveman](https://github.com/JuliusBrussee/caveman) 4.0 runs a local proxy that shrinks logs, JSON, YAML and test output and keeps the originals on disk, plus a skill that makes the agent reply in fewer words. It is free, Apache-2.0, and covers Claude Code, Codex, Gemini CLI, OpenCode and more. Install it with `npx @caveman-ai/cli@latest`. See [Headroom vs Caveman](/headroom-vs-caveman).

### 3. lean-ctx: the closest hook-based match

[lean-ctx](https://github.com/yvgude/lean-ctx) compresses command output through shell hooks, as RTK does, and adds cached file reads over MCP and an optional proxy. It is a Rust binary with an Apache-2.0 engine and paid Pro and Team plans. Install it with `curl -fsSL https://leanctx.com/install.sh | sh`, then `lean-ctx wrap claude`. Its README says results range from a clear win to break-even.

### 4. Chisle: trims tool output after it runs

[Chisle](https://github.com/JayPokale/Chisle) uses a hook that runs after each tool call and trims oversized output before it enters the context, whatever the command was. It also ships a ruleset for shorter replies and leaner code. It is free and MIT-licensed, and `npx chisle` sets it up for Claude Code, Codex, Cursor, OpenCode and other detected agents. Maker's claim: about 46% off oversized tool output, across 171 sessions. Headroom ships it as a one-click add-on.

### 5. context-mode: keep large output out of the window

[context-mode](https://github.com/mksglu/context-mode) runs large tool output in a local sandbox, indexes it, and gives the agent only what it asks for. It covers command output and file reads, through hooks, in Claude Code, Codex, Gemini CLI, OpenCode and more. The plugin is free and source-available under the Elastic License 2.0.

### 6. Tokenade: a local binary between agent and model

[Tokenade](https://github.com/pi-infected/tokenade) folds command output, skips repeated file reads and compacts stale context. It is free and Apache-2.0. Install it with `npm install -g @tokenade/cli && tokenade install`.

### 7. Quieter commands: free, and manual

Most of RTK's savings come from commands that print far more than the agent needs. You can get part of that for nothing: ask for quiet flags in your `CLAUDE.md` (`-q` on `pytest`, `--oneline` on `git log`), or write a Claude Code hook that trims a command's output before Claude sees it. It works only for the commands you think of.

## At a glance

| Alternative | What it cuts | Price |
| --- | --- | --- |
| Headroom | All tool output, logs and history | App: paid, 7-day free trial. CLI: free |
| Caveman | Tool output and reply length | Free |
| lean-ctx | Command output and file reads | Free, Pro $9 a month |
| Chisle | Oversized tool output and reply length | Free |
| context-mode | Large tool output and file reads | Free plugin |
| Tokenade | Command output, re-reads, stale context | Free |
| Quieter commands | The commands you configure | Free |

## Switching? How to uninstall RTK

Remove RTK before you install an alternative, so only one tool trims your command output. These steps are from RTK's own [installation guide](https://www.rtk-ai.app/docs/getting-started/installation/), which stays the source of truth:

- **Remove the hook:** run `rtk init -g --uninstall`. It removes the hook, `RTK.md` and the entry in Claude Code's `settings.json`.
- **Remove the binary:** run `brew uninstall rtk`, `cargo uninstall rtk` or `winget uninstall rtk-ai.rtk`, matching how you installed it.

The guide has no uninstall step for the Codex hook or for the install-script binary in `~/.local/bin`. Check your Codex config and delete that file by hand if you used either.

## How we checked

Licenses, prices, install commands and supported agents come from each project's own repository or site, checked on November 5, 2026. Savings figures are each maker's own and are measured differently, so they do not compare with each other. Run a task you already do with each candidate and compare your own numbers.
