What gets optimized
Exactly what tokenolo removes from your prompt, and what it forwards untouched.
tokenolo sits between you and your coding agent as a local middleware layer. Before a request reaches the model, it makes one small, deterministic edit to your own messages and forwards everything else verbatim. It is not a new model and not a new workflow.
The rule is deliberately narrow: remove redundant filler from your own text, and touch nothing else.
What gets removed
Only filler at the edges of your user messages — throwaway phrasing that
carries no instruction:
- Leading politeness ("please", "could you", "kindly", …)
- Trailing pleasantries ("thanks", "thank you", …)
The edit is removal-only: it deletes whole words, so the text that leaves is always a subsequence of what you wrote. There is no paraphrase, no summarization, and no reordering. A message that is all instruction and no filler is sent unchanged.
What is forwarded untouched
Everything else crosses to the model exactly as your agent assembled it:
- Your system prompt and tools
- Tool results and tool calls
- Assistant turns and prior history
- Files, images, and documents
What it does not do
tokenolo does not prune context, drop "dead" files, trim tool output, deduplicate turns, condense history into a digest, or restructure your payload. Doing those well would mean reading and rewriting your whole codebase — exactly the access tokenolo is built to avoid.
Because the edit is byte-stable, your provider's prompt cache stays valid across turns. And because tokenolo runs locally and only removes filler, your files and tool output never leave your machine for it to read.
See Tokens & savings for how this shows up on your bill, and Security & privacy for what does and doesn't leave your machine.