Graft
Turbocharge Claude Code, Cursor, Codex, Gemini & every coding agent: faster, cheaper, with contextual understanding specific to your codebase.
Turbocharge Claude Code, Cursor, Codex, Gemini & every coding agent: faster, cheaper, with contextual understanding specific to your codebase.
Up to 4× cheaper and 3× faster, with better or no loss of correctness.
| Metric | Cold Claude Code | Claude Code with graft |
|---|---|---|
| Tool-call reduction | Baseline | +46% |
| Token savings | Baseline | +42% |
| Time savings | Baseline | +60% |
| Correctness | 54% | 66% (+12 pts) |
Efficiency is a 162-run controlled benchmark (same agent, same file tools, only the context differs). Correctness is SWE-bench Verified, graded by the official harness — graft resolved 66% of instances tested against Cold Claude Code's 54%. Efficiency method ↓ · SWE-bench ↓ · Per-repo numbers ↓
Contents
- Quick start
- The problem
- What Graft does
- Benchmark
- SWE-bench Verified
- How the graph gets built
- Supported languages
- What's in a node
- What runs where
- Agent integration — MCP server · Claude Code (deep integration)
- CLI
- Search & orient (
graft grep/graft map) - Monorepos & multi-repo folders
- Visualize it (
graft viz) - Tested on your popular repos
- Development
- License
Quick start
npm install -g @nanonets/graft # install the CLI, once
graft init # build the graph + wire it into Claude Code
That is the whole setup. graft init asks which of your coding agents to wire up, builds graft/ from your code, and drops a statusline and hooks into .claude/, so from the next session on Graft rides along in Claude Code: it pulls the matching nodes into each prompt and rebuilds the graph in the background after every turn. No daemon, no re-indexing to remember, nothing to run or maintain by default — the graph is just files.
Nothing is written until you pick. Run graft init --dry-run to see every file it would touch first, or graft init --agents claude to skip the prompt and wire Claude Code alone.
graft build adds graft/ to your .gitignore automatically — the graph is a local, regenerable cache (like node_modules), not something you commit. What you share is the wiring init dropped into .claude/; each teammate runs graft build to generate their own graph:
git add .claude && git commit -m "wire in graft"
Prefer not to install globally? npx @nanonets/graft init works the same way.
The problem
Every task, your coding agent starts blind. Before it changes anything, it re-explores the repo: grep a term, open a file, follow an import, back out, try again. It is rebuilding a picture of a codebase it mapped an hour ago and threw away. That rediscovery burns most of a run's tool calls, tokens, and latency, and it is pure overhead:
같은 카테고리 다른 리소스
Next.js
React 기반 풀스택 프레임워크. App Router와 서버 컴포넌트(RSC)가 사실상 표준이며, SSR·SSG·ISR을 한 프로젝트 안에서 다룬다.
shadcn/ui
복사·붙여넣기 방식의 React 컴포넌트 모음. npm 의존성이 아닌 코드 소유권 모델이라 커스터마이징이 자유롭다.
Supabase
PostgreSQL 기반 BaaS. Auth · Realtime · Storage · Edge Functions 통합.
Anthropic MCP
Claude가 외부 도구/데이터에 접근하도록 해주는 프로토콜 표준. 생태계의 근간.