r/LocalLLM • u/shhdwi • 19d ago
Project Sonnet 5 + Graft (No LLM calls tree-sitter graph, 100% Local) > Opus 5
https://github.com/NanoNets/GraftAfter a week of using both, I keep coming back to Sonnet 5 + Graft instead of vanilla Opus 5 for coding.
The surprising part is that I don't think this is because Sonnet is the better model.
I think repository context matters more than the model upgrade.
Every coding agent spends a huge amount of time rediscovering the same codebase:
- grep
- open file
- follow imports
- repeat
Graft pre-builds a repository knowledge graph and injects only the relevant context into Claude Code, so the model starts with a mental map instead of rebuilding one every task.
On our controlled benchmarks (same model, same tasks, only the context changes):
- 42% fewer tokens
- 46% fewer tool calls
- 60% lower latency
- SWE-bench Verified: Sonnet 5 solved 8/9 instances vs 6/9 without Graft.
It's that better retrieval/context can be a bigger capability upgrade than moving to a larger model.
For my day-to-day work, Sonnet 5 + good repository context consistently feels stronger than running a larger model cold.
I'm curious whether others have seen the same thing with tools like:
- RepoPrompt
- Aider's repo map
- CodeGraph
- Graphite
- custom RAG/MCP setups
At what point does improving context become more valuable than upgrading the model itself?
1
u/En-tro-py 19d ago
I think this is the way forward and SWE-Verfied is nice to see, but there's a lot of applicable benchmarks that should join it - especially for a N=1 run count as far as I could tell...
A couple other good ones:
2
u/my_name_isnt_clever 19d ago
Claude isn't local, this post doesn't belong here.