An open-source Claude Code plugin that replaces the built-in file tools with compression-aware, genome-aware, budget-aware alternatives — and keeps an honest accounting of every token it saves you.
Scripted animation. The numbers are real — see the benchmark.
Every Read returns the whole file. Every Grep returns every match. Every Edit ships the full before-and-after. The agent does what you asked — pays the tax one line-item at a time.
Running a long session on a mid-sized codebase, a Claude Code Max user pushes past 400K tokens per context window in under an hour of real work. Most of that is file contents the model has already seen, tool results no one will ever re-read, and prompt scaffolding re-sent on every turn.
Commercial plugins like WOZCODE ($20/week) fix this with proprietary MCP tools. ashlr does it in the open, using the token-efficiency library that already powers the ashlrcode CLI.
Same mechanism. Open source. Free.
ashlr's MCP server exposes drop-in replacements for the file primitives Claude Code hits thousands of times per session. Each one composes primitives from @ashlr/core-efficiency — the shared library that also powers Mason's standalone ashlrcode CLI.
Reads a file, then runs snipCompact on tool-results larger than 2KB. Keeps head + tail; elides the middle. The agent almost never needs the middle.
// servers/efficiency-server.ts const compact = snipCompact(msgs); const out = compact[0] .content[0].content; await recordSaving( raw.length, out.length );
If the project has a .ashlrcode/genome/, returns the top-scoring sections via TF-IDF or Ollama semantic search. Falls back to ripgrep otherwise — still slimmer than Grep's default.
if (genomeExists(cwd)) { const s = await retrieveSectionsV2( cwd, pattern, 4000 ); return formatGenomeForPrompt(s); }
Sends a diff summary instead of full before-and-after contents. The agent already has the file in context — no need to ship it twice.
const summary = `[edit] ${path} - removed (${tokS} tok): ${...} + added (${tokR} tok): ${...}`; return summary;
Run against the sibling @ashlr/core-efficiency repo on April 15, 2026. Every row is reproducible — commands below. Raw data: benchmarks.json.
| File · size | Raw tokens | ashlr tokens | Saved |
|---|---|---|---|
| src/compression/priority.ts · 0.5 KB | 137 | 137 | 0.0% |
| src/tokens/index.ts · 1.5 KB | 379 | 379 | 0.0% |
| src/compression/context.ts · 5.9 KB | 1,517 | 406 | −73.2% |
| src/genome/manifest.ts · 7.0 KB | 1,807 | 406 | −77.5% |
| src/genome/retriever.ts · 7.8 KB | 2,001 | 406 | −79.7% |
| src/genome/generations.ts · 11.2 KB | 2,878 | 406 | −85.9% |
Files under 2 KB see 0% savings — snipCompact only fires on tool-results over 2,000 chars. That's by design: there's nothing to trim on a small file. The story is: mean −79.5% across files ≥ 2 KB. Agents read big files; big files see big savings.
Reproduce: bun run servers/bench.ts --dir <your-repo>/src
WOZCODE pioneered the Claude-Code-plugin-as-token-efficiency-layer pattern. ashlr rebuilds it in the open, using the token-efficiency library that already ships in the ashlrcode CLI.
| Built-in Claude Code | WOZCODE | ashlr | |
|---|---|---|---|
| License | Anthropic proprietary | Proprietary (Woz, Inc.) | MIT · open source |
| Price | — | $20 / week | Free |
| Account required | No | Woz account, OAuth login | None |
| Token-efficient Read | snipCompact | ||
| Genome-aware Grep | Proprietary RAG | TF-IDF + optional Ollama | |
| Diff-format Edit | |||
| Savings tracker | /woz-savings | /ashlr-savings | |
| Tri-agent delegation | code/explore/plan | code/explore/plan | |
| Auditable source | Installer only; tools compiled | Every line, in the repo | |
| Shared efficiency library | @ashlr/core-efficiency |
ashlr isn't trying to be better than WOZCODE on every axis. It's trying to exist, honestly, for the developers who want the mechanism without the subscription.
The efficiency tech isn't locked inside the plugin. It lives in @ashlr/core-efficiency — a separate package consumed by both the Claude Code plugin and the standalone ashlrcode CLI. Evolution happens in one place.
Multi-provider AI
coding agent CLI
Token-efficiency library
Claude Code plugin
MCP server + agents
Prerequisites: bun ≥ 1.3 and Claude Code. Nothing else. No account, no login, no API key.
Easiest. Pre-clones the plugin + runs bun install for you.
curl -fsSL plugin.ashlr.ai/install.sh | bash
Then inside Claude Code, run /plugin marketplace add masonwyatt23/ashlr-plugin and /plugin install ashlr@ashlr-marketplace. Restart.
Paste this into any Claude Code session. It runs all the steps for you.
Install the ashlr-plugin for me: # 1. Run in a terminal curl -fsSL plugin.ashlr.ai/install.sh | bash # 2. Then inside this session, run these two slash commands: /plugin marketplace add masonwyatt23/ashlr-plugin /plugin install ashlr@ashlr-marketplace # 3. Restart this Claude Code session, then verify: /ashlr-status
Claude Code will execute the shell, then the slash commands, then tell you to restart.
Look for ashlr:code on the right side of the input. Or ask:
/ashlr-status # plugin + MCP server health /ashlr-savings # running token-saving total /ashlr-benchmark # benchmark this project's file sizes
Zero telemetry. Everything runs locally. Dependencies auto-install on first session via the SessionStart hook, so you can skip the manual bun install step entirely.