Impact analysis
See the blast radius of a change before it merges.
Available now, public alpha
Impact analysis answers one question: if this entity changes, what else is affected? The diff names the lines you edited. The answer lives in the relationships around them.
The question
The diff shows the edit. Impact analysis shows what depends on it.
A change is safe or risky because of code that does not appear in the diff. Impact analysis makes that surrounding code explicit before the merge decision.
Callers and references
The functions that call the changed entity and the modules that import it, across files.
Contracts and tests
The types, schemas, and tests that constrain the changed entity, whether or not the diff touches them.
Reach beyond the file
The places a change lands that a file-scoped read never opens.
How Kin answers
Ask a standing graph, not a fresh scan.
Kin keeps a persistent graph of entities, relationships, changes, and history in your repository, so the impact question is a graph walk from the changed entity outward.
From the CLI
Run kin impact on a changed entity to walk callers, references, and imports outward from the change, to a depth you choose.
From your agent
The impact_analysis MCP tool serves the same graph walk to Claude Code, Cursor, Codex, Gemini, and other MCP clients.
In review
Advisory review reports carry the affected entities as evidence beside the diff, and the merge decision stays with your team.
Honest limits
An empty answer says whether it can be trusted.
When the graph lacks the edges a conclusion needs, Kin reports the gap instead of concluding safety. Every retrieval answer carries a negative object whose safe_to_conclude_absent field states whether an absence can be trusted, so an empty impact list is never mistaken for proof that nothing is affected. Kin is early alpha software, and it says so when it cannot answer.
Available now, public alpha
Next step
Trace one change today.
Install Kin, initialize a repository you know, and run kin impact on the function you touched last.