---
title: "Graft local code graph and context map for coding agents | Swipe"
description: "Graft builds a local symbol and call graph so coding agents can orient themselves, find relevant code, and inspect blast radius with less repository exploration."
canonical: "https://swipe.md/tools/graft"
language: "en"
---

Code context · Checked 12 August 2026

# Graft: Map a codebase before the agent starts wandering

Build a structural code graph your coding agent can query locally.

Graft builds a local symbol and call graph so coding agents can orient themselves, find relevant code, and inspect blast radius with less repository exploration.

Type

cli

Works on

Node.js, Terminal, MCP, Coding agents

[Open Graft ↗︎](https://github.com/NanoNets/Graft)

## Build the map before asking the question

Graft parses a repository into a symbol and call graph that coding agents can query. Its local commands can show a repository map, signatures, callers, references, and ranked files for a question. The graph is stored as files in the project instead of a hosted vector database.

The structural path uses tree-sitter and needs no model or API key. An optional deep build sends code through a model provider you configure to add summaries and concept nodes. This lets you choose between a local code map and a richer, model-generated layer.

We ran the published 0.9.1 package against a disposable copy of Swipe. It parsed 230 files into 2,522 symbols and 4,505 connections. `graft map` separated the site, newsletter, and operator packages clearly. A natural-language architecture query returned relevant code, although an unrelated tool-index result ranked first, so the ranking still needs human inspection.

## Start with build and map

Use `graft build` and `graft map` before connecting it to an agent. Ask a question whose answer you already know and verify the cited files. That checks whether its parser understands the languages and monorepo shape that matter to you.

Treat `graft init` as a separate installation decision. It can write agent instructions, MCP configuration, hooks, and user-level Codex files. The command has a dry-run mode, but open issues currently document an unanchored ignore rule that can hide more than intended and defects in generated configuration. We did not run it during the Swipe test.

## Privacy and limitations

The structural build and queries run locally with no telemetry. Deep builds send selected source to the model endpoint configured by the user. Generated graph files can contain code summaries and excerpts, so review them before committing them to a public repository.

Graft is a young project with no tagged GitHub release at the time of review. Its map can reduce blind exploration, but it is not a correctness oracle. Query ranking can surface irrelevant results, parsers can miss dynamic relationships, and generated explanations can go stale or be wrong. Keep source inspection and tests in the loop.

## Featured in Swipe

-   [Search the work your AI agents already did](https://swipe.md/issues/search-your-agent-history)

## Sources

-   [Graft source and documentation](https://github.com/NanoNets/Graft)
-   [Graft README](https://github.com/NanoNets/Graft/blob/main/README.md)
-   [Ignore rule can hide a repository-wide graft directory](https://github.com/NanoNets/Graft/issues/79)
-   [Generated agent configuration defects](https://github.com/NanoNets/Graft/issues/80)
-   [Swipe structural graph test](https://github.com/NanoNets/Graft#cli)
