Fleet 2.6.0 is out.See what's new →
FleetFleet

Coding workflows

The Ship a feature template expresses the old handoff chain as one inspectable, editable workflow with explicit governance.

Template graph

Label trigger or Run button
          ↓
       Refine
          ↓
       Develop ←────────────┐
          ↓                 │
       Review ── flag ──────┘  retry 2
          │                       │
          │ pass                  └─ exhausted → Announce
          ↓
       Approve
          ↓
        Merge ── error → Develop
          ↓
       Announce

What each step owns

1

Refine

Turn the triggering ticket into a developer-ready problem statement, constraints, and acceptance criteria.

2

Develop

Select an enabled developer-type agent with capacity, work in the workflow repo, and open a PR.

3

Review

Read the actual diff and discussion, compare it with the ticket and repo rules, then pass or flag.

4

Approve

Present the governed evidence to a person and wait for a decision.

5

Merge

Merge the approved PR. Conflicts or failed preconditions can route back to Develop.

6

Announce

Notify the configured recipients with the final result or exhausted-retry summary.

Configure it

  1. 1. Choose Ship a feature from the template gallery.
  2. 2. Select the full owner/repo repository.
  3. 3. Bind Refine, Develop, and Review to appropriate agent types.
  4. 4. Add approval and notification recipients.
  5. 5. Select Manual while testing, then switch to a backlog label when ready.
  6. 6. Confirm the review flag and merge error routes return to Develop with bounded retries.

How code suspension works

Develop does not wait synchronously for a long agent process. Fleet dispatches the selected coding agent exactly once and records the run as awaiting_code. The agent's PR carries a deterministic run/step marker. When Fleet observes that PR, it records the URL, branch, and head commit, requeues the run, and feeds the real diff into Review.

Why this replaced subscriptions

The entire delivery path is visible before it runs. Review routing, retry limits, approval, merge, and exhaustion behavior live in one definition and one run history. Adding a label starts that definition; it does not rely on a hidden sequence of independently configured agent subscriptions.

Configure agents and types for coding workflows →