プラグインマーケットプレイスは、Claude Codeエクステンションの発見、インストール、管理を簡単にする利用可能なプラグインのカタログです。このガイドでは、既存のマーケットプレイスの使用方法と、チーム配布用の独自マーケットプレイスの作成方法を説明します。

概要

マーケットプレイスは、利用可能なプラグインをリストし、それらの場所を記述するJSONファイルです。マーケットプレイスは以下を提供します:
  • 一元化された発見: 複数のソースからのプラグインを一箇所で閲覧
  • バージョン管理: プラグインのバージョンを自動的に追跡・更新
  • チーム配布: 組織全体で必要なプラグインを共有
  • 柔軟なソース: gitリポジトリ、GitHubリポジトリ、ローカルパス、パッケージマネージャーをサポート

前提条件

  • Claude Codeがインストールされ実行中
  • JSONファイル形式の基本的な理解
  • マーケットプレイス作成の場合: Gitリポジトリまたはローカル開発環境

マーケットプレイスの追加と使用

/plugin marketplaceコマンドを使用してマーケットプレイスを追加し、異なるソースからプラグインにアクセスします:

GitHubマーケットプレイスの追加

.claude-plugin/marketplace.jsonを含むGitHubリポジトリを追加
/plugin marketplace add owner/repo

Gitリポジトリの追加

任意のgitリポジトリを追加
/plugin marketplace add https://gitlab.com/company/plugins.git

開発用ローカルマーケットプレイスの追加

.claude-plugin/marketplace.jsonを含むローカルディレクトリを追加
/plugin marketplace add ./my-marketplace
marketplace.jsonファイルへの直接パスを追加
/plugin marketplace add ./path/to/marketplace.json
URL経由でリモートmarketplace.jsonを追加
/plugin marketplace add https://url.of/marketplace.json

マーケットプレイスからプラグインをインストール

マーケットプレイスを追加したら、プラグインを直接インストールできます:
既知のマーケットプレイスからインストール
/plugin install plugin-name@marketplace-name
利用可能なプラグインをインタラクティブに閲覧
/plugin

マーケットプレイスのインストール確認

マーケットプレイスを追加した後:
  1. マーケットプレイスのリスト: /plugin marketplace listを実行して追加されたことを確認
  2. プラグインの閲覧: /pluginを使用してマーケットプレイスから利用可能なプラグインを確認
  3. インストールのテスト: プラグインをインストールしてマーケットプレイスが正しく動作することを確認

チームマーケットプレイスの設定

.claude/settings.jsonで必要なマーケットプレイスを指定することで、チームプロジェクト用の自動マーケットプレイスインストールを設定します:
{
  "extraKnownMarketplaces": {
    "team-tools": {
      "source": {
        "source": "github",
        "repo": "your-org/claude-plugins"
      }
    },
    "project-specific": {
      "source": {
        "source": "git",
        "url": "https://git.company.com/project-plugins.git"
      }
    }
  }
}
チームメンバーがリポジトリフォルダを信頼すると、Claude Codeは自動的にこれらのマーケットプレイスとenabledPluginsフィールドで指定されたプラグインをインストールします。

独自マーケットプレイスの作成

チームやコミュニティ向けのカスタムプラグインコレクションを構築・配布します。

マーケットプレイス作成の前提条件

  • Gitリポジトリ(GitHub、GitLab、またはその他のgitホスティング)
  • JSONファイル形式の理解
  • 配布する1つ以上のプラグイン

マーケットプレイスファイルの作成

リポジトリルートに.claude-plugin/marketplace.jsonを作成します:
{
  "name": "company-tools",
  "owner": {
    "name": "DevTools Team",
    "email": "[email protected]"
  },
  "plugins": [
    {
      "name": "code-formatter",
      "source": "./plugins/formatter",
      "description": "保存時の自動コードフォーマット",
      "version": "2.1.0",
      "author": {
        "name": "DevTools Team"
      }
    },
    {
      "name": "deployment-tools",
      "source": {
        "source": "github",
        "repo": "company/deploy-plugin"
      },
      "description": "デプロイメント自動化ツール"
    }
  ]
}

マーケットプレイススキーマ

必須フィールド

フィールド説明
namestringマーケットプレイス識別子(ケバブケース、スペースなし)
ownerobjectマーケットプレイス管理者情報
pluginsarray利用可能なプラグインのリスト

オプションのメタデータ

