Skip to content

justmaiko12/claudexsync

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

1 Commit
 
 
 
 
 
 

Repository files navigation

ClaudexSync

One skill library. One brain. Two agents.

Claude Code and OpenAI Codex are secretly compatible: both load skills from a folder of SKILL.md files, and both read a Markdown instruction file (CLAUDE.md for Claude, AGENTS.md for Codex). ClaudexSync exploits that to make them run as one system with two models:

  • 🔁 Skill sync — install a skill in either agent, mirror it to the other with one sentence
  • 🧠 Instruction sync — merges your CLAUDE.md and AGENTS.md into one source of truth (symlinked, so they can never drift again)
  • Auto-sync (optional, macOS) — a tiny background watcher mirrors every new skill you add, in either agent, within seconds

Install

Copy the skill into either agent — it teaches both directions:

git clone https://github.com/justmaiko12/claudexsync.git
cp -R claudexsync/claudex-sync ~/.claude/skills/claudex-sync

or for Codex:

cp -R claudexsync/claudex-sync ~/.codex/skills/claudex-sync

Restart the agent (skills load at session start).

Use it

Just talk to your agent:

Say It does
"sync my existing skills" Diffs both skill folders, lets you pick what to mirror
"sync the X skill to codex" Copies one skill across + adapts agent-specific references
"merge my CLAUDE.md and AGENTS.md" Merges instruction files into one, symlinks the other name to it
"install the claudex auto-sync watcher" Sets up the macOS watcher for automatic mirroring

How auto-sync works

scripts/install-autosync.sh loads a launchd agent that watches ~/.claude/skills and ~/.codex/skills. On first run it snapshots a baseline and only mirrors skills added after that — so it never floods one agent with the other's history. Verbatim copies, a denylist for agent-coupled skills, and a log at ~/.local/state/skill-sync/sync.log.

Turn it off anytime:

launchctl unload ~/Library/LaunchAgents/com.maikolabs.claudexsync.plist

Why not just sync everything?

Every skill's description loads into the agent's context at session start. A lean shared library beats a bloated one — the skill is opinionated about this and will steer you toward syncing what you actually use.

Good to know

  • Plugin-namespaced skills (superpowers:*, gsd:*, …) depend on their plugin's machinery and shouldn't be raw-copied — the skill warns instead of breaking things.
  • Auto-synced copies are exact copies. If one acts weird in the other agent, ask: "adapt the X skill for codex".
  • The instruction merge always backs up originals (*.pre-claudexsync) and shows you the merged result before writing.

Made by MaikoLabs · MIT License

About

One skill library, one brain, two agents — sync skills and instructions between Claude Code and OpenAI Codex

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages