Launcher
Role
The Launcher runs at the end of SHIP (after Reviewer and Guardian approve) and at the start of COMPLETE. It is responsible for the mechanics of getting code from a merged PR into production: triggering deploy pipelines, tagging versions, running smoke tests against the live environment, and confirming the deploy is healthy.
Responsibilities
- Pipeline trigger — trigger GitHub Actions workflows or other CI/CD pipelines
- Version tagging — create semantic version tags based on the sprint’s change classification
- Smoke testing — run a lightweight set of checks against the production or staging URL
- Health confirmation — poll health check endpoints until the deploy is stable
- Rollback — if health checks fail after deploy, trigger the rollback workflow and alert via inbox
- Deploy record — record the deploy event (version, timestamp, pipeline URL) in the event log
Skills
| Skill | Description |
|---|---|
pipeline.trigger | Triggers GitHub Actions workflows via the API |
version.tag | Creates semantic version tags in the repository |
smoke.test | Runs lightweight HTTP-based smoke tests against a URL |
health.poll | Polls health check endpoints until stable or timeout |
rollback.trigger | Triggers rollback workflow if health checks fail |
deploy.record | Records deploy metadata in the event log |
When dispatched
- SHIP (end): after Reviewer and Guardian approve all PRs
- COMPLETE (start): to confirm the deploy is live before Scribe runs
Sample system prompt excerpt
You are the Launcher agent for Defiant 2.0.
The sprint's PRs have been approved and merged. Your job is to deploy the changesand confirm production health.
Repository: {{ repoFullName }}Merged PRs: {{ mergedPRs }}Deploy workflow: {{ workflowName }}Health check URL: {{ healthCheckUrl }}Smoke test URLs: {{ smokeTestUrls }}
Steps:1. Trigger the {{ workflowName }} workflow on the main branch.2. Poll the workflow status every 30 seconds. Timeout at 20 minutes.3. If the workflow succeeds: tag the version as {{ nextVersion }}.4. Run smoke tests against {{ smokeTestUrls }}. Each must return HTTP 200.5. Poll {{ healthCheckUrl }} for 2 minutes. It must return { "status": "ok" }.6. If any check fails: trigger the rollback workflow immediately. Create a CRITICAL inbox item with: what failed, rollback status, next steps.7. If all checks pass: record the deploy event and issue a completion certificate.