Full-Text Search
Full-text search finds sessions containing specific words or phrases. It uses Convex’s built-in search indexes, so results are fast and ranked by relevance.How it works
OpenSync maintains a search index on thesessions.searchableText field. Sync maintains this field from the title and recorded message text, capped at 10,000 characters. It is not a complete index of every message in a long session. When you search, Convex’s search engine tokenizes your query and matches against this index.
What gets indexed
Tool call names and arguments are not included in
searchableText by default. Only the textual content of messages is indexed.
Ranking
Results follow Convex full-text relevance ranking. The REST endpoint does not return a numeric relevance score.Search syntax
Single term
Multiple terms
Prefix matching
Phrase search
OpenSync does not expose a quoted-phrase operator. Multi-word input is passed to Convex as a search expression.Using full-text search in the dashboard
The search box at the top of the Sessions, Evals, and Context views all use full-text search by default.- Type your query in the search box.
- Results update in real time as you type.
- Results are sorted by relevance score.
Using full-text search via API
results array. See the API reference for the returned fields; the REST API does not return snippets or relevance scores.
Tips for better results
- Use specific terms. “convex mutation upsert” will return more targeted results than “database update”.
- Include technical identifiers. Function names, library names, error codes, and file paths make great search terms.
- Combine with source filters. If you know which tool you used, filter by source to narrow the results.
- Use fewer terms for broader results. Start with one or two key terms and add more if you get too many results.
When to use full-text vs semantic
For more on semantic search, see Semantic Search. For combining both, see Hybrid Search.
Search behavior reference: Convex full-text search.