Skip to content

Find a conversation

Start with a distinctive word, filename, or phrase you remember:

Terminal window
mash search 'authentication' --intent exact-mention

Results are JSON. By default they group matching messages by chat. Search reads the existing index; it does not refresh history. If you just had the conversation, run mash index first.

Prefer a visual view? Use the dashboard. Inside an agent, ask “Mash, find our earlier discussion about authentication.”

Copy a message ID from a result, then read it with nearby context:

Terminal window
mash view MESSAGE_ID --context 3

Replace MESSAGE_ID with the returned message ID, not the chat ID. For a shared result, include its publishing node:

Terminal window
mash view MESSAGE_ID --shared NODE_ID --context 3
Terminal window
mash list-chats --title-contains 'authentication' --limit 10

This lists chat metadata without models or a working search index. To search within one of those chats, copy its chat_id:

Terminal window
mash search 'token' --chat CHAT_ID --unit messages
I remember… Example
The agent mash search 'authentication' --provider codex
Roughly when mash search 'authentication' --days 7
A date range mash search 'authentication' --after 2026-10-01 --before 2026-11-01
The project directory mash search 'authentication' --project /absolute/path/to/project
The repository mash search 'authentication' --repository https://github.com/owner/repo.git
Something I said mash search 'authentication' --role user
The exact spelling mash search 'auth_token' --intent exact-mention --match-mode strict

Project paths and repository URLs must match the recorded metadata exactly. Copy them from list-chats or search results. Repeat a flag to include alternatives, such as --provider codex --provider claude-code; different filters narrow the results together.

Search date bounds accept dates (UTC midnight) or RFC3339 timestamps. --after includes the boundary; --before excludes it. Unlike search, list-chats --after/--before take Unix seconds and filter chat activity.

Once semantic search is enabled:

Terminal window
mash search 'why did we choose a separate database' --intent related-discussion

Use exact-mention for words or identifiers and related-discussion for a question whose wording may differ from the conversation. Semantic queries currently need English. Exact-mention search works without models.

Exact-mention matches a multiword query as a phrase, not independent words scattered through a chat. If it finds nothing, try the most distinctive word. Default matching allows prefixes and conservative typos; --match-mode strict keeps spelling exact.

Use --limit 10 for a smaller page. For the next page, repeat the same request with --offset set to the returned next_offset; stop when it is null.

--sort recent shows the newest qualifying results first within each relevance page. For a chronological chat list, use list-chats instead.

With a shared index, normal search combines this machine and other nodes. --local uses only this machine; --shared uses only published history. --node filters recorded node identity—it does not connect to that machine.

If results are missing or stale, start with troubleshooting.