Graphify + Kiro
A code knowledge graph for Kiro
Kiro is good at writing code and following instructions. What it can't do on its own is understand how a large codebase fits together — so it greps, pastes whole files into context, and guesses at the connections between them. Graphify gives Kiro a different way to work: a knowledge graph of your repository that it can query for the exact entities and relationships it needs, instead of reading files and inferring the rest.
What Graphify adds to Kiro
Graphify maps your codebase into an on-device graph of nodes (functions, classes, modules, config, schemas, docs) and typed edges (calls, imports, defines, references). When Kiro needs to know how something works, it asks the graph and gets back connected structure — a path it can follow — rather than a pile of text it has to skim. That means fewer tokens per question, answers that survive more than one or two hops, and a real basis for reasoning about change. See why a graph beats similarity search for the longer argument.
How it connects
Two commands, and Kiro is wired up:
uv tool install graphifyy— installs the MIT-licensed Python package on your machine.graphify install— registers the/graphifyskill and an MCP server with your assistant, so Kiro can query the graph directly.
Graphify speaks the Model Context Protocol, so any MCP-capable assistant talks to the same server and the same eight graph tools — the setup is the same general shape whether you drive it from Kiro or from another tool. Full details, including how to point Kiro at the server, are in the docs.
What you can ask
Once the graph is built, you can ask Kiroquestions it previously couldn't answer without reading half the repo:
- "What calls
chargeCustomer, and what would break if I change its signature?" - "Trace the path from the checkout endpoint to the database table it writes."
- "Which modules read the
STRIPE_KEYconfig value?" - "Explain how the auth subsystem hangs together before I touch it."
The same questions are answerable from the CLI (graphify query, path, explain, prs) or the Python package, so whatever Kiro can reach, you can reach by hand too.
Why you can trust the answers
Every edge Graphify hands Kiro carries a confidence tag, so the assistant — and you — know how a relationship was established:
- EXTRACTED— parsed straight from the code's AST with tree-sitter. Deterministic; no model guessed it.
- INFERRED — a model connected non-code material (a doc to the service it describes, say). Usually right, and labeled as a judgment call.
- AMBIGUOUS— there was evidence, but it couldn't be fully resolved (dynamic dispatch, string-built imports). Kept, but flagged.
This is the part a vector store can't offer: a similarity score tells you two chunks look alike, not whether a relationship was found or guessed. The glossary defines the rest of the vocabulary.
On-device by default
Code is parsed locally with tree-sitter — reading your source never requires an API call. Non-code files are read by the model you already use, and nothing is sent to Graphify: there is no telemetry and no account. The graph lives on your machine next to the repo it describes, which is what makes the whole thing free and MIT-licensed.
Other assistants
Graphify installs the same way into Trae, Hermes, and Kimi CLI. See the full list on the integrations page.