Skip to main content

search_conversation_history

Hybrid keyword + semantic search. Returns ranked evidence: session id, line range, timestamp, author, machine and an excerpt. Not an answer.
Ranked by relevance, not authority or recency. Results routinely include superseded values, defaults declared in source code and experiments that were later rejected. For “which value is current”, compare timestamps and read the latest session that mentions it.
While embedding is still catching up (usually only right after a large first sync), results carry an index note saying how many passages match by keyword only so far. Newest history is embedded first, and grep and read already see everything.

grep_conversation_history

Exact regex over rendered lines. Returns the true total match count, never capped, plus samples with context.
  • Samples are the newest matches by default, each with its timestamp (order: oldest for the earliest).
  • sessions lists every matching session with its count, first and last match and machine, and names the latest and the densest one. That is usually the fastest way to find where a piece of work happened.
  • group_by returns exact counts per captured value in one call, the equivalent of grep -o | sort | uniq -c. Turn headers carry role, agent, author and timestamp, so grouping on those counts activity without one call per bucket.
Long lines are clipped around the match; read the line for all of it.

read_conversation_session

Reads a session by line number. Line numbers from search and grep hits point here, so this is how your agent drills into full context at a coordinate. A negative start line counts from the end, so -300 shows how a session ended. Pages are bounded in size and say where to continue.
A session is a point-in-time record. “Pending” or “not yet done” in a passage does not mean it is still so. Every read says which sessions ran after the page it returned, so your agent can check whether something later changed it.