Benchmarks
The numbers, and exactly how we got them.
One measured run, published with its method and its caveats. Where a benchmark hasn't been run yet, this page says so instead of showing you a chart.
Corpus: the TLCPD repository itself at commit 455bb84c5c57 (135 files), imported via gan import and served by gan mcp from the imported store. Run 2026-07-08.
A driver speaks MCP over stdio and issues a realistic mix of ten tool calls, recording each response's size. Each call is paired with a counterfactual: the bytes the equivalent read-grep-read workflow ingests, measured from the actual repository. For callers, that means the summed size of every file containing the queried name — which is what "grep, then read the hits" costs. Tokens estimated at 4 characters per token on both sides.
The counterfactuals are deliberately conservative. They exclude wrong-file reads, retries, and re-reads across turns, and they assume the grep workflow finds the right files on the first pass. Real agents don't. TLCPD prevents these lookup errors entirely by resolving structural references directly.
| AGENT CONTEXT QUERY | Response tokens | Counterfactual tokens | Saving |
|---|---|---|---|
| API Outline Generation | 1,738 | 4,814 — read the file | 2.8× |
| Retrieve Single Function Body | 889 | 4,705 — read its file | 5.3× |
| Cross-Reference Mapping Callers | 141 | 14,820 — grep + read 8 hit files | 105× |
| Transitive Change Impact Scope | 2,012 | 15,210 — grep + read hit files | 7.6× |
| Ranked Multi-File Intelligence Search | 406 | ~5,700 — grep + read candidates | 14× |
| Type-Safe Structural Pattern Match | 2,012 | ~22,200 — grep + read to filter false positives | 11× |
| Dynamic Context Bundle Packaging | 2,012 | 26,420 — read top 6 relevant files | 13× |
| Compute Workspace Diff | 14 | ~2,000 — read the text diff | 143× |
| Trace Attribution | 74 | ~5,000 — read log -p of the file | 68× |
| Semantic Query Logs Filter | 283 | ~1,500 — read full log output | 5.3× |
| Total | 9,581 | 102,410 | 10.7× |
EFFICACY
Real-world savings sit above these figures.
Counterfactuals exclude retries and wrong-file reads; deterministic tool output turns repeat queries into prompt-cache hits; and context_pack replaces multiple LLM retries from your coding agent during exploration with a single call.
~90% of context-acquisition tokens disappear.
A session that spends 100k tokens rediscovering the repository needs about 10k through the tool surface.
Graph queries are the outliers.
callers at 105× and mappings_diff at 143×: the response is a list of names where the counterfactual is many whole files. These are also the queries agents repeat most.
outline tool’s is the floor.
Measured on a file that is mostly API surface; body-heavy files fare far better. That’s just one tool too.
The multiplier grows with repo size.
Responses are roughly constant-size; counterfactual file reads grow with the codebase. The benchmark corpus is small (135 files) — large repos sit well above 10.7×.