I changed one struct field last week. Added blast_radius_weight: f64 to a shared type in models.rs.
Saved the file. The sidebar turned red.
417 files affected. Three hops deep.
Half the backend. Every integration test. The sync layer, the graph analyzer, the encryption pipeline — all downstream from that one struct.
I hadn't pushed. I hadn't left the editor. But I already knew the blast radius.
Without this, I'd have found out in CI. Twenty minutes later.
What it does
I built CodeLayers — it parses your code with tree-sitter, builds a dependency graph, and shows you exactly what's affected when you change something.
Two ways to use it:
1. VS Code / Cursor extension
Save a file and the blast radius appears instantly:
- Sidebar tree — every affected file, organized by distance. Red = your change. Orange = direct importers. Yellow, green, blue = further out.
-
File explorer badges —
~1,~2,~3on affected files so you see it without opening anything. -
CodeLens — caller counts above functions. Zero callers = safe to change freely. That one annotation replaces
grep -rand the doubt that comes with it. - Editor gutter — colored borders on affected lines with inline annotations showing why each line is in the blast radius.
Filter modes let you narrow it down:
| Filter | Shows | Use when |
|---|---|---|
| All | Imports, calls, type refs | Full picture |
| Functions | Function calls only | Changed a function body |
| Imports | Module dependencies only | Moving or renaming files |
Works across Rust, TypeScript, JavaScript, Python, Java, Go, C++, C#, Ruby, PHP, and Swift.
2. GitHub Action
Drop this into .github/workflows/codelayers.yml and every PR gets an automatic blast radius comment:
- uses: codelayers-ai/codelayers-action@v1
The comment shows an interactive 3D dependency graph of the PR's blast radius — which files are affected by the changes, how far the ripple goes, color-coded by hop distance. Reviewers see the impact before reading a single line of code.
No more "what does this PR actually touch?" questions in review.
How it works
The CLI runs in the background and watches your repo. When a file changes:
- Re-parses the changed file with tree-sitter
- Rebuilds the affected portion of the dependency graph
- Computes PageRank and topological depth
- Streams the blast radius to the extension via NDJSON
The whole cycle takes under a second. Results are cached so they survive editor restarts.
Setup (2 minutes)
Install the CLI:
brew install codelayers-ai/codelayers/codelayers
Or: curl -fsSL https://codelayers.ai/install.sh | bash
Install the extension:
Search "CodeLayers" in VS Code or Cursor, or:
code --install-extension codelayers.codelayers
Open a project and save a file. That's it.
For CI, add the GitHub Action to your workflow and blast radius comments appear on every PR automatically.
What's next
CodeLayers also has native apps for iPhone, iPad, and Apple Vision Pro — your codebase as an interactive 3D dependency graph you can explore spatially. Same engine, same parsing.
You can also paste any public GitHub PR URL into codelayers.ai/explore and get a 3D dependency graph in your browser — no install, no account.
Runs entirely on your machine. No account required for the extension. No data leaves your laptop.
Top comments (0)