---
read_when:
    - エージェントが持っているセッションツールを理解したい
    - セッション間アクセスまたはサブエージェントの生成を設定したい場合
    - 起動されたサブエージェントのステータスを確認したり制御したりしたい場合
summary: セッションをまたいだステータス、想起、メッセージング、サブエージェントのオーケストレーションのためのエージェントツール
title: セッションツール
x-i18n:
    generated_at: "2026-05-11T20:28:48Z"
    model: gpt-5.5
    provider: openai
    source_hash: e91f1f956ff882cabf7df51bd8c08836398decfb185c56c42db4052f24b3f716
    source_path: concepts/session-tool.md
    workflow: 16
---

OpenClaw は、エージェントがセッションをまたいで作業し、状態を調査し、
サブエージェントをオーケストレーションするためのツールを提供します。

## 利用可能なツール

| ツール             | 動作                                                                        |
| ------------------ | --------------------------------------------------------------------------- |
| `sessions_list`    | 任意のフィルター（kind、label、agent、recency、preview）でセッションを一覧表示する |
| `sessions_history` | 特定のセッションのトランスクリプトを読む                                    |
| `sessions_send`    | 別のセッションへメッセージを送り、任意で待機する                            |
| `sessions_spawn`   | バックグラウンド作業用に分離されたサブエージェントセッションを生成する      |
| `sessions_yield`   | 現在のターンを終了し、後続のサブエージェント結果を待つ                      |
| `subagents`        | このセッションで生成されたサブエージェントを一覧表示、誘導、または終了する  |
| `session_status`   | `/status` 形式のカードを表示し、任意でセッション単位のモデル上書きを設定する |

これらのツールにも、アクティブなツールプロファイルと許可/拒否
ポリシーが適用されます。`tools.profile: "coding"` には、
`sessions_spawn`、`sessions_yield`、`subagents` を含む完全な
セッションオーケストレーションセットが含まれます。
`tools.profile: "messaging"` には、セッション間メッセージングツール
（`sessions_list`、`sessions_history`、`sessions_send`、`session_status`）が
含まれますが、サブエージェントの生成は含まれません。メッセージング
プロファイルを維持しつつネイティブ委任も許可するには、次を追加します。

```json5
{
  tools: {
    profile: "messaging",
    alsoAllow: ["sessions_spawn", "sessions_yield", "subagents"],
  },
}
```

グループ、プロバイダー、サンドボックス、エージェント単位のポリシーは、
プロファイル段階の後でもこれらのツールを削除できます。影響を受ける
セッションから `/tools` を使って、有効なツール一覧を調査してください。

## セッションの一覧表示と読み取り

`sessions_list` は、key、agentId、kind、channel、model、
トークン数、タイムスタンプを含むセッションを返します。kind（`main`、
`group`、`cron`、`hook`、`node`）、完全一致の `label`、完全一致の
`agentId`、検索テキスト、または recency（`activeMinutes`）でフィルターできます。
メールボックス形式のトリアージが必要な場合は、可視性スコープ付きの派生タイトル、
最後のメッセージのプレビュースニペット、または各行の範囲付き最近のメッセージも
要求できます。派生タイトルとプレビューは、設定済みのセッションツール可視性
ポリシーの下で呼び出し元がすでに見られるセッションに対してのみ生成されるため、
無関係なセッションは非表示のままです。

`sessions_history` は、特定のセッションの会話トランスクリプトを取得します。
デフォルトではツール結果は除外されます -- 表示するには `includeTools: true` を
渡します。返されるビューは意図的に範囲が制限され、安全性フィルターが適用されます。

- アシスタントのテキストは、再呼び出し前に正規化されます。
  - thinking タグは削除されます
  - `<relevant-memories>` / `<relevant_memories>` の足場ブロックは削除されます
  - `<tool_call>...</tool_call>`、`<function_call>...</function_call>`、
    `<tool_calls>...</tool_calls>`、`<function_calls>...</function_calls>` などの
    プレーンテキストのツール呼び出し XML ペイロードブロックは、正常に閉じていない
    切り詰められたペイロードも含めて削除されます
  - `[Tool Call: ...]`、`[Tool Result ...]`、`[Historical context ...]` などの
    格下げされたツール呼び出し/結果の足場は削除されます
  - `<|assistant|>`、その他の ASCII `<|...|>` トークン、全角の
    `<｜...｜>` バリアントなど、漏れたモデル制御トークンは削除されます
  - `<invoke ...>` / `</minimax:tool_call>` などの不正な MiniMax ツール呼び出し XML は削除されます
- 認証情報/トークンのようなテキストは、返される前にリダクトされます
- 長いテキストブロックは切り詰められます
- 非常に大きい履歴では、古い行が削除されるか、過大な行が
  `[sessions_history omitted: message too large]` に置き換えられることがあります
- ツールは `truncated`、`droppedMessages`、`contentTruncated`、
  `contentRedacted`、`bytes` などの要約フラグを報告します

どちらのツールも、**セッションキー**（`"main"` など）または以前の一覧呼び出しからの
**セッション ID** のどちらも受け付けます。

バイト単位で完全に一致するトランスクリプトが必要な場合は、`sessions_history` を
生のダンプとして扱うのではなく、ディスク上のトランスクリプトファイルを調査してください。

## セッション間メッセージの送信

