openclaw plugins
Gatewayプラグイン/拡張機能、フックパック、および互換バンドルを管理します。
関連:
- プラグインシステム: Plugins
- バンドル互換性: プラグインバンドル
- プラグインマニフェスト + スキーマ: プラグインマニフェスト
- セキュリティ強化: セキュリティ
コマンド
plugins enableが必要です。
ネイティブOpenClawプラグインは、インラインJSON Schema(空でもconfigSchema)を含むopenclaw.plugin.jsonを同梱する必要があります。互換バンドルは、代わりに独自のバンドルマニフェストを使用します。
plugins listにはFormat: openclawまたはFormat: bundleが表示されます。詳細なlist/info出力では、バンドルのサブタイプ(codex、claude、またはcursor)と、検出されたバンドル機能も表示されます。
インストール
plugins installは通常フェイルクローズし、先にopenclaw doctor --fixを実行するよう案内します。文書化されている唯一の例外は、openclaw.install.allowInvalidConfigRecoveryを明示的にオプトインしているプラグイン向けの、限定的なバンドル済みプラグイン復旧パスです。
--forceは既存のインストール先を再利用し、すでにインストール済みのプラグインまたはフックパックをその場で上書きします。新しいローカルパス、アーカイブ、ClawHubパッケージ、またはnpmアーティファクトから同じidを意図的に再インストールする場合に使用します。
--pinはnpmインストールにのみ適用されます。marketplaceインストールではサポートされません。これは、marketplaceインストールではnpm specではなくmarketplaceソースメタデータが保存されるためです。
--dangerously-force-unsafe-installは、組み込みの危険コードスキャナーで誤検知が発生した場合の非常手段オプションです。組み込みスキャナーがcriticalの検出結果を報告してもインストールを続行できますが、プラグインのbefore_installフックによるポリシーブロックを回避するものではなく、スキャン失敗も回避しません。
このCLIフラグは、プラグインのインストール/更新フローに適用されます。Gateway経由のSkills依存関係インストールでは、対応するdangerouslyForceUnsafeInstallリクエストオーバーライドを使用します。一方、openclaw skills installは別個のClawHub Skillsダウンロード/インストールフローのままです。
plugins installは、package.jsonでopenclaw.hooksを公開するフックパックのインストール画面でもあります。フックの絞り込み表示やフック単位の有効化にはopenclaw hooksを使用し、パッケージのインストールには使用しないでください。
npm specはレジストリ専用です(パッケージ名 + 任意の完全一致バージョンまたはdist-tag)。Git/URL/file specおよびsemver rangeは拒否されます。依存関係のインストールは安全のため--ignore-scripts付きで実行されます。
specのみの指定と@latestは安定トラックに留まります。npmがそれらのいずれかをプレリリースに解決した場合、OpenClawは停止し、@beta/@rcのようなプレリリースタグや、@1.2.3-beta.4のような完全一致のプレリリースバージョンで明示的にオプトインするよう求めます。
インストールspecのみの指定がバンドル済みプラグインid(たとえばdiffs)に一致する場合、OpenClawはそのバンドル済みプラグインを直接インストールします。同名のnpmパッケージをインストールするには、明示的なスコープ付きspec(たとえば@scope/diffs)を使用してください。
サポートされるアーカイブ: .zip、.tgz、.tar.gz、.tar。
Claude marketplaceインストールもサポートされています。
ClawHubインストールでは、明示的なclawhub:<package>ロケーターを使用します:
~/.claude/plugins/known_marketplaces.jsonに存在する場合は、plugin@marketplaceの短縮記法を使用します:
--marketplaceを使用します:
~/.claude/plugins/known_marketplaces.jsonのClaude既知marketplace名- ローカルmarketplaceルートまたは
marketplace.jsonのパス owner/repoのようなGitHubリポジトリ短縮記法https://github.com/owner/repoのようなGitHubリポジトリURL- git URL
- ネイティブOpenClawプラグイン(
openclaw.plugin.json) - Codex互換バンドル(
.codex-plugin/plugin.json) - Claude互換バンドル(
.claude-plugin/plugin.jsonまたはデフォルトのClaudeコンポーネントレイアウト) - Cursor互換バンドル(
.cursor-plugin/plugin.json)
settings.jsonデフォルト、Claude .lsp.json / マニフェストで宣言されたlspServersデフォルト、Cursor command-skills、および互換Codexフックディレクトリがサポートされています。その他の検出されたバンドル機能はdiagnostics/infoに表示されますが、まだランタイム実行には配線されていません。
一覧表示
--enabledを使用すると、読み込み済みプラグインのみを表示します。--verboseを使用すると、テーブル表示から、ソース/オリジン/バージョン/アクティベーションメタデータを含むプラグインごとの詳細行に切り替わります。機械可読なインベントリとレジストリdiagnosticsには--jsonを使用してください。
ローカルディレクトリをコピーしないようにするには--linkを使用します(plugins.load.pathsに追加されます):
--linkでは--forceはサポートされません。
npmインストールで--pinを使用すると、デフォルト動作を非固定のまま維持しつつ、解決された完全一致spec(name@version)をplugins.installsに保存します。
アンインストール
uninstallは、該当する場合、plugins.entries、plugins.installs、プラグイン許可リスト、およびリンクされたplugins.load.pathsエントリからプラグイン記録を削除します。アクティブなメモリプラグインでは、メモリスロットはmemory-coreにリセットされます。
デフォルトでは、アンインストール時にアクティブなstate-dirプラグインルート配下のプラグインインストールディレクトリも削除されます。ディスク上のファイルを保持するには、--keep-filesを使用してください。
--keep-configは、--keep-filesの非推奨エイリアスとしてサポートされています。
更新
plugins.installs内で追跡されているインストールと、hooks.internal.installs内で追跡されているフックパックインストールに適用されます。
プラグインidを渡すと、OpenClawはそのプラグインに記録されているインストールspecを再利用します。つまり、以前保存された@betaのようなdist-tagや、固定された完全一致バージョンは、後続のupdate <id>実行でも引き続き使用されます。
npmインストールでは、dist-tagまたは完全一致バージョン付きの明示的なnpmパッケージspecを渡すこともできます。OpenClawはそのパッケージ名を追跡対象のプラグイン記録に対応付け直し、そのインストール済みプラグインを更新し、今後のidベース更新のために新しいnpm specを記録します。
保存済みのintegrityハッシュが存在し、取得したアーティファクトのハッシュが変更されている場合、OpenClawは警告を表示し、続行前に確認を求めます。CIや非対話環境でプロンプトを回避するには、グローバル--yesを使用してください。
--dangerously-force-unsafe-installは、プラグイン更新中に組み込み危険コードスキャンで誤検知が発生した場合の非常手段オーバーライドとして、plugins updateでも使用できます。それでも、プラグインのbefore_installポリシーブロックやスキャン失敗によるブロックは回避せず、プラグイン更新にのみ適用され、フックパック更新には適用されません。
Inspect
- plain-capability — 1つの機能タイプ(例: プロバイダー専用プラグイン)
- hybrid-capability — 複数の機能タイプ(例: テキスト + 音声 + 画像)
- hook-only — フックのみで、機能やサーフェスなし
- non-capability — ツール/コマンド/サービスはあるが機能なし
--jsonフラグは、スクリプト処理や監査に適した機械可読レポートを出力します。
inspect --allは、形状、機能種別、互換性通知、バンドル機能、およびフック概要列を含む、フリート全体のテーブルを表示します。
infoはinspectのエイリアスです。
Doctor
doctorは、プラグインの読み込みエラー、マニフェスト/ディスカバリーdiagnostics、および互換性通知を報告します。問題がなければ、No plugin issues detected.と表示されます。
Marketplace
marketplace.jsonパス、owner/repoのようなGitHub短縮記法、GitHubリポジトリURL、またはgit URLを受け付けます。--jsonは、解決されたソースラベルと、解析されたmarketplaceマニフェストおよびプラグインエントリを出力します。