Skip to content

原文(日本語に翻訳)

マーケットプレイスがgitリポジトリに紐づくローカルフォルダパスとして追加されている場合に、プラグインの依存関係のバージョン固定が尊重されない問題を修正

原文(英語)

Fixed plugin dependency version pins not being honored when the marketplace was added as a local folder path backed by a git repo

概要

プラグインのマーケットプレイスを、gitリポジトリに紐づいたローカルフォルダパスとして追加した場合に、プラグインの依存関係(dependencies)で指定したバージョン固定(version pins)が無視されてしまうバグがありました。リモートURLでマーケットプレイスを追加した場合は問題なく動作していましたが、ローカル開発時によく使われる「gitリポジトリをローカルパスとして参照する」構成では、指定したバージョンと異なるバージョンの依存プラグインがインストールされることがありました。v2.1.196でこの問題が修正され、ローカルフォルダパスのマーケットプレイスでもバージョン固定が正しく適用されます。

基本的な使い方

bash
# gitリポジトリのローカルクローンをマーケットプレイスとして追加
/plugin marketplace add ./local-marketplace
json
// marketplace.json でのプラグイン依存関係の指定例
{
  "plugins": [
    {
      "name": "main-plugin",
      "source": "./plugins/main-plugin",
      "dependencies": {
        "helper-plugin": "1.2.0"
      }
    }
  ]
}

実践例

gitリポジトリ連携のローカルマーケットプレイス追加

bash
# gitリポジトリをクローンしてローカルマーケットプレイスとして使用
git clone https://github.com/myorg/claude-plugins.git marketplace
/plugin marketplace add ./marketplace

依存関係バージョン固定の設定例

json
// .claude-plugin/marketplace.json
{
  "plugins": [
    {
      "name": "base-utilities",
      "source": "./plugins/base-utilities",
      "version": "1.0.0"
    },
    {
      "name": "code-analyzer",
      "source": "./plugins/code-analyzer",
      "version": "2.1.0",
      "dependencies": {
        "base-utilities": "1.0.0"
      }
    }
  ]
}

修正前後の挙動比較

【修正前】
/plugin marketplace add ./marketplace (gitバックエンドのローカルパス)
/plugin install code-analyzer
→ dependencies で指定した "base-utilities": "1.0.0" が無視され、
   意図しないバージョンの base-utilities がインストールされることがあった

【修正後】
/plugin marketplace add ./marketplace (gitバックエンドのローカルパス)
/plugin install code-analyzer
→ dependencies で指定したバージョンが正しく解決され、
   base-utilities@1.0.0 がインストールされる

注意点

  • 影響を受けるのは、gitリポジトリに紐づくローカルフォルダパスとしてマーケットプレイスを追加した場合のみです。リモートのgit URLやHTTP(S)経由で追加したマーケットプレイスはこのバージョン以前から正しく動作していました
  • チームで開発中のプラグインマーケットプレイスをローカル参照している場合は、アップグレード後にバージョン固定の挙動が変わる(正しく適用されるようになる)点に注意してください
  • 依存バージョンの指定は固定値(例: 1.0.0)のほか、セマンティックバージョニングの範囲指定もサポートされます

関連情報