セッション管理
エージェントはセッションを検査し、通信し、生成できます。これらのツールはクロスセッションワークフロー、 バックグラウンドタスク委任、クロスチャンネルメッセージング — すべてライトダウン禁止強制の下で実行 — を可能にします。
ツール
sessions_list
現在のセッションから見えるすべてのアクティブセッションをリストします。
パラメーターなし。結果はtaintレベルでフィルタリングされます — PUBLICセッションはCONFIDENTIAL セッションのメタデータを見ることができません。
sessions_history
IDによりセッションのメッセージ履歴を取得します。
| パラメーター | タイプ | 必須 | 説明 |
|---|---|---|---|
session_id | string | はい | 履歴を取得するセッションID |
対象セッションのtaintが呼び出し元のtaintより高い場合、アクセスは拒否されます。
sessions_send
現在のセッションから別のセッションにコンテンツを送信します。ライトダウン禁止の強制が適用されます。
| パラメーター | タイプ | 必須 | 説明 |
|---|---|---|---|
session_id | string | はい | ターゲットセッションID |
content | string | はい | 送信するメッセージコンテンツ |
ライトダウンチェック: 呼び出し元のtaintは対象セッションの分類レベルに流れることができなければなりません。 CONFIDENTIALセッションはPUBLICセッションにデータを送信できません。
sessions_spawn
自律タスクのために新しいバックグラウンドセッションを生成します。
| パラメーター | タイプ | 必須 | 説明 |
|---|---|---|---|
task | string | はい | バックグラウンドセッションが行うべきタスクの説明 |
生成されたセッションは独立したPUBLIC taintと独自の分離されたワークスペースで開始します。 自律的に実行され、完了時に結果を返します。
session_status
特定のセッションのメタデータとステータスを取得します。
| パラメーター | タイプ | 必須 | 説明 |
|---|---|---|---|
session_id | string | はい | 確認するセッションID |
セッションID、チャンネル、ユーザー、taintレベル、作成時刻を返します。アクセスはtaintでゲートされます。
message
チャンネルと受信者にメッセージを送信します。ポリシーフックによるライトダウン禁止強制が適用されます。
| パラメーター | タイプ | 必須 | 説明 |
|---|---|---|---|
channel | string | はい | ターゲットチャンネル(例:telegram、slack) |
recipient | string | はい | チャンネル内の受信者識別子 |
text | string | はい | 送信するメッセージテキスト |
summarize
現在の会話の簡潔な要約を生成します。ハンドオフノートの作成、コンテキストの圧縮、または別のチャンネルへの 配信用の要約作成に有用です。
| パラメーター | タイプ | 必須 | 説明 |
|---|---|---|---|
scope | string | いいえ | 要約対象:session(デフォルト)またはtopic |
simulate_tool_call
ツールを実行せずにポリシーエンジンの決定をプレビューするためにツール呼び出しをシミュレートします。 フック評価結果(ALLOW、BLOCK、またはREDACT)と評価されたルールを返します。
| パラメーター | タイプ | 必須 | 説明 |
|---|---|---|---|
tool_name | string | はい | シミュレートして呼び出すツール |
args | object | いいえ | シミュレーションに含める引数 |
simulate_tool_callを使用して、ツール呼び出しが実行前に許可されるかどうかを確認します。
これはサイドエフェクトなしにポリシーの動作を理解するのに有用です。 :::
ユースケース
バックグラウンドタスクの委任
エージェントは現在の会話をブロックせずに長時間実行タスクを処理するためにバックグラウンドセッションを生成できます:
ユーザー:「競合他社の価格を調査してまとめてください」
エージェント:[sessions_spawnでタスクを呼び出す]
エージェント:「調査のためにバックグラウンドセッションを開始しました。間もなく結果をお届けします。」クロスセッション通信
セッションは互いにデータを送信でき、あるセッションが生成したデータを別のセッションが消費するワークフローを可能にします:
バックグラウンドセッションが調査完了 → sessions_sendで親へ → 親がユーザーに通知クロスチャンネルメッセージング
messageツールにより、エージェントは任意の接続チャンネルからプロアクティブに連絡できます:
エージェントが緊急イベントを検出 → message({ channel: "telegram", recipient: "owner", text: "警告: ..." })セキュリティ
- すべてのセッション操作はtaintでゲートされています:taintレベル以上のセッションを見たり、読んだり、送信したりすることはできません
sessions_sendはライトダウン禁止を強制します:データは低い分類に流れることができません- 生成されたセッションは独立したtaintトラッキングで
PUBLICtaintから開始します messageツールは配信前にPRE_OUTPUTポリシーフックを通過します- セッションIDはランタイムコンテキストから注入されます(LLM引数からではありません)— エージェントは別のセッションになりすますことができません
SECURITY ライトダウン禁止はすべてのクロスセッション通信に強制されます。
CONFIDENTIALにtaintされたセッションはPUBLICセッションやチャンネルにデータを送信できません。 これはポリシーレイヤーによって強制されるハードな境界です。 :::
