Search & Discovery
Find any engagement, quote, account, or resource with full-text search (Algolia) plus semantic vector search powered by AI. Two search systems, one shortcut: Cmd+F.
Servantium provides two powerful search systems that work together: Full-Text Search for finding specific records by name or keyword, and Semantic Vector Search for discovering related concepts and past work.
Full-Text Search (Algolia)
Servantium uses Algolia to power fast, typo-tolerant, full-text search across your organization’s data.
Keyboard Shortcuts
You can instantly focus the table search bar on any list screen by pressing Cmd+F (Mac) or Ctrl+F (Windows).
To access the global search Command Palette from anywhere in the app, press Cmd+K (Mac) or Ctrl+K (Windows).
How it works
- Automatic Indexing — A backend trigger (
sync_to_algolia) listens for changes across your core collections (Engagements, Quotes, Accounts, Contacts, Items, Snippets, Project Plans, Project Plan Tasks). - Instant Updates — Whenever a document is created, updated, or deleted, the change is immediately pushed to the search index.
- Global Search Command Palette — Press
Cmd+K(orCtrl+K) or click the search bar in the top navigation to open the Command Palette. The palette is fully responsive, intelligently adapting to smaller screens and virtual keyboards. It queries the index across all collections simultaneously, displaying recent items when empty, and full search results as you type. Use your keyboard’s up and down arrows to navigate results (which feature high-contrast selection highlights) and pressEnterto jump instantly to the specific record. The system automatically resolves canonical URLs, deep links, and strips ID artifacts to ensure you always land in the correct workspace. - List Screens & Filters — Primary table views, such as the Engagements and Snippets screens, natively use Algolia instead of standard database queries. This allows for rapid, typo-tolerant filtering directly within the list. Data tables feature inline popover filter menus where you can search for specific fields and values within the filter dialog itself.
Security & Access Control
Search results automatically respect your organization’s role and tag-based access rules (ABAC). The system generates dynamic search filters based on the active user’s assigned roles and security tags. If a user does not have permission to view a specific collection or a record tagged with a restricted category, those records will be omitted from their search results. Furthermore, list screens gracefully handle any discrepancies between the search index and live database (such as recently deleted or restricted documents) by validating records individually, ensuring the table always loads reliably.
Reindexing
In rare cases (such as after a major bulk data import), the search index might fall out of sync. Organization administrators can use the Management CLI to run the reindex_algolia.py script to perform a full synchronization from Firestore to Algolia.
Semantic Vector Search
While full-text search is great for finding a specific client by name, Semantic Search understands the meaning of your data.
How it works
Servantium uses Google Vertex AI (Gemini Embeddings) and Firestore Vector Search.
- Note Consolidation — As team members add notes to an engagement, the
noteEmbeddingbackend trigger aggregates all the text. - Embedding Generation — The text is passed to the Gemini Embedding model, which converts the concepts into a high-dimensional vector array.
- Similarity Matching — When you use the “Similars” feature, the
getsimilarCloud Function performs a nearest-neighbor vector search. It compares your current engagement’s embedding against all historical engagements in your organization to find the closest conceptual matches. - Semantic Note Search — You can directly search through your notes on any Notes tab. The system uses vector embeddings to find notes matching your conceptual query, displaying a similarity percentage (e.g.,
85% match) on each result.
Semantic search does not rely on exact keyword matches. A search for “CRM implementation” will successfully find past engagements labeled “Salesforce rollout” because the AI understands they are conceptually related.
Using Search in Object Fields
When designing Engagement Templates or Data Dictionaries, you can use the Object field type. This field uses Algolia’s search index to provide a dynamic dropdown that searches across a specific collection (e.g., Accounts or Contacts), rather than a hardcoded list of options.
These fields feature adaptive memory caching. When opening a form with a previously selected record, the field resolves the display name instantly without network latency, loading spinners, or layout flickering.
What’s next?
- AI & Intelligence — Learn more about how semantic search powers AI quote generation.
- Engagement Templates — Configure templates that utilize Object search fields.
Need more help?
Our support team is available to assist you.
Contact Support