Graph-native context for AI coding agents
Map your repo once. Vinemap injects the exact files your agent needs — before the first tool call, with hooks for Claude, Cursor, Codex, and more. 100% on your machine.
100% local — nothing leaves your machine · free for individual developers · no account, no API keys
Install in under a minute.
One global install via PyPI or our GitHub installers, then run on any project. Python 3.9+ is the only requirement.
Install once
Pure Python, zero dependencies — works offline, never breaks on a transitive pin.
# PyPI — pure Python, zero dependencies $ pip install vinemap # or one-line installer from GitHub $ curl -fsSL https://raw.githubusercontent.com/rohit0x62/vinemap/main/installers/install.sh | bash
Run in your project
Run vinemap index . in your project directory to build the graph, then vinemap connect cursor (or claude, gemini, codex) to wire up your AI tool automatically. Or run vinemap quickstart . for a guided wizard.
$ vinemap index . indexed 1,204 files — 8,913 symbols, 3,412 import edges in 1.9s $ vinemap connect cursor wrote .cursor/mcp.json ✓ graph tools live — graph_retrieve · graph_read · graph_neighbors → reload your agent and ask away
Works inside any editor
MCP runs over stdio — no plugin required.
…and any other editor with a terminal — Emacs, Helix, Fleet, you name it.
A dual graph of your project.
Vinemap builds two layers — a structural map of your code and a live memory of your session — and uses both to deliver precise context.
Your project’s DNA
A complete graph of your codebase — every file, function, and class, and how they connect. Built in seconds, updated incrementally.
- Files, functions, classes with line ranges
- Import and call edges across files
- Tree-sitter (optional) or regex parsers for 12 languages
- Monorepo cluster awareness (package.json, go.mod, pyproject)
The intelligence layer
Compresses graph results into a compact structured summary — not raw file dumps. Your agent gets more understanding in fewer tokens.
- Full signatures with params and returns
- BM25 over symbols + structural expansion
- Optional local embeddings as a fourth signal
- Hard token budgets — the pack always fits
Smarter every turn
Tracks what has been read, edited, and decided. Follow-up questions route straight to previously relevant files.
- Touched files weighted higher next turn
vinemap deciderecords WHY across sessions- Dashboard tracks token savings per session
- Guardrails curb blind grep/read loops
Built for real agent workflows.
Beyond MCP tools — pre-injection hooks, live indexing, guardrails, and a reproducible eval harness. See measured retrieval quality on our benchmarks page.
Context before tool call #1
Agent-specific hooks for Claude Code, Cursor rules, Codex, Gemini, Copilot, and OpenCode — packs land in the prompt before grep or Read.
Tree-sitter + regex fallback
Python AST by default; optional tree-sitter for TS/JS, Go, Rust, Java, C/C++, C#, Ruby, PHP, Kotlin, Swift. Install with pip install vinemap[treesitter].
Graph + BM25 + session boost
Lexical BM25 over symbols, structural expansion along import/call edges, monorepo cluster awareness, and optional local embeddings.
Live graph on save
vinemap watch re-indexes changed files with debounced sub-second updates — no manual rebuilds after every edit.
Fewer blind reads
Per-turn read budgets, duplicate-read dedup, and grep nudges steer agents toward graph_retrieve instead of exploration loops.
Token savings, visible
vinemap dashboard shows touched files, session decisions, and estimated tokens saved. Add --web for a local UI.
Stop paying for blind search.
Without Vinemap
- You ask a question
- Agent calls grep, Bash, Read
- Reads 10–20 files to find context
- More exploration, more tool calls…
- Finally answers your question
Thousands of tokens wasted on exploration, every turn.
With Vinemap
- You ask a question
- The graph packs the correct context instantly
- Agent answers with full context
One pass. Zero exploration overhead. Better answers.
Why a graph beats a dump, a map, or a cloud.
Repo dumps send everything. Embedding RAG guesses by similarity. Cloud engines need your code on their servers. Vinemap routes exact structural context locally.
Repo dump
Token firehose
Ships entire files — most of it irrelevant noise.
Repo map
Static snapshot
Shows structure but no live session recall.
Embedding RAG
Guesswork retrieval
Finds lookalikes, not the actual call chain.
Cloud engine
Off-device
Your codebase indexed on someone else's servers.
Graph + pre-injection
All four dimensions
Structural graph, session memory, and packed context — 100% on your machine.
← Swipe to compare features →
Free for developers. Teams when you scale.
Every feature — unlimited project size, diagnosis, audit, health checks — is free for individual use. We'll introduce paid plans later for org-wide Teams features.
Full engine · no file limits · forever
- Graph-first context + all MCP tools
- Pre-injection hooks for 6 agents
- Crash diagnosis, health checks, audit mode
- Session memory + WHY decisions
vinemap watchlive re-index- Token dashboard + guardrails
- 100% local & private
For engineering orgs · self-hosted or VPC
- Self-hosted Docker graph server
- Cross-repo retrieval across services
- Shared WHY memory with attribution
- OIDC SSO + audit log + seat management
- Priority onboarding & direct support
Built by an engineer who's shipped RAG at scale
Vinemap comes from years of building production AI platforms — not a weekend MCP wrapper.
Rohit Jha
Creator of Vinemap
Engineering Lead · AI Platform & Distributed Systems
Bengaluru, India
Principal backend engineer with 8+ years building cloud-native, high-scale systems — multi-tenant SaaS platforms serving 3M+ users and 60M+ monthly transactions at 99.9% uptime.
In production I've built RAG pipelines, LLM fine-tuning, and conversational AI that moved retrieval accuracy from 65% to 92%. Vinemap applies that same obsession with context quality — but structural, local, and built for coding agents instead of cloud indexes.
B2B SaaS · RAG knowledge bases · LLM fine-tuning · vector search
Job platform · microservices · fraud & ranking systems
Join the Vinemap community
Connect with other developers on GitHub Discussions, share your setup, and get help configuring Vinemap for your codebase.
GitHub DiscussionsGot feedback or ideas?
We read every message. Open a GitHub issue or email us — custom plans, larger codebases, or setup help.
Open an issueFrequently asked questions
Does my code leave my machine?
No. The graph, session memory, and context packs are stored in .vinemap/ inside your project. The MCP server runs locally over stdio — no code, no file names, no project data is ever sent externally.
Is Vinemap free?
Yes — completely free for individual developers. No file limits, no account, no API keys. All features are included: MCP tools, pre-injection hooks, crash diagnosis, health checks, audit mode, session memory, and the token dashboard. Paid Teams plans for orgs are coming later.
Which AI tools does Vinemap work with?
Claude Code, Codex CLI, Cursor, Gemini CLI, GitHub Copilot, OpenCode, and any other MCP-compatible agent. Run vinemap cursor . or vinemap claude . for full setup with pre-injection hooks, or vinemap connect <agent> for MCP-only wiring.
Do I need to run something every session?
No. Run vinemap index . once, then vinemap connect <agent> or vinemap quickstart . — after that your agent talks to the local server automatically. Optional: vinemap watch . keeps the graph fresh on every save.
What happens when my files change?
Content-hash caching means only touched files are re-parsed — updates are sub-second on most projects. For hands-free freshness, run vinemap watch . in a terminal tab; it debounces saves and re-indexes incrementally.
What languages and parsers are supported?
Python uses full AST parsing. TypeScript, JavaScript, Go, Rust, Java, C/C++, C#, Ruby, PHP, Kotlin, and Swift use regex symbol extraction by default, or precise tree-sitter parsing with pip install vinemap[treesitter].
How is ranking different from embedding RAG?
Vinemap ranks with a structural code graph — imports, symbols, and call edges — plus BM25 over identifiers, monorepo cluster awareness, session memory, and optional local embeddings. It finds the actual call chain, not text lookalikes.
How will Teams pricing work?
Teams (coming soon) adds a self-hosted Docker graph server for orgs: cross-repo retrieval, shared WHY memory with attribution, OIDC SSO, audit logs, and seat management. Individual use stays free — Teams is for engineering organizations that need a shared graph in their VPC.
Can I trust the retrieval quality claims?
Yes — we publish reproducible precision@k benchmarks on vinemap.xyz/benchmarks, exported from the open-source eval harness in engine/eval/. CI fails if scores regress. Run python eval/run_eval.py --all locally to verify.
Give your codebase a brain.
One global install, then run on any project. Free for individual developers.
Install Free →