autopilotlisted
Install: claude install-skill Markuysa/flightdeck
Requested: $ARGUMENTS (default `status`)
The state lives in `.claude/autopilot.json`, committed so cloud sessions read it from the
clone and every flip is auditable. `next-ticket` refuses to work while `enabled` is false.
## `status`
Report, in this order: whether autopilot is on, how many tickets are in progress against
`maxInFlight`, how many are ready, how many are blocked and on what, and whether any sit
at needs-attention — those need a human and will never clear on their own. Derive all of
it from `docs/tickets/` plus branches, the way `/board` does.
## `on`
### Preflight — all four, no exceptions
Autopilot without a real merge gate is not automation, it is merging whatever was written.
Check every item and **refuse if any fails**, naming the failure and the fix:
1. **A CI workflow exists** — something under `.github/workflows/`.
2. **Branch protection requires status checks.** Read it:
`gh api repos/{owner}/{repo}/branches/{default}/protection`
`required_status_checks.contexts` must be non-empty. If protection is absent or the list
is empty, `gh pr merge --auto` merges on the spot and autopilot means nothing. This is
the check that matters most — do not wave it through because a workflow file exists.
3. **Auto-merge is enabled on the repository** — `gh api repos/{owner}/{repo} -q .allow_auto_merge`
must be `true`. (`gh repo view --json autoMergeAllowed` does not exist; the field is only
exposed by the REST API.)
4. **There is at least one ready