Loading...
Loading...
Team-orchestrated implement → verify → fix → archive cycle
npx skill4agent add october-academy/agent-plugins ship/opsx:ship my-feature| Role | Agent Type | Phase | Responsibility |
|---|---|---|---|
| Leader | Main agent (you) | All | Orchestration, OpenSpec verify, direct fix, archive |
| implementer | general-purpose | 1 | Task implementation (apply methodology) |
| reviewer | general-purpose | 2, 3 | Codex code review (spawned on-demand at Phase 2) |
openspec list --jsonopenspec status --change "<name>" --json/opsx:continuewhich codexcodex/opsx:shipCODEX_AVAILABLE=falseCODEX_AVAILABLEteam_nameship-<change-name>descriptionShip change: <change-name>subagent_typegeneral-purposeteam_nameship-<change-name>nameimplementermodebypassPermissionsrun_in_backgroundtruepromptYou are the **implementer** in team "ship-CHANGENAME".
Your job: implement all tasks from OpenSpec change "CHANGENAME".
## How to implement
Read planning artifacts for context:
- openspec/changes/CHANGENAME/proposal.md — intent and scope
- openspec/changes/CHANGENAME/design.md — technical approach
- openspec/changes/CHANGENAME/specs/ — requirements
- openspec/changes/CHANGENAME/tasks.md — implementation checklist
Read project patterns from CLAUDE.md.
For each unchecked task (`- [ ]`) in tasks.md:
1. Understand the task from context
2. Make the code changes required
3. Keep changes minimal and focused
4. Mark task complete: `- [ ]` → `- [x]`
5. Send progress to leader via SendMessage: "Task N/M complete: <description>"
After all tasks complete:
- Send final summary to leader via SendMessage listing all completed tasks
## Workflow
1. Check TaskList for assigned tasks
2. When you have an implement task, run the implementation
3. Send progress updates to leader via SendMessage
4. Mark TaskList task completed via TaskUpdate
5. Check TaskList for next work
IMPORTANT: Follow project patterns from CLAUDE.md.
IMPORTANT: Always communicate progress to the leader via SendMessage.
IMPORTANT: If a task is unclear or blocked, report to leader instead of guessing.CHANGENAMEimplementerimplementeropenspec/changes/<name>/tasks.mdshutdown_requestimplementerCODEX_AVAILABLE=truesubagent_typegeneral-purposeteam_nameship-<change-name>namereviewermodebypassPermissionsrun_in_backgroundtruepromptYou are the **reviewer** in team "ship-CHANGENAME".
Your job: run Codex code review against the implementation for change "CHANGENAME".
## How to review
When you receive a review task:
1. Read the review prompt template: .codex/prompts/code-review.md
2. Identify files changed for this change by reading:
- openspec/changes/CHANGENAME/tasks.md (completed tasks reference files)
- openspec/changes/CHANGENAME/design.md (affected files listed)
3. Run Codex review:
```bash
codex exec \
--dangerously-bypass-approvals-and-sandbox \
-m gpt-5.3-codex \
"Review the code changes for OpenSpec change CHANGENAME. Follow the review methodology in .codex/prompts/code-review.md. Read the change artifacts at openspec/changes/CHANGENAME/ for context. Write the full review report."# Code Review: CHANGENAME
## Summary
| Dimension | Finding Count | Max Severity |
|-----------------|---------------|--------------|
| Security | N | ... |
| Performance | N | ... |
| Correctness | N | ... |
| Maintainability | N | ... |
## CRITICAL
- [finding] — `file.ts:line` — Recommendation: ...
## WARNING
- [finding] — `file.ts:line` — Recommendation: ...
## SUGGESTION
- [finding] — `file.ts:line` — Recommendation: ...
## Assessment
[Summary of overall code quality and readiness]undefinedCHANGENAMEreviewerreviewer.claude/commands/opsx/verify.mdopenspec/changes/<name>/verify-report.mdopenspec/changes/<name>/combined-report.mdopenspec/changes/<name>/combined-report.mdopenspec/changes/<name>/combined-report.mddesign.mdspecs/tasks.mdfile:linedesign.mdopenspec/changes/<name>/fix-summary.md# Fix Summary: <change-name> (Round N)
## Fixes Applied
### CRITICAL
- [issue] → Fixed in `file.ts:line` — [what changed]
### WARNING
- [issue] → Fixed in `file.ts:line` — [what changed]
### SUGGESTION
- [issue] → Fixed in `file.ts:line` — [what changed]
## Could Not Fix
- [issue] — Reason: [explanation]CODEX_AVAILABLE=true## Ship Paused: <change-name>
3 fix rounds completed, issues remain.
**Remaining Issues:**
[paste CRITICAL/WARNING/SUGGESTION from latest combined-report.md]
**Options:**
1. Fix manually, then re-run `/opsx:ship`
2. Archive with warnings: `/opsx:archive <change-name>`
3. Review full report: openspec/changes/<name>/combined-report.md/opsx:archive.claude/commands/opsx/archive.md## Ship Complete: <change-name>
**Verification:** All checks passed
**Fix Rounds:** N/3 used
**Archived to:** openspec/changes/archive/YYYY-MM-DD-<name>/
**Specs:** ✓ Synced / No delta specs / Sync skippedreviewershutdown_requestreviewer## Shipping: <change-name>
✓ Team created: ship-<change-name>
✓ Implementer spawned
── Phase 1: Implement ──
⏳ Implementing tasks...
✓ Task 1/N: <description>
✓ Task 2/N: <description>
✓ All tasks implemented
✓ Implementer shutdown
── Phase 2: Dual Verify ──
⏳ Spawning reviewer...
⏳ OpenSpec verify + Codex review in progress...
CRITICAL: 1 | WARNING: 2 | SUGGESTION: 1
── Phase 3: Fix Loop ──
⏳ Fix Round 1/3...
✓ Fix applied
⏳ Re-verifying...
✓ All checks passed!
── Phase 4: Archive ──
✓ Specs synced
✓ Archived to openspec/changes/archive/YYYY-MM-DD-<name>/
── Phase 5: Cleanup ──
✓ Team shutdown complete
Ship complete!.codex/prompts/code-review.md.codex/prompts/verify-fix-loop.md.claude/commands/opsx/apply.md