Skip to main content
プラグインを使用すると、Claude Code をカスタム機能で拡張でき、プロジェクト全体で共有できます。Agent SDK を通じて、ローカルディレクトリからプログラムでプラグインを読み込み、エージェントセッションに機能を追加できます。プラグインには以下を含めることができます:
  • Skills: Claude が関連する場合に自律的に呼び出す機能。/plugin-name:skill-name でプラグインスキルを直接呼び出すこともできます。
  • Agents: 特定のタスク用の専門的なサブエージェント
  • Hooks: ツール使用およびその他のイベントに応答するイベントハンドラー
  • MCP servers: Model Context Protocol 経由の外部ツール統合
プラグイン構造とプラグインの作成方法に関する完全な情報については、Plugins を参照してください。

プラグインの読み込み

オプション設定でローカルファイルシステムパスを指定してプラグインを読み込みます。type フィールドは "local" である必要があります。これは SDK が受け入れる唯一の値です。SDK は複数の場所から複数のプラグインを読み込むことをサポートしています。 マーケットプレイスまたはリモートリポジトリを通じて配布されているプラグインを使用するには、まずダウンロードしてローカルディレクトリパスを指定してください。プラグインが必要とするディレクトリレイアウトについては、以下のプラグイン構造リファレンスを参照してください。

パス指定

プラグインパスは以下のいずれかです:
  • 相対パス: cwd オプションを基準に解決されます(例:"./plugins/my-plugin")
  • 絶対パス: 完全なファイルシステムパス(例:"/home/user/plugins/my-plugin")
パスはプラグインのルートディレクトリ(skills/、agents/、hooks/、commands/、または .claude-plugin/ の親ディレクトリ)を指す必要があります。

プラグインインストールの確認

プラグインが正常に読み込まれると、システム初期化メッセージに表示されます。プラグインが利用可能であることを確認できます:

プラグインスキルの使用

プラグインのスキルは競合を避けるためにプラグイン名で自動的に名前空間化されます。直接呼び出すには、プロンプトとして /plugin-name:skill-name を送信してください。
CLI 経由でプラグインをインストールした場合(例:/plugin install my-plugin@marketplace)、SDK でそのインストールパスを指定することで引き続き使用できます。CLI でインストールされたプラグインについては ~/.claude/plugins/ を確認してください。

完全な例

プラグインの読み込みと使用を示す完全な例を以下に示します:

プラグイン構造リファレンス

プラグインディレクトリには通常、.claude-plugin/plugin.json マニフェストファイルが含まれています。マニフェストはオプションです。省略した場合、Claude Code はディレクトリレイアウトからコンポーネントを自動検出します。ディレクトリには以下を含めることができます:
commands/ ディレクトリはスキルをフラットな Markdown ファイルとして保持しています。新しいプラグインには skills/ を使用してください。Claude Code は両方の場所をサポートしています。

複数のプラグインソース

異なる場所からプラグインを組み合わせます:
SDK はチルダパス(~/plugins など)を展開しません。プラグインパスが存在しない場合、SDK はそのプラグインをスキップしてセッションは続行されるため、初期化メッセージの plugins リストを確認して各プラグインが読み込まれたことを確認してください。

トラブルシューティング

プラグインが読み込まれない

プラグインが初期化メッセージの plugins リストに表示されない場合は、その plugin_errors フィールドで理由を確認してから、以下のチェックを実行してください。
  1. パスを確認する: パスがプラグインルートディレクトリ(skills/、agents/、hooks/、commands/、または .claude-plugin/ の親)を指していることを確認してください
  2. plugin.json を検証する: プラグインにマニフェストが含まれている場合、有効な JSON 構文を持っていることを確認してください
  3. ファイルパーミッションを確認する: プラグインディレクトリが読み取り可能であることを確認してください
  4. ディレクトリが存在することを確認する: SDK は存在しないパスをスキップし、プラグインは初期化メッセージの plugins リストに表示されません

スキルが表示されない

プラグインスキルが機能しない場合:
  1. 名前空間を使用する: /plugin-name:skill-name としてプラグインスキルを呼び出してください
  2. 初期化メッセージを確認する: スキルが正しい名前空間で skills リストに表示されることを確認してください
  3. スキルファイルを検証する: 各スキルが skills/ の下の独自のサブディレクトリに SKILL.md ファイルを持っていることを確認してください(例:skills/my-skill/SKILL.md)

関連項目