Your agent writes the code. You review the architecture.
Review AI-generated pull requests on a map of your codebase.
For dev teams that ship code written by AI agents: doc0 splits each pull request into a few changes, shows where each one sits in your codebase, and what still calls it.
30 minutes. Bring a pull request.
A real pull request Codex wrote on Hono's code: 451 lines in 27 files. Its lines land on a map of the whole repository, 2,260 functions and types in 125 areas, and light up as 2 changes. Change 1, Add and use shared Authorization header parser: 27 callers and 25 files depend on it. Change 2, Replace createNullObject with nullRecord in routers, removes createNullObject and adds nullRecord: 10 callers and 24 files depend on it. Then the real doc0 page for change 2, which one check on the pull request opens. Review the architecture, not the diff.
- Claude Code
- Codex
- Cursor
- or your team
AI-generated pull requests are too big to read line by line.
Your agent is done. Now 451 lines in 27 files wait for your review, and nothing says where to start.
- The diff
- 451 lines
- in 27 files.
- The map
- 2 changes
- in 15 areas of your code.
- Look here first
- 27 callers
- and 25 files depend on one change.
And it is not just this one. Across 22,000 developers, as their teams used more AI:
+51%
bigger pull requests
5×
longer in review
+31%
pull requests merged with no review at all
Source: Faros AI, AI Engineering Report 2026.
You can’t read every line. You can see where each change lands.
Connect your repository. doc0 maps all of it.
Functions and types become dots, grouped into areas by what calls what: 2,260 of them for aflsolutions/hono. Before you read a line of a pull request, you know where it lands.
Open a pull request. It lights up on the map.
As you push, what your agent added, changed and removed lights up in place, next to the code that calls it. You see the shape of the change, so the architecture stays yours.
- Added
- Changed
- Removed
- What calls it
Read it as a few changes, in order.
Each change in plain words, opened from one check on the pull request, with no bot comments. doc0 calls this view a lens. A change comes before the ones that depend on it.


See what still depends on the code your agent touched.
Each change comes with the answers you would otherwise go and search for.
Removed, but still called
With the file and line of the call.
How far it reaches
Callers up to three calls away.
Flows it runs in
The paths through your code that pass it.
Docs that may need updating
doc0 pages written from its files.
Pull requests it collides with
Open ones changing the same files.
aflsolutions/hono #1
Add and use shared Authorization header parser
- Reaches 27 symbols in 25 files
- Runs in BasicAuth -> DecodeBase64, BearerAuth -> ConstantTimeEqualString and 13 more
- Docs that may need updating: Basic and Bearer Auth, Cryptographic and JWT Internals, JWT and JWK Authentication, CORS and CSRF Protection, Cookie Management and 37 more
The map only draws calls it can prove: 99.9% precision on Next.js.
A call is drawn only when doc0 can show where it goes. A guess stays off the map.
Calls checked against the TypeScript compiler
99.9%
of the 8,786 calls doc0 drew in Next.js that the compiler could check, the compiler drew too.
vercel/next.js at eeab6f4 (packages/next/src), measured 2026-10-12.
- Time to draw a lens
- 37 s
- the median over 339 lenses in production.
- Bot comments
- 0
- One check on the pull request opens the lens.
Bring a pull request. We’ll read it with you.
Pick a time: 30 minutes to connect a repository and read one of your pull requests with us.
Calendar not showing? Book a 30-minute call (opens in a new tab)