検索監査
コンテキストビルダーは、作業を始める前にエージェントへ何を読み込むかを決める。監査はその作業中の対の存在だ。エージェントが実際に何を検索し(search / recall)、何を開き(get_note)、そして何かヒットしたのかを映し出す。これが重要なのは、メモリの主たる失敗モードが「事実が存在しない」ことではなく、検索の失敗だからだ。必要なノートは存在するのに、クエリがそこへ届かない。可観測性がなければ、メモリの手入れは当て推量に成り下がる。
このセクションは Agents → Audit にある。
ログに記録されるもの
読み取り系ツール(search、recall、get_note)を呼び出すたびに、ログへ1行が追記される。何を検索したか(query、scope、class)と、何がヒットしたか(noteId、title、score、class を伴うトップヒットと、結果件数)だ。記録はバックグラウンドで行われ、レイテンシにもエージェントへ返す答えの正しさにも影響しない。
書き込み系ツール(create_note、remember_*、edit_note)は検索監査には記録されない — それらの来歴はリビジョンログに残る。監査は読み取りに関するものだ。
各行はエージェント名も覚えている — トークンやアプリのフレンドリー名(たとえば CLI や Claude)で、トークンが生きているあいだに取得される。こうして各行は、どのエージェントがそのクエリを行ったかを永久に覚えていられる。
死角
監査の主たるシグナルは、空振りを繰り返す反復クエリだ。一度きりの空振りは正常(エージェントが仮説を試しただけ)。しかし何度となく何もヒットしないクエリは死角だ。エージェントはメモリに存在しない事実、あるいは不都合なタイトルの下に埋もれた事実を必要としている。これは、何を書き足すべきか、あるいはどう言い換えるべきかを直接指し示す。
インターフェースはこれを2つのパネルに凝縮する。
- Blind spots — 反復する空クエリ(しきい値: 結果なしが2回以上)、黄色/琥珀色でハイライトされる。
- Frequent — もっとも頻度の高いクエリ。
さらに履歴フィード(新しいものが上)があり、ツールでフィルタできる(All / Search / Recall / Open)。ツールアイコン、クエリそのもの、エージェント名、クラス/カテゴリのラベル、プロジェクト(スコープを絞ったときのみ)、結果件数、そして時刻を表示する。行を展開すると、見つかったヒットが現れる — クリックでき、そのままノートへ飛べる。
監査が確実に捉えるのは、まさにこの空振りのケースだ。「関連するものは存在するがトップヒットに入らなかった」ケースは、クエリをメモリに対して実際に走らせる必要がある — これは別の、より微妙なシグナルであり、監査は表に出さない。
プライバシーと範囲
ログはオーナーだけに見える。あなたは自分のエージェントによる検索を、あなたのユーザー名に紐づいた形で見る。閲覧者がオーナー本人なので、自分のエージェント名は伏せられず表示される。監査はあなたの全スペースを一度に横断する — 各行に単一のホームスペースはない。
監査はメタデータデータベースに保存される。メタデータデータベースを持たないホスト(たとえばデータベースなしの none モード)は検索を記録しない — セクションは単に空のままになり、エラーは出ない。
次へ
- コンテキストセットとピン留め — 前もって何が読み込まれるか。監査はオンデマンドで何が引き出されるかを示す。
- エージェントのメモリ —
searchとrecallが正確に何を探すのか。 - セキュリティと可視性 — 読み取りログがなぜオーナーだけに見えるのか。