How Missions Work
By Theo Luan - April 10, 2026 - 5 minute read
Research
Share
By Theo Luan - April 10, 2026 - 5 minute read
Research
Share
Agent sessions work well for focused tasks, but most real projects are too broad and complex for a single context window to hold. A single agent eventually runs into a problem: the more it sees, the less focused and reliable it becomes.
Missions is our system for solving that. It breaks large work into focused units handled by fresh agents with narrowly scoped goals, shared state, and explicit validation.
Most of the architecture follows from one core observation: agents are highly reactive to their context.
Two failure modes follow from this:
It's not enough to simply split up work. Each agent's goal must be focused, and its trajectory directionally consistent. In every run, we must avoid accumulating context that is:
Each role has a single goal, and the system is structured so that nothing in an agent's trajectory pulls it away from that goal.
The same principle operates at two scales.
This ordering matters. When creating the validation contract, the orchestrator draws from its understanding of requirements. If it had created the features first, the contract would be influenced by the implementation it had already planned.
These assertions are later verified by fresh agents that exercise the system as a black box - using it the way a real user would - rather than inspecting the code that implements them.
No single agent needs to hold the complete picture in its context at once. The full state is distributed across shared artifacts: the validation contract, the feature list, research notes, operational guidelines, and an evolving knowledge base.
Each agent reads what's relevant to its current job. Even the orchestrator delegates deep investigation to subagents to avoid consuming every detail itself.
Different models have different strengths - reasoning, discipline, creativity, thoroughness, speed, cost. No single model is best at everything.
Once roles are cleanly separated, model choice becomes local to each role: broad planning and judgment for the orchestrator, reliable execution and cost efficiency for workers, thoroughness and skepticism for validators.
With those principles in mind, here's how a mission actually runs.
A user describes what they want built. The orchestrator investigates and asks clarifying questions until the requirements are unambiguous.
Then it writes the validation contract - a finite checklist of testable behavioral assertions that define completion and correctness for the mission.
From there, it decomposes the work into features, where each feature is a bounded piece of implementation that claims which assertions it will fulfill. Features are grouped into milestones, each of which encompasses a logical unit of functionality.
Finally, it creates shared state files - boundaries and procedures for its workers that enforce optimal structure and behavior, as well as a library that will accumulate knowledge over the mission's duration.
A programmatic runner takes the feature list and spawns a worker for each feature in order. Each worker starts with a fresh context, receives its feature spec, writes tests first, then implements.
Once all features within a milestone are complete, the runner triggers validation using fresh agents.
After validation, the orchestrator reviews what workers and validators flagged. It creates fix features targeted at actionable gaps, which get executed before the milestone re-validates. This loop repeats until milestone validation passes.
If implementation or validation is blocked, the orchestrator halts the mission and hands control back to the user.
A single mission produced a Slack clone - workspace auth, channels and threads, real-time messaging with reactions and mentions, file uploads, search, and presence and notifications.
This mission progressed through a consistent implementation-validation cadence across six milestones, with validation accounting for 37.2% of total runtime.
It generated 38.8k lines of code (52.5% of those lines tests) with 89.25% statement coverage.
Every milestone converged in 2-4 validation rounds. That produced a steady correction loop: validators surfaced 81 issues, and the orchestrator generated 21 targeted fix features (34.4% of implementation work) to close them.
Trajectories also stayed bounded throughout execution, with median run lengths of 51 assistant turns for implementation and 30 for validation.
Missions is our first version of a system that closes the software development loop.
As models get better at reasoning, planning, execution, and computer use, each improvement compounds through the architecture: better planners produce tighter specs, better workers make fewer mistakes, and better validators can judge correctness more reliably across a wider range of surfaces. As models get faster and cheaper, the loop gets tighter - more validation rounds become practical. More ambitious missions become viable for more teams and codebases.
Missions is available today. Run /missions in any Droid session to start one.
Start building