courses/massive-codebase/repomix-graphify
● videoWhat Millions of Lines of Code Mean

Repomix and Graphify

Free for everyone
This video is free for everyone

Watch the whole thing, no account needed. If it clicks, grab Working with a Massive Codebase for lifetime access to every lesson.

Buy the course$79
SECTION
What Millions of Lines of Code Mean
NEXT UP
The Codemap Skill
COURSE
Working with a Massive Codebase
11 lessons
About this lesson

Time to map the repo, and the rule still holds: I am not opening directories.

There are two popular tools for this and I try both.

Repomix, from the CodeRabbit folks, crawls your project and emits one "AI friendly" file. I have used it before and liked it. So I run it here. It is fast. 16,446 files. Then I open the output.

Five million lines. 200MB of XML.

I take it to Claude anyway, with a fresh context, and ask straight out: can you use this?

  • 50 to 60 million tokens.
  • My context window is one million.
  • No. Not even a single meaningful chunk without blowing the window.
  • Grepping it works, but grepping it is strictly worse than grepping the actual repo.

Repomix is the wrong tool for this repo. Not a bad tool. The wrong one. Its whole model is dump everything and let the model sort it out, and at this scale there is no model that can sort it out.

Graphify is the other option, and it is the number three repo of the day on GitHub, so people are talking about it. It extracts structure rather than dumping content: breadth-first and depth-first traversal, an HTML report, a graph.json of relationships between files. You read the traversal result, not the codebase. It even marks ambiguous edges so you know what the AST could not resolve. That is a genuinely better idea.

Except its own guard trips at 500 files. VS Code is just past what it can take, and it will stop and make you pick a subfolder.

So both are out, and I delete the Repomix output.

But the failure taught me the real question. Do I need to know what is where everywhere, or only for the part I want to change? I like the editing experience. I am not rewriting it. What I want is the file explorer, the shell, some diff functionality, and room for the visual ideas I have.

I do not need a map of VS Code. I need a map of my problem.

So next: a CLAUDE.md with rules about being terse, and a targeted map. Which means I have to tell Claude what I am actually up to.