フィールド説明
metadata.descriptionstringマーケットプレイスの簡潔な説明
metadata.versionstringマーケットプレイスのバージョン
metadata.pluginRootstring相対プラグインソースのベースパス

プラグインエントリ

プラグインエントリはプラグインマニフェストスキーマ(すべてのフィールドがオプション化)にマーケットプレイス固有のフィールド(sourcecategorytagsstrict)を加えたもので、nameが必須です。
必須フィールド:
フィールド説明
namestringプラグイン識別子(ケバブケース、スペースなし)
sourcestring|objectプラグインの取得元

オプションのプラグインフィールド

標準メタデータフィールド:
フィールド説明
descriptionstringプラグインの簡潔な説明
versionstringプラグインのバージョン
authorobjectプラグイン作成者情報
homepagestringプラグインのホームページまたはドキュメントURL
repositorystringソースコードリポジトリURL
licensestringSPDXライセンス識別子(例:MIT、Apache-2.0)
keywordsarrayプラグインの発見と分類のためのタグ
categorystring整理のためのプラグインカテゴリ
tagsarray検索性のためのタグ
strictbooleanプラグインフォルダにplugin.jsonを要求(デフォルト:true)1
コンポーネント設定フィールド:
フィールド説明
commandsstring|arrayコマンドファイルまたはディレクトリへのカスタムパス
agentsstring|arrayエージェントファイルへのカスタムパス
hooksstring|objectカスタムフック設定またはフックファイルへのパス
mcpServersstring|objectMCPサーバー設定またはMCP設定へのパス
1 - strict: true(デフォルト)の場合、プラグインはplugin.jsonマニフェストファイルを含む必要があり、マーケットプレイスフィールドはそれらの値を補完します。strict: falseの場合、plugin.jsonはオプションです。存在しない場合、マーケットプレイスエントリが完全なプラグインマニフェストとして機能します。

プラグインソース

相対パス

同じリポジトリ内のプラグインの場合:
{
  "name": "my-plugin",
  "source": "./plugins/my-plugin"
}

GitHubリポジトリ

{
  "name": "github-plugin",
  "source": {
    "source": "github",
    "repo": "owner/plugin-repo"
  }
}

Gitリポジトリ

{
  "name": "git-plugin",
  "source": {
    "source": "url",
    "url": "https://gitlab.com/team/plugin.git"
  }
}

高度なプラグインエントリ

プラグインエントリは、デフォルトのコンポーネントの場所を上書きし、追加のメタデータを提供できます。${CLAUDE_PLUGIN_ROOT}は、プラグインのインストールディレクトリに解決される環境変数であることに注意してください(詳細は環境変数を参照):
{
  "name": "enterprise-tools",
  "source": {
    "source": "github",
    "repo": "company/enterprise-plugin"
  },
  "description": "エンタープライズワークフロー自動化ツール",
  "version": "2.1.0",
  "author": {
    "name": "Enterprise Team",
    "email": "[email protected]"
  },
  "homepage": "https://docs.company.com/plugins/enterprise-tools",
  "repository": "https://github.com/company/enterprise-plugin",
  "license": "MIT",
  "keywords": ["enterprise", "workflow", "automation"],
  "category": "productivity",
  "commands": [
    "./commands/core/",
    "./commands/enterprise/",
    "./commands/experimental/preview.md"
  ],
  "agents": [
    "./agents/security-reviewer.md",
    "./agents/compliance-checker.md"
  ],
  "hooks": {
    "PostToolUse": [
      {
        "matcher": "Write|Edit",
        "hooks": [{"type": "command", "command": "${CLAUDE_PLUGIN_ROOT}/scripts/validate.sh"}]
      }
    ]
  },
  "mcpServers": {
    "enterprise-db": {
      "command": "${CLAUDE_PLUGIN_ROOT}/servers/db-server",
      "args": ["--config", "${CLAUDE_PLUGIN_ROOT}/config.json"]
    }
  },
  "strict": false
}
スキーマの関係: プラグインエントリは、すべてのフィールドがオプション化されたプラグインマニフェストスキーマに、マーケットプレイス固有のフィールド(sourcestrictcategorytags)を加えたものを使用します。これは、plugin.jsonファイルで有効な任意のフィールドがマーケットプレイスエントリでも使用できることを意味します。strict: falseの場合、plugin.jsonが存在しなければ、マーケットプレイスエントリが完全なプラグインマニフェストとして機能します。strict: true(デフォルト)の場合、マーケットプレイスフィールドはプラグイン独自のマニフェストファイルを補完します。

