Parent: #1235
Blocked by: #1237, #1238
Summary
Wire orchestration into the agent loop with CLI commands and metrics.
Branch: feat/m33/orchestration-cli
Deliverables
New files
crates/zeph-core/src/orchestration/command.rs — PlanCommand enum + parse()
Modified files
crates/zeph-core/src/agent/mod.rs — handle /plan commands in command dispatch
crates/zeph-core/src/metrics.rs — OrchestrationMetrics in MetricsSnapshot
CLI commands
| Command |
Description |
/plan <goal> |
Decompose goal → confirm → execute → aggregate |
/plan status |
Show current DAG progress (task table) |
/plan list |
List recent graphs from persistence |
/plan cancel |
Cancel running graph |
Integration flow
- User enters
/plan <goal>
- Agent calls
LlmPlanner::plan() to decompose
- If
confirm_before_execute, show task count + agent assignments, wait for confirmation
- Start
DagScheduler tick loop
- On completion, call
Aggregator::aggregate() (Phase 5 placeholder — concatenate for now)
- Display final result
Metrics
plans_total, plans_completed, plans_failed
tasks_total, tasks_completed, tasks_failed, tasks_skipped
Tests (~15)
Dependencies
Blocked by: Phase 2 (#1237), Phase 3 (#1238)
Parent: #1235
Blocked by: #1237, #1238
Summary
Wire orchestration into the agent loop with CLI commands and metrics.
Branch:
feat/m33/orchestration-cliDeliverables
New files
crates/zeph-core/src/orchestration/command.rs—PlanCommandenum +parse()Modified files
crates/zeph-core/src/agent/mod.rs— handle/plancommands in command dispatchcrates/zeph-core/src/metrics.rs—OrchestrationMetricsinMetricsSnapshotCLI commands
/plan <goal>/plan status/plan list/plan cancelIntegration flow
/plan <goal>LlmPlanner::plan()to decomposeconfirm_before_execute, show task count + agent assignments, wait for confirmationDagSchedulertick loopAggregator::aggregate()(Phase 5 placeholder — concatenate for now)Metrics
plans_total,plans_completed,plans_failedtasks_total,tasks_completed,tasks_failed,tasks_skippedTests (~15)
/plan <goal>,/plan status,/plan list,/plan cancelconfirm_before_execute = trueDependencies
Blocked by: Phase 2 (#1237), Phase 3 (#1238)