Session search
Your agent can look up past conversations on its own, using the same trace records you can already inspect.
An agentâs working memory of a conversation only lasts while that conversation is running: once the session ends or the app restarts, it is gone. What survives is the trace of every turn, a durable record kept in SQLite whether or not the session that made it is still alive.
The session_search tool lets an agent search and read that history on its own, so you never have to paste old context back in. It is always-safe (no permission prompt, the same posture as read_file), and it only sees the calling agentâs own project: one projectâs conversations are never searchable from another.
Within that project, how far one call can actually see depends on the agentâs session_search_scope. The default, "self", means every action reaches only the calling conversationâs own history. That is the safe setting for an agent that talks to several different end customers: one customer asking to âsearch my past conversationsâ must never be able to read another customerâs. Widen it to "project" (a checkbox on the agentâs edit page, or manage_agentâs session_search_project_wide flag) only for an agent with a single operator or team on the other end, an internal tool where there is nobody elseâs conversation in the same project to leak.
What it can do
list_sessions: which conversations have happened in this project, most recently active first, each with its turn count.search: find conversations whose prompt or tool activity mentions a given word or phrase.session_history: every turn recorded for one session key, in order. A conversationâs own timeline.show: one turnâs complete transcript, with every tool call, result, and the final reply.
You: Didn't we already sort out that invoice issue with Acme a few weeks back?
Agent: [session_search search: "Acme invoice"]
Yes - on July 3rd I found their May invoice had the wrong tax rate applied and
corrected it. Want me to check whether the same thing happened again this month?
This is search, not memory: an agent still only acts on what it reads back into the current conversation. Nothing found this way is silently assumed; it comes back as text the agent reads and can quote, the same as any other tool result.