🏠 ホーム ニュース 📖 解説記事 📚 トピック解説 🏷️ タグ一覧 ℹ️ About
🔍 記事を検索
カテゴリ
📡 RSSフィード
Follow
X (Twitter) Threads
Quick Links
ニュース一覧 🏷️ タグから探す
🧠 Claude 🤖 Agent 💬 LLM 🔌 MCP 🛠️ Tool
Subscribe
📡 RSSフィード
Breaking News
2026.04.01 20:16 dev

OpenClaw v2026.3.31リリース。セキュリティ強化とノード実行フローを刷新

🚀 ニュース
🚀 AI Heartland News
TL;DR
OpenClawが大型アップデート。Shell実行フロー統一、プラグイン危険コード検出の厳格化、ノードペアリング後の認可体制を改善。複数チャネル対応拡張も。

何が起きたか

OpenClawが v2026.3.31 をリリース。最大の変更は Node Shell実行フローの統一 で、CLI と Agent ノードツール内の重複した nodes.run シェルラッパーを削除し、すべてのノード シェル実行を exec host=node に統一した。同時に プラグイン/スキルインストールのセキュリティ強化 で、危険コード検出と install-time スキャン失敗がデフォルトで fail-closed に変更。さらに ノードペアリング後の認可体制 を改善し、デバイスペアリングだけではノードコマンドが有効にならない仕様に。

背景と経緯

OpenClaw は複数の実行環境(ホスト、ノード、サンドボックス)にまたがるため、各経路で実行フローが分散していた。同時にプラグイン機構の拡大に伴い、外部コードの危険性を事前検出する必要が増した。また初期ペアリングだけでノードコマンドが実行可能になるセキュリティギャップも指摘されていた。今回のリリースはこれらの課題を一括解決する破壊的変更(breaking changes)。既存自動化フローの一部で明示的なオーバーライドが必要になる可能性がある。

主要な Breaking Changes

1. Node Shell実行の統一

変更内容

影響: ノードで実行されるシェルコマンドの権限・キャプリティがより厳密に管理される。既存の直接呼び出しは失敗する可能性。

# 新しい実行方法
exec host=node command --arg value

# ノード固有アクション(nodes invoke で実行)
nodes invoke --node-id <id> media send --file /path/to/file

2. プラグイン危険コード検出の厳格化

変更内容

影響: 既存スキルやプラグインがスキャンで危険と判定された場合、明示的に強制フラグを付けない限りインストール不可。

# 危険コードを含むプラグイン インストール(明示的に許可)
openclaw plugin install <plugin-id> --dangerously-force-unsafe-install

# 通常インストール(スキャン結果で安全と判定された場合のみ成功)
openclaw plugin install <plugin-id>

3. ノード認可体制の改善

変更内容

フロー図

flowchart TD
    A["デバイス QR スキャン"] --> B["デバイスペアリング開始"]
    B --> C{"ペアリング完了?"}
    C -->|未承認| D["ノードコマンド: 無効"]
    C -->|承認| E["管理者が<br/>ペアリング承認"]
    E --> F["ノードコマンド: 有効"]
    F --> G["ノード実行<br/>exec host=node 経由"]

Plugin SDK の非推奨化と移行パス

変更内容

推奨パス

// 旧: レガシー方式
import { compat } from 'openclaw/plugin-sdk/compat';

// 新: 推奨パス
import { runtime } from 'openclaw/plugin-sdk';
import { api } from './api';
import { runtimeApi } from './runtime-api';

Gateway 認証の強化

信頼プロキシ設定の厳格化

変更内容

# 設定例(新仕様)
gateway:
  auth:
    trustedProxy:
      tokens:
        - token: "xxx"
          sources: ["10.0.0.0/8"]
      # 混在設定はエラー
      # ✗ local-direct と token を同時指定不可

デバイストークンローテーション時の即時切断

変更

新機能ハイライト

機能 説明 Issue
QQ Bot チャネル マルチアカウント、slash commands、リマインダー、メディア送受信対応 #52986
Matrix ルーム履歴 channels.matrix.historyLimit でコンテキスト取得、ウォーターマーク別トラッキング #57022
Matrix ストリーミング Draft ストリーミングで部分応答を既存メッセージ更新 #56387
LINE メディア送信 画像・ビデオ・オーディオの LINE 専用送信パス #45826
MCP リモートサーバー HTTP/SSE サーバーサポート、認証ヘッダー対応 #50396
Microsoft Teams メンバー情報 Graph API 経由のメンバー詳細解決 #57528
WhatsApp リアクション 絵文字リアクションによるメッセージ応答 -
SlackExec 承認 Slack ネイティブ承認ルーティング、Slack 内承認完結 -

Android 対応の強化

通知フォワーディング

■ 新機能
  ├ Package フィルタリング
  ├ Quiet hours(静止時間帯)設定
  ├ Rate limiting
  └ より安全な Picker 動作

Issue #40175

バージョン取得の改善

変更

Issue #58126

QR ペアリングの安定化

変更

Issue #58256

背景タスク管理の統一

実行フロー統合

graph LR
    ACP["ACP 実行"] --> Central["統一された<br/>背景実行<br/>コントロールプレーン"]
    SubAgent["SubAgent"] --> Central
    Cron["Cron ジョブ"] --> Central
    BGCli["Background CLI"] --> Central
    Central --> SQLite["SQLite<br/>バックアップ台帳"]
    SQLite --> Lifecycle["ライフサイクル更新<br/>監査・保守"]

変更点

タスクフロー制御サーフェス

# 新コマンド例
openclaw flows list              # 全タスクフロー表示
openclaw flows show <flow-id>    # フロー詳細表示
openclaw flows cancel <flow-id>  # フロー キャンセル

実行環境(Exec)セキュリティの強化

