Conor O'Neill25 downloadsSearch your vault locally with ZVec BM25 and semantic embeddings.
ZVec Hybrid Search helps you find notes using exact words, related terms, or similar ideas. Search runs locally, the index updates automatically, and there is no separate server or command-line setup.
Mobile is not supported.
BRAT installs the plugin from GitHub and can keep it updated. BRAT installation is separate from Obsidian's Community Plugin directory.
Back up your vault before installing any third-party plugin.
https://github.com/conoro/obsidian-zvec-hybrid-search.No GitHub account or token is required.
To update later, open Settings → BRAT and use Check and update plugin. BRAT can also check for updates when Obsidian starts.
zvec-hybrid-search-<version>.zip.plugins/zvec-hybrid-search/ inside the vault's Obsidian
configuration folder. This folder is normally .obsidian unless you have
changed Settings → Files and links → Override config folder.main.js, manifest.json, and styles.css are directly
inside that folder.For a manual update, disable the plugin and replace those three files with the ones from the newer release. Restart Obsidian and enable the plugin again. The existing index and downloaded model are retained.
When the plugin is first enabled, it prepares everything automatically:
An internet connection is needed for the two initial downloads. Your notes are not uploaded.
Open ZVec Hybrid Search from the ribbon or run Open hybrid search from the command palette. The sidebar shows its progress. You can search when its status changes to Ready.
The first index can take several minutes for a large vault. Later starts reuse the local index immediately and update only notes that have changed.
Use Load more when there are more results than the current batch. Use Clear, or press Escape, to remove the current query and results. Changing a completed query clears its old results immediately.
Search options are collapsed by default. The defaults suit most searches.
In Hybrid and Keywords modes, term matching controls how query words are handled:
You can also limit results by the note's modified date. Modified from and Modified to can be used together or independently; leave both blank to search all dates. The To date includes the whole selected day.
Sort order and whether to show the best matching section from each note or every matching section are selectable too.
YAML property names and values are searchable even when they do not appear in the note body. Metadata matches appear as a Properties result.
Open Settings → ZVec Hybrid Search.
The most useful settings are:
.trash/** or
Archive/**.The default settings are suitable for most vaults. The settings under Local indexing, including the embedding backend and passage controls, are intended for advanced tuning.
Changing the folder scope, excluded paths, passage controls, or embedding backend requires Save and rebuild.
ZVec provides the local keyword and similarity search database. Transformers.js runs the MiniLM model locally to convert note content into vectors that can be compared by meaning.
Download, storage, and indexing errors are contained within the plugin and do not modify your notes.
Automatic indexing waits until editing has been quiet for about 10 seconds. If the note is still missing, open Settings → ZVec Hybrid Search and select Incremental reindex.
Open Settings → ZVec Hybrid Search, change Included notes or Excluded paths, then select Save and rebuild.
Disable the plugin in Obsidian, then remove plugins/zvec-hybrid-search from
the vault's Obsidian configuration folder. Your notes are not changed or
deleted.
Generated search data is kept separately so reinstalling does not require another full index. To remove it as well, delete the vault's opaque folder inside:
~/Library/Application Support/zvec-hybrid-search/vaults/%LOCALAPPDATA%\zvec-hybrid-search\vaults\${XDG_DATA_HOME:-~/.local/share}/zvec-hybrid-search/vaults/If there is more than one folder there, remove only the one belonging to the uninstalled vault. It is safe to leave these generated files in place.
Open a GitHub issue for ordinary bugs. Do not attach private notes, vault paths, model caches, or index files.
Report security issues through GitHub's private vulnerability reporting as described in SECURITY.md.
Release history is in CHANGELOG.md. Source-build and contribution details are in DEVELOPMENT.md.
MIT. See LICENSE.