Capability · Code graph
Your Codebase as a Graph,
Down to the Function
Code Swan maps every function in your codebase and who calls what. Your team sees the impact of a change before making it, and your AI assistant answers from your actual code instead of guessing. Reliable facts, at the level where the work actually happens.
Built to be trusted
A graph your team will bet a refactor on has to be honest about what it knows. These are the rules it is built under.
- Facts read from your code, not AI guesses, so your team can bet a refactor on them
- Your source text is never stored
- Every answer says which version of the code it describes
- What is certain and what is only probable are always told apart
- A "no" you can trust as much as a "yes": nothing is ever dressed up as more certain than it is
- Works across TypeScript, JavaScript, Go, Java, C#, PHP, Python, Ruby, and Rust
What it changes for your team
The expensive part of changing software is not writing the new code. It is knowing what the change touches. The code graph makes that a lookup.
Blast Radius Before You Touch Anything
Before a refactor, know every caller of the function you are about to change. Changes stop surprising the review, breaking changes stop surprising production, and "is anything still using this?" becomes a question with an answer instead of a guess.
AI Answers You Can Act On
Ask your assistant where something is defined, who calls it, or what a change would break, and the answer comes from your actual code rather than from text that merely looks similar. That is the difference between "probably here" and "here", and between an assistant you double-check and one you trust.
A Code Map Humans Can Read
Each component's page shows a living map of its code: what lives where, how the pieces connect, and how busy each connection is. Open any part and descend to the details. A new engineer sees the shape of a service in minutes, not weeks.
Honest About Dead Code and Unknowns
A function nothing calls is a cleanup candidate backed by evidence, not a hunch. And because the graph is honest about what it knows for sure and what it does not, you can trust a "no" as much as a "yes". Most tools only give you the "yes".
The catalog knows the business. The graph knows the code. Together they answer both.
The living software catalog already maps your system's business layer: services, APIs, events, cloud resources, domains, groups, and ownership, across every repository in your organisation. The code graph maps the function layer inside each one. Neither view is new on its own; having both, linked, is. A question can start at the business and end at the code, or start at one line of code and end at the customers it affects. That is how one plus one becomes more than two:
Which business flows does this function sit on?
The catalog knows your features and flows; the graph knows which functions a flow actually runs through. Together, a change to one function maps to the business capabilities it touches.
If we change this endpoint, who breaks?
The catalog knows every consumer of an API or event, including ones in repositories nobody has checked out. The graph takes it the last mile, all the way to the exact place in their code that breaks.
What does this team actually own?
The catalog groups components into domains, products, and teams. The graph fills each group with its real structure, so "the payments domain" resolves all the way from an org chart concept down to the code itself.
Frequently Asked Questions
Are the answers AI guesses?
No. The graph is read directly from your code, so its answers are facts your team can act on. Your source text is never stored, and no AI model is involved in building it.
How is this different from code search?
Search finds text that looks similar; the graph knows what actually refers to what. "Who calls this function?" returns the real callers, not every file where the name happens to appear, and anything less than certain is clearly marked as such.
How is this different from the living catalog, and why have both?
The catalog knows the business layer: services, APIs, events, domains, ownership, and features. The code graph knows the function layer inside each repository. Each is useful alone. Linked together, they answer questions neither can answer by itself, like which business flows and which consuming teams a change to one function would touch.
Which languages are covered?
TypeScript, JavaScript, Go, Java, C#, PHP, Python, Ruby, and Rust, validated against real-world codebases.
How current is the graph?
It refreshes with every scan, and every answer says which version of the code it describes, so you always know exactly what you are reasoning about.
Is it available self-hosted?
Yes, in both the cloud and self-hosted deployments. It is on by default, never slows your scans down, and an administrator can switch it off.
Give your AI the whole graph
From business domains down to single functions: one connected model of your system, available to every MCP-compatible AI tool your team already uses.