playbook · Julien de Waal · 9/5/2026 · 5 min read
The Two-Agent System Solo Founders Use to Build SaaS Without Overengineering
# The Two-Agent System Solo Founders Use to Build SaaS Without Overengineering
AI writes code fast. That's the problem.
Given a prompt and no constraints, an AI coding assistant will scaffold a full authentication system, add a plugin architecture for features you haven't planned yet, and abstract your database layer three levels deep — before you've shipped a single paying user anything useful.
The code isn't wrong. It's just early. And in a one-person startup, early complexity is the same as dead weight.
The two-agent system described by developer and solo founder Rahman on dev.to cuts through this. It's not a framework. It's a constraint model — two AI roles with opposing instincts, used in sequence. One builds. One edits. Neither gets to run without the other.
Here's how it works, and why it matters for founders building alone.
The core problem: AI optimizes for completeness, not shipping
Left to its own logic, an AI agent solves for the general case. You ask it to build a user settings page; it returns a settings page that supports themes, localization, role-based field visibility, and an audit log. All of it is technically defensible. None of it is what you needed this week.
This isn't a hallucination problem. It's a scope problem. AI tools are trained on codebases where scale was already the context. They don't know you have 12 users and a deadline on Friday.
Solo founders absorb this cost directly. Every over-engineered module is something you maintain, debug, and eventually rip out. The revenue-per-employee metric that defines efficient AI-native companies gets quietly destroyed by complexity that was never asked for.
Agent one: the builder
The first agent is your standard AI coding assistant — Claude, GPT-4o, Cursor's built-in model, whatever you use. Its job is generation. You give it a specific, scoped task:
> *Build a CSV import function that reads a file, validates three required columns, and inserts rows into the users table. No UI yet. No edge case handling beyond missing columns.*
The constraint is in the prompt, not the model. The builder doesn't self-limit. You do that upstream by writing the task with a hard boundary on scope. What the feature needs to do *this sprint*, not what it might need to do in six months.
The output will still trend toward completeness. That's expected. That's what the second agent is for.
Agent two: the editor
The second agent reviews what the builder produced — with a single job: find what to delete.
This isn't a code review in the traditional sense. You're not asking it to catch bugs or improve performance. You're asking it a different question:
> *Given that this is a solo-built SaaS at pre-scale, which parts of this code are not required for the described feature to work today?*
The editor agent returns a list. Retry logic for a database that's never gone down. An event emitter abstraction around a function called once. A config object with twelve keys, three of which are used. The editor flags each one, and you decide what actually stays.
This pass typically removes 20–40% of what the builder generated — not because the code was bad, but because it was speculative. You're not building for a future you haven't reached.
Why two agents beat one
The obvious question: why not just prompt a single agent more carefully?
Because roles shape outputs. When you tell an agent its job is to write code, it writes code. When you tell a different agent its job is to eliminate unnecessary code, it eliminates code. Mixing those objectives in one prompt creates a negotiation the model runs internally — and it will default toward keeping things, not cutting them, because generation feels like progress.
Separating the roles removes that negotiation. The builder doesn't second-guess. The editor doesn't create. The division forces a genuine editorial pass rather than a self-review that quietly validates everything it just wrote.
This mirrors how good engineering teams actually work — senior engineers don't just add, they remove. The two-agent model gives solo founders that function without needing a second human.
Running this in practice
The workflow doesn't require special tooling. It runs in any context window that supports long prompts:
1. Write the scoped task — one feature, one output, explicit constraints on what's out of scope. 2. Run the builder — accept the output as a draft, not a final. 3. Run the editor — paste the code, the original task description, and the instruction to flag speculative additions. 4. Review the editor's list — cut what you agree with, keep what you can defend shipping now. 5. Commit what's left.
For most solo SaaS features, this adds maybe 20 minutes to the cycle. That's cheap for what it returns: code you can actually read in six months, a codebase that doesn't punish you for moving fast, and features that ship instead of stall.
The method fits cleanly into the broader playbook for building a one-person startup with AI — which is less about which tools you use and more about how you structure the decisions those tools make.
What this looks like at the company level
The founders tracking well on AI-native company lists aren't the ones with the most sophisticated agent stacks. They're the ones who've operationalized judgment — knowing when to build, when to cut, and how to keep the system from growing faster than the revenue that justifies it.
A two-agent build system is a structural answer to the structural problem of AI-assisted development: you get speed, but you also get scope creep as a side effect of that speed. The editor agent is the mechanism that keeps those two forces in balance.
You don't need a team to enforce this discipline. You need a second prompt.
The only thing AI can't edit
Rahman's point from the original write-up is worth sitting with: *AI can generate a lot of work quickly. It still needs an editor who knows what to remove.*
The editor in this system is still, ultimately, you. The second agent surfaces candidates for deletion. The founder decides. That judgment — what's real scope versus what's speculative architecture — is the one thing that doesn't get automated away. It's also the one thing that separates solo founders who ship from solo founders who refactor.
Keep the builder fast. Keep the editor ruthless. Know which role you're in at any given moment.
---
Is your company eligible? Submit to the leaderboard → onepersonunicorn.co/submit
Read the full AI-native companies guide.
Is your company eligible? Submit to the leaderboard →
Submit Your Company