メインコンテンツへスキップ

openclaw plugins

Gatewayプラグイン/拡張機能、フックパック、および互換バンドルを管理します。 関連:

コマンド

openclaw plugins list
openclaw plugins list --enabled
openclaw plugins list --verbose
openclaw plugins list --json
openclaw plugins install <path-or-spec>
openclaw plugins inspect <id>
openclaw plugins inspect <id> --json
openclaw plugins inspect --all
openclaw plugins info <id>
openclaw plugins enable <id>
openclaw plugins disable <id>
openclaw plugins uninstall <id>
openclaw plugins doctor
openclaw plugins update <id>
openclaw plugins update --all
openclaw plugins marketplace list <marketplace>
openclaw plugins marketplace list <marketplace> --json
バンドル済みプラグインはOpenClawに同梱されています。一部はデフォルトで有効です(たとえば、バンドル済みのモデルプロバイダー、バンドル済みの音声プロバイダー、バンドル済みのブラウザプラグイン)。それ以外はplugins enableが必要です。 ネイティブOpenClawプラグインは、インラインJSON Schema(空でもconfigSchema)を含むopenclaw.plugin.jsonを同梱する必要があります。互換バンドルは、代わりに独自のバンドルマニフェストを使用します。 plugins listにはFormat: openclawまたはFormat: bundleが表示されます。詳細なlist/info出力では、バンドルのサブタイプ(codexclaude、またはcursor)と、検出されたバンドル機能も表示されます。

インストール

openclaw plugins install <package>                      # 最初にClawHub、次にnpm
openclaw plugins install clawhub:<package>              # ClawHubのみ
openclaw plugins install <package> --force              # 既存のインストールを上書き
openclaw plugins install <package> --pin                # バージョンを固定
openclaw plugins install <package> --dangerously-force-unsafe-install
openclaw plugins install <path>                         # ローカルパス
openclaw plugins install <plugin>@<marketplace>         # marketplace
openclaw plugins install <plugin> --marketplace <name>  # marketplace(明示指定)
openclaw plugins install <plugin> --marketplace https://github.com/<owner>/<repo>
パッケージ名のみの指定は、最初にClawHub、次にnpmで確認されます。セキュリティ上の注意: プラグインのインストールはコードを実行するのと同様に扱ってください。固定バージョンを推奨します。 設定が無効な場合、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.jsonopenclaw.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>ロケーターを使用します:
openclaw plugins install clawhub:openclaw-codex-app-server
openclaw plugins install clawhub:openclaw-codex-app-server@1.2.3
OpenClawは現在、npmで安全なプラグインspecのみの指定に対してもClawHubを優先します。ClawHubにそのパッケージまたはバージョンがない場合のみ、npmにフォールバックします:
openclaw plugins install openclaw-codex-app-server
OpenClawはClawHubからパッケージアーカイブをダウンロードし、告知されたプラグインAPI/最小Gateway互換性を確認してから、通常のアーカイブパスでインストールします。記録されたインストールには、後続の更新のためにClawHubソースメタデータが保持されます。 marketplace名がClaudeのローカルレジストリキャッシュ~/.claude/plugins/known_marketplaces.jsonに存在する場合は、plugin@marketplaceの短縮記法を使用します:
openclaw plugins marketplace list <marketplace-name>
openclaw plugins install <plugin-name>@<marketplace-name>
marketplaceソースを明示的に渡したい場合は--marketplaceを使用します:
openclaw plugins install <plugin-name> --marketplace <marketplace-name>
openclaw plugins install <plugin-name> --marketplace <owner/repo>
openclaw plugins install <plugin-name> --marketplace https://github.com/<owner>/<repo>
openclaw plugins install <plugin-name> --marketplace ./my-marketplace
marketplaceソースには次のものを使用できます:
  • ~/.claude/plugins/known_marketplaces.jsonのClaude既知marketplace名
  • ローカルmarketplaceルートまたはmarketplace.jsonのパス
  • owner/repoのようなGitHubリポジトリ短縮記法
  • https://github.com/owner/repoのようなGitHubリポジトリURL
  • git URL
