Delivery Pipeline
The delivery pipeline (shipwright pipeline) automates the entire software development lifecycle. Start from a GitHub issue or a goal description and Shipwright handles planning, building, testing, reviewing, and PR creation.
Pipeline Stages
intake → plan → design → build → test → review → compound_quality → pr → merge → deploy → validate → monitor12 stages, each can be enabled/disabled and gated (auto-proceed or pause for approval).
| Stage | What Happens |
|---|---|
| intake | Fetch issue metadata from GitHub, or parse the goal description |
| plan | Claude generates an implementation plan with tasks and approach |
| design | Design interfaces, data models, and API contracts |
| build | Delegates to shipwright loop for autonomous multi-iteration development |
| test | Run the test suite and validate coverage |
| review | Claude reviews the changes for quality, security, and correctness |
| compound_quality | Multi-dimensional quality audit — adversarial, negative, e2e, DoD |
| pr | Create a GitHub PR with labels, milestone, and reviewers |
| merge | Auto-merge with CI wait and squash (deployed/enterprise templates) |
| deploy | Deploy to staging/production (if configured) |
| validate | Post-deploy smoke tests and health URL checks |
| monitor | Watch for errors post-deploy with auto-rollback |
Quick Start
# Fully autonomous — fetches issue, plans, builds, creates PRshipwright pipeline start --issue 123 --skip-gates# Parallel-safe — each pipeline runs in its own git worktreeshipwright pipeline start --issue 123 --worktreeshipwright pipeline start --goal "Add JWT authentication"shipwright pipeline start --issue 456 --pipeline hotfix --test-cmd "pytest"Pipeline Templates
| Template | Stages | Gates | Use Case |
|---|---|---|---|
standard | intake → plan → build → test → review → PR | approve: plan, review, pr | Normal feature work |
fast | intake → build → test → PR | all auto | Quick fixes |
full | all 12 stages | approve: plan, review, pr, deploy | Production deployment |
hotfix | intake → build → test → PR | all auto | Urgent production fixes |
autonomous | all 12 stages | all auto | Fully autonomous operation |
deployed | all 12 stages (incl. deploy, validate, monitor) | approve: deploy | Full deploy + monitoring |
enterprise | all 12 stages | all approve, auto-rollback | Maximum safety |
cost-aware | intake → plan → build → test → review → PR | auto, budget checks | Budget-limited delivery |
Browse templates:
shipwright pipeline list # List all templatesshipwright pipeline show standard # View template detailsIntelligence-Composed Pipelines
When the intelligence layer is enabled, Shipwright can compose custom pipelines dynamically instead of using static templates. The intelligence engine analyzes the issue semantically and builds a tailored stage configuration — adding extra stages for high-risk changes, removing unnecessary stages for simple fixes, and routing each stage to the optimal model (opus, sonnet, or haiku) based on task complexity and remaining budget.
Static templates remain as fallbacks when intelligence is disabled or when a Claude API call fails. See the Intelligence guide for configuration details.
Self-Healing Builds
When tests fail after a build, the pipeline automatically captures the error output and re-enters the build loop with that context — just like a human developer reading test failures and fixing them.
# Allow up to 3 self-healing cyclesshipwright pipeline start --goal "Build payment flow" --self-heal 3The compound quality stage orchestrates this: it runs tests, and if they fail, feeds the failure output back to the build agent as context for the next iteration.
GitHub Integration
The pipeline deeply integrates with GitHub when starting from an issue:
- Auto-fetches issue title, body, labels, and milestone
- Self-assigns the issue to signal work has started
- Posts progress comments as stages complete
- Creates PRs with labels, milestone, and reviewers propagated from the issue
- Closes the issue when the PR is ready
Auto-Detection
Shipwright automatically detects your project configuration:
- Test command — supports 9+ project types (npm, pytest, go test, cargo test, etc.)
- Branch prefix — derived from task type (feature/, fix/, hotfix/)
- Reviewers — from CODEOWNERS or git history
- Language and framework — for context-aware planning
Managing Pipelines
# Resume a pipeline from where it left offshipwright pipeline resume
# Check pipeline progressshipwright pipeline status
# Abort a running pipelineshipwright pipeline abortNotifications
Get notified about pipeline events via webhooks:
# Slack webhookshipwright pipeline start --goal "Add auth" --slack-webhook https://hooks.slack.com/...
# Custom webhook (via environment variable)export SHIPWRIGHT_WEBHOOK_URL=https://your-webhook.example.comshipwright pipeline start --goal "Add auth"Pipeline State
Pipeline progress is tracked in .claude/pipeline-state.md and artifacts are stored in .claude/pipeline-artifacts/. This allows pipelines to be resumed after interruption.