name: implement-issue description: Use when given a GitHub issue number and base branch to implement end-to-end argument-hint: "[issue-number] [base-branch]"
Implement Issue
End-to-end issue implementation via orchestrator script.
Announce at start: "Using implement-issue to run orchestrator for #$ISSUE against $BRANCH"
Arguments:
$1— GitHub issue number (required)$2— Base branch name (required)
Invocation
Immediately launch the orchestrator:
.claude/scripts/implement-issue-orchestrator.sh \
--issue $ISSUE_NUMBER \
--branch $BASE_BRANCH
Or with explicit agent override:
.claude/scripts/implement-issue-orchestrator.sh \
--issue $ISSUE_NUMBER \
--branch $BASE_BRANCH \
--agent bulletproof-frontend-developer
Monitoring
Each run creates its own status.json inside the log directory:
# Find the latest run's status file
jq . logs/implement-issue/issue-${ISSUE_NUMBER}-*/status.json
Watch live:
# Replace with your actual log dir path (shown at startup)
watch -n 5 'jq -c "{state,stage:.current_stage,task:.current_task,quality:.quality_iterations}" logs/implement-issue/issue-123-20260221-153045-12345/status.json'
Stages
| Stage | Agent | Description |
|---|---|---|
| setup | default | fetch, worktree, research, evaluate, plan |
| implement | per-task | execute each task from plan |
| task-review | spec-reviewer | verify task achieved goal |
| fix | per-task | address review findings (uses task's agent) |
| simplify | code-simplifier | clean up code |
| test | php-test-validator | run test suite |
| review | code-reviewer | internal code review |
| docs | phpdoc-writer | add PHPDoc blocks |
| pr | default | create/update PR |
| spec-review | spec-reviewer | verify PR achieves issue goals |
| code-review | code-reviewer | final code quality check |
| tech-docs | technical-doc-writer | assess/write/update docs in docs/{domain}/ |
| complete | default | post summary |
Available Implementation Agents
The plan stage selects the best agent per task from:
| Agent | Use For |
|---|---|
| laravel-backend-developer | PHP/Laravel: controllers, models, services, middleware, migrations, API, PHPUnit |
| bulletproof-frontend-developer | CSS, responsive design, Blade templates, frontend code |
| bash-script-craftsman | Shell scripts, portability, BATS tests |
| technical-doc-writer | Architecture docs, design docs, data flows, API contracts in docs/{domain}/ |
Schemas
Located in .claude/scripts/schemas/implement-issue-*.json
Logging
Logs written to logs/implement-issue/issue-N-timestamp/:
orchestrator.log— main logstages/— per-stage Claude outputcontext/— parsed outputs (tasks.json, etc.)status.json— real-time status (primary location, no root-level status.json)
Exit Codes
| Code | Meaning |
|---|---|
| 0 | Success, PR created and approved |
| 1 | Error during a stage |
| 2 | Max iterations exceeded |
| 3 | Configuration/argument error |
CLI Session Isolation
All claude -p invocations in orchestrator scripts must use --no-resume to prevent
session context contamination. Without it, the CLI may resume a cached session and the model
will return "already processed" instead of following the schema prompt — causing "No structured
output" failures.
Exception: Explicit --resume $SESSION_ID after rate limit recovery is intentional and correct.
Integration
Called by handle-issues via batch-orchestrator.sh.