codex-to-claude — independently scanned and version-tracked by SaferSkills.
SaferSkills independently audited codex-to-claude (Agent Skill) and scored it 100/100 (green). The audit ran 55 deterministic rules across Security, Supply Chain, Maintenance, Transparency, and Community; it found 0 high-severity and 0 lower-severity findings. The full rule-by-rule trace and per-finding evidence are below. Free, methodology-open.
Findings & checks · 0 flagged
Every scanned point with the score it earned and what moved between them.
First recorded scan — no prior version to compare against.
The primary manifest — the file an agent reads to learn what this artifact does.
Finds Codex skills/agents that have no Claude counterpart in this repo and adapts them to Claude Code conventions, one item at a time with per-item approval.
Run both diffs in parallel:
# Skills missing from claude/
comm -23 \
<(ls global/codex/skills/ | sort) \
<(ls global/claude/skills/ | sort)
# Agents missing from claude/ (strip .toml extension for comparison)
comm -23 \
<(ls global/codex/agents/ | sed 's/\.toml$//' | sort) \
<(ls global/claude/agents/ | sed 's/\.md$//' | sort)If both lists are empty, report "No gaps found — codex/ and claude/ are in sync" and stop.
Show the user two sections:
Skills to port (global/codex/skills/<name>/SKILL.md → global/claude/skills/<name>/SKILL.md)
- <name>
...
Agents to port (global/codex/agents/<name>.toml → global/claude/agents/<name>.md)
- <name>
...Ask which items to port. Do not proceed without explicit approval per item.
Read global/codex/skills/<name>/SKILL.md, then apply these substitutions:
| Find | Replace with |
|---|---|
AGENTS.md / AGENTS.override.md | CLAUDE.md |
$<skill-name> invocation syntax | /<skill-name> |
where-agents-md cross-references | where-claude |
audit-agent-docs cross-references | audit-claude-md |
Codex config paths (~/.codex/, $CODEX_HOME) | Claude config paths (~/.claude/) |
| "Codex" when referring to the product/tool | "Claude Code" |
| "AGENTS" when used as a generic concept for instruction files | "CLAUDE.md" |
Show the adapted content to the user and ask for approval before writing.
Write to global/claude/skills/<name>/SKILL.md only after approval.
Read global/codex/agents/<name>.toml. Extract:
name — use as-is (convert underscores to hyphens for kebab-case)description — use as-isdeveloper_instructions — becomes the Markdown bodysandbox_mode = "read-only" → explicit tools list (Read, Glob, Grep; add WebSearch/WebFetch only if the instructions reference web access)model_reasoning_effort = "medium" → model: haiku; "high" → omit (default Sonnet)Write global/claude/agents/<name>.md in this shape:
---
name: <kebab-name>
description: <description from TOML>
tools:
- Read
- Glob
- Grep
---
<developer_instructions content, with Codex→Claude product references fixed>Flag the output as needing human review before writing — TOML → Markdown is a lossy transformation and the instructions may contain Codex-specific concepts.
After all approved writes:
./install.shReport which symlinks were created.
Tell the user:
/commands to appear in autocompleteglobal/claude/ — skip with a warning if the target already exists.codex/ — it is read-only source for this skill.where-agents-md vs where-claude) must be noted — do not silently rename without telling the user../install.sh until at least one file has been written.~30 seconds. Free. No account. Every finding cites a rule and a line of evidence.