Obsidian Smart Connections: local embeddings for finding related notes
Find related notes and excerpts while writing. Your link building copilot displays relevant content in graph + list view. A local embedding model powers semantic search. Zero setup. No API key.
At a glance
- What is it?
- Smart Connections is an Obsidian plugin that indexes your vault with a local embedding model and surfaces semantically related notes in a Connections view and a Lookup search. The pitch is zero setup and no API key; the trade-off is that the interesting parts of the workflow sit behind Pro surfaces.
- Who is it for?
- Adopt Smart Connections if you run Obsidian with hundreds or thousands of notes, want semantic search without an API key, and are comfortable with the core workflow being list and Lookup views while inline suggestions sit behind Pro. Skip it if you want a hosted, cross-application knowledge graph, since this is an Obsidian plugin with a local-first data model.
- Can I use it commercially?
- Check first. The repository uses a licence we do not classify automatically, so read its LICENSE file before any commercial use.
- Is it still maintained?
- Yes. The repository last received commits 1 day ago.
- What is it written in?
- Mainly JavaScript, according to GitHub's language statistics.
Answers come from the project's GitHub data, last synced on September 15, 2026, and from our analysis. They are not legal advice.
DEEP OPEN-SOURCE ANALYSIS
The unlinked-notes problem Smart Connections targets
The README states the problem in user terms: a vault with hundreds or thousands of notes where capture is fast and retrieval is slow. Notes accumulate faster than links do, so a note you wrote months ago is only findable if you remember its title or the folder you filed it in. The README's own framing is that valuable insights disappear in a sea of unlinked notes, forcing scrolling, rereading, and duplicated work.
The audience is narrow and stated explicitly: Obsidian power users, researchers, writers, and lifelong learners. If your vault is small enough that the file explorer and quick switcher cover it, semantic ranking adds a layer you will not use. Smart Connections is for the vault that has outgrown browsing, where you know a relevant note exists but cannot name it.
How local embeddings and the Smart Environment fit together
The plugin ships an embedding model that runs locally, so notes are turned into vectors without sending vault content to a provider and without an API key. The README describes the result as notes that are semantically related to what you are working on right now, surfaced through what it calls your Smart Environment.
The repository layout shows how that is assembled. The entry point is src/, the build is esbuild.js, and package.json depends on a set of file: packages from the jsbrains family: smart-embed-model, smart-entities, smart-collections, smart-chat-model, smart-model, smart-blocks, smart-file-system, and smart-http-request, plus obsidian-smart-env. There is also a top-level smart_env.config.js. So the plugin is one front end over a shared environment layer, which is why the package description still mentions ChatGPT and OpenAI while the README leads with a local model: the chat side and the embedding side are separate models in the same environment.
Indexing is automatic. The README's three-step plan says to install and enable the plugin, keep writing, and let the built-in local model index the vault. The scan, confirm, act workflow described for the Connections list is the daily loop: scan ranked results, confirm which are actually relevant, then drag links into the note you are writing.
Installing Smart Connections and reaching a first useful result
There is no npm install step for end users. The README's getting-started path is the Obsidian Community plugins browser: install and enable Smart Connections there, then let the built-in model index the vault while you keep writing. The repository itself is built with the scripts declared in package.json, which matters only if you are working on the source.
package.json defines the build and test commands. Note that build-dev and prepare-release read a .env file, and the file: dependencies in package.json point at sibling checkouts of the jsbrains packages and obsidian-smart-env, so a plain clone of this repository alone is not a complete build environment.
"scripts": {
"build": "node esbuild.js",
"build-dev": "node --env-file=.env esbuild.js",
"release": "node release.js",
"prepare-release": "node --env-file=.env releases/run_format_release_notes.js",
"test": "npx ava --verbose"
}After enabling the plugin, open the Connections view. According to the README, you should see related notes ranked by semantic similarity, displayed in graph and list form, and you can drag a link from that list into the note you are editing. The Lookup view is the on-demand equivalent: a semantic search across the vault rather than a ranking against the current note.
The README also points at a Getting Started guide reachable from Smart Connections settings, and at the settings guide for indexing, filters, ranking, and UI defaults. Those are the first places to look when the ranking feels wrong, since the README does not reproduce the setting keys in the repository files.
Where Smart Connections stops being the right tool
The core surfaces are the Connections list, the Lookup view, and the settings that tune indexing and ranking. Inline connections, which trigger note suggestions while you write in the editor, and the Bases integration are labeled Pro in the README's own tables. If your reason for wanting this plugin is suggestions that appear inside the editor as you type, the free plugin does not do that; you are evaluating a paid surface, and the README defers plan comparison to a separate Pro plugins page.
There is also a scope boundary. This is an Obsidian plugin. It indexes a vault, and the README describes local-first data, not a service that answers questions about your notes from other applications. The package description still says the plugin links and chats with notes using ChatGPT and OpenAI embeddings, which is now narrower than what the README advertises: the README's default is a local model with no API key. Treat the package description as stale metadata rather than a statement of current defaults.
Finally, indexing a large vault is not free in time or disk. The README does not document rollback or how to remove an existing index, and it does not publish index size figures, so the only honest expectation is that a first scan of a large vault takes a while and that the settings guide is where you constrain what gets indexed.
Smart Connections compared with Obsidian Copilot and Ollama setups
The comparison people search for is Smart Connections versus Copilot, and the difference is where the model runs and what the plugin is for. Smart Connections is built around retrieval: a local embedding model ranks existing notes against the note you are in, and the primary output is a list of related notes you turn into links yourself. A Copilot-style plugin is built around generation: you ask, a chat model answers using your vault as context. They overlap in the chat area, since Smart Connections depends on smart-chat-model and its package description mentions ChatGPT, but the default experience the README sells is discovery, not conversation.
The other comparison is against wiring up Ollama or another local model yourself. That gives you control over which model you run and where it lives, at the cost of configuring a server, pulling a model, and keeping it running. Smart Connections bundles a local model so the default path needs no server. The cost is that you take the model the plugin ships with, and the README does not describe swapping it for an arbitrary local endpoint. If model choice is the point for you, the do-it-yourself route is the more direct one.
Maintenance, licence, and what upgrading costs you
The repository is not archived, and the last push was on 2026-09-13, with releases 4.7.0 through 4.7.2 published on 2026-08-05 and 2026-08-06. That is a recent release line, so version 4.7.2 is the one to install.
The upgrade cost is mostly the index. Because the plugin embeds your vault locally, a change to the embedding model or to indexing settings can invalidate what was already computed, and the README does not describe how re-indexing is triggered or how long it takes. There is a migrations/ directory at the repository root, which indicates the project does handle data migrations between versions, but the README does not document what those migrations do to an existing index.
On licensing: package.json declares "SEE LICENSE IN LICENSE" and the repository's licence is classified as NOASSERTION, so the terms are whatever the LICENSE file says rather than a standard identifier you can assume. Read that file before redistributing or bundling the plugin. The README describes the core as source available and local-first, which is a different posture from a permissive open source licence, and the Pro surfaces are commercial. None of that is legal advice; it is a reason to read the actual file.
Editorial conclusion
Adopt Smart Connections if you run Obsidian with hundreds or thousands of notes, want semantic search without an API key, and are comfortable with the core workflow being list and Lookup views while inline suggestions sit behind Pro. Skip it if you want a hosted, cross-application knowledge graph, since this is an Obsidian plugin with a local-first data model. Before committing, install it from Community plugins, confirm the built-in local model finishes indexing your vault, and check the LICENSE file and the Pro plugin comparison page, because the package declares SEE LICENSE IN LICENSE and the README splits capabilities between free and Pro surfaces.
Frequently asked questions
What is Obsidian Smart Connections?
It is an Obsidian plugin that uses a local embedding model to find notes semantically related to what you are writing, and displays them in a Connections view with graph and list output plus a Lookup search view. The README describes it as zero setup, private and offline by default, with no API key required.
How do I use Obsidian Smart Connections?
Install and enable it from Obsidian Community plugins, keep writing so the built-in local model indexes the vault, then open the Connections view and drag relevant notes into what you are working on. The README describes this as a scan, confirm, act loop, with the Lookup view for on-demand semantic search.
Which embedding model does Obsidian Smart Connections use?
The README says the plugin ships with a local embedding model that works without configuration or an API key, and package.json depends on smart-embed-model. The README does not name the specific model or document swapping it for another one.
Is there an Obsidian Smart Connections alternative that runs on Ollama?
The README does not mention Ollama or any local model server. Its comparison point is the opposite: it bundles a local model so you do not have to run a server yourself, which means you take the model the plugin ships with rather than choosing your own.
What is included in Obsidian Smart Connections Pro?
The README lists inline connections, which trigger note suggestions while writing in the editor, and the Bases integration as Pro surfaces, and points to a separate Pro plugins overview page for plan comparison. The Connections list, Lookup view, and settings are documented as core.
Does Obsidian Smart Connections work with Claude?
The repository topics include claude, and package.json depends on smart-chat-model, but the README does not document a Claude setup. Its stated default is a local embedding model with no API key, so Claude is not part of the documented free path.
Community notes