Skip to main content
Read in order to follow the design argument, or use the sidebar to explore a specific track.

1. Repository access

We have User → LLM. Why isn’t that enough?

2. Editing & execution

It can inspect code. Why can’t it finish the fix?

3. Context rot

The loop works. What breaks after 50 tool calls?

4. Seven state stores

Concretely — what does “separate state” look like in a real build?

5. Why not one blob

Why not just keep one JSON blob per session instead of seven stores?

6. Token levers

Our agent is consuming too many tokens. How would you reduce it?

7. Enforce with a hook

Why not just tell the agent in the system prompt to use the cheaper model?

8. Conditional planning

What if the agent forgets what remains — or plans everything?

9. Subagent isolation

Why not let the main agent investigate everything?

10. The delegation gate

Should every independent task become a subagent?

11. Write conflicts

Say it happens anyway — two subagents both need to write to the same file. Then what?

12. When to delegate

Two tasks. Why does only one deserve subagents?

13. Recap

Ten decisions, two kinds of pressure.

14. The architecture

What architecture did those failures force us to build?