Search¶
bm supports two search modes: full-text search (default) and semantic search.
Text Search¶
bm search "golang tutorials"
bm search -n 20 "rust" # limit results
bm search -p "Default" "go" # filter by profile
Text search uses SQLite FTS5 which indexes bookmark titles, URLs, and fetched page content. It supports standard FTS5 query syntax (AND, OR, NOT, phrase matching).
For queries containing special characters (dots, colons, etc.), bm falls back to a case-insensitive LIKE search on title and URL.
Semantic Search¶
Semantic search finds bookmarks by meaning rather than exact keywords. It requires:
How It Works¶
- Your query is embedded into a vector via Ollama
- Cosine similarity is computed against all stored bookmark embeddings
- Results are ranked by similarity score
This means "learn to code" will match pages about programming tutorials even if they never use the exact phrase.
See Indexing for details on building the embedding index, choosing models, and age filtering.