| name | workflow |
| description | Run a Codex fan-out (review panel, adversarial verify, implement-then-verify) with the native runner, with no Claude agents in the loop. Use for "/codex-bridge:workflow <goal>". |
| argument-hint | <goal, e.g. "review my uncommitted changes from 3 angles" or "implement task.md and verify"> |
| disable-model-invocation | true |
| allowed-tools | Bash(node:*), Bash(git:*), Read, Write, AskUserQuestion |
Run a Codex fan-out with scripts/codex-workflow.mjs. Every stage is a Codex turn: nothing relays
output, a stage may run for as long as Codex needs, and finished read-only calls are cached for
--resume. See ${CLAUDE_PLUGIN_ROOT}/skills/using-codex/references/native-runner.md for the API.
Steps
- Pick the bundled script that matches the goal, or write a short one against the same API:
- review from several angles:
workflows/review-panel.mjs ({lenses: [{name, taskFile}], votes?})
- "find bugs and make sure they are real":
workflows/adversarial.mjs ({scope, max?, votes?})
- "implement X and verify":
workflows/implement-verify.mjs ({taskFile, maxRounds?, cwd?})
- Prepare inputs on disk first. Write one task file per lens or item under the run directory reported by
codex-bridge.mjs doctor --json (run_dir) or the project's .claude/ folder. Each file is a short brief: scope, angle, what counts as a finding. Pass the paths through --args.
- Confirm with the user only if the run will make Codex write to the workspace; otherwise proceed.
- Run it in the background:
node "${CLAUDE_PLUGIN_ROOT}/scripts/codex-workflow.mjs" run "${CLAUDE_PLUGIN_ROOT}/workflows/<script>.mjs" --args @args.json
with run_in_background: true. status --last is safe to call at any time.
- When it returns, present
result from the summary (or read result_file). A result with ok: false names the stage that failed; do not present it as a clean run. Read out_file paths only for items the user wants detail on.
When your own judgement belongs between Codex stages, run one workflow, read its result.json,
decide, and launch the next. That costs one Bash call per stage and no relaying agent.