pond_search
Find relevant messages in past AI agent sessions to recall what was worked on, decided, or discussed. Supports semantic and exact-word search, with filters for project, date, and session.
Instructions
Find relevant messages in past sessions - the entry point for recall: "have we worked on X", "what did we decide about Y", "find the session where...". mode="vector" (default) matches meaning; mode="fts" matches exact whole words (BM25). Scope with project / session_id / source_agent / from_date / to_date; keep the query semantic (concepts, not project names). Returns scored hits grouped by session, best session first; pass a hit's session_id to pond_get_session or its message_id to pond_get_message to read it. Searches conversational text only (tool calls/results and reasoning are excluded by design - a gap there is expected, not a failure) and excludes subagent sessions; reach both via pond_sql. Response format details: resource schema://pond.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| mode | No | Retrieval arm: "vector" (default - matches on meaning) or "fts" (matches exact whole words via BM25). Use vector for concepts/ paraphrases, fts when you know the literal words. Falls back to fts when the store has no embeddings. | |
| limit | No | Max sessions to return. Default 10, server-capped at 200. This is also the "want more results" knob - raise it; there is no pagination. | |
| query | Yes | What to search for: concepts and keywords. Keep it semantic - do not put project names in the query, use the `project` filter instead. | |
| project | No | Filter to projects whose path contains this substring. | |
| sort_by | No | Result order: "relevance" (default - best match first) or "recency" (newest first; the response is labeled so you don't read rank-1 as the best match). | |
| to_date | No | Only messages on or before this date (YYYY-MM-DD). | |
| from_date | No | Only messages on or after this date (YYYY-MM-DD). | |
| session_id | No | Filter to one session (exact match) - search within a single, possibly long, session. | |
| source_agent | No | Filter to one source harness. A root value ("openclaw", "claude-code") returns that harness's main sessions (subagents stay excluded, like the default). Name a subpath ("claude-code/general-purpose", "openclaw/subagent") to search those subagent sessions directly - a subpath value is the deliberate opt-in that disables the default subagent exclusion. |