05 · Developer tools
Brahm-Kosh
A static-analysis engine and 3D map that shows what breaks if you change a file. No LLM calls.
See it


The problem
You open an unfamiliar codebase. Where do you start, and what breaks if you change this file? A folder tree answers neither.
Numbers, with dates
- 61tests passing (58 at first check, 3 added with the ignore-file fix)pytest, 28 Oct 2026
- 13language adapters; only Python is parsed with a real syntax tree`brahm-kosh list-adapters`, 28 Oct 2026
- One weekstart to finish, 35 commits, all minegit history, 20 to 27 Apr 2026
How it works
- 01 · analyse
Parse without running
Each adapter reads its language and emits the same model. Python uses the real AST; the other twelve use curated patterns.
- 02 · connect
Resolve the imports
Cross-file imports become a dependency graph, which is what makes impact analysis possible.
- 03 · judge
Flag the hotspots
Complexity, dead files, mixed concerns and split candidates are computed from the graph, not guessed.
- 04 · explore
Fly around it
Search a file, see its blast radius, read its symbols and code, all in one panel.
What I built
- A universal model (project, module, file, symbol) filled by 13 language adapters, with a complexity score per symbol and per file.
- A real import graph, so it can answer both directions: which files break if you change this one, and what this one relies on, several hops out.
- Flags for monolithic files, files nothing imports, files that mix many concerns, and files that look ready to split.
- A local server that draws it as a 3D map, repaints live when files change, and only binds to 127.0.0.1.