Flow: Skill("ferrox-plan-phase") → Agent→Skill("ferrox-review") → check unresolved HIGH + actionable non-HIGH → Skill("ferrox-plan-phase --reviews") → Agent→Skill("ferrox-review") → ... → Converge or escalate
Replaces ferrox-plan-phase's internal ferrox-plan-checker with external AI reviewers (codex, gemini, etc.). Plan-phase runs inline (bare Skill at depth 0) so it can spawn ferrox-planner/ferrox-plan-checker at depth 1. Review runs inside an isolated Agent (ferrox-review is a Bash leaf — no sub-agents needed). Orchestrator only does loop control.
Orchestrator role: Parse arguments, validate phase, run plan-phase inline (Skill at depth 0), spawn an Agent for ferrox-review, check unresolved HIGH and actionable non-HIGH counts, stall detection, escalation gate.
Flags:
--codex— Use Codex CLI as reviewer (default if no reviewer specified)--gemini— Use Gemini CLI as reviewer--claude— Use Claude CLI as reviewer (separate session)--opencode— Use OpenCode as reviewer--ollama— Use local Ollama server as reviewer (OpenAI-compatible, default hosthttp://localhost:11434; configure model viareview.models.ollama)--lm-studio— Use local LM Studio server as reviewer (OpenAI-compatible, default hosthttp://localhost:1234; configure model viareview.models.lm_studio)--llama-cpp— Use local llama.cpp server as reviewer (OpenAI-compatible, default hosthttp://localhost:8080; configure model viareview.models.llama_cpp)--all— Use all available CLIs and running local model servers--max-cycles N— Maximum replan→review cycles (default: 3)
Feature gate: This command requires workflow.plan_review_convergence=true. Enable with:
ferrox config-set workflow.plan_review_convergence true