vibe-ship
Walks the issue DAG in waves, dispatching workspaces in parallel, and chains
vibe-link → vibe-review → vibe-merge per issue, with vibe-dispatch-fix and
vibe-rebase in the loop on failures.
Invoke
/vibe-flow:vibe-ship # all open issues in the project
/vibe-flow:vibe-ship --wave 2 # one specific wave
/vibe-flow:vibe-ship --issues ISSUE-42,ISSUE-17
Wave semantics
See waves & the DAG. Two barrier modes: merge
(default) or pr-open.
Per-issue sub-loop
- Dispatch workspace (executor picked by tier)
- Wait for
get_execution.is_finished == true(VK-authoritative;<VIBE-FLOW-REPORT>is optional payload, not the termination signal) vibe-link→ opens/links PR, moves issue toin_reviewvibe-review→ fresh subagent reviews, posts to GitHub- If critical →
vibe-dispatch-fix(bounded re-tries) - If behind main →
vibe-rebase vibe-merge→ squash, close (VK auto-archives the workspace)
Escalation ceiling
Per issue, vibe-ship stops after N failed dispatches (config
escalation_ceiling, default 3). At 30% of issues escalated, the whole run
aborts — something systemic is wrong.