3.13から9日。ここ数ヶ月で最も長いリリース間隔だった。changelogが出た瞬間、その理由は明白だった――12の破壊的変更、30以上のセキュリティ強化、100以上の安定性修正、7つの新モデルプロバイダー、そしてプラグインの発見・インストール方法の根本的な転換。
これはマイナーアップデートではない。OpenClawがレガシー配管を引き抜き、基盤を作り直したバージョンだ。
一つずつ見ていこう。
ClawHub:プラグインエコシステムの大移行
3.22の目玉は、一見シンプルだ。openclaw plugins install がnpmより先にClawHubを参照するようになった。
たった一行の変更が、プラグイン経済を書き換える。ClawHubはOpenClaw専用のパッケージレジストリ――プラグインの発見、バージョン管理、信頼検証のために設計された。npmは間借りの家だった。ClawHubはOpenClawが初めて手にした自分の家だ。
同時に投入されたもの:
- •ネイティブinstall/search/updateフロー:
openclaw skills search|install|updateとopenclaw plugins install clawhub:、更新メタデータの追跡付き - •Claude/Codex/Cursorバンドル対応:互換バンドルの発見・インストール、バンドルスキルをOpenClawスキルにマッピング、バンドルの
settings.jsonデフォルトを組み込みPiに適用 - •Claude marketplaceレジストリ:plugin@marketplaceインストール、マーケットプレイス一覧、更新対応
- •Plugin SDK刷新:新しい公開サーフェスは
openclaw/plugin-sdk/*――旧来のモノリシックなopenclaw/extension-apiは互換シムなしで削除。バンドルプラグインはホスト側操作に注入ランタイムを使う必要がある - •Plugin SDKテスティングサーフェス:プラグイン作者向けテストヘルパー用の公開
openclaw/plugin-sdk/testingサーフェス - •Memoryプラグインのsystem-prompt対応:アクティブなメモリプラグインが独自のsystem-promptセクションを登録可能に
Plugin SDKの変更は、後続すべての改修の構造的前提だ。モノリシックなルートではなく、狭いopenclaw/plugin-sdk/*サブパスに標準化することで、各プラグインはより小さく安定したAPIコントラクトを得る。テスティングサーフェスの存在は、プラグイン作者がフレームワーク内部に手を突っ込まずにまともなテストを書けるようになったことを意味する。
12の破壊的変更:技術的負債の一括返済
1リリースで12の破壊的変更。過激に見える。だが通して読むと、語っているのは一つの物語だ――OpenClawがpre-1.0アーキテクチャへの最後の橋を焼き払っている。
プラグインエコシステム(4件)
- 1.ClawHubがnpmに代わりデフォルトのプラグインインストールソースに。npmフォールバックは残るが、npm安全名についてはClawHubが優先
- 2.Plugin SDKサーフェス変更:
openclaw/plugin-sdk/*へ――旧openclaw/extension-apiは互換シムなしで消滅 - 3.Chrome MCP拡張リレー削除――レガシーのChrome拡張リレーパス、バンドル拡張アセット、
driver: "extension"をすべて削除。openclaw doctor --fixで移行 - 4.画像生成の標準化――旧nano-banana-proのドキュメント/サンプルを削除。
agents.defaults.imageGenerationModelを使用
レガシー整理(3件)
- 5.レガシー環境変数の削除:
CLAWDBOT_とMOLTBOT_互換名をランタイム、インストーラー、テストツール全体から削除。OPENCLAW_*を使用 - 6.レガシー状態ディレクトリの削除:
.moltbot状態ディレクトリとmoltbot.json自動検出/マイグレーションフォールバックを削除。~/.openclawに移行するかOPENCLAW_STATE_DIRを設定 - 7.メッセージ発見アダプター変更:
ChannelMessageActionAdapter.describeMessageTool(...)が必要に――レガシーのlistActions、getCapabilities、getToolSchemaメソッドは削除
セキュリティとサンドボックス(3件)
- 8.Exec環境サンドボックスの拡張:JVMインジェクション(
MAVEN_OPTS、SBT_OPTS、GRADLE_OPTS、ANT_OPTS)、glibcチューナブル悪用(GLIBC_TUNABLES)、.NET依存関係ハイジャック(DOTNET_ADDITIONAL_DEPS)をブロック - 9.timeラッパーの透過化:
timeがallowlist評価時に透過的ディスパッチラッパーとして扱われ、承認済みtime ...コマンドが内部実行ファイルにバインド - 10.音声通話webhookの強化:body読み取り前にプロバイダー署名ヘッダーの欠落を拒否、プリ認証bodyバジェットを64 KB / 5sに削減
プラットフォームプロトコル(2件)
- 11.Discord Carbon reconcile:ネイティブコマンドデプロイがデフォルトでCarbon reconcileに切り替え――Discord再起動時のslashコマンド反復更新が解消
- 12.Matrixプラグイン書き直し:公式
matrix-js-sdkベースの新プラグイン、移行ガイド付き
12の破壊的変更を1バージョンで完了。過激に見える。だが振り返れば、どれも断つべき時をとっくに過ぎていた。
セキュリティ:30以上の強化、SMBからSSRFからHangulまで
3.22のセキュリティセクションは巨大だ。3.13の3件ではない――30件以上。攻撃面ごとに整理する。
ネットワーク・プロトコル層
- •Windows SMB資格情報漏洩のブロック:ローカルファイルシステム解決前にリモートホスト
file://メディアURLとUNC/ネットワークパスをブロック。構造化されたローカルメディア入力によるアウトバウンドSMBクレデンシャルハンドシェイクを防止 - •SSRFピンニング強化:明示的プロキシSSRFピンニングがターゲットホップのトランスポートヒントをHTTPSプロキシトンネルに変換、ピンDNSを保持できないプレーンHTTPガード付きフェッチはfail-closed
- •Gateway認証スコープ強化:信頼転送チェーン内の偽造ループバックホップを無視、呼び出し元セッションを超えるスコープのデバイス承認をブロック
- •Gateway発見のfail-closed化:CLI発見における未解決のBonjourおよびDNS-SDサービスエンドポイントがfail-closed
- •メディアエラーbodyの境界設定:リモートメディアエラーbodyスニペットに成功ダウンロードと同じストリーミング上限とアイドルタイムアウトを適用
サンドボックス・実行層
- •プラグインmarketplaceマニフェストのサンドボックス化:クローンされたmarketplaceリポジトリ外へのインストール拡張を行うリモートマニフェストエントリを拒否
- •jqをsafe-binホワイトリストから削除:明示的信頼パスなしでは
jq -n envがホストシークレットをダンプ不可に - •macOS exec HMAC検証:exec-hostリクエストHMACにtiming-safe比較を使用、不正形式の署名はfail-closed
- •Exec環境サンドボックス:ホストexec環境からのJVM、glibc、.NETインジェクションベクターをブロック
- •ワークスペースhooksのゲーティング:リポジトリローカルhooksは明示的有効化まで無効のまま
アイデンティティ・認証層
- •デバイスペアリングのprofileバインド:iOSセットアップコードを意図されたnodeプロファイルにバインド
- •Synology Chat user_idバインド:リプライ配信をデフォルトで安定した数値
user_idにバインド - •ブラウザnodeプロキシの強制:
nodeHost.browserProxy.allowProfilesをクエリとbodyのprofileパラメータに強制適用 - •デバイストークンローテーション強化:公開失敗は汎用のまま、内部拒否理由をログ記録
- •信頼プロキシのスコープクリア:デバイスなし信頼プロキシControl UIセッションの自己宣言スコープをクリア
エンコーディング・インジェクション層
- •Hangulフィラーエスケープ:空白Hangulフィラーコードポイントを承認プロンプトでエスケープ――視覚的に空のUnicodeパディングでコマンドテキストを隠蔽不可に
- •Nostr DMプリ暗号化ポリシー:インバウンドDMポリシーを復号前に適用、プリ暗号化レートとサイズガード付き
- •OpenResponsesファイルコンテキストエスケープ強化
- •LINE webhook解析:Express webhook解析に検証済み生bodyを強制
- •メールwebhookメタデータサニタイズ:送信者と件名メタデータを外部コンテンツラッピング前にサニタイズ
| 攻撃面 | 修正数 |
|---|---|
| ネットワーク・プロトコル | 5 |
| サンドボックス・実行 | 5 |
| アイデンティティ・認証 | 5以上 |
| エンコーディング・インジェクション | 5以上 |
| プラットフォーム固有 | 10以上 |
| 合計 | 30以上 |
これらの修正はマーケティングポスターには載らない。だが、OpenClawを本番環境に持ち込む勇気を持てるかどうかを決めるのは、これらだ。信頼できることは、便利であることより難しい。
パフォーマンス:Gatewayコールドスタートの生まれ変わり
ユーザー体感で最も大きいパフォーマンス改善:Gatewayの起動時にバンドル拡張のTypeScriptを毎回再コンパイルしなくなった。 WhatsAppクラスのコールドスタートが数十秒以上から数秒に戻った。
その他の変更:
- •モデルプリウォーム:チャネル起動前に設定済みプライマリモデルをプリウォーム、一時的リトライ1回付き――起動後の最初のTelegramまたはDiscordメッセージが
Unknown modelで失敗しなくなった - •スタック全体の遅延読み込み:チャネル
addとルートヘルプパス、プラグイン/プロバイダーフォールバック解決、Discordプロバイダー/セッションランタイム、プレーンテキストメッセージのメディア・リンク理解――すべて遅延読み込み化 - •Agentモデルカタログのキャッシュ:configとauth-file状態でキャッシュ、組み込みランナーが毎ターンカタログ起動コストを支払わなくなった
- •セッションキャッシュのスイープ:期限切れの組み込みランナーセッションキャッシュエントリを後続キャッシュ活動時に機会的にスイープ
新機能一覧
検索エコシステム
3つの新しいバンドルWeb検索プラグイン:
- •Exa:ネイティブ日付フィルター、検索モード選択、オプションのコンテンツ抽出。
plugins.entries.exa.config.webSearch.*で設定 - •Tavily:専用の
tavily_searchとtavily_extractツール、プラグイン所有の設定 - •Firecrawl:
firecrawl_searchとfirecrawl_scrapeツール、base-URL/envフォールバック付き
サンドボックスとツール
- •プラガブルサンドボックスバックエンド:OpenShell(ミラーおよびリモートワークスペースモード)とSSHバックエンド(シークレットベースの鍵、証明書、known_hosts入力)を同梱
- •Chromiumブラウザプロファイル対応:
browser.profiles.でBrave、Edge、その他Chromiumベースブラウザに対応.userDataDir
インタラクション
- •/btwサイドクエスチョン:現在のセッションについてツールなしで素早く回答。将来のセッションコンテキストは変更しない
- •Control UIキャンバス展開:アシスタントチャットバブルに展開ボタン
- •丸み調整スライダー:外観設定でコーナー半径をシャープからフルラウンドまで調整
- •Agent別thinking/reasoning/fastデフォルト:許可されないモデルオーバーライドをAgentのデフォルト選択に自動リバート
CLIと設定
- •CLI config set拡張:SecretRefとprovider builderモード、JSON/バッチ代入、
--dry-run検証(構造化JSON出力付き) - •Gatewayヘルスモニター:設定可能なイベント閾値とリスタート制限、チャネル別・アカウント別オーバーライド付き
- •GitHub mainからのインストール:
openclaw update --tag mainまたはinstaller --version main
モデルプロバイダー:軍拡競争は続く
| プロバイダー | 変更内容 |
|---|---|
| OpenAI | デフォルトセットアップモデルをopenai/gpt-5.4に切り替え。gpt-5.4-miniとgpt-5.4-nanoの前方互換対応 |
| Anthropic Vertex | Google Vertex AI経由のClaude用コアプロバイダーサポートを新規追加 |
| Chutes | プラグイン所有OAuth/APIキー認証と動的モデル発見を備えたバンドルプロバイダーを新規追加 |
| MiniMax | M2.7とM2.7-highspeedを追加、デフォルトをM2.5からM2.7に更新。単一統合プラグインサーフェスに統合 |
| xAI | Grokカタログを現行Pi対応IDに同期。Grok 4.20をGA IDにリネーム |
| Z.AI | GLMカタログを4.5/4.6モデルファミリー含めて同期、価格更新 |
| Xiaomi | /v1 OpenAI互換エンドポイントに切り替え。MiMo V2 ProとMiMo V2 Omniを追加 |
| Mistral | デフォルトメタデータを現行Pi価格に同期――ゼロコスト表示を解消 |
| GitHub Copilot | コード変更なしの前方互換動的モデルID |
プラットフォーム全面改善
Android
- •システム連動ダークテーマ:オンボーディングからメイン画面まで
- •Talk音声移行:音声合成をgateway
talk.speakの背後に移動、Androidは最終レスポンスオーディオに切り替え - •通話履歴検索(
callLog.search)とSMS検索(sms.search)、共有パーミッション配線付き - •連絡先検索の修正:連絡先名クエリのリテラル
%と_をエスケープし、SQL LIKEワイルドカード誤マッチを防止 - •カメラメモリ修正:中間・最終スナップショットビットマップをリサイクルし、ネイティブメモリリークを防止
Telegram
- •カスタムBot APIエンドポイント:アカウント別カスタムエンドポイント対応――セルフホストTelegramデプロイがエンドツーエンドで動作
- •DMトピック自動リネーム:初回メッセージ時にLLM生成ラベルを付与、アカウント別・DM別オーバーライド対応
- •トピック編集アクション:フォーラムトピックのリネームとアイコン更新
- •サイレントエラーリプライ:デフォルトオフの
channels.telegram.silentErrorReplies設定 - •ネットワーク安定性:スティッキーIPv4フォールバックをポーリング再起動間で保持
Feishu(Lark)
- •インタラクティブ承認・クイックアクションカード、コールバックコンテキストルーティング付き
- •ACPとサブAgentセッションバインディング
- •推論ストリーム:thinkingトークンをストリーミングカード内のmarkdown引用ブロックとしてレンダリング
- •アイデンティティ対応カードヘッダーとフッター
- •拡張アクションサーフェス:メッセージ読み取り/編集、明示的スレッドリプライ、ピン留め
Matrix
- •プラグイン完全書き直し:公式
matrix-js-sdkベース、移行ガイド付き - •allowBotsルームポリシー:設定済みbot間通信を許可
- •プライベートネットワークopt-in:アカウント別
allowPrivateNetwork - •永続的イベント重複排除:Gateway再起動をまたぐ
- •mention-gatedバインディング修正:mention必須ルームでアイドルACPとセッションバインディングが正常に期限切れ
Discord
- •Carbon reconcileによるネイティブコマンドデプロイ
- •厳格なDMコンポーネントホワイトリスト認証
- •ACPアボート転送:タイムアウトしたDiscordジョブが実行中ターンをキャンセル
- •再接続修正:inboxモニターのappend新着フィルターを復元、protobuf Longタイムスタンプを正しく処理
- •アクティブリスナーシングルトン:
globalThisシングルトンで分割バンドルチャンクが同一リスナーmapを共有 - •ログイン修正:Baileys 515ペアリング再起動後、再オープン前にcreds書き込み完了を待機
100以上の安定性修正:テーブルで語る
| 領域 | 主な修正 |
|---|---|
| Agent圧縮 | compact後の孤立tool_result修復、閾値超過時のオーバーフロー回復、空準備の境界サマリー、上限付きリトライフォールバック、オプトインJSONL切り詰め |
| Agentランタイム | OpenAI互換バックエンドのtool call ID重複排除、非OpenAIエンドポイントのprompt_cacheフィールド除去、タイムアウト時プレーンテキストエラー出力、リプレイブロックサニタイズ、bootstrapウォーニングをsystem prompt外に移動 |
| プラグインランタイム | 重複モジュールグラフ間のシングルトン状態共有、プラグインバインド承認状態共有、context engine委譲セマンティクス、バンドラーTDZ修正 |
| Gateway | WSハンドシェイクタイムアウトを10sに引き上げ、失効チャットバッファー回収修正、再起動時の孤立run回復、アカウント別チャネル起動のシリアライズ、webhookルートを起動レジストリにピン留め |
| Control UI | 設定キーをgatewayパスでスコープ化、モデル切り替え時のプロバイダープレフィックス保持、セッションルーティングの外部配信ルート保持、localeドロップダウンの永続化 |
| Telegram | スタックしたgetUpdatesの強制タイムアウト、DMトピックセッションキールーティング、ペアリングセットアップのmention-gatedグループデフォルト |
| Feishu | トピックスレッドのフルコンテキスト取得、ネイティブメディアハンドリングの整合、署名webhookのconstant-time比較 |
| macOS | デスクトップアプリ起動エージェントのKeepAlive停止、openclaw node start/stop --jsonへの移行 |
| Windows | schtasks Last Result出力エイリアスの受け入れ、WSL2のgatewayネットワーク発見ガード |
データ一覧
| 指標 | 3.13 | 3.22 |
|---|---|---|
| 破壊的変更 | 0 | 12 |
| セキュリティ修正 | 3 | 30以上 |
| 安定性パッチ | 70以上 | 100以上 |
| 新規モデルプロバイダー | 0 | 7 |
| 新規Web検索プラグイン | 0 | 3 |
| プラグインソース | npm | ClawHub |
| Gatewayコールドスタート | 数十秒 | 秒単位 |
| デフォルトAgentタイムアウト | 600秒 | 48時間 |
| 謝辞コントリビューター | 約10 | 80以上 |
---
3.22は、派手な新機能でヘッドラインを飾るリリースではない。これは手術だ――胸を開き、エンジンを交換し、縫い合わせ、以前より速く走る。
12の破壊的変更は混乱ではない。古い地図を焼いているのだ。ClawHubの稼働、セキュリティ面の全面強化、Gatewayコールドスタートの生まれ変わり――この3つが揃ったことで、OpenClawは「高速イテレーションするOSSプロジェクト」から「本気で頼れるインフラ」に卒業した。
ロブスターはまた脱皮した。今回は、骨格ごと変わった。