Executes unattended batch processing of all pending tasks with autonomous decision-making...
Mode: Work on all tasks or a specific one
You MUST follow this exact sequence for EVERY task. Do NOT skip or reorder steps.
next โ implement โ check โ done
| โ FORBIDDEN | โ REQUIRED |
|---|---|
Skip check step |
Run agent-foreman check before done |
| Go straight to implementation | Run agent-foreman next first |
| Invent extra steps | Use only the 4 steps above |
| Reorder the workflow | Execute in exact sequence |
NEVER bypass CLI for workflow decisions:
| โ FORBIDDEN | โ REQUIRED |
|---|---|
Read ai/tasks/index.json to select task |
Use agent-foreman next |
Read index.json to check status |
Use agent-foreman status |
| Read task files to check status | Use CLI commands |
| Edit task files to change status | Use agent-foreman done/fail |
This applies to ALL iterations in the loop.
โก UNATTENDED MODE (when no task_id provided)
If task_id provided (e.g., feature-run auth.login):
If no task_id (e.g., feature-run):
When task_id is provided:
# STEP 1: Delegate to implementer agent
Task(
subagent_type="agent-foreman:implementer",
prompt="TASK: <task_id>
Execute: next <task_id> โ implement โ check โ return result"
)
# STEP 2: Parse result and complete
# - If success + verification_passed: agent-foreman done <task_id>
# - Otherwise: agent-foreman fail <task_id> -r "<notes>"
When no task_id:
# STEP 1: Show initial state (once only)
agent-foreman status
# STEP 2: LOOP
# 2a: Delegate to implementer agent (auto-select task)
Task(
subagent_type="agent-foreman:implementer",
prompt="Execute: next โ implement โ check โ return result"
)
# 2b: Parse ---IMPLEMENTATION RESULT--- from agent output
# Extract: task_id, status, verification_passed, notes
# 2c: Check if implementer returned "No pending tasks"
# If yes โ EXIT to STEP 3
# If no โ Continue to 2d
# 2d: Handle result
# - success + verification_passed โ agent-foreman done <task_id>
# - Otherwise โ agent-foreman fail <task_id> -r "<notes>"
# 2e: Continue loop (go to step 2a, NOT step 1)
# STEP 3: FINISH
# Show final summary with agent-foreman status (once only)
| Rule | Description |
|---|---|
| One at a time | Complete current before next |
| No skipping | Always next โ implement โ check โ done (status only at start/end) |
| No editing criteria | Implement as specified |
| Never kill processes | Let commands finish naturally |
needs_review โ may be broken (highest)failing โ not implementedpriority number โ higher priority (0 is highest)TDD workflow is handled internally by the agent-foreman:implementer agent. No action required from the orchestrator.
When in ALL-TASKS mode (no task_id provided):
When in ALL-TASKS mode:
agent-foreman status once - show initial stateTask(subagent_type="agent-foreman:implementer") - agent runs next โ implement โ check
b. Parse result: Extract task_id, status, verification_passed, notes
c. Check exit: If status: blocked and notes contains "No pending tasks" โ EXIT to step 3
d. Complete: Based on result:success + verification_passed: true โ agent-foreman done <task_id>agent-foreman fail <task_id> -r "<notes>"
e. Continue: Go to step 2a (NOT step 1)agent-foreman status once - show final summaryThe implementer agent returns structured output:
---IMPLEMENTATION RESULT---
task_id: <task_id>
status: success|partial|blocked|failed
verification_passed: true|false
files_modified: [list]
notes: <description>
---END IMPLEMENTATION RESULT---
status: blocked with notes: No pending tasks availableWhen the implementer agent returns its result:
status: success and verification_passed: trueagent-foreman done <task_id>
Then continue to next iteration.
agent-foreman fail <task_id> --reason "<notes from agent>"
Then IMMEDIATELY continue to next iteration.
This applies to ALL agent results, including errors or malformed output.
| Condition | Action |
|---|---|
| All tasks processed | STOP - Show summary |
| Single task completed | STOP - Task done |
| User interrupts | STOP - Clean state |
CRITICAL: NEVER stop due to verification failure - always use agent-foreman fail and continue!
When all tasks have been processed:
agent-foreman status to show final summary