Releases: The-40-Thieves/obsidian-tc
Release list
v1.3.4
What's Changed
- docs(trademark): frame the Obsidian mark as nominative use (THE-290) by @suavecito585 in #138
- docs: sweep version prose to 1.3.3 + tool-count examples to 105, gate against drift by @suavecito585 in #139
- Release 1.3.4 — refresh npm package README + doc-drift gate by @suavecito585 in #140
Full Changelog: v1.3.3...v1.3.4
v1.3.3
What's Changed
- docs(g2): sweep the design specs to the shipped 1.3.2 reality by @suavecito585 in #136
- Release 1.3.3 — pre-v2 closeout (security / config / docs / packaging) by @suavecito585 in #137
Full Changelog: v1.3.2...v1.3.3
v1.3.2
What's Changed
- docs(readme): refresh for v1.3.1 by @suavecito585 in #134
- Release 1.3.2 — security fixes (hardlink ACL + hygiene sweep) + plugin lockstep by @suavecito585 in #135
Full Changelog: v1.3.1...v1.3.2
v1.3.1
What's Changed
- fix(release): scope draft-release artifact download to release assets by @suavecito585 in #40
- feat(release): single-source version setter + CI coherence gate (THE-256 Phase 1) by @suavecito585 in #38
- chore: napi v3 config migration + docs refresh (README/SECURITY/CONTRIBUTING) by @suavecito585 in #41
- docs(contributing): drop link to non-existent how-to-add-a-tool.md by @suavecito585 in #42
- fix(security): analysis follow-ups — symlink containment, JWT exp, bookmark HITL, napi output (H1/H2/M4/M8) by @suavecito585 in #43
- Fix cross-platform installability, path portability, JWT fallback, and TOCTOU races by @suavecito585 in #44
- fix(THE-233): runtime version from package.json + converged-scope docs by @suavecito585 in #45
- feat(cli): zero-config startup, config subcommands, actionable embedding errors by @suavecito585 in #46
- feat(mcp): expose vault notes as Resources + built-in Prompts by @suavecito585 in #47
- feat(cli): obsidian-tc plugin install --vault, vendoring the companion plugin by @suavecito585 in #48
- feat(tasks): point tasks_filter at native list_tasks on plugin degrade by @suavecito585 in #49
- test(security): property-based tests for glob ACL + vault-path primitives by @suavecito585 in #50
- docs: local-only quickstart, accurate add-a-tool walkthrough, comparison by @suavecito585 in #52
- chore(docker): run the server image as the non-root bun user by @suavecito585 in #51
- feat(dispatch): opt-in profile sink (handler vs overhead timing) by @suavecito585 in #53
- feat(mcp): paginate resources/list with a cursor by @suavecito585 in #54
- feat(bridge): point a missing companion at plugin install by @suavecito585 in #55
- chore(license): relicense Apache-2.0 -> AGPL-3.0-only (THE-260) by @suavecito585 in #56
- fix(dist): run the published bundle under Node, not just Bun by @suavecito585 in #58
- perf(search): atomic per-note indexing writes + memoized sqlite-vec load by @suavecito585 in #59
- fix(search): vec0 falls back to brute-force on failure; batch the vec→meta lookup by @suavecito585 in #60
- feat(health): surface native_loaded + vec_enabled on server_health and the boot line by @suavecito585 in #61
- docs: correct understated symlink defense, native-module + runtime claims, prebuild count by @suavecito585 in #62
- feat(mcp): cursor pagination for tools/list (parity with resources/list) by @suavecito585 in #63
- perf(search): batch the indexVault boot reconcile into one transaction per 100 notes by @suavecito585 in #64
- chore(docker): glibc base (oven/bun:1-slim) so the native prebuild can load by @suavecito585 in #65
- docs(g2.5): reconcile the native prebuild matrix to 8 triples (incl. musl) by @suavecito585 in #67
- feat(native): musl (Alpine) prebuilds + loader musl detection by @suavecito585 in #66
- ci(native): build-only musl cross-compile validation + doc residuals by @suavecito585 in #68
- docs(merge-progress): reflect THE-260 AGPL relicense (done) by @suavecito585 in #57
- chore: remove the internal THE-233 MERGE-PROGRESS.md from the public repo by @suavecito585 in #69
- chore(deps): freshen safe dependency floors + esbuild + bun CI pin by @suavecito585 in #70
- feat(mcp): derive tool annotations + title for tools/list by @suavecito585 in #71
- fix(security): bind HTTP tokens to a single vault (THE-267) by @suavecito585 in #72
- fix(security): fail-closed ACL defaults + honor strictReadDefault (THE-268) by @suavecito585 in #73
- fix(security): DNS-rebinding / cross-origin protection on HTTP transport (THE-271) by @suavecito585 in #74
- fix(security): bridge tools fail closed under a read whitelist (THE-270) by @suavecito585 in #75
- fix(security): canonicalize folder-ACL checks through symlinks (THE-269) by @suavecito585 in #76
- feat(mcp): tool-surface facade / progressive disclosure (THE-219) by @suavecito585 in #77
- perf(db): SQLite per-connection baseline + prepared-statement cache (THE-273) by @suavecito585 in #78
- feat(mcp): weight tool-name matches in find_capability ranking (THE-219) by @suavecito585 in #79
- fix(dist): stop leaking local state into .mcpb + minify server bundle & binaries (THE-276) by @suavecito585 in #80
- perf(index): batch embeddings across notes on index/reconcile (THE-277) by @suavecito585 in #81
- perf(plane): window contradiction-sweep judge calls under bounded concurrency (THE-277) by @suavecito585 in #82
- feat(mcp): domain-verb facade mode (THE-275) by @suavecito585 in #83
- fix(security): Unicode-normalization-insensitive folder ACL matching (THE-272) by @suavecito585 in #84
- ci: PR-triggered docker build gate (THE-276) by @suavecito585 in #85
- feat(mcp): emit tool/capability schemas as JSON Schema 2020-12 (THE-278) by @suavecito585 in #86
- feat(mcp): 2025-11-25 tool-surface alignment — tool-errors, outputSchema, icons (THE-278) by @suavecito585 in #87
- feat(auth): OAuth 2.0 Protected Resource Metadata + WWW-Authenticate (THE-278) by @suavecito585 in #88
- docs: reconcile the docs site with shipped reality (THE-278) by @suavecito585 in #89
- docs: reconcile README/ARCHITECTURE/CONTRIBUTING with shipped reality (THE-278) by @suavecito585 in #90
- docs: clean up residual OAuth + 4-platform mentions (THE-278) by @suavecito585 in #91
- fix(dist): Node node:sqlite fallback — self-contained .mcpb on mac/win/linux (THE-276) by @suavecito585 in #92
- dist: linux-arm64 binary + .mcpb release artifact + install matrix (THE-276) by @suavecito585 in #93
- ci: least-privilege permissions on ci-docker (CodeQL #8) by @suavecito585 in #94
- docs(security): prev_hash CAS write-safety + upstream #237 note (THE-252) by @suavecito585 in #95
- docs(governance): DCO sign-off requirement + dco check + dual-license note (THE-263) by @suavecito585 in #96
- dist: multi-stage Dockerfile — bun + dist-only runtime (THE-276) by @suavecito585 in #97
- feat(metrics): wire idempotency hit/skip counters + cache-bytes gauge (THE-197) by @suavecito585 in #98
- feat(search): opt-in terse projection on read/search hit paths (THE-251) by @suavecito585 in #99
- feat(sessions): dispatch-level tool-invocation tracing into active sessions (THE-209) by @suavecito585 in #100
- feat(periodic): wire Templater expansion into periodic-note creation (THE-207) by @suavecito585 in #101
- perf(native): zero-copy Float32Array cosine on the brute-force path (THE-266) by @suavecito585 in #102
- fix(dist): stop the .mcpb bundle leaking non-runtime tracked files (THE-276) by @suavecito585 in #103
- fix(obsidian-fit): canvas read-projection + query_base honesty guard + ARCHITECTURE reconcile (THE-284) by @suavecito585 in #104
- fix(acl): make enforcePathAcl root mandatory — uniform symlink-canonical enforcement (THE-286) by @sua...
obsidian-tc v1.2.1
What's Changed
- ci(release): atomic npm publish via pending dist-tag promotion (THE-224) by @suavecito585 in #19
- fix: audit remediation — 22 fixes across dispatch, ACL, tools, and storage by @suavecito585 in #22
- fix: 5 follow-ups from the Antigravity independent review by @suavecito585 in #24
- ci(security): least-privilege workflow permissions (CodeQL) by @suavecito585 in #23
- fix(frontmatter): preserve untouched keys byte-for-byte on write by @suavecito585 in #26
- fix: remediate granular-audit HIGH/MEDIUM/LOW findings by @suavecito585 in #27
- fix(audit): complete tokenizer parity + rust-toolchain SHA-pin (#6/#11 follow-up) by @suavecito585 in #28
- chore(deps): currency sweep — Zod 4, Biome 2, napi-rs 3, better-sqlite3 12, @types/node 24 by @suavecito585 in #29
- docs: reconcile to current reality (v1.0.2, Node 24, V2 removed) by @suavecito585 in #30
- feat(server): tool-visibility scoping (THE-219) by @suavecito585 in #31
- feat(dist): distribution artifacts — MCP registry, MCPB bundle, editor deeplinks (THE-220) by @suavecito585 in #32
- feat(server): headless VaultBackend — lean v1 (THE-255) by @suavecito585 in #33
- docs(readme): fix Quick start to the real CLI invocation by @suavecito585 in #34
- feat(server): per-caller tool-visibility filtering (THE-250) by @suavecito585 in #36
- chore(release): sync version metadata to 1.2.1 (THE-256) by @suavecito585 in #37
- fix(release): migrate publish.yml napi CLI to @napi-rs/cli v3 by @suavecito585 in #39
Full Changelog: v1.0.2...v1.2.1
obsidian-tc v1.0.2
Security patch. Closes the unauthenticated-bind exposure that shipped in 1.0.1: the HTTP transport now refuses to bind a non-loopback host when auth.mode is none (F2, fail-closed, no insecure override). Also rolls up the rate-limiter fixes (THE-212/213) and post-1.0.1 docs/CI work.
npm: obsidian-tc@1.0.2 plus @the-40-thieves/obsidian-tc-{shared,native} and the four platform packages, provenance-signed. Docker: ghcr.io/the-40-thieves/obsidian-tc:1.0.2. Full notes in CHANGELOG.md.
obsidian-tc v1.0.1
First published release of obsidian-tc, a model-agnostic, agent-ready Obsidian MCP server.
Install
npm i obsidian-tc
Standalone binaries are attached below (linux-x64, darwin-x64, darwin-arm64, windows-x64). The Obsidian companion plugin is obsidian-tc-plugin-1.0.1.zip.
Highlights
- 105 tools across 28 domains (the full v1.0 surface)
- Folder-ACL enforcement and a human-in-the-loop elicit framework
- Observability: OpenTelemetry tracing, Prometheus /metrics endpoint, MORGIANA event spool
- Dispatch-wide rate limiting and a coverage gate
Published packages (provenance-signed)
- obsidian-tc
- @the-40-thieves/obsidian-tc-shared
- @the-40-thieves/obsidian-tc-native (plus four platform binaries)
Verify downloads against SHASUMS256.txt.