`sessions_send` は別のセッションへメッセージを配信し、任意で応答を待ちます。

- **送信して終了:** `timeoutSeconds: 0` を設定すると、キューに入れて即座に返ります。
- **返信を待つ:** タイムアウトを設定すると、応答をインラインで取得します。

Slack や Discord のキーが `:thread:<id>` で終わるような、スレッドスコープの
チャットセッションは、有効な `sessions_send` ターゲットではありません。
エージェント間の調整には親チャンネルのセッションキーを使い、ツール経由の
メッセージがアクティブな人間向けスレッド内に表示されないようにしてください。

メッセージと A2A の後続返信は、受信側プロンプト
（`[Inter-session message ... isUser=false]`）とトランスクリプト由来情報で、
セッション間データとしてマークされます。受信側エージェントは、それらを
エンドユーザーが直接作成した指示ではなく、ツール経由のデータとして扱う必要があります。

ターゲットが応答した後、OpenClaw はエージェントが交互にメッセージを送る
**返信バックループ**を実行できます（最大 `session.agentToAgent.maxPingPongTurns`、
範囲 0-20、デフォルト 5）。ターゲットエージェントは `REPLY_SKIP` と返信して
早期に停止できます。

## 状態とオーケストレーションヘルパー

`session_status` は、現在のセッションまたは別の可視セッション用の軽量な
`/status` 相当ツールです。使用状況、時刻、モデル/ランタイム状態、
存在する場合はリンクされたバックグラウンドタスクコンテキストを報告します。
`/status` と同様に、最新のトランスクリプト使用状況エントリーから疎な
トークン/キャッシュカウンターを補完でき、`model=default` はセッション単位の
上書きをクリアします。呼び出し元の現在のセッションには `sessionKey="current"` を
使います。`openclaw-tui` などの可視クライアントラベルはセッションキーではありません。

`sessions_yield` は、待機している後続イベントを次のメッセージとして受け取れるように、
意図的に現在のターンを終了します。サブエージェントを生成した後、ポーリングループを
構築する代わりに完了結果を次のメッセージとして到着させたい場合に使います。

`subagents` は、すでに生成された OpenClaw サブエージェント用の制御プレーン
ヘルパーです。次をサポートします。

- `action: "list"` でアクティブ/最近の実行を調査する
- `action: "steer"` で実行中の子へ追加のガイダンスを送る
- `action: "kill"` で 1 つの子または `all` を停止する

## サブエージェントの生成

`sessions_spawn` はデフォルトで、バックグラウンドタスク用の分離された
セッションを作成します。これは常に非ブロッキングです -- `runId` と
`childSessionKey` を返して即座に終了します。

主なオプション:

- `runtime: "subagent"`（デフォルト）または外部ハーネスエージェント用の `"acp"`。
- 子セッション用の `model` と `thinking` の上書き。
- `thread: true` で生成をチャットスレッド（Discord、Slack など）にバインド。
- `sandbox: "require"` で子にサンドボックスを強制。
- ネイティブサブエージェントで子が現在のリクエスターのトランスクリプトを必要とする場合は
  `context: "fork"`。クリーンな子にする場合は省略するか `context: "isolated"` を使います。
  スレッドにバインドされたネイティブサブエージェントは、
  `threadBindings.defaultSpawnContext` が別の指定をしていない限り、
  デフォルトで `context: "fork"` になります。

デフォルトのリーフサブエージェントにはセッションツールは付与されません。
`maxSpawnDepth >= 2` の場合、深さ 1 のオーケストレーターサブエージェントには、
自分の子を管理できるように `sessions_spawn`、`subagents`、`sessions_list`、
`sessions_history` も追加で付与されます。リーフ実行にはそれでも再帰的な
オーケストレーションツールは付与されません。

完了後、通知ステップが結果をリクエスターのチャンネルへ投稿します。完了配信は、
利用可能な場合はバインドされたスレッド/トピックのルーティングを保持します。
また、完了元がチャンネルのみを識別している場合でも、OpenClaw は直接配信のために
リクエスターセッションに保存されたルート（`lastChannel` / `lastTo`）を再利用できます。

ACP 固有の動作については、[ACP Agents](/ja-JP/tools/acp-agents) を参照してください。

## 可視性

セッションツールは、エージェントが見られる範囲を制限するようにスコープされます。

| レベル  | スコープ                                 |
| ------- | ---------------------------------------- |
| `self`  | 現在のセッションのみ                     |
| `tree`  | 現在のセッション + 生成されたサブエージェント |
| `agent` | このエージェントのすべてのセッション     |
| `all`   | すべてのセッション（設定されていればエージェント間も含む） |

デフォルトは `tree` です。サンドボックス化されたセッションは、設定に関係なく
`tree` に制限されます。

## 関連資料

- [セッション管理](/ja-JP/concepts/session) -- ルーティング、ライフサイクル、メンテナンス
- [ACP Agents](/ja-JP/tools/acp-agents) -- 外部ハーネスの生成
- [マルチエージェント](/ja-JP/concepts/multi-agent) -- マルチエージェントアーキテクチャ
- [Gateway 設定](/ja-JP/gateway/configuration) -- セッションツール設定ノブ

## 関連

- [セッション管理](/ja-JP/concepts/session)
- [セッションの pruning](/ja-JP/concepts/session-pruning)
