OpenClaw v2026.5.4-beta.1を公開
本文の状態
日本語全文を表示中
詳細モードで約69分の本文を読めます。
同じ出来事の情報源
この情報源を基点に整理
OpenClaw Changelog
OpenClawのバージョンv2026.5.4-beta.1が公開された。
Source Article
元記事を日本語で読む
本文に関係しない購読案内、埋め込み通知、サイト内プロモーションは除いています。
2026.5.4
ハイライト
- プラグイン/ファイル転送: ペアリングされたノード間でのバイナリファイル操作に対応するため、
file_fetch、dir_list、dir_fetch、file_writeの各エージェントツールを備えたバンドル版ファイル転送プラグインを追加しました。
「plugins.entries.file-transfer.config.nodes」内のデフォルト拒否ノード別パスポリシー
オペレーターの承認を要し、デフォルトではシンボリックリンクの参照が拒否される(followSymlinks オプションで有効化可能)ほか、1 往復あたりのデータ量は最大 16 MB に制限されます。(#74742) @omarshahine 氏に感謝します。
Google Meet/音声通話:リアルタイム Gemini 音声ブリッジを介して Twilio のダイアルイン接続音声を再生する機能を追加しました。これには、ペーストされたオーディオストリーミング、バックプレッシャー対応バッファリング、バージ・イン時のキュークリア、そしてリアルタイム音声発生中の TwiML フォールバック排除が含まれます。その結果、Meet 参加者が利用する OpenClaw 音声エージェントの応答性が大幅に向上しました。(#77064)@scoootscooob 氏への感謝。
変更点
・コントロール UI/ヘッダー:現在のセッションキーを追加せず、ダッシュボードのパンくずリストにアクティブなエージェント名を表示します。これにより、チャット以外のビューでもトップバーが混雑することなく方向性を維持できます。
・コントロール UI/クロン:ジョブ一覧がスペースを確保できるよう、新規ジョブサイドバーを折りたたみ可能にしました。フォームはワンクリックで開ける状態を保ちます。ご協力いただいた @BunsDev 氏に感謝します。
・ゲートウェイ/起動時:ホットスタートアップのインポートパスから、モデルカタログのテストヘルパー、ランセッション検索コード、QR ペアリングヘルパー、TypeBox メモリツールスキーマ構築を除外しました。これにより、デフォルトのゲートウェイベンチマークプラグインの読み込みとメモリ負荷が軽減されます。
・コントロール UI/パフォーマンス:ブラウザの長時間アニメーションフレームやタスクエントリをサポートしている場合、デバッグイベントログに記録します。これにより、ダッシュボードの描画遅延を UI 側から特定しやすくなります。
・チャネル/ストリーミング:Discord、Telegram、Matrix、Slack、Microsoft Teams 間で共有される進捗設定と、自動で単語ステータスラベルが付与される統一された streaming.mode: "progress" ドラフトを追加しました。
・Slack/ストリーミング:構造化された進捗ラインデータに基づく Block Kit 対応のドラフトとして、streaming.progress.render: "rich" を追加しました。
・Slack/ストリーミング:Block Kit の制限により長い進捗ドラフトが切り詰められる場合でも、最新の豊富な進捗ラインを保持します。ご協力いただいた @vincentkoc 氏に感謝します。
・チャネル/ストリーミング:デフォルトで進捗ドラフトのツールライン数を制限し、編集された進捗ボックスが長い折り返し行によるジャンプする再描画(リフロー)を回避できるようにしました。
・Agents/verbose: /verbose コマンドと進行状況のドラフト作成時に、デバッグ用の生コマンドや詳細出力を必要とする場合を除き、コンパクトな説明モードでのツールサマリーを使用します。設定には agents.defaults.toolProgressDetail: "raw" を指定し、エージェントごとにオーバーライドを設定可能です。
・Agents/commands: 新規ターンを開始せずに、セッションがアイドル状態のときにアクティブな現在のセッション実行をキューに依存せず操作できる /steer コマンドを追加しました(#76934)。
・Control UI/chat: チャットセッションピッカーにエージェント優先のフィルターを追加し、スマートフォン、タブレット、デスクトップなどあらゆる画面幅でチャットコントロールやコンポーザーがレスポンシブに対応するように改善しました。デスクトップではチャットコントロールを1行に収め、初期読み込み時のアバター更新重複を防止します。また、トランスクリプトを下へスクロールする際は、このコントロール行を非表示にします。ご協力ありがとうございます @BunsDev。
・Control UI/chat: 連続して送信された同じテキストメッセージは1つのバブルにまとめ、カウントを表示するようにしました。これにより、何もしないハートビートの確認通知もコンパクトに表示されつつ、周辺の文脈が隠されるのを防ぎます。
・Agents/subagents: リクエスト元のエージェントのアナウンスターンをバイパスして直接完了フォールバックを行う必要がある場合でも、グループ化された子結果はすべて保持されます。ご協力ありがとうございます @vincentkoc。
・TTS/telephony: 電話回線用合成プロバイダーにおいて、プロバイダーの音声やモデルのオーバーライドを尊重するようにしました。これにより、Google Meet エージェントの音声ログが実際に音声を生成したバックエンドと一致します。ご協力ありがとうございます @vincentkoc。
・Voice Call/realtime: 調整された Twilio オーディオキューをバインドし、WebSocket のバックプレッシャーガードでオーディオが蓄積する前に、過負荷状態のリアルタイムストリームを閉じるようにしました。これにより、プロバイダー側の音声バッファリングを防ぎます。ご協力ありがとうございます @vincentkoc。
- ツール/BTW:
/sideをテキストおよびネイティブのスラッシュコマンドエイリアスとして追加し、/btwのサイド質問に対応できるようにしました。 - ドクター/設定:
doctor --fixは、関連しない検証上の問題(例:)が存在する場合でも、安全なレガシーマイグレーションをコミットするようになりました。
プラグインの欠落により完全な検証が通らない場合、agents.defaults.llm やその他の既知のレガシーキーは、doctor --fix によって常にクリーンアップされます。
他の設定上の問題とは無関係に修正します。#76798 を解決しました。(#76800)@hclsys 氏に感謝。
- ドキュメント:IRC は、オペレーターが管理するフォワードプロキシ経路の外側で生の TCP/TLS ソケットを使用するため、IRC の直接エグレス(egress)を有効にする前に明示的な承認が必要であることを明確化しました。@jesse-merhi 氏に感謝。
エージェント・ツール機能の改善:有効なツールの禁止リストが既に対象のメディアや PDF ツールをブロックしている場合、それらのツールファクトリをスキップします。これにより、モデル使用前にフィルタリングされる不要なツールのホットパス設定を回避できます(#76773)。ご協力いただいた @dorukardahan 氏に感謝いたします。
Discord/ステータス機能の改善:明示的なリアクションによるツール呼び出しで、trackToolCalls: true を指定することで、リアクションされたメッセージのその後のツール進行状況を追跡可能にし、共有されているツール表示絵文字テーブルをステータス反応に利用できるようになりました。
ゲートウェイ/設定機能の改善:無効な設定ファイルが自動的に復元されるのを防止し、起動時やホットリロード時にエラーとして処理するように変更しました。これにより、無効な設定は安全側に閉じ込められ、最終的に既知の良い状態への修復は openclaw doctor --fix コマンドが担当します。
Gateway/パフォーマンス:ランタイムの初期検出とシャットダウンフックヘルパーを遅延ロードし、準備完了後にメンテナンスタイマーの実行を延期します。また、Gateway 起動時の重複するプラグイン自動有効化処理を削減しました。
- Gateway/performance: 準備完了のシグナルが出るまで非読み込みサイドカーを遅延させ、ホットパスにおけるチャネルプラグインのバーレルインポートを回避し、信頼できるバンドル済みプラグインメタデータをゲートウェイ起動時に高速経路で処理する。
- Gateway/performance: ネイティブロード可能なプラグイン起動パスで
jitiをインポートしないことで、コンパイル済みのバンドル済みプラグインがソース変換ローダーのコストを負担する必要がないようにし、実際にフォールバック読み込みが必要になった場合のみコストが発生するようにする。 - Plugins/loader: ネイティブの高速経路では、実際のコンパイル済みプラグインモジュールの評価エラーを保持し、投げられた
.jsモジュールをすべてソース変換フォールバックのミスとして扱わないようにする。@vincentkoc 氏に感謝。
- QA/Mantis:
pnpm openclaw qa mantis discord-smokeランナーと手動の GitHub ワークフローを追加し、Mantis Discord ボットが設定されたギルド/チャンネルを認識できるか、スモークメッセージを投稿できるか、リアクションを追加できるか、アーティファクトをアップロードできるかを検証します。 - QA/Mantis:
pnpm openclaw qa mantis slack-desktop-smokeを追加し、Crabbox VNC デスクトップ内で Slack のライブ QA を実行して Slack Web を開き、Slack QA アーティファクトの横にデスクトップのスクリーンショットをキャプチャします。 - QA/Mantis: ランタイム環境をデスクトップブラウザの Crabbox とアーティファントコピーの子コマンド経由で渡すように変更しました。これにより、埋め込み型の Mantis コール側は親プロセスを変更せずに Crabbox の認証情報を提供できるようになります。@vincentkoc さんありがとうございます。
QA/Mantis: リモート環境での Slack QA が失敗した場合でも、コピーされた Slack デスクトップのスクリーンショットパスを返すようにしました。これにより、CLI は引き続き失敗時のスクリーンショットアーティファクトを出力します。@vincentkoc さんありがとうございます。
QA/Mantis: デスクトップのスマークウォームアップから Blacksmith テストボックス tbx_... のリース ID を受け付けるようにし、プロバイダのオーバーライドがインスペクトや実行前に失敗しないようにしました。@vincentkoc さんありがとうございます。
QA/Slack: プライベートボット間ハーンチルのカノピーとメンションゲートイングのカバレッジを追加した Slack ライブトランスポート QA ランナーを実装しました。@vincentkoc さんありがとうございます。
Gateway/performance: Gateway の起動処理の残りを完了させた後に重い cron ランタイムを遅延ロードし、準備完了後に再起送シンボルリフレッシュを延期します。また、--cpu-prof-dir オプションを使って各実行ごとに V8 CPU プロファイルを書き出すベンチマーク機能を追加しました。
Gateway/performance: 生チャンネル設定スキーマの解析がバンドルされたプラグインランタイムメタデータを検出しないようにし、デフォルトポートクリーンアップを無効化して起動時のプロファイリングを行うための pnpm gateway:watch --benchmark-no-force コマンドを追加しました。
Plugins/onboarding: 手動セットアップで公式プラグインのオプションインストールが可能になり、npm フォールバック付きの ClawHub 基盤診断や、外部 Codex プラグインを選択可能なプロバイダ設定として提供できるようになりました。@vincentkoc さんありがとうございます。
Plugins/update: 公式の外部化バンドル npm ミグレーションと ClawHub から npm へのフォールバックを信頼されたソースリンクインストールとして扱い、プレリリース専用の公式プラグインパッケージがバンドルビルドから移行する際に「安全でないプレリリース解決」として拒否されないようにしました。@vincentkoc さんありがとうございます。
Plugins/update: ClawHub パッケージが利用可能になった時点で、一度 npm フォールバックを経た後、ClawHub 優先の外部化プラグインインストールを再度 ClawHub へ戻す処理を実装しました。@vincentkoc さんありがとうございます。
プラグインの更新処理で、すでに外部化された固定版 npm パッケージや ClawHub プラグインのインストール先にある古いバンドル済みロードパスをクリーンアップしました。これにより、リリースチャンネルの同期時に、削除されたバンドルパスがインストール済みの外部パッケージより先に残る問題を解消します(@vincentkoc 氏への感謝)。
プラグイン/CLI では、openclaw plugins list --json コマンドにパッケージ依存関係のインストール状態を含めるようにしました。これにより、ランタイムでプラグインを読み込むことなく、スクリプトが不足している依存関係を検出できるようになります。
Telegram 機能では、エージェントメッセージツールがプラグイン所有の数値フォーラムトピックターゲットを受け付けるようになりました。また、ローカルパッケージ更新中も、返信配信プロバイダーのチャンクを安定したランタイムエイリアスの背後に保持します。これにより、Issue #77137 が修正されました(@richardmqq 氏への感謝)。
- Google Meet: realtime.introMessage を空文字列として保持することで、リアルタイム接続時の Chrome ブラウザがデフォルトの音声イントロを再生せず、サイレントモードで接続できるようにしました。@vincentkoc 氏への感謝。
- Discord/status: 一時的なソケットリセットの影響を受けにくいよう、劣化した Discord トランスポートとゲートウェイイベントループの飢餓状態を検知するシグナルを
openclaw channels status、openclaw status --deep、およびフェッチタイムアウトログに追加しました。 (原文の技術表記:realtime.introMessage: "")
健全な実行チャネルのように見えるようになります。(#76327) @joshavant 氏に感謝。
- Providers/OpenRouter: OpenRouter の
X-OpenRouter-Cache、X-OpenRouter-Cache-TTL、およびキャッシュクリアヘッダーを、検証済みの OpenRouter ルートでのみ送信するオプトイン形式のレスポンスキャッシングパラメータを追加しました。@vincentkoc 氏に感謝。
Providers/OpenRouter: 検証済み OpenRouter ルート上で、OpenClaw がコーディング、プログラミング、ライティング、チャット、パーソナルエージェントの使用を宣伝できるように、アプリの帰属カテゴリを拡張しました。@vincentkoc さんありがとうございます。
プラグインの更新:ベータ版 OpenClaw 更新チャンネルでは、デフォルトラインの npm および ClawHub プラグインの更新時に、まず @beta リリースを試行し、ベータ版が存在しない場合はデフォルトまたは最新バージョンにフォールバックします。
チャネル/WhatsApp:DM ルーティングではなく、チャネルセッションメタデータを用いた明示的な WhatsApp チャネル/ニュースレター @newsletter 宛先アウトバウンドメッセージのサポートを追加しました。これにより #13417 が修正され、#13424 で提案された狭義のアウトバウンドターゲットのアイデアが継承されます。ご協力いただいた @vincentkoc 氏と @agentz-manfred 氏に感謝します。
実行承認:将来の承認画面やコマンドレビュー画面向けに、Tree-sitter を活用したシェルコマンド解説機能を追加しました(#75004)。@jesse-merhi 氏への謝意を表します。
Agents/sandbox: 非同期セッションのロック競合を軽減するため、サンドボックスコンテナとブラウザレジストリのエントリをランタイムごとのシャードファイルとして保存する。これにより、openclaw doctor --fix コマンドがレガシーなモノリス形式のレジストリファイルを移行している間の影響を最小限に抑えることができる。(#74831) @luckylhb90 氏への感謝。
- Plugins/ClawHub:
RateLimit-ResetまたはRetry-Afterヘッダーからリセットまでの時間を取得し、429 エラーを注釈付けします。また、未認証のリクエストに対して「より高いレート制限を得るにはサインインしてください」というヒントを追加しました。これにより、ユーザーはダウンロードが復旧するタイミングを確認でき、制限を解除する方法も把握できます。@romneyda 氏に感謝します。 (原文の技術表記:Sign in for higher rate limits.)
プラグイン/ランタイムの状態管理:registerIfAbsent を追加。既存のライブ値を上書きせずに、特定のキーをプラグインが正常に確保したかどうかを返す原子化されたキーストア重複排除機能を提供します。ご協力ありがとうございます @amknight。
修正内容
・バックエンドのメッセージアクションゲートウェイルーティングを強化しました [AI]。(#76374) @pgondhi987 氏への感謝。
・QQBot のストリーミングコマンド認証を実装しました [AI]。(#76375) @pgondhi987 氏への感謝。
・プラグイン/ディスカバリー:コンパイル済みランタイム出力を持たず、TypeScript ソースエントリのみを公開する管理された npm プラグインパッケージを無視します。これにより、セットアップ時に古くて壊れたインストールが、動作するバンドル版や再インストール可能なチャンネルプラグインの存在を隠すのを防ぎます。
・CLI/update:OpenClaw の安定版修正バージョン(例:2026.5.3-1)を、ベースとなる安定リリースよりも新しいものとして扱います。これにより、パッケージ更新時にダウングレードの確認を求める不再要になります。
- プラグインのインストール:信頼できる公式 OpenClaw の npm インストールに対して、危険なパターンスキャンの警告を抑制します。これにより、
@openclaw/discordをインストールしても、公式パッケージに対する認証情報収集の警告が表示されなくなります。 - プラグインのリリース:公開された npm ランタイム検証器が、空の
openclaw.runtimeExtensionsエントリを「存在しない」として通過させるのではなく、拒否するように変更しました。
推論された出力に基づき、@vincentkoc 氏に感謝します。
プラグイン/セキュリティ関連の改善として、プラグインインストールスキャン時にソースルールコンテキストと一致する際、インラインコメントおよびブロックコメントを無視するように変更しました。これにより、環境デフォルト値付近にあるコメントのみで構成された fetch や post の参照が、クリーンなプラグインのインストールを妨げることを防止します。これも @vincentkoc 氏による貢献です。
Doctor/プラグイン:バンドル済みプラグインが明示的に設定されていない場合でも、古くなった管理インストールレコードを削除するように改善しました。これにより、ドクターのクリーンアップ処理でインストールメタデータが残存する(オーファン化する)ことがなくなります。
@vincentkoc 氏に感謝します。
- Web fetch: 選択したフェッチプロバイダに基づいて、スコーププロバイダのフォールバックキャッシュエントリを調整します。これにより、設定のリロード時に他のプロバイダがキャッシュしたフォールバックペイロードを再利用できなくなります。
- Web search: ツールの実行中に、後からバインドされた
tools.web.search.enabled: falseを尊重します。これにより、設定のリロード時でも、すでに作成済みのweb_searchツールが実行可能な状態のまま残ることがなくなります。 - Plugins/packages: インストール済みパッケージに対して、存在するがパッケージ境界チェックに失敗した推定ビルトタイムエントリを、TypeScript ソースへフォールバックさせるのではなく、拒否します。
プラグイン/ローダー:ネイティブ評価で依存関係が見つからない状態になった後、ソース変換器を介してネイティブ読み込みされた JavaScript プラグインモジュールの再試行を行わないようにしました。これにより、トップレベルでの副作用が重複するのを防ぎます。@vincentkoc 氏に感謝します。
プラグイン/セキュリティ:process.env のアクセスや通常の API 送信が、同じコンパイル済みバンドルの遠隔部分にのみ存在する場合でも、公式のバンドル済みプラグインパッケージをインストールスキャナーがブロックしないようにしました。
プラグイン/パッケージ:空の openclaw.runtimeExtensions エントリを無視して推測された TypeScript ランタイムエントリにフォールバックするのではなく、拒否するようにしました。@vincentkoc 氏に感謝します。
- Doctor/plugins: 管理対象のnpmプラグラムのシャドウエントリが、パッケージロックファイルだけでなく
package.jsonやnode_modulesからも削除されるようになりました。これにより、今後のnpm操作で修復済みのバンドルプラグラムのシャドウを参照し続けることがなくなります。@vincentkoc 氏への感謝。
- プラグイン/ランタイム状態: 名前空間の退避処理が既存のエントリと同じミリ秒内に実行された際、登録されたキーを保持するようにしました。これにより、
registerやregisterIfAbsentが自身の新しい値を退避している最中に成功を報告する不具合を修正します。@vincentkoc 氏への感謝。 - コントロール UI/Talk: 起動に失敗した Talk のエラーを閉じられるようにし、閉じた際に古いエラー状態をクリアするようにしました。これにより、リアルタイム音声プロバイダーの設定がない場合でも、チャットバナーが永久に表示され続けることがなくなります。#77071 を修正。@ijoshdavis 氏への感謝。
- コントロール UI/Talk: ランタイムエラーのバナーを閉じた際に、失敗したリアルタイム Talk セッションを停止してクリアするようにしました。これにより、次の Talk クリックで古いセッションを停止するだけの操作ではなく、新しいセッションが開始されるようになります。@vincentkoc 氏への感謝。
- コントロール UI/Talk: 次の Talk クリック時に、失敗したリアルタイム Talk セッションから再試行するようにしました。これにより、古いセッションの停止ボタンを別途押す必要がなくなります。@vincentkoc 氏への感謝。
- Canvas ホスト: ブラウザ上の Canvas ホスト URL と起動マウントログにおいて、Gateway の TLS スキームを保持するようにしました。これにより、直接 HTTPS で接続されるゲートウェイが、セキュリティの低い Canvas リンクを宣伝することがなくなります。@vincentkoc 氏への感謝。
- WhatsApp/login: ログイン成功および失敗メッセージを、注入されたランタイム経由でルーティングするようにしました。これにより、セットアップやオンボーディング画面で QR コードだけでなく、すべてのログイン出力がキャプチャされるようになります。@vincentkoc 氏への感謝。
- Google Chat: 認証クライアントごとに隔離された Google 認証トランスポートを作成するようにしました。これにより、webhook 検証用とアクセストークン取得用のクライアント間で、google-auth-library のインターセプターによる変更が蓄積することがなくなります。@vincentkoc 氏への感謝。
Doctor/plugins: doctor --fix 実行時に、バンドルされた @openclaw/* プラグインの管理下にある npm コピーが孤立または回復した状態になっている場合、それらを削除します。これにより、古いパッケージマニフェストが現在のプラグイン設定スキーマを覆すことがなくなります。
Control UI/performance: 共有イベントログ内の長時間タスクや長時間アニメーションフレームの診断情報を制限しました。これにより、レンダリングが遅い場合でもゲートウェイやプラグインのイベントが「デバッグ」ビューや「概要」ビューから除外されることがなくなります。@vincentkoc 氏に感謝します。
Gateway/startup: HTTP サーバーがバインドされた後にのみ、キャンバスホストのマウント情報をログ出力するように変更しました。これにより、リクエストを受け付ける前に既にマウント済みと報告されていたという不具合を解消し、起動時のログ表示を修正しました。
Control UI/i18n: すべてのロケールで、セッションのアクティブフィルターツールチップに設定された分単位の数値を表示し、i18n チェックがプレースホルダーのズレを検出できるようにしました。@BunsDev さんありがとうございます。
Web fetch: web_fetch の設定とプロバイダフォールバックメタデータを、アクティブなランタイムスナップショットから遅延バインドするように変更し、web_search と同じく、長期実行されるツールが古いフェッチプロバイダの設定を使用しないようにしました。@vincentkoc さんありがとうございます。
Discord: アシンクボットプローブで例外が発生した場合だけでなく、劣化したプローブ結果を返したときも、古くなった起動プローブのボット/アプリケーションステータスをクリアするように改善しました。@vincentkoc さんありがとうございます。
- Web search: マニフェストの所有権を通じて、明示的にバンドルされた
web_searchプロバイダーの実行時読み込みを可能にしました。これにより、DuckDuckGo や Gemini などを選択しても、関連しないバンドル済みプロバイダーがインポートされたり、オプション依存関係の失敗がログ出力されたりすることがなくなりました。@vincentkoc さんありがとうございます。
プラグインの検出機能において、すでにインストール済みの「origin: "global"」ソース専用 TypeScript ランタイムチェックを、設定ブロックエラーから警告レベルに引き下げました。これにより、1 つの壊れたパッケージが原因で他に関連するプラグインの plugins install が止まることがなくなります。ただし、ランタイムは jiti を経由して TypeScript ソースへフォールスルーします。新規インストールされたソース専用パッケージに対するインストール時の拒否処理は変更されません。ご協力ありがとうございます(@romneyda)。
OpenAI Codex プロバイダーでは、手動リダイレクトの貼り付けプロンプトを表示する前に OAuth の進行状況スピナーを停止しました。これにより、コールバックタイムアウト時に複数のターミナルで「Browser callback did not finish」というエラーが連発する問題を解消します。
DeepSeek プロバイダーでは、軽量なプロバイダーポリシーのインターフェースを通じて DeepSeek V4 の xhigh および max 思考レベルを公開しました。これにより、ランタイムプラグインレジストリがアクティブでない場合でも、コントロール UI の /think ピッカーには最大限の推論オプションが表示され続けます。これで #77139 が修正されました。@bittoby 氏に感謝します。
・リリースのベータ版スモークテスト:gh workflow run で実行 URL が返されない場合に、gh run list から送信された Telegram ベータ E2E 実行を解決し、メンテナーヘルパーが即座に失敗しないようにしました。@vincentkoc 氏に感謝します。
・メディア/画像:Sharp による変換オプションが利用できない場合でも、HEIC/HEIF の添付ファイルは強制的に変換処理をスキップして送信し、未変換の元ファイルを転送しないようにしました。
Vincent Koc 氏に感謝します。
Google Meet では、通話者の現在のエージェントトランスクリプトをフォークし、エージェントモードの会議コンサルタントセッションを作成します。これにより、Meet の返信は、会議に参加したツール呼び出しからの文脈を引き継ぐようになります。
iOS/モバイルペアリング:QR コードの発行やセットアップコードの入力を拒否する前に、ループバックではない ws:// 設定 URL をブロックします。これにより、iOS のゲートウェイ設定画面で QR コードをスキャンしたり、完全なセットアップコードメッセージを手動で貼り付けたりできるようになります。ご協力ありがとうございます @BunsDev。
コントロール UI:ゲートウェイ幅が狭い場合やタブレット幅の場合も、ゲートウェイアクセスの入力欄とロケール切り替えボタンはカード内に収まるように調整しました。
エージェント/トラジェクトリ:ランタイムでのトラジェクトリキャプチャを制限し、キューされたサイドカー書き込みを優先することで、サイズが大きすぎるトレースが記録され続けることでゲートウェイのクリーンアップ処理を独占する問題を解消します。#77124 を修正しました。ご協力ありがとうございます @loyur。
Telegram/ストリーミング:共有コンパクション前にツール進捗のドラフトプレビューに含まれるバックティックを正規化(サニタイズ)します。これにより、バックティックが多用された長い進捗テキストでも、安全なコード形式のプレビュー内で正しくレンダリングされ、省略記号に切り捨てられるのを防ぎます。
UI/チャット:Firefox のコンソールノイズを解消するため、チャットキューのテキストルールからサポートされていない line-clamp 宣言を削除しました。ただし、表示上の文字列の打ち切り動作には変更はありません。ご協力ありがとうございます @ZanderH-code。
エージェント/Pi:合成された途中処理のオーバーフロー継続プロンプトに対する永続化機能を抑制します。これにより、トランスクリプト再試行による回復時に「トランスクリプトから続ける」というプロンプトが新しいユーザーターンとして記録されるのを防ぎます。ご協力ありがとうございます @vincentkoc。
エージェント/ツール:メッセージ送信前に、リッチプレゼンテーションのタイトル、ブロック、ボタン、選択ラベルから推論テキストを除去します。これにより、構造化されたチャネルペイロードから隠れた計画情報が漏洩するのを防ぎます。ご協力ありがとうございます @vincentkoc。
Telegram では、安定版の配布名に遅延プロバイダー実行時のチャンクを保持し、最終配信後に /reasoning stream プレビューを削除します。これにより、パッケージ更新やライブ推論ドラフトが Telegram の応答を破損したりノイズの原因となったりするのを防ぎます。@BunsDev 氏に感謝します。
Discord: 起動ボットやアプリケーションのプロブ完了を待たずにゲートウェイモニターを開始し、WSL2 ホストで /users/@me REST パスが応答に時間がかかっても、ステータス情報の非同期取得が完了するまでチャンネルのオンライン化を遅延させないようにしました。これにより、#77103 の不具合が修正されました。ご協力いただいた @Suited78 氏に感謝します。
実行承認機能の改善点:環境変数オプションに -S または -s を指定し、他の環境変数の短縮オプションと組み合わせた際に、コマンド文字列を分割して渡す env -S のリスクを検出します。これにより、承認時の説明で重要な情報が抜け落ちるのを防ぎます。
環境変数で隠されたペイロードを分割する仕組みについて、env -iS... の使用例など。@vincentkoc 氏に感謝します。
Google Meet: 音声合成後に、具体的なエージェントモード TTS プロバイダー、モデル、音声、出力形式、サンプリングレートをログに記録します。これにより、Meet のログから各返信を生成した音声バックエンドが特定できます。
Voice Call: リアルタイムプロバイダーが正常に終了した時点で通話完了としてマーク付けます。これにより、Twilio/OpenAI/Google のリアルタイム停止イベントが残存するアクティブな通話レコードを残すことがなくなります。@vincentkoc 氏への感謝。
Gateway/update: シャットダウンクローズパスを安定したランタイムチャンクの背後に配置し、最近の server-close-* ハッシュに対する互換性エイリアスを提供します。これにより、手動での npm パッケージ置換によって、既に実行中の Gateway が正常にシャットダウンできなくなる事態を防ぎます。#77087 を修正しました。@westlife219 氏への感謝。
Control UI/media: アシスタントによるメディア取得時に、短寿命の範囲限定トークンを発行し、チャット画像 URL に長期有効な認証トークンを公開する代わりに、トークン付与された URL をレンダリングします。これにより、#70830 と #77097 の問題を修正しました。@hclsys 氏に感謝します。
Exec approvals: POSIX exec を、インライン評価やシェルスクリプトラッパー、評価・ソース検出におけるコマンドの運搬手段として扱います。これにより、承認時の説明やコマンドリスクチェックで、exec の背後に隠されたペイロードを見逃すことがなくなります。@vincentkoc 氏に感謝します。
Google Meet: Chrome とペアリングされたノード間の Meet 通話ブリッジを開始する際、解決された音声プロバイダーモデルをログ出力します。これにより、エージェントモードでの参加では STT モデルが、双方向(bidi)接続ではリアルタイム音声モデルが表示されます。
Diagnostics: cron の復旧コンテキストでセッション末尾ファイルが存在しない場合でも、拡張機能のテスト型チェックに引っかからないように処理します。@vincentkoc 氏に感謝します。
QA/Slack: 構造化された進捗ドラフトヘルパー向けの Slack ディスパッチプレビューフォールバックテスト SDK モックを更新しました。これにより、新しいインポートをカバーするリッチな進捗ドラフト回帰スイートが機能し、アサーション実行前に失敗することがなくなります。@vincentkoc 氏に感謝します。
Release validation: 集中した QA のライブ再実行で Matrix や Telegram を選択可能にし、Slack は実行しないようにしました。これにより、既知の Slack 認証プール障害が、Slack 以外のライブ証明をブロックすることがなくなります。@vincentkoc 氏に感謝します。
Plugins/loader: バンドルされたプラグインパッケージ test-api.js のエイリアスをプライベート QA モードの背後に保持し、通常のプラグイン読み込み時にソース変換がテスト専用パブリック表面を露出しないようにしました。@vincentkoc 氏に感謝します。
- ゲートウェイ/起動処理: 準備完了後の遅延メンテナンスタイマーが失敗した場合でも、cron を開始し、ポスト可能なメモリのトレースを記録します。これにより、致命的ではないタイマー設定の問題によってスケジュールされたジョブが静かに待機状態になることを防ぎます。@vincentkoc 氏に感謝。
- 実行承認処理: BSD/macOS の
env -Pキャリアコマンドを、承認コマンドと厳格なインライン評価チェックの前に展開します。これにより、/approveのシェル実行やインラインインタプリタペイロードは、依然としてこの env フォームによってブロックされたままになります。 - エージェント/セッションステータス: 実行セッションに永続的なセッションストアエントリが存在する前でも、ライブ実行セッション上にセマンティックな
session_status({ sessionKey: "current" })を維持し、サンドボックスポリシーキーにフォールバックしないようにします。@vincentkoc 氏に感謝。
- QA/Slack: ソースモードでの QA 実行時に、バンドルされた公式プラグインの公開サーフェスパッケージエイリアスを解決するようにしました。これにより、リリース時の Slack ライブ検証でワークスペースシンボリックリンクなしでも
@openclaw/slack/api.jsを読み込めるようになります。@vincentkoc さんありがとう。 - Codex: サンドボックスポリシーが別セッションキーを使用する場合、ライブ実行セッションキーをアプリサーバーの動的ツールに渡すようにしました。これにより、
session_status({ sessionKey: "current" })がサンドボックスポリシー側のキーではなく、アクティブな実行を示すようになります。@vincentkoc さんありがとう。 - Web search: アクティブなランタイムメタデータやアクティブなプラグインレジストリが不完全な場合でも、ファーストクラスのアシスタント
web_searchの自動検出と設定済みランタイムプロバイダーを常に表示するようにしました。#77073 を修正。@joeykrug さんありがとう。
プラグイン・ツール:共有の必須ファクトリから提供される場合でも、マニフェストで指定されたサブルートールをオプションとしてマークするようになりました。これにより、キャッシュやステータス、MCP メタデータにおけるオプトインツールのポリシーが正確に保たれます。ご協力ありがとうございます @vincentkoc。
Matrix:streaming.progress.toolProgress は進捗ドラフトモードに限定されるため、部分的な表示や非表示の Matrix プレビューでも、streaming.preview.toolProgress が無効化されない限りツールの進行状況が失われることはありません。ご協力ありがとうございます @vincentkoc。
ゲートウェイ・バリデーション:ゲートウェイサーバーの検証ファイルを分離し、リクエストトレースのカバレッジにおいて関連しない起動ログを除外しました。また、共有認証ソケットが停止した場合は即座にエラーとするように変更したため、コントリビューターによる本番ブランチの CI での誤った失敗が減りました。ご協力ありがとうございます @amknight。
チャンネル/ストリーミング機能:streaming.progress.toolProgress は進行状況のドラフトモードにスコープを限定したまま維持します。これにより、コンパクトな進行状況ラインの無効化が部分的またはブロックごとのプレビューツールの更新通知を抑制するのを防ぎます。@vincentkoc 氏への感謝。
プラグイン/アップデート機能:npm インストールやプラグインの更新、バンドルバージョンにおいて、OpenClaw の安定版修正バージョン(例:2026.5.3-1)を正式なリリースとして扱います。
比較対象となるため、latest ブランチではプレリリースのオプトインなしで公式プラグインを先に更新できるようにしました。ご協力ありがとうございます @vincentkoc。
- コントロール UI: 外観の調整項目にある「ブラウザアクション」とドキュメントのリンク先を、削除された
/themesページから、ライブな調整エディターのルートへ変更しました。これで #77048 が修正されます。
Control UI: 夢日記の文章をサニタイズされた Markdown パイプラインを通じてレンダリングするように変更しました。これにより、日記内の太字・斜体・見出しなどの Markdown 記号が、そのままソーステキストとして表示される不具合を修正します(#62413 対応)。
・コントロール UI:出力がテキストブロック配列として到着するツールの結果をレンダリングし、拡張されたツール出力にはスクロール可能なブロックを追加することで、WebChat 上で読み込みや実行の出力が見えるようにしました。これにより、#77054 の不具合を修正しています。
・MCP:conversations_list および messages_read において、シリアライズされた会話/メッセージペイロードを主要なテキストコンテンツに含める一方、既存の動作は維持します。
能力のあるクライアント向けの構造化コンテンツ。#77024 を修正。
- メディア: 書き込み後のメディアファイルシステム同期 (fsync) ステップで
EPERMエラーが発生した場合、ベストエフォートとして扱い、正常な書き込み後にfsyncを拒否する Windows ファイルシステム上でも WebChat やチャンネルへのアップロードが完了できるようにしました。#76844 を修正。 (原文の技術表記:structuredContent)
- メディア/Telegram: オプションの画像最適化が無効な場合、制限内にあるオリジナル画像を送信するようにしました。これにより、
sharpが欠落していても Telegram のメディア返信やメッセージツールの画像送信が失敗しなくなります。Fixes #77081. (#77117) 貢献者 @pfrederiksen。 - 診断機能: ストップしたセッションと立ち往生したセッションの回復ログに、最後の進捗状況、cron ジョブ/実行 ID、停止した cron ジョブ名、および最後のアシスタントトランスクリプトスニペットを含めるようにしました。これにより、cron のストール時に何が停止されたかを明確に示せます。
- ストリーミングチャンネル:
streaming.preview.commandText: "status"およびstreaming.progress.commandText: "status"を追加し、プレビューの進行ラインでコマンドや実行テキストを非表示にしました。ただし、リリース版では生コマンドテキストがデフォルトとして維持されます。Fixes #77072.
Agents/cron: 明示的な cron の timeoutSeconds を、CLI で出力がない場合や埋め込み LLM のアイドル待機監視の両方に適用し、リsume デフォルトによる制限を受けないようにしました。これにより #76289 が修正されます。
- プラグイン/カタログ:無効化されている、拒否された、または制限付きのホワイトリストに含まれない外部チャネルプラグインに対して、存在しない
channelConfigsの互換性診断を抑制します。これにより #76095 が修正されます。 - 診断機能:Webhook やメッセージの OTEL 属性および Prometheus の配信ラベルは低カーディナリティに保ち、スパンから生のチャット ID やメッセージ ID を除外します。これにより、進捗ドラフトモードやメッセージツールモードで高カーディナリティなメッセージ識別子が漏洩するのを防ぎます。
- Google Meet:エージェントおよび設定 UI に対して、レガシーな
mode: "realtime"の提供を停止します。ただし、mode: "agent"のための非公開の互換性エイリアスとして維持します。これにより、新規接続では直接のリアルタイム音声フォールバックではなく、STT → OpenClaw エージェント → TTS というパスが選択されるようになります。
Google Meet: 生成されたコマンドペア用 SoX オーディオコマンドに chrome.audioBufferBytes を追加し、SoX のデフォルトバッファサイズを 8192 バイトから 4096 バイトに引き下げて、Chrome の TalkBack の遅延を低減します。
Google Meet: リアルタイムプロバイダー設定を、エージェントモードの文字起こし用と Bidi モードの音声用へ分割し、doctor --fix を実行してレガシーな Gemini Live の Bidi 設定を移行します。これにより、デフォルトの OpenClaw エージェント TalkBack パスが破損することなく、Gemini Live が直接 Bidi フォールバックを実行できるようになります。
Google Meet: 接続時のイントロ準備中に Meet のマイクがミュート解除されるまで待機し、Meet がローカルマイクを一時的にミュート状態と報告した場合でも TalkBack を恒久的にスキップしないようにします。
- Google Meet: プラグマニフェストスキーマとセットアップヒントに
voiceCall.postDtmfSpeechDelayMsを追加し、マニフェストベースの設定編集で、ランタイムがサポートする Twilio の遅延キーを受け付けられるようにしました。@vincentkoc 氏への感謝。 - Google Meet:
realtime.transcriptionProviderが設定されていない場合、明示的な非 Google のrealtime.provider値を、トランスクリプションプロバイダーの互換性フォールバックとして維持します。@vincentkoc 氏への感謝。
- Google Meet: 設定ステータスにおいて、
voice-callプラグインのエントリが存在しない場合を「準備完了」とみなすのではなく、有効な voice-call プラグインエントリが必要となるように変更しました。@vincentkoc 氏への感謝。 - Telegram: 返信配信時に共有されたインタラクティブな返信ボタンを描画し、プラグイン承認メッセージがインラインキーボードとして表示されるようにしました(#76238)。@keshavbotagent 氏への感謝。
Cron/セッション:ディスク上に転記(トランスクリプト)が存在しない場合、cron のメタデータ行は再開不能な状態のまま維持されます。これにより、「doctor」コマンドや sessions cleanup --fix-missing コマンドが、転記前の cron 行を壊れたセッションとして報告したり削除したりすることがなくなります。Refs #77011.
- Agents/cli-runner: 準備時に、
~/.claude/projects/ディレクトリ内のオンディスクのトランスクリプトが存在しなくなった場合、保存済みのclaude-cliのセッション ID を破棄します。これにより、不完全なupdate.runから残った古いバインディングが、その後の実行を妨げる事態を防ぎます。
(自動応答 / Telegram 直接送信)は、claude --resume のタイムアウトループ内で動作します。実行は毎回新規に開始され、新しい sessionId は既存の経路を通じて書き戻されます。
実行後のフロー処理。(#77030; 参照 #77011) @openperf 氏への感謝。
リリース検証:Windows 安全な Node/npm シムを通じてクロス OS の TypeScript ハネスをインストールし、ネイティブの Windows パッケージチェックがアーティファクトキャプチャ前に終了するのではなく、OpenClaw スモークスイートに到達するようにします。@vincentkoc 氏への感謝。
リリース検証:2026.5.2 アップデーターがネイティブモジュールのスワップクリーンアップフォールバックに達した後でも、Windows パッケージのアップグレードチェックを継続させます。これにより、即座の更新ステータスプローブでクラッシュするのではなく、パッケージメタデータと後続のスモークテストを通じて、フォールバックインストールされた候補を検証します。@vincentkoc 氏への感謝。
Doctor/プラグイン:同じチャンネルに対して、別の設定済みプラグインが実効的な所有者となっている場合、チャンネルから派生した公式プラグインのインストールをスキップします。これにより、doctor --repair を実行しても再インストールされなくなります。
feishu の処理を openclaw-lark に移管し、channels.feissu を担当させるようにしました。これにより #76623 が修正されました。@fuyizheng3120 氏に感謝します。 (原文の技術表記: channels.feishu)
Gateway/セッション:セッション一覧表示時に、思考オプションの重複した拡張処理をメモ化し、未使用のコストフォールバックチェックをスキップすることで、大規模なマルチエージェントストアにおける行ごとの処理負荷を削減しました。Fixes #76931。
Gateway/セッション:デフォルトの sessions.list RPC 応答に上限を設定し、切り捨てメタデータを報告するようにしました。これにより、Slack を多用した長寿命なストアが、無制限の Gateway 行構築を強制する事態を防ぎます。
修正 #77062。
エージェントとツールの機能において、プラグインツールの登録やライブランタイム設定の取得には、設定のみを反映したランタイムスナップショットを使用します。これにより、コアプラグインタools の準備パスにおける高コストな完全シークレットのスナップショット複製を回避できます。Fixes #76295.
エージェントとツールの処理において、任意の PDF やメディア用ファクトリを構築する前に、有効なツール拒否リスト(denylist)を優先して適用します。これにより、tools.deny: ["pdf"] の設定が後続のポリシーフィルタリングよりも先に PDF 関連の設定をスキップできるようになります。これで issue #76997 が修正されました。
MCP/プラグインツールでは、スタンドアロンなMCPブリッジを通じてプラグインツールを公開する際、グローバルな tools.profile、tools.alsoAllow、および tools.deny ポリシーを適用します。これにより、ACPクライアントはポリシーによって隠されたツールを見ることがなくなります。
プラグインツールを使用するか、オプトイン型のオプションツールを見逃さないようにしてください。@vincentkoc さんありがとうございます。
- プラグインツールの選定では、明示的なツール拒否リストを尊重します。これにより、後続のポリシーフィルタリングが行われる前に、直接コマンドやゲートウェイ表面で拒否されたプラグインツールが実装されることを防ぎます。@vincentkoc さんありがとうございます。
プラグインツール:マニフェストベースの個別ポリシーでファクトリーが返すツールをフィルタリングできるようになりました。これにより、共有ランタイムファクトリーから生成されるオプションのサブルートールは、明示的に許可されない限り非表示のままになります(@vincentkoc 氏への感謝)。
エージェント/トランスクリプト:現在のトランスクリプトのみを対象に、コンテキストオーバーフロー時の圧縮処理を再試行するタイミングを、入力されたユーザーのターンが実際に保存された後に遅らせるように変更しました。また、WebChat エージェント実行時に Pi が管理するアシスタントのターンが重複して書き込まれるのを防止します(#76424 修正、#77033)。
エージェント/ブートストラップ:BOOTSTRAP.md の保留状態やブートストラップの切り捨てに関する通知を、WebChat のユーザーコンテキストやランタイムコンテキストにコピーするのではなく、システムプロンプトのプロジェクトコンテキスト内に保持するように変更しました。これにより、設定テキストや生警告診断がユーザー側に表示されるのを防ぎます(#76946 修正)。
Channels/WhatsApp: onlyBuiltDependencies に @whiskeysockets/libsignal-node を追加することで、pnpm v9 以上の blockExoticSubdeps が baileys の git-tarball サブ依存関係を拒否しなくなるようになりました。これにより、すべての受信エージェントの返信が抑制される問題も解消されます。Fixes #76539。@ottodeng と @vincentkoc に感謝します。
Gateway/install: .env で管理されている値を macOS の LaunchAgent 環境ファイルに保持しつつ、OPENCLAW_SERVICE_MANAGED_ENV_KEYS も追跡し続けるようにしました。これにより、認証キーやプロバイダーキーが管理されていない状態で再生成されたサービスが起動しないよう防止します。Fixes #75374.
- ゲートウェイの再起動時:
lsofがノードプロセス名のみを報告した場合、引数(argv)を確認してリスナーのプロセスIDを検証する。これにより、macOS 上のcnodeプロセスを含む古いゲートウェイのクリーンアップが可能になる。
リスナー機能を修正しました。#70664 を解決します。
・ゲートウェイ/ログ機能:ログファイルの作成前に、logging.file 内の先頭にある ~ を展開するように改善しました。これにより、ホームディレクトリ相対パスを指定した場合に発生する起動ループクラッシュが防止されます(Fixes #73587)。
・チャンネル/CLI:プロバイダの使用状況取得に失敗しても openclaw channels list --json コマンドが利用可能となるよう対応し、エラーが発生した場合は処理を中止せず、各プロバイダごとの使用状況エラーを報告するように変更しました。
チャンネルリスト。参照 #67595。
- Doctor/plugins: 欠落プラグインの修復時に
plugins.allowのエントリを構成済みプラグインとして扱わないように変更しました。これにより、許可されているが未使用のプラグインが不要にインストールされるのを防ぎます。@vincentkoc 氏への感謝。
エージェント/メッセージ機能: 同じターゲットに対して message ツールが送信された後に、既にツールによって送信済みのテキストやメディアを重複排除しつつ、独自の最終コメントを確実に配信するようになりました。これにより、短い補足 remarks が無言で削除される不具合が解消されました。#76915 を修正しました。@hclsys 氏に感謝します。
エージェント/メッセージング機能:メッセージツールからの返信を重複排除する経路でマッチングする際、文字列形式のスレッド ID を保持します。これにより、チャネルプラグイン比較前に数値に見えるトピック ID で精度が失われるのを防ぎます。
チャンネル/ストリーミング機能:Slack、Discord、Telegram、Matrix、Microsoft Teams において、agents.defaults.toolProgressDetail: "raw" の設定を尊重します。これにより、デバッグ時にツール開始行にコマンドの詳細出力(生データ)が含まれるようになります。
チャンネル/ストリーミング機能:長いコマンド詳細が短縮された際、一致しないインラインコードのバックティックを除去します。これにより、短縮後の行に不要なマークダウン記号が残るのを防ぎます。
Discord/Slack/Mattermost:streaming.preview.toolProgress が false の場合に中間的なツール更新が非表示となるランタイム動作に合わせて、ドラフトプレビューのツール進行状況設定ヘルプを調整しました。
Feishu:ストリーミングカードのツールステータス行に、共有チャンネル進行状況フォーマッターを使用します。これには生コマンドの詳細出力やメッセージツールのフィルタリング機能も含まれます。
Mattermost:agents.defaults.toolProgressDetail: "raw" が有効な場合、ツールステータスのプレビューに共有のドラフトフォーマッターを使用し、生コマンドの詳細出力を表示します。
Mattermost:ドラフトプレビューがアクティブな間(ドラフトツール行が無効になっている場合も含む)、スタンドアロンのデフォルトツール進行状況メッセージを抑制します。
- Telegram: 共有されたフォールバックボタンのラベルテキストをインラインキーボードに含めて送信することで、ボタンだけのインタラクティブな返信を配信する機能を改善しました。これにより、空の返信が生成されるのを防ぎます。@vincentkoc 氏への感謝。
- OpenAI Codex: 明示的な認証プロファイルなしでアプリサーバークライアントを開始する際、
auth.order.openai-codexの設定を尊重します。これにより、ステータスやモデルのプローブ、および暗黙的な起動時にデフォルトのプロファイルにフォールバックせず、設定された Codex アカウントが使用されます。@vincentkoc 氏への感謝。 - OpenAI Codex: SSRF ガード付きプロバイダーリクエストが、OpenClaw の undici IPv4/IPv6 フォールバックポリシーを引き継ぐようにしました。これにより、DNS が到達不能な IPv6 アドレスを返す場合でも、IPv4 が動作するホスト上で ChatGPT ベースの Codex が復旧できるようになります。#76857 を修正。@jplavoiemtl 氏と @SymbolStar 氏への感謝。
- Gateway/systemd: Gateway の環境ファイルにオペレーターが追加したシークレットを、再ステージング時に保持するようにしました。一方、OpenClaw が管理するキー(
OPENCLAW_GATEWAY_TOKENなど)はクリアし、古い環境ファイルのコピーによって新しいステージング値が上書きされないようにします。また、状態ディレクトリの.envファイルが空の場合も、オペレーターシークレットは保持されます。#76860 を修正。@hclsys 氏への感謝。 - プラグインの更新: デフォルトまたは最新仕様で解決されるバージョンが、すでにインストールされているプレリリースであり、インストーラーが安定版のフォールバックに置き換えるべきものである場合でも、信頼できる公式 npm の更新を「変更なし」としてスキップしないようにしました。@vincentkoc 氏への感謝。
- プラグインの更新: 外部化された npm インストールの一部で、レガシーなインストール記録が解決済みのパッケージ名のみを保持している場合、その古いバンドルロードパスをクリーンアップするようにしました。@vincentkoc 氏への感謝。
- プラグインツール:同じプラグインからデフォルトのツールが利用可能な場合でも、認証 unavailable のオプションツールは非表示のままにします。また、
tools.alsoAllowでオプションツールの名前を指定した場合も同様です。@vincentkoc 氏への感謝。 - リアルタイム文字起こし:OpenAI、xAI、Deepgram のストリーミング文字起こしにおいて、プロバイダーの準備完了前にソケットが閉じられた場合、接続タイムアウトとして誤って表示されるのではなく、「準備前でのクローズ」として失敗を報告するように改善しました。@vincentkoc 氏への感謝。
- OpenAI/Google Meet:
session.updatedイベントが発生する前にソケットが閉じた場合、リアルタイム音声接続の試行は失敗扱いとし、ブリッジが準備されずに待機状態が続く Meet の参加を回避できるようにしました。@vincentkoc 氏への感謝。
- Google Meet: 反復される参加者の単語を、リアルタイムの音声除去トランスクリプトにおいて複数のアシスタント重なりとして誤認識しないよう改善しました。@vincentkoc 氏に感謝。
- Google Meet: Chrome のスクリーンリーダー(Talk Back)経路のデフォルト設定を「
mode: "agent"」に変更しました。これにより、入力にはリアルタイム文字起こしを、音声出力には通常の OpenClaw TTS を使用しますが、直接のリアルタイム音声応答機能は維持されます。
利用可能なモードは mode: "bidi" です。また、エージェントモードとの互換性エイリアスとして mode: "realtime" も受け付けます。
QA/キャッシュ機能では、ライブキャッシュプローブの再試行が停止する前に、完全な CACHE-OK マーカーが必要です。これにより、接尾辞のみを含むテキストで破損したプローブ応答を隠すことが防止されます。@vincentkoc 氏に感謝します。
Slack/Matrix: streaming.progress.label=false の設定かつ進捗ツールの表示がオフになっている場合、空白の進行状況ドラフトメッセージが作成されないように改善しました。ご協力ありがとうございます @vincentkoc。
- Slack/Discord: 部分的なプレビューのストリーミング時に、
streaming.preview.toolProgress: falseが設定されている場合は、ツール進捗に関する個別の通知を抑制します。これは文書化された「クイエット・プレビュー」の動作に合わせるためのものです(@vincentkoc 氏への感謝)。 - QA/Matrix: モック OpenAI ツール進捗プロバイダーを、厳密なマーカーを持つ Matrix プロンプトと整合させることで、強化されたライブプレビューシナリオでも最終配信前に決定的な読み込みが強制されるようにします(@vincentkoc 氏への感謝)。
- Matrix: オプション反応の公開前にネイティブ承認反応ターゲットをバインドすることで、スレッド付きプロンプトにおける高速な承認反応が、承認ハンドラーの設定完了まで待たずに失われるのを防ぎます(@vincentkoc 氏への感謝)。
Google Meet では、realtime.strategy: "agent" をデフォルトとしてリアルタイムの対話型エージェントを有効化し、従来の双方向モデルによる動作は realtime.strategy: "bidi" として引き続き利用可能にします。また、ローカルの Chrome でのリアルタイム接続時に Meet タブのスピーカー出力を自動的に BlackHole 2ch にルーティングし、エージェントへの問い合わせ前に近い発話の転写断片を統合することで、サーバー側の VAD や再生パイプのエラーによるエージェントの発言途切れを防ぎます。
さらに、リアルタイム入力経路からキューされたアシスタントの再生や、アシスタント風の転写エコーを抑制します。これにより、会議中にエージェント自身の発話が新たなユーザーの発言として認識され、ループしたり、自身で発言が切断される事態を回避できます。
OpenAI/Google Meet: リアルタイム音声のブリッジが接続されたものとみなす前に、必ず session.updated イベントを待機するようにしました。これにより、未設定のリアルタイムセッションに音声キューが残ることで Google Meet への参加が完了しないという不具合を防ぎます。ご協力ありがとうございます @vincentkoc。
Plugins/catalog: 公式外部カタログの記述子を、部分的なパッケージチャンネル構成メタデータに統合しました。これにより、WeCom や Yuanbao のマニフェストが遅れていても独自のスキーマを維持しつつ、ホストが提供するラベルやセットアップテキストを公開できるようになります。ご協力ありがとうございます @vincentkoc。
Plugins/catalog: 遅延している公式外部の WeCom と Yuanbao の npm マニフェストに、OpenClaw カタログからのチャンネル構成記述子と宣言されたツール契約を追加しました。これにより、信頼できるパッケージのスキャンが、外部パッケージメタデータがホスト契約に追いつかないことが原因で失敗する事態を解消します。ご協力ありがとうございます @vincentkoc。
Plugins/install: 公式の信頼できる @openclaw/* カタログからのインストールにおいて、npm の latest がプレリリースを指している場合に、最新の安定版へフォールバックするか、プレリリース専用起動パッケージの場合は警告を出しつつ最新のエキスアクティブなプレリリースを選択することで復旧できるようにしました。これにより、ベータ版や開発中のプラグルスキャンがインストール時に失敗するのを防ぎます。ご協力ありがとうございます @vincentkoc。
Google Meet: Chrome のメディア権限を実際の Meet タブに対して付与し、Meet への参加完了後にのみローカルのリアルタイム音声ブリッジを開始します。また、リアルタイム文字起こしをステータスやログに公開し、現在の OpenAI リアルタイム出力オーディオイベントに基づいて明示的な音声応答を強制しました。これにより、BlackHole キャプチャが OpenClaw 参加者の音声をミュートまたは無音のままにする問題を解消します。
メモリ/LanceDB: バンドルされたメモリプラグインパッケージで apache-arrow を宣言し、LanceDB のインストール時にランタイムの依存関係が正しく含まれるようにしました。これにより #76910 が修正されました。@afiqfiles-max さんへの感謝。
CLI/デバイス: ペアリングスコープの所有権拒否後に operator.admin で明示的なデバイスペアリング承認を再試行するように変更しました。これにより、アップグレード後も既存の管理機能を持つペアリング済みデバイスのトークンが回復し、新しいコントロール UI やブラウザでのペアリングが可能になります。手動で JSON を編集する必要はなくなります。#76956 が修正されました。@neo19482 さんへの感謝。
Google Meet: 無効化されたリモート参加者のミュートボタンではなく、ローカルの通話制御マイクボタンを使用するように変更しました。また、OpenClaw Meet のマイクがミュート状態のままの場合、リアルタイムの音声出力をブロックします。
Google Meet: 接続完了後に、ブラウザのリアルタイム状態を更新し、遅延した音声処理を再試行します。これにより、新規で開いた通話タブが、古い「通話中ではない」ステータスによって音声処理が停止する問題を解消します。
プラグイン/インストール:plugins/installs.json が空または不完全な場合、管理された npm ルートからインストール履歴を復元します。これにより、Discord や Codex の再インストール時に、他のインストール済みプラグインが消える現象を防ぎます。
Google Meet: CDP による付与が接続された Chrome ページに影響を与えない場合、Playwright ブラウザコンテキストを通じて Google Meet にメディア権限を付与します。また、リアルタイム音声の準備完了とみなすのではなく、通話中のマイクやスピーカーに関する権限の問題として報告します。 (原文の技術表記: not-in-call)
Google Meet:Linux のプレリリースシャードにおいて、Chrome のリアルタイム転送テストを隔離状態に保ちつつ、macOS 固有のランタイムガードは維持します。@vincentkoc 氏への感謝。
QA/Slack: 予期しない SUT の応答があった場合、その応答が期待されたマーカーをエコーしていなくても、ライブのメンションゲートシナリオで失敗させるようにしました。@vincentkoc 氏に感謝します。
QA/Matrix: ライブのマーカー応答が正確なトークンを捉えられなかった場合に、最終的なプレビュー候補を報告するよう、ライブのツール進捗プレビューチェックを HEARTBEAT.md から外すように調整しました。@vincentkoc 氏に感謝します。
QA/Matrix:ライブツール進捗プレビューとエラーチェックが、Working や tool: read といった表示、ラベルやパスのない read from、あるいは元のドラフトルートが観測されていることへの依存なしに、進置換イベントを検証できるようにしました。@vincentkoc さんありがとうございます。
- QA/Matrix: 両方の Matrix イベントが観測された後、ゲートウェイを通じて承認を完了させることで、チャネルと DM メタデータの配信に焦点を当てた「target=both」の承認シナリオを実現します。@vincentkoc 氏へ感謝。
- QA/Matrix: スレッド内の承認判断タイマーを開始する前に、ライブな承認反応のエコーが返ってくるのを待ちます。@vincentkoc 氏へ感謝。
- QA/Matrix: ライブリリース実行時に自己反応を見逃さないよう、承認反応のエコー確認時に予備設定済みのドライバーストリームを再利用します。@vincentkoc 氏へ感謝。
- Tlon: チャンネル設定スキーマに
groupInviteAllowlistを公開し、招待リストが設定されていない場合、グループ招待の自動承認は失敗(ファイルドクローズ)すると明確化しました。@vincentkoc 氏へ感謝。
- チャンネル/WhatsApp: 受信時の配信時に、共有グループ/チャンネルの可視返信モードを適用し、デフォルトでグループへの返信がメッセージツール専用となるようにする。これにより、ダイレクトチャットのハーンダールの既定値が上書きされることがなくなる。参照 #75178 および #67394。@scoootscooob 氏に感謝。
- コントロール UI/WebChat: 進行中の重複した内部テキスト送信を、アクティブな Gateway ラン上に統合する。これにより、連続した再提出で
agent:main:mainの配信が新たに開始されるのを防ぐ。修正 #75737。@dsdsddd1 氏および @BunsDev 氏に感謝。 - Mattermost: 文書化された設定
channels.mattermost.streamingを受け入れ、streaming: "off"を有効にする際、ドラフトプレビュー投稿を無効化する。@vincentkoc 氏に感謝。
Mattermost: 生成されるチャンネル設定メタデータに、ストリーミング進捗設定のラベルとヘルプテキストを公開し、Control UI やドキュメントで新しい channels.mattermost.streaming.progress.* フィールドを説明できるようにしました。@vincentkoc さんありがとうございます。
Mattermost: プログレスドラフトモードにおいて channels.mattermost.streaming.progress.toolProgress=false を尊重し、コンパクトなツールステータス行が最終的な配信時まで非表示となるようにしました。@vincentkoc さんありがとうございます。
Microsoft Teams: ネイティブの Teams ストリーミング進捗ストリームでプログレスドラフトのツール行を尊重し、channels.msteams.streaming.progress.toolProgress=false の場合、スタンドアロンのツールメッセージを抑制します。@vincentkoc さんありがとうございます。
Discord: ストリーミング返信中に進行状況のドラフト境界コールバックをバインドし続けることで、アシスタントと推論ブロック間の進行状況プレビューが遷移する際にも、拡張機能のリンティングが緑色(正常)のまま維持されます。@vincentkoc さんありがとうございます。
- Discord: 名前付きアカウントのアクティブなランタイムスナップショットから、SecretRef ベースのボットトークンを解決し、未解決の設定済みトークンがステータスやヘルスチェックでクラッシュしないようにする。(#76987) @joshavant 氏による貢献。
チャンネル/ストリーミング機能:バンドルされたチャンネル設定メタデータに、streaming.progress.label、labels、maxLines、toolProgress を公開することで、進行状況のドラフト設定が表示されるようにします。
設定、ドキュメント、および制御インターフェース。@vincentkoc 氏に感謝。
- チャネル/ストリーミング:
streaming.progress.label: "auto"の空白文字と大文字・小文字を正規化し、進行状況のドラフトラベルが引き続き使用されるようにする。
リテラルな auto タイトルをレンダリングするのではなく、組み込みのラベルプールを使用します。@vincentkoc さんありがとうございます。
- プラグイン/Codex:
/codex bindアプリサーバーの起動時に Codex ネイティブな OAuth ルーティングを維持し、バインドされたセッションが公開 OpenAI 認証情報にフォールバックするのではなく、選択した Codex 認証プロファイルを引き継げるようにしました。(#76714) @keshavbotagent 氏への感謝。 - Telegram: ステータスチェックをアクティブなチャットに向け直して、現在のセッションを問い合わせた際に古いダイレクトメッセージの会話が表示されないように修正しました。(#76708) @amknight 氏への感謝。
- Gateway/install: 管理されたゲートウェイサービスの再生成時に、nvm/fnm/volta/asdf/mise を優先するのではなく、サポート対象のシステム Node を採用するように変更し、
gateway install --forceでサービス定義が再作成されても、doctor がすぐにバージョンマネージャー依存と判定されるのを防ぎました。#76339 解決。@brokemac79 氏および @BunsDev 氏への感謝。
Cron/status: 明示的に delivery.mode: "none" を設定したジョブを、配信なしプレビューとしてレンダリングし、cron セッション履歴にはフォールバック配信や直接セッションの行を表示するのではなく、明確なラベルを付与します。これにより #76945 が修正されます。
Gateway/usage: 大規模な使用量ビューでのパフォーマンス向上のため、usage.cost と sessions.usage を永続的なトランザクト集約キャッシュから提供します。このキャッシュはロック安全な背景更新とローカルの stale-cache ステータスを備えており、安定したデータ表示を実現します。
再スキャンを繰り返す問題 (#76650) 対応。@Marvinthebored 氏に感謝。
- プラグイン/フック:
plugins.entries..hooks.timeoutMsとplugins.entries..hooks.timeoutsを設定することで、オペレーターがインストール済みプラグインのコードを修正しなくても、遅いフックのタイムアウト値を調整できるようになりました。これにより、プラグイン固有のフックの動作範囲を operator 設定で制御可能になります (#76778)。@vincentkoc 氏に感謝。
- Telegram: オペレーターがアルバムバッファリングを調整できるよう、トップレベルとアカウントごとに
channels.telegram.mediaGroupFlushMsを追加しました。これにより、ハードコードされた 500ms のメディアグループフラッシュウィンドウに縛られなくなります。Fixes #76149. Thanks @vincentkoc. - Config/messages:
messages.visibleRepliesおよびmessages.groupChat.visibleRepliesのブール値を、文書化された列挙型モードに強制変換しました。これにより、直感的な切り替えが設定の無効化やチャンネル起動の停止を引き起こさなくなります。Fixes #75390. Thanks @scottgl9. - Agents/network: 信頼できる Web 検索プロバイダーと構成されたモデルプロバイダーホストが、Surge/Clash/sing-box のフェイク IP DNS の背後でも動作できるようにしました。RFC 2544 および IPv6 ULA の合成応答をリクエストのスコープ内のホスト名に対してのみ受け付けることで、広範なプライベートネットワークへのアクセスは不要です。Refs #76530 and #76549. Thanks @zqchris.
- 明示的なディスパッチャーポリシーが設定されていない場合、保護されたプロバイダーモデルのフェッチ時に env-proxy 設定を尊重し、明示的なトランスポートのオーバーライドも維持するようになります。Fixes #70453. (#72480) Thanks @mjamiv.
- Web フェッチ機能において、プロキシ専用環境向けにデフォルトで無効化された
tools.web.fetch.useTrustedEnvProxyオプトインを追加しました。これにより、web_fetchはオペレーターが制御する HTTP(S) プロキシを使って DNS 解決を行いつつ、デフォルトの厳格な DNS ピンニングとホスト名ポリシーチェックを維持できます。Refs #58034 and #62560. Thanks @cosmicnet and @mjamiv.
- Feishu:
channels.feishu.blockStreamingをトップレベルとアカウントごとに受け入れ、尊重するようになります。従来のデフォルトはオフのまま維持し、Feishu カードが文書化された設定を拒否したり、ブロック返信を静かに破棄したりすることがなくなります。#75555 修正。@vincentkoc 氏に感謝します。
Gateway/更新処理: 最新の macOS アップデート後にシステムが起動した直ちに launchctl kickstart -k を実行しないようにし、パッケージ化された postinstall スクリプトおよび doctor --fix コマンドの実行時に、存在しなくなったグローバルなプラグランタイムシンボリックリンクを削除します。これにより、Gateway の新規起動時にプロセスが SIGTERM で強制終了されることや、バンドルされたプラグインの参照先が不要になった plugin-runtime-deps ディレクトリを指したままになることを防ぎます。
PR #76929 は、#76261 の完了と #76466 の修正を行います。
- Google Chat: google-auth/gaxios のインターセプターが実行される前に、カスタムの Google 認証トランスポートヘッダーを正規化し、証明書取得時に Fetch
Headersを期待する Webhook トークン検証機能を復元しました。#76742 を修正。@donbowman 氏に感謝します。
Google Chat: google-auth-library が cache-control を読み込む前に、Google 認証の証明書レスポンスヘッダーを正規化します。これにより、受信したウェブフックの認証で「res?.headers.get is not a function」というエラーが返される問題が解消されました(Fixes #76880)。ご協力いただいた @donbowman に感謝します。
WhatsApp: 初期接続および再接続ソケットにおいて、ターミナルログイン用の QR コード出力をアクティブなランタイム経由でルーティングするようにしました。これにより、「openclaw channels login --channel whatsapp」コマンドで QR コードが失われる不具合を防ぎます。
直接の標準出力への書き込みに関する問題に対処しました。#76213 を解決。@dougvk 氏に感謝。
Doctor/plugins: doctor --fix 実行時に、存在しないプラグイン設定のクリーンアップ後に回収不能なスロット所有者が残らないよう、古くなった plugins.slots.memory および plugins.slots.contextEngine の参照をリセットします。#76550 と #76551 を解決。@vincentkoc 氏に感謝。
- ドキュメント/WhatsApp: ゲートウェイチャンネル設定のサンプルにおいて、重複しているトップレベルの
webオブジェクトをマージしました。これにより、コピー&ペーストした WhatsApp 設定でweb.whatsappと再接続設定の両方が保持されるようになります。#76619 を修正。@WadydX 氏に感謝します。
プラグイン/Anthropic: 同梱されたプロバイダーポリシーアーティファクトから Claude の思考プロファイル(thinking profiles)を公開し、ランタイム外の呼び出し元でも Opus 4.7 の adaptive、xhigh、max が維持されるようにします。
バージョンを high にダウングレードする修正。#76779 を解決。@tomascupr と @iAbhi001 へ感謝。
- プラグイン/ツール:
tools.alsoAllowは、プラグインツールの発見を示唆するオプションのヒントとして尊重されるが、その内部デフォルトである「すべて許可」を、マニフェストで示されたオプションプラグインタイルをすべて読み込む権限とみなしてはならない。#76616 を解決。
Discord ネイティブコマンド:channels.discord.commands.native=false を設定すると、スラッシュコマンドの登録と REST コールのクリーンアップがスキップされ、無効化されたネイティブコマンドを待たずに低電力ゲートウェイが起動できるようになります。
AI算出
通常リリースainew評価標準
AI エージェントのファイル転送機能強化や音声通話最適化など具体的な技術的変更が含まれるが、これは既存製品のバージョン更新(Changelog)であり、世界初の新製品発表や画期的な研究結果ではないため「routine_release」と分類する。検索機会スコアはタイトルに明確なブランド名とバージョン番号が含まれているため 1.0 とした。
6つの評価軸を見る
- AI関連度
- 75
- 情報源の信頼性
- 100
- 新規性
- 25
- 調べる価値
- 25
- 重複の少なさ
- 100
- 日本での有用性
- 25
News to Guide
ニュースの次に確認する
発表内容を、現在の料金や仕様と照らし合わせられる関連ガイドです。
今日のまとめ
AIデイリーブリーフで今日の重要ニュースをまとめ読み