AgentSkillsCN

sync-skills

在.codex/skills/、.github/skills/与.claude/skills/之间实现技能的双向同步。对于每项技能,最近一次编辑的存储位置将胜出,并自动同步至其他两个位置。在三个位置中的任意一处创建或编辑技能后,均需运行此同步操作。

SKILL.md
--- frontmatter
name: sync-skills
description: Bidirectionally sync skills across .codex/skills/, .github/skills/, and .claude/skills/. Per-skill, the most recently edited location wins and is propagated to the other two. Run after creating or editing any skill in any of the three locations.

Sync Skills

.codex/skills/, .github/skills/, .claude/skills/ の3箇所を双方向同期する。 スキルごとに 最終更新が最も新しい場所 を自動的にソースとして扱い、他の2箇所へコピーする。

When to Use

  • .codex/, .github/, .claude/ のいずれかでスキルを追加または編集したとき
  • 3箇所の内容が一致しているか確認したいとき

Workflow

  1. スクリプトを実行する:
    bash
    bash .codex/skills/sync-skills/scripts/sync_skills.sh
    
  2. 出力の (from: ...) でどこがソースになったかを確認する。
  3. 変更をコミットする(commit-with-npb-rights-check スキルを使用)。

Options

フラグ動作
(なし)Newest-wins: スキルごとに最終更新の場所をソースとする
--from=codex.codex/skills/ を強制的にソースとする
--from=github.github/skills/ を強制的にソースとする
--from=claude.claude/skills/ を強制的にソースとする
--dry-runファイルを変更せず差分だけ表示する

How Newest-Wins Works

スキルごとに SKILL.md の mtime(最終更新時刻)を3箇所で比較し、 最も新しいものを持つ場所をソースとして残り2箇所へコピーする。

code
編集した場所の SKILL.md mtime > 他2箇所
    → その場所からコピー

--from= で強制指定した場合、mtime に関係なく指定した場所のみソースとして使用する。

What This Skill Does

  • 3箇所すべてのスキルディレクトリを収集し、名前を重複排除する。
  • 各スキルのソースを決定し、SKILL.md, scripts/, agents/, references/ をコピーする。
  • sync-skills 自身はスキップ(自己参照を防ぐ)。
  • SKILL.md がどこにも存在しない孤立ディレクトリを検出・報告する(削除はしない)。

Rules

  • スキルを編集したら直後にこのスクリプトを実行し、3箇所を常に一致させる。
  • 手動で2箇所以上を同時に異なる編集をすると、古い方が上書きされる。
  • 孤立ディレクトリは手動で確認・削除する。