Skip to content
Back to skills

Codex Changelog

ASecurity

This skill should be used when the user asks to check for new Codex CLI (codex-cli) releases, "what changed in Codex", "any Codex updates", "check codex releases", "diff the codex version", or wants Codex CLI releases reviewed for changes relevant to THIS repo's Codex bridge. Reads a locally-stored last-checked codex-cli stable version, lists GitHub releases for openai/codex, reports changes relevant to the plugin's Codex integration (bridge argv, sandbox, exec/resume, JSONL output), and offe...

  • 3 stars
  • 0 votes
  • 0 copies
  • 2 views
  • Added September 2, 2026
ai-agentsrustbashnodegit

Works with

  • cli

Security analysis

A100/100

Pro scans all 3 files and shows the line behind each finding

Scanned September 2, 2026

npx -y skills add zeikar/hyperclaude --skill codex-changelog --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of Codex Changelog?

Add the live security badge to your README. It updates with every re-scan.

Security grade badge for Codex Changelog
[![Security: A — Skills Directory](https://www.skillsdirectory.com/api/skills/zeikar-codex-changelog/badge)](https://www.skillsdirectory.com/skills/zeikar-codex-changelog)

More formats (shields.io, HTML) on the badges page. Keep it an A: scan every change in CI with Pro.

Download with Pro
SKILL.md
---
name: codex-changelog
description: This skill should be used when the user asks to check for new Codex CLI (codex-cli) releases, "what changed in Codex", "any Codex updates", "check codex releases", "diff the codex version", or wants Codex CLI releases reviewed for changes relevant to THIS repo's Codex bridge. Reads a locally-stored last-checked codex-cli stable version, lists GitHub releases for openai/codex, reports changes relevant to the plugin's Codex integration (bridge argv, sandbox, exec/resume, JSONL output), and offers to advance the stored version.
---

# codex-changelog — Codex CLI release watch (hyperclaude bridge relevance)

Repo-local dev tool (NOT a plugin skill). Compare a stored "last-checked" codex-cli
STABLE version against the latest stable release, mine the release notes in between,
and report only what touches this repo's Codex bridge — then optionally advance the
stored version so the next run diffs from here.

The value is not "summarize Codex releases" — it is **mapping generic Codex CLI
changes onto the specific surface of the hyperclaude bridge** (the only Codex-spawning
code in the plugin) and verifying impact against the real bridge files.

## Source (differs from cc-changelog)

Codex's `CHANGELOG.md` only points at GitHub Releases — it is NOT a per-version file.
So the authoritative source is the **GitHub Releases of `openai/codex`**, read via `gh`
(already authed in this repo):
- `gh release list --repo openai/codex --limit <N>` — tags look like `rust-v0.142.5`
  (stable) and `rust-v0.143.0-alpha.NN` (pre-release). The row marked `Latest` is the
  current stable.
- `gh release view <tag> --repo openai/codex` — the per-release notes.

Step 2's `get-releases.mjs` helper wraps both calls (list → filter to new stables →
per-new-stable view), so you don't invoke `gh` by hand in the normal path.

Fallback if `gh` is unavailable: `WebFetch https://github.com/openai/codex/releases`.

**Track STABLE, note alphas.** The plugin runs against the installed stable codex, so
the version diff gates on stable→stable. The alpha stream (`-alpha.NN`, many per week)
is NOT tracked per-release — but DO surface a one-line "N newer alphas exist (latest
`rust-v0.143.0-alpha.NN`)" so upcoming changes are visible without firehose noise.

## State file

`.claude/skills/codex-changelog/.last-checked-version` (sibling of this file,
gitignored): a single line with the last-reviewed codex-cli STABLE version, e.g.
`0.142.5`. It is the diff baseline; it advances only in Step 6.

## Procedure

### Step 1 — Baseline
The diff baseline is `.claude/skills/codex-changelog/.last-checked-version` (one stable
`X.Y.Z` line) — call it `STORED`. Step 2's helper reads it automatically; you don't Read
it here. If it's missing/empty the helper exits 2 — then ask which stable version to
baseline (or read the installed one via `codex --version`) and pass it as the argument.

### Step 2 — List releases + collect new stable notes
Run the local helper — it lists `openai/codex` releases via `gh`, finds the latest
stable, and prints the notes of every STABLE newer than the baseline plus a one-line
alpha-awareness note (it version-compares tags, so skipped numbers are handled; the
per-alpha firehose is collapsed to a count):

```bash
node .claude/skills/codex-changelog/get-releases.mjs        # reads .last-checked-version
# or with a user-supplied baseline: node .claude/skills/codex-changelog/get-releases.mjs 0.142.5
```

Read the Bash output directly:
- `LATEST_STABLE=<x.y.z>` — the newest stable → this is `LATEST_STABLE`.
- `ALPHAS=<n> newer[ (latest rust-v…-alpha.NN)]` — the alpha-awareness line; surface it verbatim.
- `NOTE: window …` — appears only if the 40-release window didn't reach `STORED`
  (older stables may be missing; note it rather than assuming full coverage).
- then, per new stable (newest first): `=== <tag> (<name>) ===` followed by its notes.

If `gh` fails (exit 1), fall back to `WebFetch https://github.com/openai/codex/releases`
and read the same stable notes.

### Step 3 — Up-to-date short-circuit
If the output is `(up to date — no new stable since <STORED>)` (i.e. `LATEST_STABLE ==
STORED`, no newer stable), report "already current at `STORED`" — still surface the
`ALPHAS=` line if newer alphas exist — and STOP. Do not rewrite the state file.

### Step 4 — Map the collected stable notes to the bridge
The helper already printed each new stable's notes (Step 2). Classify each relevant item
into one of four buckets. **Report an item only if it lands on the bridge surface below**;
never assert impact without checking the anchor file.

Buckets:
- **🔧 Actionable** — needs a change in this repo (bridge argv, sandbox handling, parser).
- **✅ Favorable** — Codex now does natively what the bridge worked around; no action, note it.
- **🟢 Safe / no-op** — plausibly relevant but verified harmless for the bridge.
- **ℹ️ Informational** — worth knowing, behavior-neutral.

Bridge surface checklist (what to read to confirm impact):

| Surface | What to check | Repo anchors |
|---|---|---|
| Spawn argv | `codex exec --sandbox read-only -` (stdin prompt) shape; flag renames/removals/additions | `scripts/codex-bridge.mjs`, `scripts/codex/args.mjs`, `scripts/codex/codex.mjs` |
| Sandbox invariant | `--sandbox read-only` (fresh) + `-c sandbox_mode=read-only` (resume) semantics; whether resume inherits sandbox | `scripts/codex/*.mjs`, `CLAUDE.md` (Sandbox invariant) |
| exec / resume | `codex exec` + `codex exec resume` behavior; thread/session semantics; the removed native `exec review` subcommand | `scripts/codex/resume.mjs`, `docs/decisions.md` |
| Output parsing | stdout JSON/JSONL shape + fields the bridge parses (thread-id, token counts) | `scripts/codex/codex.mjs` (`parseCodexJsonl`) |
| Config overrides | `-c key=value` behavior | `scripts/codex/args.mjs` |
| Min version / prereqs | codex-cli minimum-version requirement | `CLAUDE.md`, `scripts/setup-doctor.mjs` |

For any flagged-but-uncertain item, deepen (read the anchor file / the full release
note) before concluding.

### Step 5 — Report
Lead with a one-line TL;DR answering "does anything need action?". Then the four buckets
(omit empty ones or say "none"), plus the alpha-awareness line. Cite repo files as
clickable `[path](path)` links. Keep it tight — a bridge-maintainer triage, not a
release-notes reprint.

### Step 6 — Advance the baseline
After reporting, offer to update `.last-checked-version` to `LATEST_STABLE` (default:
yes). On confirmation, overwrite the file with `LATEST_STABLE` + newline. Skip the bump
if the user wants to keep the current baseline for re-review. Never bump before reporting.

## Notes
- Read-only + report only — never edits the bridge as a side effect. Any actionable
  finding is handed back to the user to act on (e.g. via hyper-plan).
- Companion to the `cc-changelog` skill (sibling under `.claude/skills/`) — same shape,
  different source (GitHub Releases via `gh` vs a raw `CHANGELOG.md`).

Files in this skill

  • SKILL.md6.9 KB
  • get-releases.mjs5.1 KB
  • get-releases.test.mjs4.5 KB

Attribution

Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.

Comments

Loading comments…

Newsletter

Get the weekly list of safe new skills, and the ones we pulled.