1---2name: codex3description: Use when the user asks to run Codex CLI (codex exec, codex resume) or references OpenAI Codex for code analysis, refactoring, or automated editing4---5
6# Codex Skill Guide
7
8## Running a Task
91. **Do NOT specify a model by default.** The Codex CLI is configured with a ChatGPT account, and explicit model flags (`-m gpt-5-codex`, `-m gpt-5`, `-m o4-mini`) all fail with "not supported when using Codex with a ChatGPT account." Omitting `-m` lets Codex use its default model, which works. Only add `-m` if the user explicitly requests a specific model.
102. Select the sandbox mode required for the task; default to `--sandbox read-only` unless edits or network access are necessary.
113. Assemble the command with the appropriate options:
12 - `--sandbox <read-only|workspace-write|danger-full-access>`
13 - `--full-auto`
14 - `-C, --cd <DIR>`
15 - `--skip-git-repo-check`
16 - `-m, --model <MODEL>` (only if user explicitly requests)
17 - `--config model_reasoning_effort="<high|medium|low>"` (only if user explicitly requests)
184. Always use --skip-git-repo-check.
195. When continuing a previous session, use `codex exec --skip-git-repo-check resume --last` via stdin. When resuming don't use any configuration flags unless explicitly requested by the user. Resume syntax: `echo "your prompt here" | codex exec --skip-git-repo-check resume --last 2>/dev/null`. All flags have to be inserted between exec and resume.
206. **IMPORTANT**: By default, append `2>/dev/null` to all `codex exec` commands to suppress thinking tokens (stderr). Only show stderr if the user explicitly requests to see thinking tokens or if debugging is needed.
217. Run the command, capture stdout/stderr (filtered as appropriate), and summarize the outcome for the user.
228. **After Codex completes**, inform the user: "You can resume this Codex session at any time by saying 'codex resume' or asking me to continue with additional analysis or changes."
23
24### Quick Reference
25| Use case | Sandbox mode | Key flags |
26| --- | --- | --- |
27| Read-only review or analysis | `read-only` | `--sandbox read-only 2>/dev/null` |
28| Apply local edits | `workspace-write` | `--sandbox workspace-write --full-auto 2>/dev/null` |
29| Permit network or broad access | `danger-full-access` | `--sandbox danger-full-access --full-auto 2>/dev/null` |
30| Resume recent session | Inherited from original | `echo "prompt" \| codex exec --skip-git-repo-check resume --last 2>/dev/null` (no flags allowed) |
31| Run from another directory | Match task needs | `-C <DIR>` plus other flags `2>/dev/null` |
32
33## Following Up
34- After every `codex` command, immediately use `AskUserQuestion` to confirm next steps, collect clarifications, or decide whether to resume with `codex exec resume --last`.
35- When resuming, pipe the new prompt via stdin: `echo "new prompt" | codex exec resume --last 2>/dev/null`. The resumed session automatically uses the same model, reasoning effort, and sandbox mode from the original session.
36- Restate the chosen model, reasoning effort, and sandbox mode when proposing follow-up actions.
37
38## Error Handling
39- Stop and report failures whenever `codex --version` or a `codex exec` command exits non-zero; request direction before retrying.
40- Before you use high-impact flags (`--full-auto`, `--sandbox danger-full-access`, `--skip-git-repo-check`) ask the user for permission using AskUserQuestion unless it was already given.
41- When output includes warnings or partial results, summarize them and ask how to adjust using `AskUserQuestion`.