Lightweight AST-based codebase indexer for AI coding assistants. Generates a
relationships.json that Claude Code / Cursor / etc. can reference instead of exploring the entire codebase.
paragraph.com/@metaend
ai
llm
eco
ast
golang
1# Project Context
2
3## Codebase Index
4
5**Before exploring unfamiliar parts of the codebase, consult `.context/relationships.json`**
6
7This file contains:
8- **files**: Per-file breakdown of imports, exports, and defined symbols
9- **symbols**: Global symbol-to-location index (find any function/var instantly)
10- **dependencyGraph**: Which files depend on which
11
12### Usage patterns:
13
141. **Finding where something is defined:**
15 ```
16 Look up "MyComponent" in symbols → gives you file + line number
17 ```
18
192. **Understanding a file's dependencies:**
20 ```
21 Check files["src/views/main.cljs"].imports → see what it pulls in
22 ```
23
243. **Impact analysis (what breaks if I change X):**
25 ```
26 Search dependencyGraph for files that import the target file
27 ```
28
29### Regenerating the index
30
31```bash
32# Manual
33go run tools/indexer/main.go -root . -out .context/relationships.json
34
35# Or it runs automatically on commit (see .git/hooks/post-commit)
36```
37
38## Tech Stack
39
40- **Frontend**: Vite + ClojureScript (shadow-cljs)
41- **Languages indexed**: .cljs, .clj, .cljc, .js, .ts, .jsx, .tsx