
Security News
Lovable’s OJ Rewrites Vite’s Dev Server in Rust as AI Lowers the Cost of Forking Open Source
Lovable’s OJ rewrites Vite’s dev server in Rust, reducing memory use and preview times as AI lowers the cost of open source reimplementation.
Your Obsidian vault is Claude's memory — local semantic search over your notes via MCP, always fresh, never reindex.
Your Obsidian vault is Claude's memory. Always fresh, always local.
Every other vault-search MCP makes you re-run an index command, babysit a watch terminal, or click "Update Index" in a web UI. freshvault watches your vault from inside the MCP server: edit a note, and Claude sees it seconds later. Automatically. Forever.

bge-m3), your notes never leave your machinebge-m3 handles Korean, Japanese, and 100+ languages that English-only defaults fail onPrerequisites: Node 20+ and Ollama.
npx -y freshvault setup
That's it. The wizard detects your Obsidian vault, pulls the embedding model, builds the index, and registers with Claude Code. There is no step 2, and there is never a step 2: no index command to re-run, no watch terminal, no background service.
{
"mcpServers": {
"freshvault": {
"command": "npx",
"args": ["-y", "freshvault", "serve"],
"env": { "FRESHVAULT_VAULT": "/absolute/path/to/your/vault" }
}
}
}
Claude Code one-liner:
claude mcp add freshvault -s user -- npx -y freshvault serve
Just ask Claude about your notes:
"Search my notes for what I wrote about cache eviction strategies"
Three tools, all read-only:
| tool | what it does |
|---|---|
search_notes | semantic search — finds meaning, not just keywords |
get_note_context | reads a full note after a search hit (path-traversal safe) |
index_status | freshness report: notes/chunks, last sync, watcher state |
Obsidian vault ──fs.watch──▶ freshvault MCP server ──search_notes──▶ Claude
(.md files) (chunks → bge-m3 embeddings (generation)
→ one JSON index, incremental)
Register one server per vault — index files are kept per-vault automatically:
claude mcp add work-vault -s user -e FRESHVAULT_VAULT=/path/to/work -- npx -y freshvault serve
claude mcp add personal-vault -s user -e FRESHVAULT_VAULT=/path/to/personal -- npx -y freshvault serve
FRESHVAULT_EMBED_API=openai FRESHVAULT_EMBED_URL=http://localhost:1234 npx -y freshvault serve
Anything speaking /v1/embeddings works; FRESHVAULT_EMBED_KEY for authenticated endpoints (never written to the config file).
Everything works with zero config after setup. Override when needed:
| Flag | Env | Default |
|---|---|---|
--vault | FRESHVAULT_VAULT | from setup |
--model | FRESHVAULT_MODEL | bge-m3 |
--ollama-url | FRESHVAULT_OLLAMA_URL | http://localhost:11434 |
--data | FRESHVAULT_DATA | platform data dir |
| — | FRESHVAULT_EMBED_API | ollama (or openai) |
| — | FRESHVAULT_EMBED_URL | http://localhost:1234 (openai mode) |
| — | FRESHVAULT_EMBED_KEY | none (openai mode, optional) |
Commands: setup · serve (default) · index (manual escape hatch) · status
A Korean retrieval micro-benchmark ships in-repo (node scripts/bench.mjs) — 30 Korean notes, 40 paraphrase queries, comparing embedding models on top-1/MRR. Results in docs/ko-bench.md.
bge-m3-ko fine-tune option + expanded published benchmarkMIT © Kioko Lab
FAQs
Your Obsidian vault is Claude's memory — local semantic search over your notes via MCP, always fresh, never reindex.
The npm package freshvault receives a total of 19 weekly downloads. As such, freshvault popularity was classified as not popular.
We found that freshvault demonstrated a healthy version release cadence and project activity because the last version was released less than a year ago. It has 1 open source maintainer collaborating on the project.

Security News
Lovable’s OJ rewrites Vite’s dev server in Rust, reducing memory use and preview times as AI lowers the cost of open source reimplementation.

Security News
It has been one year since Shai-Hulud made its first appearance on npm.

Research
/Security News
Operators behind PolinRider used a compromised GitHub account to plant malware in four development versions of a Packagist package with 700,000+ downloads.