claude-code-plugin-release について
claude-code-plugin 向けのリリース手順スキルです。バージョン更新、ビルド検証、コミット、タグ付け、公開の引き継ぎと後続作業を案内します。
主な機能
- 01変更に応じたリリース区分
- 02バージョンマニフェストの更新
- 03成果物のビルドと同期
- 04コミット、タグ付け、プッシュ
- 05npm 公開の引き継ぎ
- 06リリース作成と変更履歴の更新
活用シーン
- 01プラグインのバージョンリリース準備
- 02各マニフェストのバージョン整合性確認
- 03メンテナー操作が必要な公開手順の完了
インストール
コマンドをコピーしてターミナルで実行します。
$
npx skills add https:/ / github.com/ thedotmack/ claude-mem --skill claude-code-plugin-releaseインストール後、Claude Code で/claude-code-plugin-releaseを入力して読み込まれたか確認します。
同梱ファイルscripts/generate_changelog.js
詳細
バージョン更新とリリースのワークフロー
重要: 開始前に、詳細なリリースノートを計画して作成してください。
最重要: ビルド成果物を含め、すべてをコミットしてください。このワークフローの最後に、コミットまたはプッシュされていないものが何も残っていない状態にしてください。最後に git status を実行して確認してください。
準備
-
分析:変更が PATCH(バグ修正)、MINOR(機能追加)、MAJOR(破壊的変更)のどれに該当するか判断します。
-
環境:
git remote -vからリポジトリのオーナー名と名前を特定します。 -
パス — バージョン文字列を含むすべてのファイル:
package.json— npm/npx で公開されるバージョン(npx [email protected]はここから解決されます)plugin/package.json— バンドルされたプラグインのランタイム依存関係.claude-plugin/marketplace.json—plugins[0].version内のバージョン.claude-plugin/plugin.json— トップレベルの Claude プラグインマニフェストplugin/.claude-plugin/plugin.json— バンドルされた Claude プラグインマニフェスト.codex-plugin/plugin.json— Codex プラグインマニフェストplugin/.codex-plugin/plugin.json— バンドルされた Codex プラグインマニフェストopenclaw/openclaw.plugin.json— OpenClaw プラグインマニフェスト
編集前に網羅性を確認します:
git grep -l "\"version\": \"<OLD>\""で上記の8ファイルすべてが表示される必要があります。このドキュメントの最終更新後に新しいマニフェストが追加されている場合は、この一覧を更新してください。
ワークフロー
- 更新:上記のすべてのパスでバージョン文字列をインクリメントします。
CHANGELOG.mdは再生成されるため、変更しないでください。 - 確認:
git grep -n "\"version\": \"<NEW>\""を実行し、8ファイルすべてが一致することを確認します。git grep -n "\"version\": \"<OLD>\""はヒットがゼロになるはずです。 - ビルドと同期:
npm run build-and-syncを実行して、成果物を再生成し、ローカルのマーケットプレイスコピーを同期し、ワーカーを再起動して、キューをクリアします。リリース検証にnpm run buildのみを使用しないでください。ローカルのマーケットプレイスとワーカーが同期されない状態になる可能性があります。 - コミット:
git add -A && git commit -m "chore: bump version to X.Y.Z"。 - タグ付け:
git tag -a vX.Y.Z -m "Version X.Y.Z"。 - プッシュ:
git push origin main && git push origin vX.Y.Z。 - npm に公開 — 人間のメンテナーに引き継いでください。 人間のメンテナーから npm のセキュリティに関する懸念が示されているため、現在はメンテナー本人のみが提供できる認証情報と2FAが公開に必要です。エージェント自身が
npm publish(または同様に公開を行うnp/npm run release:*)を実行してはいけません。ここで npm への公開を人間に引き継いでください: 作業を止めて、バージョンがコミット、タグ付け、プッシュ済みであること、およびnpx [email protected]で解決できるようにするには npm への公開が必要であることを伝えてください。次のコマンドを伝えてください:
人間が公開を完了したことを確認してから、公開されたことを検証してください:npm publish # 人間が実行 — prepublishOnly スクリプトがパッケージを再ビルドします
公開時のビルドによってローカルの成果物が変更された場合は、その後にnpm view [email protected] version # X.Y.Z が表示されるはずですnpm run build-and-syncを再度実行してください。 - GitHub リリース:
gh release create vX.Y.Z --title "vX.Y.Z" --notes "RELEASE_NOTES"。 - 変更履歴:プロジェクトの変更履歴スクリプトで再生成します:
(npm run changelog:generatenode scripts/generate-changelog.jsを実行します。このスクリプトは GitHub API からリリースを取得し、CHANGELOG.mdを書き換えます。) - 変更履歴の同期:更新した
CHANGELOG.mdをコミットしてプッシュします。 - 通知:Discord の Webhook 情報を含む
.envがある~/Scripts/claude-mem/から、Discord 通知を実行します:
リリースの作業ツリーにローカルのcd ~/Scripts/claude-mem/ && npm run discord:notify vX.Y.Z.envがない場合でも、必ず実行してください。 - 完了:
git statusを実行します。作業ツリーはクリーンでなければなりません。
チェックリスト
- 8 つすべての設定ファイルでバージョンが一致している
- 古いバージョンで
git grepを実行し、ヒットが 0 件である -
npm run build-and-syncが成功している - Git タグを作成してプッシュしている
- NPM の公開を人間に引き継いでいる(エージェントは
npm publishを実行しません。人間がセキュリティ上の懸念を示したためです)。公開後、npm view [email protected] versionで確認します(これによりnpx [email protected]で解決されます) - リリースノートを添えて GitHub リリースを作成している
-
CHANGELOG.mdを更新してプッシュしている -
~/Scripts/claude-mem/から Discord 通知を実行している -
git statusで作業ツリーがクリーンであることを確認している
コメント
Markdown 対応