環境変数サニタイゼーション

ブロック対象(Issue #57849, #57850):

# ホスト実行時、以下を環境から除外
proxy:                    # HTTP_PROXY, HTTPS_PROXY, NO_PROXY
ssl_verify:               # SSL_VERIFY_MODE, SSL_CERT_FILE など
docker_endpoint:          # DOCKER_HOST, DOCKER_TLS など
python_package_index:     # PIP_INDEX_URL など(Issue #57872)

目的: リクエストスコープコマンドが攻撃者の設定で traffic reroute や 不正証明書信頼を回避。

Node 実行の cwd 保護

Issue #50961

# Gateway 側が rewrite しない仕様に
exec host=node --cwd /node/local/path command
# → /node/local/path で実行(Gateway FS にマッピングされない)

セキュリティ承認フローの再設計

ACP 承認クラス化(セマンティック化)

旧方式

新方式

承認クラス 自動承認 明示承認必須 説明
readonly_read - ファイル読取・検索
readonly_query - データベースクエリ
exec_capable - コマンド実行
control_plane - システム制御

Discord/Telegram 承認者の自動推論

# execApprovals.approvers が未設定の場合、owner から推論
execApprovals:
  # approvers 未定義
  # → owner の Discord/Telegram ID を自動使用

承認時間枠も 30 分に延長(Issue #57864)。

修正の主要なバグフィックス

Slack 重複返信の解決

Issue: Draft 確定時の edit 失敗で retry 駆動重複返信

修正: Ambiguous edit 失敗時の再試行ロジックを修正。Retry 駆動重複を防止。

OpenAI Responses MCP ツール正規化

Issue #58299: Bare-object・object-ish・top-level union MCP ツール定義が OpenAI 登録で拒否

修正: WebSocket/Responses パスで MCP ツール schema を正規化。Codex など spec-compliant クライアント対応。

Cron 多行テキスト配信

Issue: Announce mode で最後のチャンクのみ配信

修正: 全配信可能テキストペイロッドを保持。Telegram forum topics への多行報告完全配信。

Matrix スレッド分離

Issue #57995: Per-DM threadReplies オーバーライド+スレッドセッション分離を実装。

Nostr 署名検証

Issue: インバウンド DM 署名検証なし → 偽造ペアリング要求

修正: 署名検証後にペアリング・送信者認可処理。偽造 DM イベント拒否。

実装例:新しい exec フロー

デフォルト implicit exec の動作

# 指定なしは host=auto に自動 resolve
exec echo "test"
# → sandbox 実行時: host=sandbox
# → ホスト単独: ホスト実行

# 明示指定
exec host=node echo "test"    # ノード実行
exec host=sandbox echo "test"  # サンドボックス実行
exec host=localhost echo "test" # ホスト実行

# Sandbox なし時の明示指定は fail-closed
exec host=sandbox echo "test" # エラー: No sandbox runtime

Diffs ビューアの最適化

Issue #57909

View-only/File-only 実行で SSR preload 作業をスキップ。Render 効率化、Mode output は同期維持。

開発者向け移行ガイド

Plugin SDK 移行 checklist

// ❌ 古い import
import { compat } from 'openclaw/plugin-sdk/compat';
import { setup } from 'openclaw/plugin-sdk/setup';

// ✓ 新しい import
import { runtime } from 'openclaw/plugin-sdk';
import { api } from './api';
import { runtimeApi } from './runtime-api';

// マイグレーション警告を確認
// openclaw doctor でキャリー検証

Node 実行コマンド更新

# exec 設定例
tools:
  exec:
    host: "auto"           # auto/node/sandbox/localhost
    security: "sandbox"    # sandbox/denyall/inherit
    ask: true              # 承認プロンプト表示

今後の展望

  1. Major Release での Plugin SDK 完全廃止 — Compat shims・Legacy provider 削除予定
  2. 背景タスク統合深化 — 線形タスク制御の拡張
  3. セキュリティモデル整備 — Semantic approval classes のエコシステム統合
  4. チャネル対応拡大 — QQ Bot・Matrix・LINE の機能充実継続

参考リンク


この記事はAI業界の最新動向を速報でお届けする「AI Heartland ニュース」です。

よくある質問
Q. Node Shell実行が exec host=node に統一されるのはなぜ?
複数経路で分散していたシェル実行を一本化し、ノード固有の権限・キャプリティ管理を厳密化。CLI・Agent ツール内の重複を排除し、保守性と制御性を向上させる。
Q. 危険コード検出で install が失敗したら、強制インストールするしかない?
推奨は install-time スキャンの結果を確認すること。安全と判定されるまで修正するのが正規パス。強制インストール(`--dangerously-force-unsafe-install`)は例外対応のみ。
Q. デバイスペアリング後、なぜノードコマンドが即座に使えないのか?
デバイスペアリングだけでは認可に不十分。管理者の明示承認ステップを追加し、ノード実行権の濫用を防ぐセキュリティ強化。
Q. 既存の node invoke コマンドはどうなる?
形式は変わらず。ただし内部実行が exec host=node に統一されるため、より厳密な権限管理が適用される可能性がある。
Q. Q5: Plugin SDK の非推奨化はいつ完全廃止される?
A5: 記事本文では具体的な廃止時期は明示されていません。現在は migration warnings をエミットされており、新規開発は `openclaw/plugin-sdk` の公式エントリポイント使用を推奨されています。
🔔 AI速報、毎日Xで配信中
Claude Code・MCP・AIエージェントの最新ニュースをいち早くお届け
@peaks2314 をフォロー
← ベテランプログラマが警告「Scrumは開発チームを無能化する」25年のキャリアから Claude キャッシュ破壊の90%がサーバー側原因—Anthropic内部分析が流出 →