This is part 3 of the series on Orbit. In the first one I covered what it is and how to get started. This one is about how a task runs.
Reviewing everything at the end is the hardest part
If you give an agent a task and let it work until it's done, you have to review everything at once. And if it got something wrong early on, that mistake is already buried under hundreds of lines that look fine.
Orbit splits the task into phases
That's why in Orbit a task goes through phases. The default one has two, one implements and one reviews. They're smaller pieces, and if something goes wrong in one you see it before the next one keeps building.
If the tests fail, the phase runs again
After a phase, the project's tests can run. In the video, the agent makes the change without writing tests, the tests don't pass and the phase runs again. The second time it writes the test and passes.
On that second attempt the agent knows what the first one did and what the tests said, so it doesn't start from zero. By default it gets three attempts, and if it doesn't make it, the task waits for you.
The task waits for you before the review
Some phases wait for you before they start. In the default one it's the review: the agent finishes implementing and the task sits still until you look at it. You sign off. It keeps going. In your own flows you decide where those stops go.
Meanwhile everything happens in a separate worktree, and nothing gets into your copy of the repository until you say so.
At the end you have what happened in each phase
When it finishes, the task keeps what happened in each phase: whether the tests passed, what it cost and what the agent was asked, in short steps that read fast.
The video shows a full task on an example repository, and getorbit.sh has one for every feature.