プラグイン
プラグインは OpenClaw を新しい機能で拡張します。たとえば、チャネル、モデルプロバイダー、 ツール、Skills、speech、realtime transcription、realtime voice、 media-understanding、image generation、video generation、web fetch、web search などです。一部のプラグインはコア(OpenClaw に同梱)で、他は 外部(コミュニティが npm で公開)です。クイックスタート
チャットネイティブな操作を好む場合は、commands.plugins: true を有効にして次を使います。
clawhub:<pkg>、または素のパッケージ指定(ClawHub 優先、その後 npm フォールバック)です。
config が無効な場合、通常はインストールは安全側に倒れて失敗し、
openclaw doctor --fix を案内します。唯一の回復例外は、選択した同梱プラグインが
openclaw.install.allowInvalidConfigRecovery にオプトインしている場合の、
限定的な bundled-plugin 再インストール経路です。
プラグインの種類
OpenClaw は 2 つのプラグイン形式を認識します。| Format | 仕組み | 例 |
|---|---|---|
| Native | openclaw.plugin.json + ランタイムモジュール。プロセス内で実行 | 公式プラグイン、コミュニティの npm パッケージ |
| Bundle | Codex/Claude/Cursor 互換レイアウト。OpenClaw 機能にマッピング | .codex-plugin/、.claude-plugin/、.cursor-plugin/ |
openclaw plugins list に表示されます。バンドルの詳細は Plugin Bundles を参照してください。
Native プラグインを書く場合は、Building Plugins
および Plugin SDK Overview から始めてください。
公式プラグイン
インストール可能(npm)
| Plugin | Package | ドキュメント |
|---|---|---|
| Matrix | @openclaw/matrix | Matrix |
| Microsoft Teams | @openclaw/msteams | Microsoft Teams |
| Nostr | @openclaw/nostr | Nostr |
| Voice Call | @openclaw/voice-call | Voice Call |
| Zalo | @openclaw/zalo | Zalo |
| Zalo Personal | @openclaw/zalouser | Zalo Personal |
コア(OpenClaw に同梱)
モデルプロバイダー(デフォルトで有効)
モデルプロバイダー(デフォルトで有効)
anthropic、byteplus、cloudflare-ai-gateway、github-copilot、google、
huggingface、kilocode、kimi-coding、minimax、mistral、qwen、
moonshot、nvidia、openai、opencode、opencode-go、openrouter、
qianfan、synthetic、together、venice、
vercel-ai-gateway、volcengine、xiaomi、zaiメモリプラグイン
メモリプラグイン
memory-core— 同梱のメモリ検索(plugins.slots.memory経由のデフォルト)memory-lancedb— オンデマンドインストールの長期メモリ。自動リコール/キャプチャ対応(plugins.slots.memory = "memory-lancedb"を設定)
音声プロバイダー(デフォルトで有効)
音声プロバイダー(デフォルトで有効)
elevenlabs、microsoftその他
その他
browser— browser ツール、openclaw browserCLI、browser.requestgateway メソッド、browser ランタイム、およびデフォルトの browser control service 向けの同梱 browser プラグイン(デフォルトで有効。置き換える前に無効化してください)copilot-proxy— VS Code Copilot Proxy ブリッジ(デフォルトでは無効)
設定
| Field | 説明 |
|---|---|
enabled | マスタートグル(デフォルト: true) |
allow | プラグイン許可リスト(任意) |
deny | プラグイン拒否リスト(任意。拒否が優先) |
load.paths | 追加のプラグインファイル/ディレクトリ |
slots | 排他的スロットの選択子(例: memory、contextEngine) |
entries.\<id\> | プラグインごとのトグル + config |
openclaw gateway 経路)、
その再起動は通常、config の書き込み完了直後に自動的に行われます。
プラグイン状態: disabled vs missing vs invalid
プラグイン状態: disabled vs missing vs invalid
- Disabled: プラグインは存在するが、有効化ルールによって無効化されている。config は保持される。
- Missing: config がプラグイン id を参照しているが、検出では見つからなかった。
- Invalid: プラグインは存在するが、その config が宣言されたスキーマと一致しない。
検出と優先順位
OpenClaw は次の順序でプラグインをスキャンします(最初に一致したものが優先)。ワークスペース拡張
\<workspace\>/.openclaw/<plugin-root>/*.ts と \<workspace\>/.openclaw/<plugin-root>/*/index.ts。有効化ルール
plugins.enabled: falseはすべてのプラグインを無効化しますplugins.denyは常に許可より優先しますplugins.entries.\<id\>.enabled: falseはそのプラグインを無効化します- ワークスペース由来のプラグインはデフォルトで無効です(明示的に有効化する必要があります)
- 同梱プラグインは、上書きされない限り組み込みの default-on セットに従います
- 排他的スロットは、そのスロットで選ばれたプラグインを強制的に有効化することがあります
プラグインスロット(排他的カテゴリ)
一部のカテゴリは排他的です(一度に 1 つだけ有効)。| Slot | 制御対象 | デフォルト |
|---|---|---|
memory | アクティブなメモリプラグイン | memory-core |
contextEngine | アクティブなコンテキストエンジン | legacy(組み込み) |
CLI リファレンス
openclaw plugins enable <id> が必要です。
--force は、既存のインストール済みプラグインまたは hook pack をその場で上書きします。
これは --link とは併用できません。--link は管理対象のインストール先へ
コピーする代わりにソースパスを再利用するためです。
--pin は npm 専用です。--marketplace とは併用できません。これは、
marketplace インストールでは npm spec ではなく marketplace のソースメタデータが保持されるためです。
--dangerously-force-unsafe-install は、組み込みの危険コードスキャナーの誤検知に対する
非常時オーバーライドです。これにより、組み込みの critical 検出結果があっても
プラグインのインストールと更新を継続できますが、それでも
プラグインの before_install ポリシーブロックやスキャン失敗によるブロックは回避しません。
この CLI フラグは、プラグインのインストール/更新フローにのみ適用されます。Gateway ベースの Skill
依存関係インストールでは、代わりに対応する dangerouslyForceUnsafeInstall リクエストオーバーライドを使います。一方、openclaw skills install は依然として別個の ClawHub Skill ダウンロード/インストールフローです。
互換バンドルは、同じプラグインの list/inspect/enable/disable
フローに参加します。現在のランタイムサポートには、bundle Skills、Claude command-skills、
Claude settings.json デフォルト、Claude .lsp.json と manifest 宣言の
lspServers デフォルト、Cursor command-skills、互換性のある Codex hook
ディレクトリが含まれます。
openclaw plugins inspect <id> は、bundle ベースのプラグインについて、検出された bundle 機能に加え、
サポートされる/されない MCP および LSP server エントリーも報告します。
Marketplace ソースには、~/.claude/plugins/known_marketplaces.json にある
Claude の既知 marketplace 名、ローカル marketplace ルートまたは
marketplace.json パス、owner/repo のような GitHub 短縮表記、GitHub リポジトリ
URL、または git URL を指定できます。リモート marketplace では、プラグインエントリーは
クローンされた marketplace リポジトリ内にとどまり、ソースには相対パスのみを使う必要があります。
詳細は openclaw plugins CLI reference を参照してください。
プラグイン API 概要
Native プラグインはregister(api) を公開するエントリーオブジェクトをエクスポートします。古い
プラグインはレガシーなエイリアスとして activate(api) をまだ使っている場合がありますが、新しいプラグインは
register を使うべきです。
register(api) を呼び出します。ローダーは古いプラグイン向けに依然として activate(api) にフォールバックしますが、
同梱プラグインと新しい外部プラグインでは、register を
公開契約として扱うべきです。
一般的な登録メソッド:
| Method | 登録するもの |
|---|---|
registerProvider | モデルプロバイダー(LLM) |
registerChannel | チャットチャネル |
registerTool | エージェントツール |
registerHook / on(...) | ライフサイクルフック |
registerSpeechProvider | text-to-speech / STT |
registerRealtimeTranscriptionProvider | ストリーミング STT |
registerRealtimeVoiceProvider | 双方向 realtime voice |
registerMediaUnderstandingProvider | 画像/音声解析 |
registerImageGenerationProvider | 画像生成 |
registerVideoGenerationProvider | 動画生成 |
registerWebFetchProvider | web fetch / scrape プロバイダー |
registerWebSearchProvider | Web 検索 |
registerHttpRoute | HTTP エンドポイント |
registerCommand / registerCli | CLI コマンド |
registerContextEngine | コンテキストエンジン |
registerService | バックグラウンドサービス |
before_tool_call:{ block: true }は終端です。より低優先度のハンドラーはスキップされます。before_tool_call:{ block: false }は no-op であり、以前の block を解除しません。before_install:{ block: true }は終端です。より低優先度のハンドラーはスキップされます。before_install:{ block: false }は no-op であり、以前の block を解除しません。message_sending:{ cancel: true }は終端です。より低優先度のハンドラーはスキップされます。message_sending:{ cancel: false }は no-op であり、以前の cancel を解除しません。
関連
- Building Plugins — 独自のプラグインを作成する
- Plugin Bundles — Codex/Claude/Cursor バンドル互換性
- Plugin Manifest — マニフェストスキーマ
- Registering Tools — プラグインにエージェントツールを追加する
- Plugin Internals — 機能モデルと読み込みパイプライン
- Community Plugins — サードパーティ一覧