Codex Skill Guide
Running a Task
- Ask the user (via
AskUserQuestion) which model to run (gpt-5orgpt-5-codex) AND which reasoning effort to use (low,medium, orhigh) in a single prompt with two questions. - Select the sandbox mode required for the task; default to
--sandbox read-onlyunless edits or network access are necessary. - Assemble the command with the appropriate options:
-m, --model <MODEL>--config model_reasoning_effort="<low|medium|high>"--sandbox <read-only|workspace-write|danger-full-access>--full-auto-C, --cd <DIR>--skip-git-repo-check
- Always use --skip-git-repo-check.
- When continuing a previous session, use
codex exec --skip-git-repo-check resume --lastvia stdin. When resuming don't use any configuration flags unless explicitly requested by the user e.g. if he species the model or the reasoning effort when requesting to resume a session. 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. - IMPORTANT: By default, append
2>/dev/nullto allcodex execcommands to suppress thinking tokens (stderr). Only show stderr if the user explicitly requests to see thinking tokens or if debugging is needed. - Run the command, capture stdout/stderr (filtered as appropriate), and summarize the outcome for the user.
- 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."
Quick Reference
| Use case | Sandbox mode | Key flags |
|---|---|---|
| Read-only review or analysis | read-only |
--sandbox read-only 2>/dev/null |
| Apply local edits | workspace-write |
--sandbox workspace-write --full-auto 2>/dev/null |
| Permit network or broad access | danger-full-access |
--sandbox danger-full-access --full-auto 2>/dev/null |
| Resume recent session | Inherited from original | echo "prompt" | codex exec --skip-git-repo-check resume --last 2>/dev/null (no flags allowed) |
| Run from another directory | Match task needs | -C <DIR> plus other flags 2>/dev/null |
Code Review Workflow
- IMPORTANT/DO NOT SKIP: Always run the command
codex-code-review --helpand read the help message before using the script. - Determine what to review:
- Staged/unstaged changes: Use
codex-code-review "<request>" [files...] - Committed changes: Use
codex-code-review --diff "<range>" "<request>" [files...]- Examples:
--diff "main...HEAD"(PR changes),--diff "HEAD~3..HEAD"(last 3 commits)
- Examples:
- Staged/unstaged changes: Use
- The script automatically:
- Uses
--sandbox read-only(reviews don't modify files) - Includes staged and unstaged git changes (or committed with --diff)
- Uses
gpt-5-codexmodel withmediumreasoning effort (hardcoded) - Suppresses thinking tokens for clean output
- Uses
--skip-git-repo-checkflag - Runs in foreground (do NOT run in background - output won't be captured)
- Uses
- After completion, inform user: "You can resume this Codex session for follow-up analysis using: echo 'your question' | codex exec --skip-git-repo-check resume --last 2>/dev/null"
- Optional: If user wants to resume, pipe their question directly to the resume command
Note:
- The script reviews ALL changes (both staged and unstaged) by default
- For committed changes (e.g., PR reviews), use
--diffoption:codex-code-review --diff "main...HEAD" "<request>" - Users can stage specific files first if they want to review only certain changes
- CRITICAL: Always run in foreground - background execution will not capture output properly
Following Up
- After every
codexcommand, immediately useAskUserQuestionto confirm next steps, collect clarifications, or decide whether to resume withcodex exec resume --last. - 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. - Restate the chosen model, reasoning effort, and sandbox mode when proposing follow-up actions.
Error Handling
- Stop and report failures whenever
codex --versionor acodex execcommand exits non-zero; request direction before retrying. - 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. - When output includes warnings or partial results, summarize them and ask how to adjust using
AskUserQuestion.
Additional References
- Codex CLI Help Menu (headless execution) - Complete help output showing all available options and flags for
codex execnon-interactive execution - Codex CLI Headless Execution Mode - Overview of non-interactive execution for automation workflows, including CLI arguments, sandbox policies, and session resumption
- Codex CLI Passing Inputs and Prompts - Guide to attaching files/images, using custom prompt templates, and passing prompts via arguments or stdin
- Codex CLI Slash Commands and Features - Summary table of interactive slash commands (e.g.,
/model,/approvals,/review) available during Codex sessions - Codex CLI Subcommands and Entry Points - CLI architecture documentation covering subcommand dispatch, authentication, execution modes, and utility commands