@oomkapwn/enquire-mcp 3.9.0-rc.3 → 3.9.0-rc.4
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +78 -0
- package/README.md +9 -9
- package/dist/cli.js +2 -2
- package/dist/cli.js.map +1 -1
- package/dist/index.d.ts +1 -1
- package/dist/index.js +1 -1
- package/docs/COMPARISON.md +1 -1
- package/docs/QUICKSTART.md +1 -1
- package/docs/api.md +14 -2
- package/docs/benchmarks.md +1 -1
- package/package.json +2 -2
package/CHANGELOG.md
CHANGED
|
@@ -2,6 +2,84 @@
|
|
|
2
2
|
|
|
3
3
|
All notable changes to this project will be documented here. The format follows [Keep a Changelog](https://keepachangelog.com/en/1.1.0/), and the project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
|
|
4
4
|
|
|
5
|
+
## [3.9.0-rc.4] — 2026-05-25
|
|
6
|
+
|
|
7
|
+
> **TL;DR:** **Full state-driven self-audit on the v3.8.7 → v3.9.0-rc.3 cascade — closes 3 HIGH + 4 MEDIUM findings + documents overclaim instance #13 + recursion-pair shape #7 + extends META scope-completeness with 2 new defenses.** Audit caught: (1) CLAUDE.md header line said "deferred to v3.9.0+: ... OCR'd PDF watcher embed-sync, HNSW in-memory live update, R-10 adaptive refill" while the status section in the same file listed all three as SHIPPED (overclaim #13). (2) `docs/api.md:5` said "currently v3.9.0-rc.1" — we're on rc.3. (3) v3.9.0-rc.1/rc.2/rc.3 features absent from ALL user-facing docs (README, api.md, QUICKSTART, llms.txt, AGENTS.md) — the v3.8.8 META audit covered only NUMERIC drift, not FEATURE-MENTION drift. **+5 tests (3 POSITIVE + 2 NEGATIVE controls); 923 unit tests total.** All findings closed by the same PR.
|
|
8
|
+
|
|
9
|
+
**Patch — full audit + docs-only fixes + 2 new structural defenses.**
|
|
10
|
+
|
|
11
|
+
### What the audit found
|
|
12
|
+
|
|
13
|
+
Phase 0 (reality snapshot): all 9 required CI gates green, 917 tests, lint clean, OIA clean, 7-surface version-consistency, 10/10 per-file floors, 0 vulns.
|
|
14
|
+
|
|
15
|
+
Phase 1 (state-driven docs walk via parallel general-purpose agent): 3 HIGH + several MEDIUM/LOW findings.
|
|
16
|
+
|
|
17
|
+
Phase 2 (code-doc consistency via parallel general-purpose agent): PASS — every v3.8.7 → v3.9.0-rc.3 CHANGELOG claim verified in the codebase.
|
|
18
|
+
|
|
19
|
+
### HIGH findings (all closed in this rc.4)
|
|
20
|
+
|
|
21
|
+
- **H-1 — Feature-mention drift**: v3.9.0-rc.1 (`--ocr-pdfs` + 2 sibling flags), v3.9.0-rc.2 (HNSW in-memory live update), v3.9.0-rc.3 (`adaptiveHnswRefill`) shipped in 3 RCs but appeared ONLY in CHANGELOG + CLAUDE.md. Zero hits in `README.md`, `docs/api.md` (flag table), `docs/QUICKSTART.md`, `docs/http-transport.md`, `llms.txt`, `AGENTS.md`. **Fix**: added the 3 OCR flags + 6 other previously-paragraph-only stable flags (`--include-pdfs`, `--enable-reranker`, `--reranker-model`, `--reranker-top-n`, `--use-hnsw`, `--hnsw-ef`, `--late-chunk-context`, `--no-hnsw-persist`, `--quantize-embeddings`) to `docs/api.md` flag table. Added rc.1/rc.2/rc.3 mention to README highlight reel + llms.txt bullet list + AGENTS.md watcher section.
|
|
22
|
+
|
|
23
|
+
- **H-2 — Stale RC index**: `docs/api.md:5` said "currently v3.9.0-rc.1 — OCR'd PDF watcher embed-sync"; actual `@rc` is v3.9.0-rc.3. **Fix**: updated to mention all three RCs (OCR, HNSW live update, R-10 adaptive).
|
|
24
|
+
|
|
25
|
+
- **H-3 — Ambiguous CI gate rendering in README**: README line 249 listed "lint · test ×2 [Node 22/24] · smoke · audit · coverage · version-consistency · docs · oia" as the 9 required gates, but the `test ×2` rendering reads as 1 entry visually → looks like 8 gates while claiming "9 required". **Fix**: rewrote to enumerate explicitly: "(1) lint, (2) test on Node 22, (3) test on Node 24, (4) smoke, …, (9) oia".
|
|
26
|
+
|
|
27
|
+
### MEDIUM findings (closed in this rc.4)
|
|
28
|
+
|
|
29
|
+
- **M-1 — Overclaim instance #13** (CLAUDE.md self-contradiction): `CLAUDE.md:9` said "**Still deferred to v3.9.0+:** ... OCR'd PDF watcher embed-sync, HNSW in-memory live update, R-10 adaptive refill" — but the status section in the same file (lines ~143–145) listed all three as SHIPPED. **Class**: stale future-tense deferral claim (vs the present-tense "as of vX.Y.Z" pattern OIA Check 7 catches since v3.8.3). **Fix**: rewrote the header to clearly separate "v3.9.0 RCs shipped on `@rc`" from "Still deferred to v3.9.x+" (HNSW filter-during-search, embed-db migrations, distributed rate-limit, HNSW disk persistence on live update).
|
|
30
|
+
|
|
31
|
+
- **M-2 — Stale QUICKSTART version**: `docs/QUICKSTART.md:32` expected output `3.7.12` — bumped to mention both `3.9.0-rc.3` (`@rc`) and `3.8.8` (`@latest`).
|
|
32
|
+
|
|
33
|
+
- **M-3 — Stale benchmarks version footer**: `docs/benchmarks.md:3` cited v3.7.x version stamps. **Fix**: appended "still valid as of v3.9.0-rc.3 — retrieval pipeline unchanged; v3.8.x→v3.9.0 work was correctness/hardening + watcher live-update, not algorithmic" so the page is no longer misleadingly date-stale.
|
|
34
|
+
|
|
35
|
+
### META extension — 2 new scope-completeness defenses (recursion-pair shape #7)
|
|
36
|
+
|
|
37
|
+
The v3.8.8 META audit (`scripts/scope-completeness-audit.mjs`) covered 5 NUMERIC-CLAIM patterns. The HIGH-1 finding above (3 OCR flags missing from `docs/api.md`) revealed that META's dimension coverage was incomplete. **Recursion-pair shape #7** documented: even after v3.8.8's META audit landed, drift in a different dimension (feature mentions) snuck in for 3 RCs.
|
|
38
|
+
|
|
39
|
+
Added in rc.4:
|
|
40
|
+
|
|
41
|
+
- **`runDeferredClaimAudit()`** — scans `CLAUDE.md` for `(?:Still\s+)?deferred\s+to\s+v\d+\.\d+\.\d+\+?:\s*([^.\n]+)` patterns. For each item named in such a line, checks whether the same file contains a "shipped" status entry mentioning that item. If both present → finding. Closes overclaim #13 class structurally.
|
|
42
|
+
- **`runCliFlagCoverageAudit()`** — extracts every `.option("--name", …)` from `src/cli.ts`; verifies each appears in `docs/api.md` (substring match). Subcommand-specific flags (`--bearer-token`, `--queries`, `--lang`, etc.) live in `subcommandExempts` and are skipped. Closes the feature-mention class for CLI flags specifically.
|
|
43
|
+
- **`runAudit()`** now composes all three sub-audits (numeric + deferred-claim + cli-flag-coverage). OIA Check 8 picks up the extended results automatically.
|
|
44
|
+
|
|
45
|
+
### Tests added (+5)
|
|
46
|
+
|
|
47
|
+
`tests/scope-completeness-invariant.test.ts` extended:
|
|
48
|
+
- POSITIVE: `runDeferredClaimAudit returns zero findings on current state` (proves rc.4's CLAUDE.md fix closed overclaim #13)
|
|
49
|
+
- POSITIVE: `runCliFlagCoverageAudit returns zero findings on current state` (proves the new OCR/HNSW flags are in `docs/api.md`)
|
|
50
|
+
- POSITIVE: `runAudit returns union of all three sub-audits` (composition correctness)
|
|
51
|
+
- NEGATIVE: deferred-to regex matches the drift pattern (proves the audit would catch a regression)
|
|
52
|
+
- NEGATIVE: missing-flag-in-docs is structurally detectable (synthetic CLI + doc fixture)
|
|
53
|
+
|
|
54
|
+
### CLAUDE.md anti-patterns added
|
|
55
|
+
|
|
56
|
+
Two new rules captured (already-existing recurring shapes from this session):
|
|
57
|
+
|
|
58
|
+
- **Update forward-looking deferral claims in the same commit that ships the deferred item** — closes overclaim instance #13 class. The `deferred-claim` defense above makes this structural; the rule documents the human-side discipline.
|
|
59
|
+
- **META scope-completeness defenses must cover every drift DIMENSION** — closes recursion-pair shape #7. New rule: every structural defense PR must enumerate covered + uncovered dimensions; uncovered ones become deferred-defense TODOs.
|
|
60
|
+
|
|
61
|
+
### Files changed
|
|
62
|
+
|
|
63
|
+
- `CLAUDE.md` — overclaim #13 documented; recursion-pair shape #7 documented; header bullet at line 9 corrected; 2 new anti-pattern rules added.
|
|
64
|
+
- `docs/api.md` — `:5` Channels paragraph current; flag table expanded with 12 new rows (3 OCR + 9 previously-paragraph-only stable flags).
|
|
65
|
+
- `README.md` — highlight reel + features-table CI block rendering.
|
|
66
|
+
- `llms.txt` — v3.9.0 features bulleted.
|
|
67
|
+
- `AGENTS.md` — watcher section mentions `setOcrPdfs` + `attachHnsw`.
|
|
68
|
+
- `docs/QUICKSTART.md` — version example refreshed.
|
|
69
|
+
- `docs/benchmarks.md` — footer "still valid as of v3.9.0-rc.3" note.
|
|
70
|
+
- `scripts/scope-completeness-audit.mjs` — `runNumericAudit` (renamed), `runDeferredClaimAudit`, `runCliFlagCoverageAudit`, combined `runAudit` (+200 lines).
|
|
71
|
+
- `tests/scope-completeness-invariant.test.ts` — extended describe block with 5 new tests.
|
|
72
|
+
- `README.md`, `llms.txt`, `AGENTS.md`, `docs/COMPARISON.md`, `package.json` — test count 918 → 923.
|
|
73
|
+
- version bump 3.9.0-rc.3 → 3.9.0-rc.4 (7 surfaces).
|
|
74
|
+
|
|
75
|
+
### What's next
|
|
76
|
+
|
|
77
|
+
- **v3.9.0-rc.5** — HNSW disk persistence on live update (debounced `saveTo` ~30s after last mutation). Originally planned for rc.4; deferred to make space for this audit-driven docs cascade.
|
|
78
|
+
- **v3.9.0 stable** — promote `@rc → @latest` after rc.5 lands + fresh external audit on v3.9.0-rc.2+ per `docs/audits/AUDIT-REQUEST-v3.9.0-rc.2-2026-05-25.md`.
|
|
79
|
+
- **v3.9.x+** — HNSW filter-during-search (architectural; closes R-10 structurally).
|
|
80
|
+
|
|
81
|
+
---
|
|
82
|
+
|
|
5
83
|
## [3.9.0-rc.3] — 2026-05-25
|
|
6
84
|
|
|
7
85
|
> **TL;DR:** **R-10 adaptive HNSW refill + external audit attribution.** Closes the last open INFO finding from the corrected 2026-05-25 external audit (`docs/audits/v3.8.0-rc.15-external-2026-05-25.md`, 4.85/5). New `adaptiveHnswRefill()` helper in `src/tools/search.ts` doubles k up to maxAttempts=3 times when the post-filter hit count is below `limit`. Closes the ">66% excluded" under-return class that rc.9's static 6× multiplier could not fully solve. Archives the external audit doc in `docs/audits/` + lifts the "External audit blocker per v3.6.1 STILL OPEN" framing in CLAUDE.md (the corrected audit retroactively justifies v3.8.0 stable). Creates `docs/audits/AUDIT-REQUEST-v3.9.0-rc.2-2026-05-25.md` for the next fresh pass. **+7 tests (5 POSITIVE + 2 NEGATIVE controls); 918 unit tests total. No API breaks.**
|
package/README.md
CHANGED
|
@@ -13,7 +13,7 @@
|
|
|
13
13
|
[](https://github.com/oomkapwn/enquire-mcp/actions/workflows/ci.yml)
|
|
14
14
|
[](https://www.npmjs.com/package/@oomkapwn/enquire-mcp)
|
|
15
15
|
[](https://www.npmjs.com/package/@oomkapwn/enquire-mcp)
|
|
16
|
-
[](#trust)
|
|
17
17
|
[](./STABILITY.md)
|
|
18
18
|
[](https://slsa.dev/spec/v1.0/levels#build-l3)
|
|
19
19
|
[](https://modelcontextprotocol.io/)
|
|
@@ -38,7 +38,7 @@ Your Obsidian vault becomes **persistent, queryable long-term memory** for any M
|
|
|
38
38
|
> 2. **Best-in-class retrieval.** Hybrid BM25 + multilingual embeddings + BGE cross-encoder reranker fused via RRF, scaled with HNSW + int8 quantization. The same IR stack a search startup would build — open-sourced, in one binary.
|
|
39
39
|
> 3. **Zero cloud calls during serve.** Models cached locally (one-time download from HuggingFace). Your vault content never leaves your machine. Air-gap-safe by default.
|
|
40
40
|
|
|
41
|
-
**44 tools · 19 MCP prompts ·
|
|
41
|
+
**44 tools · 19 MCP prompts · 923 unit tests · 50+ languages · v3.8.x stable · semver-bound · MIT · SLSA-3 signed.**
|
|
42
42
|
|
|
43
43
|
---
|
|
44
44
|
|
|
@@ -176,7 +176,7 @@ Auto-generated **[API reference at oomkapwn.github.io/enquire-mcp](https://oomka
|
|
|
176
176
|
| **GraphRAG-light** (wikilink community detection via Louvain modularity) | ✅ **only here** | ❌ | ❌ |
|
|
177
177
|
| **Standalone `.base` query execution** (works without Obsidian running) | ✅ **only here** | ❌ | ❌ delegates to Obsidian |
|
|
178
178
|
| **HyDE retrieval** (Gao et al 2023) + sub-question decomposition | ✅ **only here** | ❌ | ❌ |
|
|
179
|
-
| **
|
|
179
|
+
| **923 unit tests · 9 required + 4 advisory CI gates per PR** | ✅ | n/a | rare |
|
|
180
180
|
| **SLSA-3 build provenance** | ✅ | n/a | ❌ |
|
|
181
181
|
| **Semver-bound public surface** ([STABILITY.md](./STABILITY.md)) | ✅ | n/a | ❌ |
|
|
182
182
|
| Standalone (no Obsidian plugin needed) | ✅ | ❌ requires Obsidian | varies |
|
|
@@ -184,7 +184,7 @@ Auto-generated **[API reference at oomkapwn.github.io/enquire-mcp](https://oomka
|
|
|
184
184
|
|
|
185
185
|
<sub>Comparison based on each project's public capabilities as of v3.8.x stable (initial snapshot v3.7.0 / 2026-05-15; refreshed in v3.8.4). Smart Connections is a paid Obsidian plugin (not an MCP server). "Other Obsidian-MCPs" refers to public open-source Obsidian-MCP servers on GitHub at time of writing. Public end-to-end retrieval benchmarks for enquire-mcp are published in <a href="./docs/benchmarks.md"><code>docs/benchmarks.md</code></a> — measured `rerank-bge` delta is +24.7 MRR / +15.5 NDCG@10 over plain hybrid on a 60-query ablation.</sub>
|
|
186
186
|
|
|
187
|
-
> Strategic claim: enquire-mcp is the open-source backend for [Karpathy-style LLM Wikis](https://gist.github.com/karpathy/
|
|
187
|
+
> Strategic claim: enquire-mcp is the open-source backend for [Karpathy-style LLM Wikis](https://gist.github.com/karpathy/442a6bf555914923e9891c11519de94f) on top of your existing Obsidian vault. Knowledge that compounds, traceable to sources.
|
|
188
188
|
|
|
189
189
|
---
|
|
190
190
|
|
|
@@ -246,7 +246,7 @@ Plus 3 MCP resources (`obsidian://vault/info`, `obsidian://note/{path}`, `obsidi
|
|
|
246
246
|
| **HTTP transport** | Bearer auth (constant-time SHA-256 + `timingSafeEqual`), per-token rate-limit, strict CORS |
|
|
247
247
|
| **Frontmatter** | `gray-matter` (`js-yaml` safeLoad) — no code execution |
|
|
248
248
|
| **Cache + index files** | chmod 0600, parent dir 0700 |
|
|
249
|
-
| **CI** | **9 required** branch-protection gates (lint
|
|
249
|
+
| **CI** | **9 required** branch-protection gates: (1) `lint`, (2) `test` on Node 22, (3) `test` on Node 24, (4) `smoke`, (5) `audit`, (6) `coverage`, (7) `version-consistency`, (8) `docs`, (9) `oia`. **4 advisory**: `test-macos` via `.github/workflows/ci.yml`; CodeQL ×2 + Analyze actions via [GitHub default-setup](https://docs.github.com/code-security/code-scanning/automatically-scanning-your-code-for-vulnerabilities-and-errors/configuring-default-setup-for-code-scanning) (not workflow files). Release workflow re-verifies all 9 required passed on tagged SHA before npm publish. _v3.7.10 — `docs` (TypeDoc generation gate) added to required set. v3.7.13 — `engines.node` floor bumped to `>=22.13.0` to match the CI matrix. v3.8.0-rc.6 — `oia` (Outside-In Audit) promoted from advisory._ |
|
|
250
250
|
| **Coverage** | Lines ≥86% · statements ≥82% · functions ≥75% · branches ≥74% (gated) |
|
|
251
251
|
| **Releases** | npm + GitHub release per tag · semver · **SLSA-3** build provenance |
|
|
252
252
|
| **Stability** | v3.0+ semver-bound — every CLI flag, tool name, MCP resource, prompt, exported symbol is contract |
|
|
@@ -273,11 +273,11 @@ Full posture: **[SECURITY.md](./SECURITY.md)** · Stability surface: **[STABILIT
|
|
|
273
273
|
|
|
274
274
|
## 🚀 Releases
|
|
275
275
|
|
|
276
|
-
**v3.0.0 — stable channel.** The v2.x retrieval roadmap is complete and the public surface is now [semver-bound](./STABILITY.md). Highlight reel
|
|
276
|
+
**v3.0.0 — stable channel.** The v2.x retrieval roadmap is complete and the public surface is now [semver-bound](./STABILITY.md). Highlight reel:
|
|
277
277
|
|
|
278
|
-
`v2.0` hybrid retrieval (BM25+TF-IDF+embeddings via RRF) · `v2.6` remote MCP · `v2.7-2.8` PDFs blended · `v2.9` BGE reranker · `v2.10` OCR · `v2.11` doctor + setup · `v2.12` eval harness · `v2.13` HNSW · `v2.14` stateful sessions · `v2.15` late-chunking · `v2.16` HNSW persistence · `v2.17` int8 quantization
|
|
278
|
+
`v2.0` hybrid retrieval (BM25+TF-IDF+embeddings via RRF) · `v2.6` remote MCP · `v2.7-2.8` PDFs blended · `v2.9` BGE reranker · `v2.10` OCR · `v2.11` doctor + setup · `v2.12` eval harness · `v2.13` HNSW · `v2.14` stateful sessions · `v2.15` late-chunking · `v2.16` HNSW persistence · `v2.17` int8 quantization · `v3.8.0` stable · `v3.8.7` HTTP transport hardening · **`v3.9.0` (on `@rc`)**: OCR'd PDF watcher embed-sync, HNSW in-memory live update on file changes, R-10 adaptive HNSW refill (closes the >66% excluded under-return).
|
|
279
279
|
|
|
280
|
-
Channel: `npm install @oomkapwn/enquire-mcp` → latest stable. Full changelog: **[CHANGELOG.md](./CHANGELOG.md)**.
|
|
280
|
+
Channel: `npm install @oomkapwn/enquire-mcp` → latest stable (`@latest` = v3.8.x). Pre-release: `npm install @oomkapwn/enquire-mcp@rc` (currently v3.9.0-rc.3). Full changelog: **[CHANGELOG.md](./CHANGELOG.md)**.
|
|
281
281
|
|
|
282
282
|
---
|
|
283
283
|
|
|
@@ -286,7 +286,7 @@ Channel: `npm install @oomkapwn/enquire-mcp` → latest stable. Full changelog:
|
|
|
286
286
|
```bash
|
|
287
287
|
git clone https://github.com/oomkapwn/enquire-mcp.git
|
|
288
288
|
cd enquire-mcp && npm install
|
|
289
|
-
npm test # full suite (
|
|
289
|
+
npm test # full suite (923 tests, ~5s)
|
|
290
290
|
npm run lint # zero warnings
|
|
291
291
|
npm run build # tsc → dist/
|
|
292
292
|
```
|
package/dist/cli.js
CHANGED
|
@@ -39,8 +39,8 @@ function addAdvancedRetrievalOptions(cmd) {
|
|
|
39
39
|
.option("--hnsw-ef <n>", "v2.13.0 — HNSW search-time beam width (default 100; must be ≥ requested k). Higher = more accurate, slightly slower. Common range: 50-500. Only effective with `--use-hnsw`.")
|
|
40
40
|
.option("--late-chunk-context <chars>", "v2.15.0 — late-chunking-style context windowing on embeddings. When > 0, prepends doc title + heading breadcrumb + tails of neighboring chunks (this many chars from each side) before sending to the embedder. Typical +2-5 NDCG@10 retrieval boost at zero new dep cost. Default 0 (off; matches v2.1.0+ breadcrumb-only behavior). Only effective during `build-embeddings` or auto-rebuild.")
|
|
41
41
|
.option("--no-hnsw-persist", "v2.16.0 — disable HNSW index persistence. By default (with --use-hnsw), the index is saved to a sidecar `.hnsw.bin` + `.meta.json` next to `.embed.db` after the first build, then re-loaded on subsequent serve starts when the embed-db signature matches. Skipping persistence means a fresh rebuild every serve start (~25s for 50K chunks). Pass this flag if you can't write to the cache dir or want diagnostic-fresh builds.")
|
|
42
|
-
.option("--ocr-pdfs", "v3.9.0-rc.1 — when used with --watch + --include-pdfs, run Tesseract OCR on image-only / scanned PDFs that pdfjs can't read text from, so the watcher's embed-db sync keeps OCR'd PDFs in sync with edits during a long serve session. Without this flag, image-only PDF events drop the embed-db rows (FTS5 still reindexes from empty pages). OCR is slow (~1-2s per page on M1 CPU; bounded by --ocr-max-pages, default 200). Requires `tesseract.js` + `@napi-rs/canvas` optional dependencies + the requested language pack pre-installed
|
|
43
|
-
.option("--ocr-langs <langs>", "v3.9.0-rc.1 — Tesseract language pack for --ocr-pdfs. Default `eng`. Multi-language via `+` (e.g. `eng+rus` for English+Russian mixed documents). Each language file (`<lang>.traineddata`, ~10 MB) must be
|
|
42
|
+
.option("--ocr-pdfs", "v3.9.0-rc.1 — when used with --watch + --include-pdfs, run Tesseract OCR on image-only / scanned PDFs that pdfjs can't read text from, so the watcher's embed-db sync keeps OCR'd PDFs in sync with edits during a long serve session. Without this flag, image-only PDF events drop the embed-db rows (FTS5 still reindexes from empty pages). OCR is slow (~1-2s per page on M1 CPU; bounded by --ocr-max-pages, default 200). Requires `tesseract.js` + `@napi-rs/canvas` optional dependencies + the requested language pack pre-installed manually: download `<lang>.traineddata` from https://github.com/tesseract-ocr/tessdata_fast and place in the Tesseract cache dir (no runtime CDN download per the v3.7.16 P1-1 offline-only enforcement).")
|
|
43
|
+
.option("--ocr-langs <langs>", "v3.9.0-rc.1 — Tesseract language pack for --ocr-pdfs. Default `eng`. Multi-language via `+` (e.g. `eng+rus` for English+Russian mixed documents). Each language file (`<lang>.traineddata`, ~10 MB) must be downloaded manually from https://github.com/tesseract-ocr/tessdata_fast and placed in the Tesseract cache dir — runtime CDN download is blocked per the offline-only posture documented in SECURITY.md.")
|
|
44
44
|
.option("--ocr-max-pages <n>", "v3.9.0-rc.1 — page cap for OCR runs invoked by --ocr-pdfs. Default 200 (matches DEFAULT_OCR_MAX_PAGES). Image-only PDFs exceeding this skip the OCR pass entirely (FTS5 still reindexes from pdfjs's empty pages; embed-db rows are cleared). Lift the cap (or pass a large value) for trusted PDF sets; lower it on shared deployments to bound per-event CPU.");
|
|
45
45
|
}
|
|
46
46
|
export async function main() {
|
package/dist/cli.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":"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"}
|
package/dist/index.d.ts
CHANGED
|
@@ -7,7 +7,7 @@
|
|
|
7
7
|
* + `McpServer({version})`) and `src/tool-registry.ts` (used in the
|
|
8
8
|
* `vault-info` resource payload).
|
|
9
9
|
*/
|
|
10
|
-
export declare const VERSION = "3.9.0-rc.
|
|
10
|
+
export declare const VERSION = "3.9.0-rc.4";
|
|
11
11
|
export { main } from "./cli.js";
|
|
12
12
|
export { buildEmbedText, buildMcpServer, formatReadyBanner, prepareServerDeps, type ServeOptions, type ServerDeps, startServer } from "./server.js";
|
|
13
13
|
export { parsePositiveInt, parseQuantizationMode } from "./tool-registry.js";
|
package/dist/index.js
CHANGED
|
@@ -40,7 +40,7 @@ import { main } from "./cli.js";
|
|
|
40
40
|
* + `McpServer({version})`) and `src/tool-registry.ts` (used in the
|
|
41
41
|
* `vault-info` resource payload).
|
|
42
42
|
*/
|
|
43
|
-
export const VERSION = "3.9.0-rc.
|
|
43
|
+
export const VERSION = "3.9.0-rc.4";
|
|
44
44
|
// Re-exports — preserve the v3.5.x public surface so http-transport.ts and
|
|
45
45
|
// tests don't need to know about the new module layout. The set below
|
|
46
46
|
// exactly matches the v3.5.x `export` declarations: `main`,
|
package/docs/COMPARISON.md
CHANGED
|
@@ -43,7 +43,7 @@ The four axes the external audit (#3, 2026-05) called out as decisive — **REST
|
|
|
43
43
|
| Read open editor state, active note, etc. | **No** | **Yes** | Limited | No | No |
|
|
44
44
|
| Zero outbound network calls in serve mode | **Yes** (default) | Local-only (REST)| Local-only (REST)| Yes | Yes |
|
|
45
45
|
| SLSA-3 build provenance on releases | **Yes** | No | No | No | No |
|
|
46
|
-
| Test count (public) | **
|
|
46
|
+
| Test count (public) | **923** | (varies) | (varies) | (varies) | (varies) |
|
|
47
47
|
| Tool count | 44 | ~25 | ~8 | ~10 | 3–5 |
|
|
48
48
|
| MCP prompt count | 19 | 0 | 0 | 0 | 0 |
|
|
49
49
|
| License | MIT | Apache-2.0 | MIT | MIT | (varies) |
|
package/docs/QUICKSTART.md
CHANGED
|
@@ -29,7 +29,7 @@ Verify the install:
|
|
|
29
29
|
enquire-mcp --version
|
|
30
30
|
```
|
|
31
31
|
|
|
32
|
-
Expected output: the current version string (e.g. `3.
|
|
32
|
+
Expected output: the current version string (e.g. `3.9.0-rc.3` on `@rc` or `3.8.8` on `@latest`).
|
|
33
33
|
|
|
34
34
|
## Step 2 — Smoke test (30 seconds)
|
|
35
35
|
|
package/docs/api.md
CHANGED
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
|
|
3
3
|
**enquire is the most advanced Obsidian MCP — a long-term memory layer for AI agents, built on your Obsidian vault.** Open-source, MCP-native, vendor-neutral persistence: agents (Claude Code / Claude Desktop / Cursor / ChatGPT / Codex / OpenClaw / any MCP client) get durable, queryable recall across sessions, models, and providers — your knowledge lives in plain markdown you own, not a vendor cloud. 44 MCP tools (33 always-on read + 4 opt-in read + 7 opt-in write); the 4 opt-ins are: 1 via `--persistent-index` + `--diagnostic-search-tools` (`obsidian_full_text_search` — needs BOTH flags: persistent-index for the FTS5 index, diagnostic-search-tools to surface it as a single-ranker tool alongside the hybrid default `obsidian_search`) + 3 via `--diagnostic-search-tools` (the single-ranker `obsidian_search_text` / `obsidian_semantic_search` / `obsidian_embeddings_search` — gated by default in v2.0+ since `obsidian_search` auto-detects + fuses signals). 2 + 1 opt-in MCP resources, 19 MCP prompts. **v3.1.0+ adds `obsidian_hyde_search`** (HyDE-augmented retrieval, Gao et al 2023; agent supplies a synthetic answer, server embeds it for retrieval) plus the `vault_research` (sub-question decomposition) and `vault_synthesis_page` (Karpathy LLM-Wiki synthesis loop) prompts. v2.6.0+ also speaks Streamable HTTP via `serve-http` (bearer auth + rate-limit + CORS). v2.7.0+ indexes PDFs as a separate read tool surface; **v2.8.0+ blends PDF chunks into `obsidian_search` hybrid retrieval** with `--include-pdfs` — every hit carries a `kind: "md" | "pdf"` flag and PDF snippets include `[page: N]` markers for citation. **v2.9.0+ adds BGE cross-encoder reranking** on top of RRF with `--enable-reranker` — typical +5-10 NDCG@10 retrieval-quality boost. **v2.10.0+ adds Tesseract OCR for image-only / scanned PDFs** via `obsidian_ocr_pdf` — completes the PDF retrieval story.
|
|
4
4
|
|
|
5
|
-
> **Channels:** stable since v3.8.x (`@latest` on npm) ships 44 tools including `obsidian_search` (hybrid BM25 + TF-IDF + ML embeddings, RRF-fused) with optional BGE cross-encoder reranking, `obsidian_embeddings_search`, `obsidian_hyde_search`, plus the `install-model` / `build-embeddings` / `clear-embeddings` / `setup` / `doctor` / `eval` subcommands. The `@rc` dist-tag carries the most recent release candidate
|
|
5
|
+
> **Channels:** stable since v3.8.x (`@latest` on npm) ships 44 tools including `obsidian_search` (hybrid BM25 + TF-IDF + ML embeddings, RRF-fused) with optional BGE cross-encoder reranking, `obsidian_embeddings_search`, `obsidian_hyde_search`, plus the `install-model` / `build-embeddings` / `clear-embeddings` / `setup` / `doctor` / `eval` subcommands. The `@rc` dist-tag carries the most recent release candidate — **currently v3.9.0-rc.3**, which adds OCR'd PDF watcher embed-sync (rc.1: `--ocr-pdfs`/`--ocr-langs`/`--ocr-max-pages` flags), HNSW in-memory live update (rc.2: search reflects vault edits within ~250ms; pre-3.9.0 needed serve restart), and R-10 adaptive HNSW refill (rc.3: closes the >66% excluded under-return). Benchmarks live behind `npm run bench:retrieval` (not a CLI subcommand). This document covers the **stable v3.8.x** surface plus the in-flight v3.9.0 RCs — see [CHANGELOG.md](../CHANGELOG.md) for full release history.
|
|
6
6
|
|
|
7
7
|
> Versioned dynamically — see [`CHANGELOG.md`](../CHANGELOG.md) for the current release.
|
|
8
8
|
|
|
@@ -86,7 +86,19 @@ Canonical list of every registered MCP tool. The `Kind` column splits read/write
|
|
|
86
86
|
| `--read-paths <pattern...>` | none | **Strict allowlist** — when set, ONLY paths matching one of these glob patterns are visible. Complement to `--exclude-glob`. If both are set: a path must match an allow-glob AND not match any exclude-glob. Same glob semantics. Repeatable. Example: `--read-paths '01_Projects/**' '99_Daily/**'`. |
|
|
87
87
|
| `--disabled-tools <name...>` | none | Skip registration of specific tools by exact name (matches `tools/list`). Repeatable. Useful for narrow-surface agents. Example: `--disabled-tools obsidian_dataview_query obsidian_full_text_search`. |
|
|
88
88
|
| `--enabled-tools <name...>` | none | **Strict allowlist** — when set, ONLY listed tools register. Complement to `--disabled-tools`. If both are set: a tool must be in allowlist AND not in denylist. Repeatable. Example: `--enabled-tools obsidian_search_text obsidian_read_note obsidian_get_recent_edits`. |
|
|
89
|
-
| `--watch` | off | Watch the vault for `.md` add/change/unlink events (and `.pdf` if `--include-pdfs`). On change: invalidate the parsed-note cache for that file; if `--persistent-index` is also enabled, incrementally re-sync just that file's FTS5 chunks AND (since v3.8.0-rc.2 for `.md`, v3.8.0-rc.3 for `.pdf`) the embed-db rows when the embed-db file exists. Editor saves are debounced via chokidar's `awaitWriteFinish`. `--exclude-glob` patterns are honored — edits to excluded paths don't fire. Off by default; opt in for long-running servers. |
|
|
89
|
+
| `--watch` | off | Watch the vault for `.md` add/change/unlink events (and `.pdf` if `--include-pdfs`). On change: invalidate the parsed-note cache for that file; if `--persistent-index` is also enabled, incrementally re-sync just that file's FTS5 chunks AND (since v3.8.0-rc.2 for `.md`, v3.8.0-rc.3 for `.pdf`) the embed-db rows when the embed-db file exists. **Since v3.9.0-rc.2 with `--use-hnsw`:** the in-memory HNSW index is updated in lockstep so semantic search reflects edits within ~250ms (pre-3.9.0 needed serve restart). Editor saves are debounced via chokidar's `awaitWriteFinish`. `--exclude-glob` patterns are honored — edits to excluded paths don't fire. Off by default; opt in for long-running servers. |
|
|
90
|
+
| `--include-pdfs` | off | v2.8.0 — also index PDF files into FTS5 (and embeddings, if `build-embeddings --include-pdfs` ran). With `--persistent-index`, PDF chunks become first-class hits in `obsidian_search` results with `kind: "pdf"` flag. ~50–200ms per page on M1 cold. Requires the `pdfjs-dist` optionalDependency (default-installed). |
|
|
91
|
+
| `--ocr-pdfs` | off | **v3.9.0-rc.1** — when paired with `--watch` + `--include-pdfs`, runs Tesseract OCR on image-only / scanned PDFs that pdfjs can't read text from. OCR-derived text feeds the embed-db so scanned PDFs stay in sync during long sessions. Requires `tesseract.js` + `@napi-rs/canvas` optional deps + the requested language pack downloaded manually from https://github.com/tesseract-ocr/tessdata_fast (no runtime CDN download — see [SECURITY.md "OCR network posture"](../SECURITY.md#ocr-network-posture)). |
|
|
92
|
+
| `--ocr-langs <langs>` | `eng` | **v3.9.0-rc.1** — Tesseract language pack for `--ocr-pdfs`. Multi-lang via `+`, e.g. `eng+rus`. Each `<lang>.traineddata` (~10 MB) must be pre-installed. |
|
|
93
|
+
| `--ocr-max-pages <n>` | `200` | **v3.9.0-rc.1** — page cap per OCR run. Image-only PDFs exceeding this skip the OCR pass (FTS5 still reindexes from empty pages). Lift the cap for trusted PDF sets; lower for shared deployments to bound per-event CPU. |
|
|
94
|
+
| `--enable-reranker` | off | v2.9.0 — BGE cross-encoder reranking on top of RRF. ~30–50ms per query on M1; typical +5–10 NDCG@10 boost. Requires `@huggingface/transformers` optional dep. |
|
|
95
|
+
| `--reranker-model <alias>` | `rerank-bge` | v2.9.0 — reranker alias from `RERANKER_MODELS`. Default verified-working in v3.6.1 (Xenova/bge-reranker-base, ~110 MB, English). |
|
|
96
|
+
| `--reranker-top-n <n>` | `50` | v2.9.0 — how many top RRF-fused candidates to rerank. Only effective with `--enable-reranker`. |
|
|
97
|
+
| `--use-hnsw` | off | v2.13.0 — build an in-memory HNSW vector index on serve start (or reload from `.hnsw.bin` sidecar if `--hnsw-persist`). Sub-10ms top-K queries at any scale. Recall@10 ≥ 98% vs brute-force. **Since v3.9.0-rc.2 with `--watch`:** the index updates live on every md/pdf event (no serve restart needed). **Since v3.9.0-rc.3:** queries auto-refill when post-filter hits < limit (closes the >66% excluded under-return). Requires `hnswlib-node` optional dep. |
|
|
98
|
+
| `--hnsw-ef <n>` | `100` | v2.13.0 — HNSW search-time beam width (must be ≥ k). Higher = more accurate, slightly slower. |
|
|
99
|
+
| `--late-chunk-context <chars>` | `0` | v2.15.0 — late-chunking context windowing on embeddings. Typical +2–5 NDCG@10 boost. Only effective during `build-embeddings` or auto-rebuild. |
|
|
100
|
+
| `--no-hnsw-persist` | persist on | v2.16.0 — disable HNSW persistence sidecar. Default behavior: save `.hnsw.bin` + `.meta.json` next to `.embed.db`; reload on next serve when signature matches (~25s rebuild → ~50ms reload on 50K chunks). |
|
|
101
|
+
| `--quantize-embeddings <mode>` | `f32` | v2.17.0 — vector storage mode. `f32` (default) or `int8` (~4× storage reduction at ~1–2% recall@10 cost). Switching modes triggers a full rebuild. |
|
|
90
102
|
|
|
91
103
|
## Subcommands
|
|
92
104
|
|
package/docs/benchmarks.md
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
# Benchmarks — enquire-mcp retrieval quality
|
|
2
2
|
|
|
3
|
-
**Last updated:** 2026-05-15 (latency numbers re-measured under v3.7.10 against `bench/benchmarks.json`; methodology table updated v3.7.13 M11 to drop the duplicate latency column; ratio claim recomputed v3.7.18 B-3 against current TL;DR figures). Quality metrics (MRR / NDCG@10 / Recall@10) are deterministic and stable across the v3.7.x cascade. · **Generated by:** `npm run bench:retrieval`
|
|
3
|
+
**Last updated:** 2026-05-15 (latency numbers re-measured under v3.7.10 against `bench/benchmarks.json`; methodology table updated v3.7.13 M11 to drop the duplicate latency column; ratio claim recomputed v3.7.18 B-3 against current TL;DR figures). Quality metrics (MRR / NDCG@10 / Recall@10) are deterministic and stable across the v3.7.x → v3.9.0-rc cascade (still valid as of v3.9.0-rc.3 — retrieval pipeline unchanged; v3.8.x→v3.9.0 work was correctness/hardening + watcher live-update, not algorithmic). · **Generated by:** `npm run bench:retrieval`
|
|
4
4
|
|
|
5
5
|
This page reports retrieval-quality numbers for every layer of the enquire-mcp
|
|
6
6
|
hybrid stack against a deterministic synthetic vault. **Every metric below is
|
package/package.json
CHANGED
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
{
|
|
2
2
|
"$schema": "https://json.schemastore.org/package.json",
|
|
3
3
|
"name": "@oomkapwn/enquire-mcp",
|
|
4
|
-
"version": "3.9.0-rc.
|
|
4
|
+
"version": "3.9.0-rc.4",
|
|
5
5
|
"mcpName": "io.github.oomkapwn/enquire-mcp",
|
|
6
|
-
"description": "MCP server giving AI agents (Claude Code, Claude Desktop, Cursor, ChatGPT, Codex, OpenClaw) persistent long-term memory backed by your local Obsidian markdown vault. Hybrid retrieval (BM25 + ML embeddings + BGE reranker, RRF-fused), HNSW + int8 quantization, agentic RAG (HyDE + sub-question decomposition), GraphRAG-light (Louvain), standalone Obsidian Bases, PDFs + Tesseract OCR. Vendor-neutral memory layer for any MCP-compatible agent. 44 tools, 19 MCP prompts,
|
|
6
|
+
"description": "MCP server giving AI agents (Claude Code, Claude Desktop, Cursor, ChatGPT, Codex, OpenClaw) persistent long-term memory backed by your local Obsidian markdown vault. Hybrid retrieval (BM25 + ML embeddings + BGE reranker, RRF-fused), HNSW + int8 quantization, agentic RAG (HyDE + sub-question decomposition), GraphRAG-light (Louvain), standalone Obsidian Bases, PDFs + Tesseract OCR. Vendor-neutral memory layer for any MCP-compatible agent. 44 tools, 19 MCP prompts, 923 tests, SLSA-3, semver-bound, MIT, zero cloud calls during serve.",
|
|
7
7
|
"type": "module",
|
|
8
8
|
"bin": {
|
|
9
9
|
"enquire-mcp": "dist/index.js"
|