# Codex Ask

> Ask Codex for a grounded second opinion on any question - advisory, not gating

- Skill: `pilastdigit/codex-ask` (Agent Skill, multi-file: 8 files)
- Install (CLI): `npx skillmds@latest add pilastdigit/codex-ask`
- Raw SKILL.md: https://api.skillmd.com/api/skills/pilastdigit/codex-ask/raw
- Safety review: pending
- Works with: Claude Code, Claude.ai, OpenAI Codex
- Category: Coding & Dev Tools
- Author: pilastdigit (https://skillmd.com/u/pilastdigit)
- Updated: 2026-09-17
- Page: https://skillmd.com/skills/pilastdigit/codex-ask

---


# Codex Ask

Free-form second opinion from Codex CLI on **any matter** — architecture decisions, debugging hypotheses, research conclusions, trade-off calls — not just plans and diffs. Codex answers from inside the repository (read-only sandbox), so its opinion is grounded in the actual code, not in whatever excerpt happened to be quoted.

**Advisory, not authoritative.** Unlike `codex-plan-review` / `codex-code-review`, there are no verdict tags and nothing is gated on the answer: treat the response as one input to your judgment, exactly like a colleague's opinion. Agreement is weak evidence; *disagreement* is a strong signal that something deserves the user's attention.

State persisted per topic label under `.claude/skills/codex-ask/state/` — follow-ups resume the same thread, enabling multi-round discussion. Invoke this skill's own wrapper scripts under `.claude/skills/codex-ask/scripts/` — they pin the correct `STATE_DIR` and delegate to the shared `codex-plan-review` implementation, so there is no `export` to remember (a forgotten export would silently operate on the plan-review thread for the same label).

## Arguments

- `<topic-label>` — short kebab-case label for the discussion (becomes the state key), e.g. `orchestrator-choice`, `flaky-auth-test`. Auto: start if no thread, resume if one exists.
- `<question>` — the actual question, passed as trailing text. Include your own draft position when you have one ("Here is my recommendation: … Red-team it").
- `reset <topic-label>` / `show <topic-label>` — drop state / display last answer.

## Execution

1. **Start** a discussion:
   ```bash
   bash .claude/skills/codex-ask/scripts/start.sh \
       --prompt-file .claude/skills/codex-ask/prompts/ask.tpl \
       <topic-label> "<question — include your draft position and ask for disagreement>"
   ```

2. **Follow up** in the same thread (counterpoints, new evidence):
   ```bash
   bash .claude/skills/codex-ask/scripts/resume.sh \
       --prompt-file .claude/skills/codex-ask/prompts/followup.tpl \
       <topic-label> "<follow-up or counterpoint>"
   ```

3. **Reset**: `bash .claude/skills/codex-ask/scripts/reset.sh <topic-label>` — **Show**: `bash .claude/skills/codex-ask/scripts/show.sh <topic-label>`

## When to use

- Second opinion on an architecture/design decision **before it hardens** (e.g., at the end of a research session, before writing the plan).
- Root-cause help when genuinely stuck on a bug — fresh eyes, different blind spots.
- "Red-team this conclusion" on a memo or recommendation you are about to present.

## When NOT to use

- Questions that need the **user's** preference or judgment — ask the user, not Codex.
- Trivial lookups or anything settled by reading the code yourself — every ask costs a Codex run.
- As a gate: never block or approve work based on the answer; that is what the review skills with verdict tags are for.

## Notes

- **Run Codex calls in a background shell.** Invoke `start.sh` / `resume.sh` via the Bash tool with `run_in_background: true` — never as a foreground/inline command. Codex runs at xhigh effort routinely outlast the foreground command timeout; the background task notifies on completion, then read its output. `reset.sh` / `show.sh` are instant and fine in the foreground.
- **Set `CODEX_TIMEOUT=1800`** (30 min) when invoking `start.sh` / `resume.sh` — a generous circuit breaker against hung runs (script default `0` = no timeout); fails through the normal error path with a "timed out" message on expiry.
- Read-only sandbox — Codex can read the repo but change nothing.
- Model/effort/tier come from `codex-plan-review/scripts/_common.sh` (non-implement flows get the review-class model at xhigh by default); override per run via `CODEX_MODEL` / `CODEX_EFFORT` / `CODEX_TIER`.
- Surface Codex's answer to the user verbatim when it disagrees with your position — the disagreement itself is the valuable output.

