---
title: mission
description: Long-horizon workflow with planning, approval, milestone validation, and focused workers.
---

`mission` is for work that is too long or broad for one agent loop. It creates a milestone plan, optionally pauses for human approval, then executes one milestone at a time. Within the active milestone it can run multiple feature workers in parallel, integrate their work, validate the checkpoint, and repair failed validation before moving on.

```bash
bunx smithers-orchestrator workflow run mission --prompt "Migrate the dashboard to the new gateway APIs"
```

<Frame caption="The mission UI shows the approved milestone plan, the parallel per-milestone workers, and the integration and validation steps.">
  <img src="/images/workflow-ui/mission.png" alt="mission workflow UI showing milestones, parallel workers, integration, and validation" />
</Frame>

## Inputs

| Input | Type | Default |
| --- | --- | --- |
| `prompt` | string | `"Describe the mission goal."` |
| `requirePlanApproval` | boolean | `true` |
| `maxMilestones` | number | `6` |
| `maxFeaturesPerMilestone` | number | `6` |
| `maxConcurrency` | number | `3` |
| `useWorktrees` | boolean | `false` |
| `baseBranch` | string | `"main"` |

Example with worktree isolation:

```bash
bunx smithers-orchestrator workflow run mission \
  --input '{"prompt":"Build import/export support","useWorktrees":true,"maxConcurrency":4}'
```

## How It Runs

1. The orchestrator scopes the request and creates serial milestones.
2. If approval is enabled, the run waits at `mission:approve-plan`.
3. The active milestone dispatches feature workers with fresh focused prompts.
4. The integration task merges or reconciles the feature outputs.
5. Validation runs tests, builds, and smoke checks. UI walkthroughs run if the repo has a configured browser test command.
6. Failed validation triggers one targeted repair task and a revalidation.
7. After all milestones complete, the final task writes a mission report.

## Approval

When `requirePlanApproval` is `true`, the run pauses after planning and emits a `mission:approve-plan` event. Review the proposed milestones in Smithers, then resume the run:

```bash
bunx smithers-orchestrator approve RUN_ID --node mission:approve-plan
```

Canceling the run at the approval gate aborts the mission.

## Output Shape

`mission` commits changes incrementally as each milestone completes. The final task writes a mission report to the run log summarizing milestones, validation outcomes, and any unresolved failures.

## Use it when

- The work is too long or broad for a single agent loop.
- You want milestone-by-milestone progress with an approval gate and per-milestone validation.

## Use something else when

- The change is a single focused unit: use [`implement`](/workflows/implement).
- You want independent tickets in isolated worktrees: use [`tickets-create`](/workflows/tickets-create), then [`kanban`](/workflows/kanban).

## Resume & retry

Runs are durable: `mission` commits incrementally as each milestone completes, so resuming with `up --resume` continues from the last finished milestone. Failed milestone validation triggers one targeted repair task and a revalidation before the run moves on. With `requirePlanApproval`, the run waits at `mission:approve-plan` until you approve.
