ce-update について
ce-update は Claude Code 向けのスキルです。インストール済みの compound-engineering と upstream main のバージョンを比較し、必要に応じて更新コマンドを案内します。
主な機能
- 01インストール済みと upstream のバージョン比較
- 02main の plugin.json からバージョン取得
- 03スキルのパスから marketplace を特定
- 04取得失敗や marketplace 外の状態に対応
活用シーン
- 01marketplace プラグインが最新か確認
- 02古いプラグインの更新コマンドを確認
インストール
コマンドをコピーしてターミナルで実行します。
npx skills add https:/ / github.com/ everyinc/ compound-engineering-plugin --skill ce-updateインストール後、Claude Code で/ce-updateを入力して読み込まれたか確認します。
同梱ファイル
SKILL.md と一緒にインストールされる参考資料やスクリプト。
scripts/currently-loaded-version.shmarketplace-name.shupstream-version.sh詳細
プラグインのバージョンを確認
インストールされている compound-engineering プラグインのバージョンが、上流の
plugin.json の main ブランチと一致しているか確認し、一致しない場合は更新コマンドを提示します。
Claude Code 専用です。
上流のバージョンには、最新の GitHub リリースタグではなく、main ブランチ上の
plugins/compound-engineering/.claude-plugin/plugin.json の値を使用します。マーケットプレイスではプラグインの内容を
main の HEAD からインストールするためです。リリースタグと比較すると、リリース間の通常の状態として
main が最後のタグより先行しているたびに、誤って更新が必要と判定されます。
ステップ 1:バージョンを調べる
以下の 3 つのスクリプトを Bash ツールで並列に実行します。それぞれ 1 行の出力を返すので、
以下の判定ロジックで使う値を取得してください。${CLAUDE_SKILL_DIR} を使用すると、
claude --plugin-dir を使ったローカル開発セッションと、標準のマーケットプレイスキャッシュへのインストールの両方で、パスを正しく解決できます。
bash "${CLAUDE_SKILL_DIR}/scripts/upstream-version.sh"
bash "${CLAUDE_SKILL_DIR}/scripts/currently-loaded-version.sh"
bash "${CLAUDE_SKILL_DIR}/scripts/marketplace-name.sh"
${CLAUDE_SKILL_DIR} が未設定、または解決されない場合(上記のコマンドが
No such file or directory で失敗する場合)、ハーネスからスキルのディレクトリを取得できません。
これは標準的な Claude Code セッションではありません。ステップ 2 の
__CE_UPDATE_NOT_MARKETPLACE__ の場合と同じように扱い、説明して終了してください。
scripts/upstream-version.sh は gh api を使用して、main ブランチ上の plugin.json を読み取ります。
バージョン文字列を出力します。gh が利用できない場合やレート制限を受けている場合は、
センチネル値 __CE_UPDATE_VERSION_FAILED__ を出力します。
scripts/currently-loaded-version.sh と scripts/marketplace-name.sh は、
${CLAUDE_SKILL_DIR} をマーケットプレイスキャッシュのレイアウト
~/.claude/plugins/cache/<marketplace>/compound-engineering/<version>/skills/ce-update
と照合して解析します。
バージョン部分/マーケットプレイス部分を出力します。パスが一致しない場合(claude --plugin-dir を使った
ローカル開発で一般的です)は、センチネル値 __CE_UPDATE_NOT_MARKETPLACE__ を出力します。
ステップ 2:判定ロジックを適用する
失敗ケースの処理
scripts/upstream-version.sh が __CE_UPDATE_VERSION_FAILED__ を出力した場合:上流のバージョンを取得できなかったこと(gh が利用できないか、レート制限を受けている可能性があること)をユーザーに伝え、終了します。
scripts/currently-loaded-version.sh が
__CE_UPDATE_NOT_MARKETPLACE__ を出力した場合:スキルは標準のマーケットプレイスキャッシュ以外から読み込まれています。次の 2 つのケースは同じ扱いになります。claude --plugin-dir を使ったローカル開発セッションか、Claude Code 以外のプラットフォームです(このスキルはプラグインハーネスのキャッシュレイアウトに依存するため、Claude Code 専用です)。ユーザーに次のように伝えてください。
"Skill is loaded from outside the marketplace cache at
~/.claude/plugins/cache/. This is normal when usingclaude --plugin-dirfor local development. No action for this session. Your marketplace install (if any) is unaffected — run/ce-updatein a regular Claude Code session (no--plugin-dir) to check that cache."
その後、終了します。
バージョンを比較する
最新 — currently_loaded == upstream:
"compound-engineering v{version} is installed and up to date."
古いバージョン — currently_loaded != upstream:
"compound-engineering is on v{currently_loaded} but v{upstream} is available.
Update with:
claude plugin update compound-engineering@{marketplace_name}Then restart Claude Code to apply."
claude plugin update コマンドは Claude Code 自体に同梱されており、インストール済みプラグインを最新バージョンに更新します。以前の手動キャッシュ削除やマーケットプレイス更新の回避策に代わるものです。マーケットプレイス名はハードコードせず、スキルのパスから取得します。このプラグインは複数のマーケットプレイス名で配布されているためです(例:README に記載されている一般公開インストール用の compound-engineering-plugin や、社内/チーム用マーケットプレイスの別の名前)。