Narrate turns your codebase into a map you can navigate - and one your agents can draw on.
A live map of one Python payments service. It responds as you scroll.
01 · entrypoints
Quickly see which flows call into a method, and which don't. Find-references stops one hop up: StripeService.charge is called by two private_process_payment helpers. Entrypoints keeps climbing, past the helpers and the wrappers, to the top-level flows where control actually enters your app.
Five flows reach Stripe. Three converge throughUserPaymentService.complete_payment, two throughAgentPaymentService.complete_payment
02 · proposed changes
Specs and PRs visualized, not as a wall of text, so you stay aligned throughout the process. Agents draw on the same canvas, giving you the confidence to move fast while staying in the loop.
The agent thought it was easier to duplicate a new flow into StripeService. You wanted to reuse UserPaymentService, even if it requires a small internal change.
03 · explore
Get a handle on that 3,000-line controller; see where it starts, ends, and everything around it.
The star marks where outside code enters the class. That's where you start reading.
Explore opens UserPaymentService around complete_payment: the flows that call in, the helpers it runs through, and every service it reaches past the class boundary.
04 · the index
Your code, indexed with LSPs - no hallucinations or fluff. Every node is a real symbol and every edge a real call, resolved the way your editor resolves go-to-definition.
Save and share with your team, knowing that diagrams stay true as your code changes. When a commit lands, the map follows it.
faq
Python today, with TypeScript coming soon. If your repo is neither, please join the waitlist to let us know what to integrate next!
Narrate deterministically indexes your code using LSPs, without LLM involvement. Your agents can use Narrate as a shared canvas for you to collaborate on.
Neither. It’s where you go to understand something; the approving still happens where it happens today.
early access