---
read_when:
    - 以前のセッションで話し合われた内容を見つける必要がある
    - セッション検索のプライバシーまたはインデックス作成について理解したい場合
summary: 過去のセッショントランスクリプトを検索し、一致するコンテキストを再度開く
title: セッション検索
x-i18n:
    generated_at: "2026-07-12T14:26:09Z"
    model: gpt-5.6
    postprocess_version: locale-links-v1
    prompt_version: 15
    provider: openai
    source_hash: 3e9cda6b656b689eef0636592914f4890a64dca5e955aa03908377903aaa29c9
    source_path: concepts/session-search.md
    workflow: 16
---

# セッション検索

`sessions_search` は、自分の過去のセッションに含まれるユーザーとアシスタントのテキストを検索します。各結果には
`sessionKey`、タイムスタンプ、ロール、および一致した短い抜粋が含まれます。前後の会話が必要な場合は、返された
`sessionKey` を `sessions_history` に渡します。

## 可視性と出力

検索には、`sessions_history` と同じセッション可視性ルールが使用されます。呼び出し元から見える
セッションツリーの範囲外にある結果は、結果件数の上限が適用される前に除外されます。サンドボックス化されたエージェントは、
生成済みセッションの可視性が有効な場合でも、自身が生成したセッションに引き続き制限されます。

抜粋はモデルに返される前に秘匿処理されます。また、結果には件数、抜粋の長さ、
およびレスポンス全体のサイズに上限があります。

## インデックスのライフサイクル

OpenClaw は、各エージェントの SQLite データベース内で、トランスクリプト行と併せて全文検索インデックスを保存します。
新しいユーザーメッセージとアシスタントメッセージは、それらを永続化する同じトランザクション内でインデックス化されるため、
インデックスが進行中の会話より遅れることはありません。ツール結果、推論ブロック、画像は除外されます。
検索対象になるのは、トランスクリプトのアクティブなブランチのみです。

インデックス作成以前のトランスクリプト（たとえば、`openclaw doctor` でインポートされたセッション）と、
アクティブなブランチが巻き戻されたセッションは、次回の検索時に開始されるバックグラウンドの整合処理によって
再インデックス化されます。そのため、`indexing: true` を含むレスポンスは不完全な場合があります。
インデックス作成の完了後に再試行してください。セッションを削除すると、同じトランザクション内でそのインデックスエントリも削除されます。

現在、検索ではダイアクリティカルマーク除去を行う SQLite の Unicode 単語トークナイザーを使用しています。CJK の部分文字列一致に対応する
トライグラムトークン化は、今後の改善予定です。

## セッション検索とメモリ検索の違い

生のセッショントランスクリプトから完全一致する単語やフレーズを検索するには、`sessions_search` を使用します。永続的なメモリファイルと意味検索には、
[`memory_search`](/ja-JP/concepts/memory-search) を使用します。試験的なセッションメモリコーパスは、この完全一致トランスクリプト検索を意味的に補完するものです。
