Skip to content
cccskills
FreePublished on GitHub

codex

Use when the user asks to run Codex CLI (codex exec, codex resume) or references OpenAI Codex for code analysis, refactoring, or automated editing

The English summary is being prepared. Showing the original description.

Works withOpenAI
See how to install

Files included (1)

  • SKILL.md8.5 KB

SKILL.md (original)

Review the instructions the agent will receive before you install.

Codex Skill Guide

Running a Task

  1. For a new session (resumes inherit the prior model/effort — see step 5), ask the user (via AskUserQuestion) which model AND which reasoning effort to use, in a single prompt with two questions. When the user expresses no preference, default to gpt-6-astra at high.
    • Model — default gpt-6-astra:
      • GPT-6: gpt-6-astra (frontier / most capable — default), gpt-6.1-sol (latest workhorse for coding and everyday work), gpt-6-sol (previous-generation workhorse), gpt-6-luna (fast & affordable, easier tasks)
      • GPT-5.6: gpt-5.6-sol (reliable agentic workhorse), gpt-5.6-terra (balanced, everyday), gpt-5.6-luna (fast & affordable)
      • Legacy (rejected as unsupported when Codex is signed in with a ChatGPT account): gpt-5.5, gpt-5.4, gpt-5.4-mini, gpt-5.3-codex-spark, gpt-5.3-codex
    • Reasoning effort — default high: low, medium, high, xhigh, max, ultra.
      • max/ultra require a GPT-6 or GPT-5.6 model; ultra is only on astra/sol/terra (luna caps at max); legacy models cap at xhigh.
      • ultra = maximum reasoning with automatic task delegation (slowest and most expensive — reserve for the hardest jobs).
      • If the chosen effort exceeds the chosen model's maximum, fall back to that model's highest supported effort and tell the user.
  2. Select the sandbox mode required for the task; default to --sandbox read-only unless edits or network access are necessary.
  3. Assemble the command with the appropriate options:
    • -m, --model <MODEL>
    • --config model_reasoning_effort="<low|medium|high|xhigh|max|ultra>" (max/ultra only on GPT-6 / GPT-5.6 models; ultra only on astra/sol/terra — see step 1)
    • --sandbox <read-only|workspace-write|danger-full-access>
    • -C, --cd <DIR>
    • --skip-git-repo-check (only when permitted by step 4)
    • "your prompt here" (as final positional argument)
  4. Determine whether the effective target directory is inside a Git repository, including any explicit working directory such as -C <DIR>.
    • Unknown Git context is unresolved, not consent; resolve it before invoking.
    • Inside Git, omit --skip-git-repo-check by default; include it only for an applicable explicit request for that flag.
    • Outside Git, include it only with applicable approval or an explicit flag request. If permission is missing, ask using AskUserQuestion and do not invoke until permission is given.
    • Applicable previous approval satisfies the gate; a later denial overrides any previous approval or request. A general request to use Codex or a sandbox mode is not skip-flag approval.
    • If denied inside Git, omit the flag and continue only if the remaining task is authorized. If denied outside Git, stop and explain the blocked invocation.
    • Do not use an unapproved retry, fallback, or Git initialization to bypass this gate.
  5. When continuing a previous session, use codex exec resume --last via stdin. Resuming does not authorize --skip-git-repo-check; apply step 4 before each resume and add the flag only when permitted. 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 inside Git by default: echo "your prompt here" | codex exec resume --last 2>/dev/null. All flags have to be inserted between exec and resume.
  6. 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.
  7. IMPORTANT (stdin): codex exec always reads stdin and concatenates it with the positional prompt -- even when the prompt is fully supplied as a positional argument. If stdin is not closed, codex blocks forever. When invoking from a harness (background tasks, hooks, scripts where stdin is not a TTY but also not closed), explicitly redirect stdin: append </dev/null to the command, e.g. codex exec ... "prompt" </dev/null 2>/dev/null. Symptom of getting this wrong: zero bytes of stdout, zero CPU accumulated, process appears hung indefinitely.
  8. Run the command, capture stdout/stderr (filtered as appropriate), and summarize the outcome for the user.
  9. 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 caseSandbox modeKey flags
Read-only review or analysisread-only--sandbox read-only 2>/dev/null
Apply local editsworkspace-write--sandbox workspace-write 2>/dev/null
Permit network or broad accessdanger-full-access--sandbox danger-full-access 2>/dev/null
Resume recent sessionInherited from originalecho "prompt" | codex exec resume --last 2>/dev/null (inside Git by default; no configuration flags unless explicitly requested; apply step 4 to the skip flag)
Run from another directoryMatch task needs-C <DIR> plus other flags 2>/dev/null

Execution timeouts

Codex produces no intermediate output — it writes the result only at completion. If the process is killed before finishing, the output file is silently empty (no error).

Preferred approach: run synchronously — eliminates timeout risk entirely and the conversation waits for the result anyway.

If running in background, set the execution timeout based on reasoning effort:

Reasoning effortTimeout
low150s
medium300s
high600s
xhigh1200s
max1800s
ultra1800s

Following Up

  • After every codex command, immediately use AskUserQuestion to confirm next steps, collect clarifications, or decide whether to resume with codex exec resume --last.
  • When resuming, apply step 4's skip-flag gate and pipe the new prompt via stdin: echo "new prompt" | codex exec resume --last 2>/dev/null (inside Git by default). 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.

Critical Evaluation of Codex Output

Codex is powered by OpenAI models with their own knowledge cutoffs and limitations. Treat Codex as a colleague, not an authority.

Guidelines

  • Trust your own knowledge when confident. If Codex claims something you know is incorrect, push back directly.
  • Research disagreements using WebSearch or documentation before accepting Codex's claims. Share findings with Codex via resume if needed.
  • Remember knowledge cutoffs - Codex may not know about recent releases, APIs, or changes that occurred after its training data.
  • Don't defer blindly - Codex can be wrong. Evaluate its suggestions critically, especially regarding:
    • Model names and capabilities
    • Recent library versions or API changes
    • Best practices that may have evolved

When Codex is Wrong

  1. State your disagreement clearly to the user
  2. Provide evidence (your own knowledge, web search, docs)
  3. Optionally resume the Codex session to discuss the disagreement. Identify yourself as Claude so Codex knows it's a peer AI discussion. Use your actual model name (e.g., the model you are currently running as) instead of a hardcoded name:
    echo "This is Claude (<your current model name>) following up. I disagree with [X] because [evidence]. What's your take on this?" | codex exec resume --last 2>/dev/null
    
  4. Frame disagreements as discussions, not corrections - either AI could be wrong
  5. Let the user decide how to proceed if there's genuine ambiguity

Error Handling

  • Stop and report failures whenever codex --version or a codex exec command exits non-zero; request direction before retrying.
  • Before you use high-impact flags (--sandbox danger-full-access, --skip-git-repo-check) ask the user for permission using AskUserQuestion unless it was already given. For --skip-git-repo-check, applicable previous approval or an explicit flag request satisfies this gate; apply step 4's Git-context and denial rules to executions and resumes. A later denial overrides previous approval or request.
  • When output includes warnings or partial results, summarize them and ask how to adjust using AskUserQuestion.

Reviews

No reviews yet. Tell others what you thought.

Comments

No login needed. Share how it worked for you, ask a question, or note where it did not run.

No comments yet. Be the first to write one.

Comments are published right away. Do not include personal information such as email addresses or phone numbers. Up to 2 URLs.

0 / 1,000 characters

This form is protected by reCAPTCHA, and the Google Privacy Policy and Terms of Service apply.

Report a problem with this skill