GitHubまたはgitから読み込まれたリモートmarketplaceでは、プラグインエントリはクローンされたmarketplaceリポジトリ内に留まる必要があります。OpenClawはそのリポジトリからの相対パスソースを受け入れ、リモートマニフェスト内のHTTP(S)、絶対パス、git、GitHub、およびその他の非パスのプラグインソースを拒否します。 ローカルパスおよびアーカイブでは、OpenClawは次を自動検出します:
  • ネイティブOpenClawプラグイン(openclaw.plugin.json
  • Codex互換バンドル(.codex-plugin/plugin.json
  • Claude互換バンドル(.claude-plugin/plugin.jsonまたはデフォルトのClaudeコンポーネントレイアウト)
  • Cursor互換バンドル(.cursor-plugin/plugin.json
互換バンドルは通常の拡張機能ルートにインストールされ、同じlist/info/enable/disableフローに参加します。現在は、バンドルSkills、Claude command-skills、Claude settings.jsonデフォルト、Claude .lsp.json / マニフェストで宣言されたlspServersデフォルト、Cursor command-skills、および互換Codexフックディレクトリがサポートされています。その他の検出されたバンドル機能はdiagnostics/infoに表示されますが、まだランタイム実行には配線されていません。

一覧表示

openclaw plugins list
openclaw plugins list --enabled
openclaw plugins list --verbose
openclaw plugins list --json
--enabledを使用すると、読み込み済みプラグインのみを表示します。--verboseを使用すると、テーブル表示から、ソース/オリジン/バージョン/アクティベーションメタデータを含むプラグインごとの詳細行に切り替わります。機械可読なインベントリとレジストリdiagnosticsには--jsonを使用してください。 ローカルディレクトリをコピーしないようにするには--linkを使用します(plugins.load.pathsに追加されます):
openclaw plugins install -l ./my-plugin
リンクされたインストールでは管理対象のインストール先にコピーする代わりにソースパスを再利用するため、--linkでは--forceはサポートされません。 npmインストールで--pinを使用すると、デフォルト動作を非固定のまま維持しつつ、解決された完全一致spec(name@version)をplugins.installsに保存します。

アンインストール

openclaw plugins uninstall <id>
openclaw plugins uninstall <id> --dry-run
openclaw plugins uninstall <id> --keep-files
uninstallは、該当する場合、plugins.entriesplugins.installs、プラグイン許可リスト、およびリンクされたplugins.load.pathsエントリからプラグイン記録を削除します。アクティブなメモリプラグインでは、メモリスロットはmemory-coreにリセットされます。 デフォルトでは、アンインストール時にアクティブなstate-dirプラグインルート配下のプラグインインストールディレクトリも削除されます。ディスク上のファイルを保持するには、--keep-filesを使用してください。 --keep-configは、--keep-filesの非推奨エイリアスとしてサポートされています。

更新

openclaw plugins update <id-or-npm-spec>
openclaw plugins update --all
openclaw plugins update <id-or-npm-spec> --dry-run
openclaw plugins update @openclaw/voice-call@beta
openclaw plugins update openclaw-codex-app-server --dangerously-force-unsafe-install
更新は、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

openclaw plugins inspect <id>
openclaw plugins inspect <id> --json
単一プラグインの詳細な内部検査です。識別情報、読み込み状態、ソース、登録済み機能、フック、ツール、コマンド、サービス、Gatewayメソッド、HTTPルート、ポリシーフラグ、diagnostics、インストールメタデータ、バンドル機能、および検出されたMCPまたはLSPサーバーサポートを表示します。 各プラグインは、実際にランタイムで何を登録するかによって次のように分類されます:
  • plain-capability — 1つの機能タイプ(例: プロバイダー専用プラグイン)
  • hybrid-capability — 複数の機能タイプ(例: テキスト + 音声 + 画像)
  • hook-only — フックのみで、機能やサーフェスなし
  • non-capability — ツール/コマンド/サービスはあるが機能なし
機能モデルの詳細については、プラグイン形状を参照してください。 --jsonフラグは、スクリプト処理や監査に適した機械可読レポートを出力します。 inspect --allは、形状、機能種別、互換性通知、バンドル機能、およびフック概要列を含む、フリート全体のテーブルを表示します。 infoinspectのエイリアスです。

Doctor

openclaw plugins doctor
doctorは、プラグインの読み込みエラー、マニフェスト/ディスカバリーdiagnostics、および互換性通知を報告します。問題がなければ、No plugin issues detected.と表示されます。

Marketplace

openclaw plugins marketplace list <source>
openclaw plugins marketplace list <source> --json
Marketplace listでは、ローカルmarketplaceパス、marketplace.jsonパス、owner/repoのようなGitHub短縮記法、GitHubリポジトリURL、またはgit URLを受け付けます。--jsonは、解決されたソースラベルと、解析されたmarketplaceマニフェストおよびプラグインエントリを出力します。