/codex-host
Run the great_cto controlled Codex lifecycle with controller-owned writes, verifier evidence, human gates and optional artifact release.
Claude Code
$ npx -y skills add avelikiy/great_cto --skill codex-host --agent claude-code
Codex
$ npx skills add avelikiy/great_cto --skill codex-host -a codex -y
Cursor
$ npx skills add avelikiy/great_cto --skill codex-host -a cursor -y
Gemini CLI
$ npx skills add avelikiy/great_cto --skill codex-host -a gemini-cli -y
GitHub Copilot
$ npx skills add avelikiy/great_cto --skill codex-host -a github-copilot -y
OpenCode
$ npx skills add avelikiy/great_cto --skill codex-host -a opencode -y
Windsurf
$ npx skills add avelikiy/great_cto --skill codex-host -a windsurf -y
SKILL.md
codex-host.SKILL.mdname: codex-host
description: Run the great_cto controlled Codex lifecycle with controller-owned writes, verifier evidence, human gates and optional artifact release.
when_to_use: Use when the user asks Codex to run or inspect a full great_cto pipeline rather than only use an individual skill.
effort: high
allowed-tools: Read, Bash
Controlled Codex host
Use the version-pinned npm entrypoint below. A Codex plugin install loads skills and MCP configuration, but it does not add the `great-cto` npm binary to `PATH`. Do not imitate Claude Code hooks or manually chain roles: the controller reads `shared/pipeline.toml`, persists the cursor and owns every write and gate transition.
Preflight
npx --yes great-cto@3.78.1 codex-host doctor
npx --yes great-cto@3.78.1 codex-host list --dir /absolute/project
`doctor.state=blocked` means do not start. Docker may be unavailable when no checks/release policy is requested; GitHub CLI may be unavailable when the local adapter is used. The run store must not be group/world accessible. For mixed-host runs, also require `doctor.checks.claude.state=available`.
Start
Policies must be operator-owned absolute files outside the worker project. Allowed paths are explicit controller write boundaries.
npx --yes great-cto@3.78.1 codex-host start \
--dir /absolute/project \
--prompt "the requested outcome" \
--allow src,tests,docs \
--checks-policy /absolute/operator/checks.json \
--release-policy /absolute/operator/release.json
Read the returned `status`, `pending` and `release` object. Never treat exit 2 as success: it means a gate, manual action or blocked evidence requires attention.
Since 3.47.0, independent graph roles can run on both hosts with `--routes qa-engineer=claude-code,security-officer=codex` on `start`. The controller dispatches only a symmetric join pair concurrently, checks both proposals for overlap, serializes writes and runs the existing verifier and human gates. The route map is fixed for the run. An interrupted wave must be inspected; never start replacement workers against an uncertain wave.
Gates and recovery
Show the operator the exact gate/release summary and wait for explicit approval. Then pass back the controller-issued token; never synthesize or persist one in a project file.
npx --yes great-cto@3.78.1 codex-host approve RUN_UUID --token GATE_TOKEN
npx --yes great-cto@3.78.1 codex-host approve-release RUN_UUID --token RELEASE_TOKEN
npx --yes great-cto@3.78.1 codex-host resume RUN_UUID
Use `recover` only after inspecting the recorded reason. Recovery reuses the same candidate and refuses unknown partial writes. `cancel` revokes unexecuted approval but does not delete external audit evidence.
Release boundary
The local and GitHub Release adapters publish immutable artifacts and declare `activation: none`. They do not deploy traffic. Local rollback means selecting a previous directory; GitHub rollback is a newly gated superseding release. Production activation needs a separate adapter and approval contract.
Detailed policy schemas and limitations are in `docs/HOST-CODEX.md`.
Read more
name: codex-host description: Run the great_cto controlled Codex lifecycle with controller-owned writes, verifier evidence, human gates and optional artifact release. when_to_use: Use when the user asks Codex to run or inspect a full great_cto pipeline rather than only use an individual skill. effort: high allowed-tools: Read, Bash
Controlled Codex host
Use the version-pinned npm entrypoint below. A Codex plugin install loads skills and MCP configuration, but it does not add the `great-cto` npm binary to `PATH`. Do not imitate Claude Code hooks or manually chain roles: the controller reads `shared/pipeline.toml`, persists the cursor and owns every write and gate transition.
Preflight
npx --yes great-cto@3.78.1 codex-host doctor npx --yes great-cto@3.78.1 codex-host list --dir /absolute/project
`doctor.state=blocked` means do not start. Docker may be unavailable when no checks/release policy is requested; GitHub CLI may be unavailable when the local adapter is used. The run store must not be group/world accessible. For mixed-host runs, also require `doctor.checks.claude.state=available`.
Start
Policies must be operator-owned absolute files outside the worker project. Allowed paths are explicit controller write boundaries.
npx --yes great-cto@3.78.1 codex-host start \ --dir /absolute/project \ --prompt "the requested outcome" \ --allow src,tests,docs \ --checks-policy /absolute/operator/checks.json \ --release-policy /absolute/operator/release.json
Read the returned `status`, `pending` and `release` object. Never treat exit 2 as success: it means a gate, manual action or blocked evidence requires attention.
Since 3.47.0, independent graph roles can run on both hosts with `--routes qa-engineer=claude-code,security-officer=codex` on `start`. The controller dispatches only a symmetric join pair concurrently, checks both proposals for overlap, serializes writes and runs the existing verifier and human gates. The route map is fixed for the run. An interrupted wave must be inspected; never start replacement workers against an uncertain wave.
Gates and recovery
Show the operator the exact gate/release summary and wait for explicit approval. Then pass back the controller-issued token; never synthesize or persist one in a project file.
npx --yes great-cto@3.78.1 codex-host approve RUN_UUID --token GATE_TOKEN npx --yes great-cto@3.78.1 codex-host approve-release RUN_UUID --token RELEASE_TOKEN npx --yes great-cto@3.78.1 codex-host resume RUN_UUID
Use `recover` only after inspecting the recorded reason. Recovery reuses the same candidate and refuses unknown partial writes. `cancel` revokes unexecuted approval but does not delete external audit evidence.
Release boundary
The local and GitHub Release adapters publish immutable artifacts and declare `activation: none`. They do not deploy traffic. Local rollback means selecting a previous directory; GitHub rollback is a newly gated superseding release. Production activation needs a separate adapter and approval contract.
Detailed policy schemas and limitations are in `docs/HOST-CODEX.md`.
You already have the agent. This is everything around it. great_cto runs Claude Code as a pipeline of 70 specialist agents — an independent model checks each stage before the next builds on it, spending caps refuse rather than warn, and three decisions stay yours: what gets built, how, and whether it ships.
Other skills on great-cto.
More skills from other plugins.
brainstorming
You MUST use this before any creative work - creating features, building components, adding functionality, modifying behavior, or…
ask-matt
Ask which skill or flow fits your situation. A router over the skills in this repo.
Questions about codex-host.
- Which coding agents can use codex-host?
- codex-host installs in Claude Code, Codex, Cursor, Gemini CLI, GitHub Copilot, OpenCode and Windsurf with the skills CLI, using each agent's flag shown on this page. Flowy's auto-invocation, which fires a skill when your prompt matches, runs in Claude Code only.