マーケットプレイスのホスティングと配布

プラグイン配布のニーズに最適なホスティング戦略を選択します。

GitHubでのホスティング(推奨)

GitHubは最も簡単な配布方法を提供します:
  1. リポジトリの作成: マーケットプレイス用の新しいリポジトリを設定
  2. マーケットプレイスファイルの追加: プラグイン定義を含む.claude-plugin/marketplace.jsonを作成
  3. チームとの共有: チームメンバーが/plugin marketplace add owner/repoで追加
利点: 組み込みのバージョン管理、課題追跡、チームコラボレーション機能。

他のgitサービスでのホスティング

任意のgitホスティングサービスがマーケットプレイス配布に使用でき、任意のgitリポジトリへのURLを使用します。 例えば、GitLabを使用する場合:
/plugin marketplace add https://gitlab.com/company/plugins.git

開発用ローカルマーケットプレイスの使用

配布前にマーケットプレイスをローカルでテストします:
テスト用ローカルマーケットプレイスを追加
/plugin marketplace add ./my-local-marketplace
プラグインインストールをテスト
/plugin install test-plugin@my-local-marketplace

マーケットプレイス操作の管理

既知のマーケットプレイスのリスト

設定されたすべてのマーケットプレイスをリスト
/plugin marketplace list
すべての設定されたマーケットプレイスをソースとステータスと共に表示します。

マーケットプレイスメタデータの更新

マーケットプレイスメタデータを更新
/plugin marketplace update marketplace-name
マーケットプレイスソースからプラグインリストとメタデータを更新します。

マーケットプレイスの削除

マーケットプレイスを削除
/plugin marketplace remove marketplace-name
設定からマーケットプレイスを削除します。
マーケットプレイスを削除すると、そこからインストールしたプラグインもアンインストールされます。

マーケットプレイスのトラブルシューティング

一般的なマーケットプレイスの問題

マーケットプレイスが読み込まれない

症状: マーケットプレイスを追加できない、またはプラグインが表示されない 解決策:
  • マーケットプレイスURLがアクセス可能であることを確認
  • 指定されたパスに.claude-plugin/marketplace.jsonが存在することを確認
  • claude plugin validateを使用してJSON構文が有効であることを確認
  • プライベートリポジトリの場合、アクセス権限があることを確認

プラグインインストールの失敗

症状: マーケットプレイスは表示されるがプラグインインストールが失敗する 解決策:
  • プラグインソースURLがアクセス可能であることを確認
  • プラグインディレクトリに必要なファイルが含まれていることを確認
  • GitHubソースの場合、リポジトリがパブリックであるかアクセス権があることを確認
  • クローン/ダウンロードによってプラグインソースを手動でテスト

検証とテスト

共有前にマーケットプレイスをテストします:
マーケットプレイスJSON構文を検証
claude plugin validate .
テスト用マーケットプレイスを追加
/plugin marketplace add ./path/to/marketplace
テストプラグインをインストール
/plugin install test-plugin@marketplace-name
完全なプラグインテストワークフローについては、プラグインをローカルでテストを参照してください。技術的なトラブルシューティングについては、プラグインリファレンスを参照してください。

次のステップ

マーケットプレイスユーザー向け

  • コミュニティマーケットプレイスの発見: Claude CodeプラグインコレクションについてGitHubを検索
  • フィードバックの提供: マーケットプレイス管理者に問題を報告し、改善を提案
  • 有用なマーケットプレイスの共有: チームが価値のあるプラグインコレクションを発見できるよう支援

マーケットプレイス作成者向け

  • プラグインコレクションの構築: 特定のユースケースを中心としたテーマ別マーケットプレイスを作成
  • バージョニングの確立: 明確なバージョニングと更新ポリシーを実装
  • コミュニティエンゲージメント: フィードバックを収集し、活発なマーケットプレイスコミュニティを維持
  • ドキュメント: マーケットプレイスの内容を説明する明確なREADMEファイルを提供

組織向け

  • プライベートマーケットプレイス: プロプライエタリツール用の内部マーケットプレイスを設定
  • ガバナンスポリシー: プラグイン承認とセキュリティレビューのガイドラインを確立
  • トレーニングリソース: チームが有用なプラグインを効果的に発見・採用できるよう支援

関連項目