migrate-codex

Regenerates Codex rules from Claude settings permissions via a deterministic script.

3|Updated Jun 7, 2026
One-click install
npx skills add https://github.com/MLShukai/ResoniteIO --skill migrate-codex-mlshukai
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: migrate-codex
Source: https://github.com/MLShukai/ResoniteIO/tree/main/.claude/skills/migrate-codex
Command: npx skills add https://github.com/MLShukai/ResoniteIO --skill migrate-codex-mlshukai

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve? When a repository treats Claude configuration (.claude/) as the source of truth, Codex-side rule files drift out of sync whenever permissions change. This Skill keeps .codex/rules/default.rules consistent by regenerating it from .claude/settings*.json instead of editing it by hand. ## Core Features & Use Cases - Deterministic rule generation: Runs just migrate-codex (which invokes python3 scripts/migrate_codex.py) to convert Bash allow/deny permissions from .claude/settings.json and .claude/settings.container.json into Codex prefix_rule entries. - Drift detection: just migrate-codex --check exits non-zero when the generated rules are stale, so CI or pre-commit can catch desynchronization. - Clear scope boundary: Only settings-derived Bash permissions are synced; content-level migration of skills, agents, and prose guidance is delegated to the Codex-side migrate-claude skill. - Use Case: After adding a new allowed Bash command to .claude/settings.json, run the check, regenerate the rules file, review the diff, and commit the generated artifact in the same commit. ## Quick Start Ask the assistant to sync Codex settings by running just migrate-codex --check and then regenerating .codex/rules/default.rules if it is stale.

Frequently Asked Questions about migrate-codex

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I sync Claude settings permissions to Codex rules?

Run just migrate-codex, which executes scripts/migrate_codex.py to read permissions from .claude/settings.json and .claude/settings.container.json and regenerate .codex/rules/default.rules. Review the git diff and commit the generated file in the same commit as your settings change.

How do I check if Codex rules are out of sync with Claude settings?

Run just migrate-codex --check. The command exits with a non-zero status when .codex/rules/default.rules is stale relative to the current .claude/settings*.json permissions, making it suitable for CI or pre-commit hooks.

What permissions does the migrate-codex script convert to Codex rules?

Only deterministic Bash permissions are converted, mapping Bash allow and deny entries to Codex prefix_rule entries. Non-Bash permissions such as Edit, Read, and Write are left to Codex's tools and sandbox handling and appear only as header comments.

Can I edit .codex/rules/default.rules manually?

No. The file is always a script-generated artifact and must not be hand-edited. Change the source permissions in .claude/settings*.json and regenerate the rules with just migrate-codex instead.

Does migrate-codex sync Claude skills and agents to Codex?

No. Content-level migration of skills, agents, and prose guidance is handled by the separate migrate-claude skill on the Codex side, because it requires judgment that should not be scripted. This skill only syncs settings-derived rules.