v0.1.4
[0.1.4] - 2026-04-13
Changed
- Dependencies updated to latest versions:
dirs5 → 6,dialoguer0.11 → 0.12,console0.15 → 0.16 rust-versionset to1.94inCargo.toml; MSRV inclippy.tomlupdated to match- Code modernised for Rust 1.94: nested
if letchains collapsed using stabilisedlet_chains;manual_stripandif_same_then_elselints resolved invault.rs
[0.1.3] - 2026-04-13
Added
installsubcommand — interactive wizard and direct CLI to write MCP config into AI client config files- Clients: Claude Desktop, Claude Code (local
.mcp.json+ global~/.claude.json), Cursor (local.cursor/mcp.json+ global~/.cursor/mcp.json), OpenClaw --globalflag selects global config forclaude-codeandcursor(local is default)--dry-run,--forceflags; auto-backup before any write (.json.bak)- Cross-platform config path resolution (macOS / Windows / Linux)
- Clients: Claude Desktop, Claude Code (local
uninstallsubcommand — interactive or direct removal of MCP config entrylistsubcommand — show installation status across all detected AI clientslogssubcommand — print log file path, last 100 log entries, and a GitHub issue link for bug reports--no-editflag — starts the server in read-only mode; all write tools (create-note,edit-note,delete-note,move-note,create-directory,add-tags,remove-tags,rename-tag) return an error immediately--verbose/-vflag — enables DEBUG-level logging to stderr without needingRUST_LOG--log-file <FILE>flag — override the automatic log file path; pass-to disable file logging entirely- Automatic DEBUG log file written on every server start:
- macOS:
~/Library/Logs/obsidian-mcp-rs/obsidian-mcp-rs.log - Linux:
~/.local/share/obsidian-mcp-rs/obsidian-mcp-rs.log - Windows:
%LOCALAPPDATA%\obsidian-mcp-rs\obsidian-mcp-rs.log
- macOS:
- Structured startup log: version, PID, no_edit state, and each vault path logged at INFO on start
tracing::debug!on every MCP tool invocation with key parameters;tracing::error!on every tool failurescripts/prepare-release.sh— automates version bump across all 9 package files and updatesCHANGELOG.mdcodecov.yml— Codecov flag configuration for separate Rust and TypeScript coverage reporting- Code coverage badge in README (Codecov)
platform.ts— platform detection logic extracted frombin.tsinto a separate, testable module with named exportsplatform.test.ts— 16 vitest unit tests coveringdetectPlatform,detectMusl, andresolveBinaryPathvitest.config.ts— vitest configuration with@vitest/coverage-v8lcov reporter- Russian README (
README.ru.md) with language switcher on both README files
Changed
- README: added Quick setup section near the top with wizard and direct install examples
- README: added Troubleshooting section with log file locations,
--verbose,--log-fileusage, and bug-report instructions - README: added language switcher (
English | Русский) below the header - CI: workflow branch target changed from
maintomaster; all action versions updated to latest - CI: added
coveragejob —cargo llvm-cov --lcovfor Rust andvitest --coveragefor TypeScript, both uploaded to Codecov with separate flags bin.tsrefactored into a thin launcher (spawnSync); all detection logic moved toplatform.tstsconfig.json: test and config files excluded from the build output
Fixed
- CI was not running on
masterbranch (was targeting non-existentmain) bin.tsplatform logic was untestable due to inlinerequire()calls; fixed by moving to static imports inplatform.ts
Full Changelog: v0.1.2...v0.1.4