Inner Committee
Run one model under multiple distinct personas (planner, executor, critic) in a single agent loop — cheaper than multiple model instances, surprisingly effective for self-critique.
Intent & Description
🎯 Intent
Run one model under several distinct personas (executor, critic, planner) within a single agent loop.
📋 Context
A task needs planning, executing, and critiquing — a coding agent that should think through a change, write the patch, and check it against requirements. Standing up two or three separate agents is more machinery than the task needs, but doing all three roles in one prompt produces muddled output.
💡 Solution
Define explicit personas (system prompts) for each role: planner, executor, critic. The agent loop steps through personas at fixed points. Each persona sees only the inputs its role needs, not the full context of the others.
Real-world Use Case
- A single persona produces muddled output that’s neither good plan, good critique, nor good execution.
- Distinct personas (planner, executor, critic) can be defined with non-overlapping input requirements.
- The agent loop can step through personas at fixed, deterministic points.
Source
📌 TL;DR
Multiple roles, one model, one loop — step through planner/executor/critic personas at fixed points rather than spinning up separate model instances for each.
Advantages
- Significantly cheaper than running multiple model instances.
- Surprisingly effective for self-critique and self-modification gating.
Disadvantages
- Same model means correlated errors — the critic can’t catch mistakes that the executor is also prone to making.
- Persona prompts accumulate into a non-trivial token budget across the loop.