Where Good Agents Go to Die
Watch an agent fail five ways in one giant repo: overflow, lost in the middle, post-compaction fiction, blast-radius blindness, edits at the wrong layer. One cause behind all five, and it is never the model.
You have watched the same demos I have. Somebody opens a fresh project, types a sentence, and a working feature falls out. Then you try it on the thing your company actually runs, and the agent confidently edits a file that has not been imported since 2019.
I did this for three years inside the VS Code repository at Microsoft, and I still get it wrong when I am lazy about context. The skill nobody teaches is deciding what the model sees, which is the only part of this you fully control.
“A big repo does not need a smarter agent. It needs a smaller question.”
VS Code is the patient. The procedure is the point, and it transfers to any repository too large to hold in your head, in any language, on any stack.
A million-line repository is roughly 6.8 million tokens. Your context window holds two hundred thousand on a good day, which is under three percent of the codebase. No model release fixes that ratio, because the repositories grow too.
So the agent reads whatever it stumbled into first, runs out of room, compacts, and then explains its plan with total confidence. It is not lying to you. It is answering from a context you never chose.
You end up reviewing a forty-file diff you did not ask for, on a Friday, against a service three other teams depend on.
I spent three years on the VS Code team at Microsoft, so I know what is inside that repository and roughly where the bodies are buried. Cursor and Windsurf cloned the same code, found the seam where the AI plugs in, and turned it into billion dollar companies. The seam is still open.
We clone it too. By the end of Module 5 your own model is answering in the chat panel where Copilot used to be, and nothing along the way is staged: you watch agents fail, you watch me work out why, and every fix gets bottled into something you can run on Monday.
Every module ends with a task you run on your own repository, not on mine. By the last one you are not following along any more, you are running the method against a codebase in a language the course never touched.
You leave with a toolkit, not notes.
Put this in my toolboxEach module is a working session against a real repository, cut down to the decisions, with a task at the end that you run on your own code.
Watch an agent fail five ways in one giant repo: overflow, lost in the middle, post-compaction fiction, blast-radius blindness, edits at the wrong layer. One cause behind all five, and it is never the model.
Fan subagents across a million lines and get back a map, a glossary, the entry points, and the files where one change ripples everywhere. Then make the repo write the CLAUDE.md it never had.
Symbol navigation instead of reading files, which cuts token burn by an order of magnitude. Trace one request through the whole stack, and know what breaks before you break it.
Do not make the change, build the machine that makes it. Codemods over in-context edits, parallel headless agents for what a script cannot express, and the test suite babysitting all of it.
Characterization tests pin behavior nobody remembers. Git history as an archaeology dig, a bug hunted across four layers, and the transplant: your own model wired in where Copilot used to be.
Read a 40-file diff without losing the plot. Summary by intent, sorted by risk, scope creep caught on camera, and the reflex that catches an agent being confident about code that does not exist.
Everything you did becomes a skill you keep. The Explore firewall so subagents read wide while your window stays clean, habits with real triggers, and a final run at a repo in a new language.
This course is being made right now. Every lesson is written and listed in your account, marked TBD until it goes on camera. We might add a lesson, drop a lesson, or split one in half because it turned out to be two. We’re not quite sure yet. Buy once and all of it is yours as it lands.
Drops straight into your own .claude/skills folder, and works on repositories that do not exist yet.
repo-reconPoint it at a repository you have never opened and get back the architecture, the vocabulary, the entry points, and the landmines.
impact-mapWhat depends on the thing you are about to change, and what it depends on. Read before the edit, not after the incident.
codemodThe default move for anything touching more than a few files. Write the transform, run it over a thousand files, review one script.
characterization-testsRope around untested code before you climb it. Pins current behavior so a refactor that changes it fails loudly.
I’m Rob Conery, and I’ve been building software for over 25 years. I spent a decade at Microsoft, three of those years on the VS Code team, which is the repository this course takes apart. Before that I wrote SubSonic, founded Tekpub, and wrote The Imposter’s Handbook.
I use agents every single day on codebases far past the size where the demos stop working, and I have wrecked enough of my own afternoons to know exactly where they go wrong. That is the whole course: the failures, and what I do about them.