codex-cli-runtime

An internal contract for forwarding requests to the Codex companion runtime from a rescue agent.

In plain words
What is it for?
Use it when a Codex rescue agent must send a task for diagnosis, planning, research, or an explicitly requested fix.
Why use it?
It keeps rescue requests focused on one runtime call and prevents the rescue agent from inventing a separate solution or hiding a failed run.

Skill for Claude CodeCodex

Install

Getting it into your agent

One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.

agentmods
npx agentmods add skills/openai/codex-plugin-cc/codex-cli-runtime
Any agent
npx skills add openai/codex-plugin-cc --skill codex-cli-runtime
Clone the repo
git clone --depth 1 https://github.com/openai/codex-plugin-cc

Made for: Claude Code, Codex.

Per session 19 Skills are progressive disclosure: only the name and description are preloaded; the body loads when the skill is used.
When invoked 749 The whole file, excluding the scripts and references it only reads on demand.
Security scan A 0 findings. Scan, not verified.
Origin original No closer match found in the catalogue.
Token cost

What it costs to keep this loaded

Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.

ModelPer sessionOnce invoked
Fable 5 $0.00019 $0.00749
Opus 5 $0.00010 $0.00375
Sonnet 5 $0.00004 $0.00150
Haiku 4.5 $0.00002 $0.00075

Measured 2d ago against content hash cce11c3bd6d7, method: parsed. Prices are Anthropic first-party input rates as of 2026-08-30, from the pricing page.

Security

Grade A, and why

codex-cli-runtime scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 2d ago.

A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.

Nothing flagged

None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.

Origin

Copies of this mod

8 near-identical copies found in the catalogue:

plugins/codex/skills/codex-cli-runtime/SKILL.md · 44 lines

What it actually says

Codex Runtime

Use this skill only inside the codex:codex-rescue subagent.

Primary helper:

  • node "${CLAUDE_PLUGIN_ROOT}/scripts/codex-companion.mjs" task "<raw arguments>"

Execution rules:

  • The rescue subagent is a forwarder, not an orchestrator. Its only job is to invoke task once and return that stdout unchanged.
  • Prefer the helper over hand-rolled git, direct Codex CLI strings, or any other Bash activity.
  • Do not call setup, review, adversarial-review, status, result, or cancel from codex:codex-rescue.
  • Use task for every rescue request, including diagnosis, planning, research, and explicit fix requests.
  • You may use the gpt-5-4-prompting skill to rewrite the user's request into a tighter Codex prompt before the single task call.
  • That prompt drafting is the only Claude-side work allowed. Do not inspect the repo, solve the task yourself, or add independent analysis outside the forwarded prompt text.
  • Leave --effort unset unless the user explicitly requests a specific effort.
  • Leave model unset by default. Add --model only when the user explicitly asks for one.
  • Map spark to --model gpt-5.3-codex-spark.
  • Default to a write-capable Codex run by adding --write unless the user explicitly asks for read-only behavior or only wants review, diagnosis, or research without edits.

Command selection:

  • Use exactly one task invocation per rescue handoff.
  • If the forwarded request includes --background or --wait, treat that as Claude-side execution control only. Strip it before calling task, and do not treat it as part of the natural-language task text.
  • If the forwarded request includes --model, normalize spark to gpt-5.3-codex-spark and pass it through to task.
  • If the forwarded request includes --effort, pass it through to task.
  • If the forwarded request includes --resume, strip that token from the task text and add --resume-last.
  • If the forwarded request includes --fresh, strip that token from the task text and do not add --resume-last.
  • --resume: always use task --resume-last, even if the request text is ambiguous.
  • --fresh: always use a fresh task run, even if the request sounds like a follow-up.
  • --effort: accepted values are none, minimal, low, medium, high, xhigh.
  • task --resume-last: internal helper for "keep going", "resume", "apply the top fix", or "dig deeper" after a previous rescue run.

Safety rules:

  • Default to write-capable Codex work in codex:codex-rescue unless the user explicitly asks for read-only behavior.
  • Preserve the user's task text as-is apart from stripping routing flags.
  • Do not inspect the repository, read files, grep, monitor progress, poll status, fetch results, cancel jobs, summarize output, or do any follow-up work of your own.
  • Return the stdout of the task command exactly as-is.
  • If the Bash call fails or Codex cannot be invoked, return nothing.
Changes

What this file has done since we first saw it

Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.

  1. 2d ago First seen · 44 lines · 19 tokens per session scan A cce11c3bd6d7

Subscribe to this mod's changes

codex-cli-runtime is a skill published in the GitHub repository openai/codex-plugin-cc (32,553 stars, last pushed 1mo ago), licensed Apache-2.0. It adds 19 tokens to every session and 749 once invoked, about $0.0001 per session on Opus 5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-30.

Related

Other skills, from other repositories

systematic-debugging

Use when encountering any bug, test failure, or unexpected behavior, before proposing fixes.

obra/superpowers · 21 tokens

next-cache-components-adoption

Turn on Cache Components in a Next.js app and resolve the blocking routes it surfaces. Use when the user wants to enable, adopt, or migrate to Cache Components, flip the cacheComponents flag, work through a flood of blocking-prerender / instant validation errors, run the cache-components-instant-false codemod, or…

vercel/next.js · 95 tokens

babysit-pr

Babysit a GitHub pull request after creation by continuously polling review comments, CI checks/workflow runs, and mergeability state until the PR is merged/closed or user help is required. Diagnose failures, retry likely flaky failures up to 3 times, auto-fix/push branch-related issues when appropriate, and keep…

openai/codex · 114 tokens

imagegen

Generate or edit raster images when the task benefits from AI-created bitmap visuals such as photos, illustrations, textures, sprites, mockups, or transparent-background cutouts. Use when Codex should create a brand-new image, transform an existing image, or derive visual variants from references, and the output…

openai/codex · 113 tokens

cpu-profile-analysis

Analyze V8/Chrome CPU profiles (.cpuprofile) and DevTools trace files (Trace-.json). Use when: profiling performance, investigating slow functions, comparing code paths, finding bottlenecks, analyzing timeToRequest, understanding call trees from sampling profiler data, analyzing layout/paint/rendering, investigating…

microsoft/vscode · 71 tokens

next-cache-components-optimizer

Drive a Next.js route to instant navigation by setting up an agentic loop, under Cache Components / PPR, on initial load (hard navigation) and client-side navigation (soft navigation). Encode the goal as a failing @next/playwright instant() e2e and work it to green, one verified route at a time; the shipped test then…

vercel/next.js · 170 tokens