ToolRecall's context tracker tells your agent which files to drop after every turn.
Your agent sends 46% fewer prompt tokens — and survives workloads
naive sessions can't finish.
N=1 seed per workload. These are not multi-seed averages. Custom scripted workloads on ToolRecall's own codebase — not SWE-bench. Full methodology →
$ pipx install toolrecall
Zero deps, pure stdlib
$ toolrecall setup && toolrecall status
Daemon starts, caches begin immediately
Every LLM agent session accumulates context turn by turn — every file read, every command output stays forever. Eventually you hit the context limit and the session dies. All progress lost.
Full conversation history re-sent every turn. Hits the model's context cap and dies — typically within a few hundred turns on DeepSeek V4 Flash.
Clean file content is dropped each turn. Only instructions and responses accumulate. Survives workloads naive sessions can't finish — benchmarked at 450+ turns with 35% headroom.
ToolRecall intercepts file reads via a shared daemon. Every read is cached. Every write is tracked. Your agent can drop clean files from context.
Measured on DeepSeek V4 Flash at the model's true 1,048,576 context limit. On read-heavy workloads, naive sessions hit the cap at ~112 turns while ToolRecall completes all 200 turns at 142K context. On analysis workloads, TR completes 400 turns vs naive's 145. The same pattern across all workloads: ToolRecall keeps sessions alive longer. Full benchmark →
No dependencies. Just Python 3.11+.
$ pipx install toolrecall
$ toolrecall setup
$ toolrecall status
Works with Hermes Agent, Claude Code, Cursor, Cline, opencode — any MCP-capable agent. Adapter docs →
Clone the repo and reproduce the benchmark in one command.
GitHub →
git clone https://github.com/whiskybeer/toolrecall && cd toolrecall