@jcode.labs/ragmir 4.2.1 → 5.0.0

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.
Files changed (197) hide show
  1. package/README.md +67 -160
  2. package/dist/chunking.d.ts +1 -1
  3. package/dist/chunking.d.ts.map +1 -1
  4. package/dist/chunking.js +17 -1
  5. package/dist/chunking.js.map +1 -1
  6. package/dist/cli-entry.js +1 -1
  7. package/dist/cli-entry.js.map +1 -1
  8. package/dist/cli-fast.d.ts +1 -3
  9. package/dist/cli-fast.d.ts.map +1 -1
  10. package/dist/cli-fast.js +2 -104
  11. package/dist/cli-fast.js.map +1 -1
  12. package/dist/cli-options.d.ts +0 -37
  13. package/dist/cli-options.d.ts.map +1 -1
  14. package/dist/cli-options.js +0 -53
  15. package/dist/cli-options.js.map +1 -1
  16. package/dist/cli.js +9 -701
  17. package/dist/cli.js.map +1 -1
  18. package/dist/client.d.ts +1 -3
  19. package/dist/client.d.ts.map +1 -1
  20. package/dist/client.js +7 -36
  21. package/dist/client.js.map +1 -1
  22. package/dist/config-migration.d.ts +6 -0
  23. package/dist/config-migration.d.ts.map +1 -0
  24. package/dist/config-migration.js +31 -0
  25. package/dist/config-migration.js.map +1 -0
  26. package/dist/config.d.ts +2 -0
  27. package/dist/config.d.ts.map +1 -1
  28. package/dist/config.js +17 -65
  29. package/dist/config.js.map +1 -1
  30. package/dist/context-resources.d.ts.map +1 -1
  31. package/dist/context-resources.js +2 -14
  32. package/dist/context-resources.js.map +1 -1
  33. package/dist/defaults.d.ts +0 -3
  34. package/dist/defaults.d.ts.map +1 -1
  35. package/dist/defaults.js +0 -13
  36. package/dist/defaults.js.map +1 -1
  37. package/dist/destroy.d.ts.map +1 -1
  38. package/dist/destroy.js +0 -2
  39. package/dist/destroy.js.map +1 -1
  40. package/dist/doctor.d.ts.map +1 -1
  41. package/dist/doctor.js +1 -9
  42. package/dist/doctor.js.map +1 -1
  43. package/dist/document-structure.js.map +1 -1
  44. package/dist/embeddings.d.ts.map +1 -1
  45. package/dist/embeddings.js +9 -1
  46. package/dist/embeddings.js.map +1 -1
  47. package/dist/errors.d.ts +1 -1
  48. package/dist/errors.d.ts.map +1 -1
  49. package/dist/errors.js.map +1 -1
  50. package/dist/evaluate.d.ts.map +1 -1
  51. package/dist/evaluate.js +0 -7
  52. package/dist/evaluate.js.map +1 -1
  53. package/dist/files.js.map +1 -1
  54. package/dist/generation-retention.js.map +1 -1
  55. package/dist/gitignore.js.map +1 -1
  56. package/dist/index-diagnostics.js +1 -1
  57. package/dist/index-diagnostics.js.map +1 -1
  58. package/dist/index-policy.d.ts.map +1 -1
  59. package/dist/index-policy.js +3 -4
  60. package/dist/index-policy.js.map +1 -1
  61. package/dist/index-write-lock.js.map +1 -1
  62. package/dist/index.d.ts +4 -15
  63. package/dist/index.d.ts.map +1 -1
  64. package/dist/index.js +2 -8
  65. package/dist/index.js.map +1 -1
  66. package/dist/ingest.d.ts.map +1 -1
  67. package/dist/ingest.js +3 -18
  68. package/dist/ingest.js.map +1 -1
  69. package/dist/ingestion-metrics.d.ts +1 -1
  70. package/dist/ingestion-metrics.d.ts.map +1 -1
  71. package/dist/ingestion-metrics.js +0 -1
  72. package/dist/ingestion-metrics.js.map +1 -1
  73. package/dist/ingestion-state.d.ts +1 -2
  74. package/dist/ingestion-state.d.ts.map +1 -1
  75. package/dist/ingestion-state.js +0 -2
  76. package/dist/ingestion-state.js.map +1 -1
  77. package/dist/lexical-scoring.d.ts +13 -0
  78. package/dist/lexical-scoring.d.ts.map +1 -0
  79. package/dist/lexical-scoring.js +35 -0
  80. package/dist/lexical-scoring.js.map +1 -0
  81. package/dist/mcp-output.d.ts +4 -31
  82. package/dist/mcp-output.d.ts.map +1 -1
  83. package/dist/mcp-output.js +4 -123
  84. package/dist/mcp-output.js.map +1 -1
  85. package/dist/mcp-summaries.d.ts +1 -12
  86. package/dist/mcp-summaries.d.ts.map +1 -1
  87. package/dist/mcp-summaries.js +0 -112
  88. package/dist/mcp-summaries.js.map +1 -1
  89. package/dist/mcp.d.ts +1 -5
  90. package/dist/mcp.d.ts.map +1 -1
  91. package/dist/mcp.js +22 -329
  92. package/dist/mcp.js.map +1 -1
  93. package/dist/ocr.d.ts +0 -1
  94. package/dist/ocr.d.ts.map +1 -1
  95. package/dist/ocr.js +0 -4
  96. package/dist/ocr.js.map +1 -1
  97. package/dist/parsing.js +13 -0
  98. package/dist/parsing.js.map +1 -1
  99. package/dist/preview.d.ts.map +1 -1
  100. package/dist/preview.js +2 -5
  101. package/dist/preview.js.map +1 -1
  102. package/dist/query-sanitizer.d.ts +2 -1
  103. package/dist/query-sanitizer.d.ts.map +1 -1
  104. package/dist/query-sanitizer.js +9 -127
  105. package/dist/query-sanitizer.js.map +1 -1
  106. package/dist/query.d.ts +1 -3
  107. package/dist/query.d.ts.map +1 -1
  108. package/dist/query.js +95 -71
  109. package/dist/query.js.map +1 -1
  110. package/dist/ranking.d.ts +1 -1
  111. package/dist/ranking.d.ts.map +1 -1
  112. package/dist/ranking.js +52 -41
  113. package/dist/ranking.js.map +1 -1
  114. package/dist/runtime-info.js.map +1 -1
  115. package/dist/search-output.d.ts +3 -0
  116. package/dist/search-output.d.ts.map +1 -0
  117. package/dist/search-output.js +26 -0
  118. package/dist/search-output.js.map +1 -0
  119. package/dist/security.d.ts.map +1 -1
  120. package/dist/security.js +5 -37
  121. package/dist/security.js.map +1 -1
  122. package/dist/setup-prompt.d.ts +1 -1
  123. package/dist/setup-prompt.d.ts.map +1 -1
  124. package/dist/setup-prompt.js +22 -25
  125. package/dist/setup-prompt.js.map +1 -1
  126. package/dist/setup.js +1 -1
  127. package/dist/setup.js.map +1 -1
  128. package/dist/skill.d.ts +1 -4
  129. package/dist/skill.d.ts.map +1 -1
  130. package/dist/skill.js +3 -71
  131. package/dist/skill.js.map +1 -1
  132. package/dist/storage-maintenance.js.map +1 -1
  133. package/dist/store.js +9 -1
  134. package/dist/store.js.map +1 -1
  135. package/dist/types.d.ts +19 -156
  136. package/dist/types.d.ts.map +1 -1
  137. package/dist/upgrade.d.ts +3 -2
  138. package/dist/upgrade.d.ts.map +1 -1
  139. package/dist/upgrade.js +20 -2
  140. package/dist/upgrade.js.map +1 -1
  141. package/dist/vector-index.js.map +1 -1
  142. package/dist/version.d.ts +1 -1
  143. package/dist/version.js +1 -1
  144. package/dist/workload.js.map +1 -1
  145. package/examples/document-evidence-benchmark/.ragmir/config.json +0 -9
  146. package/examples/document-evidence-benchmark/README.md +5 -3
  147. package/examples/document-evidence-benchmark/raw/rfp/security-questionnaire.md +1 -1
  148. package/examples/library-api-demo/README.md +17 -8
  149. package/examples/library-api-demo/run.mjs +6 -6
  150. package/examples/sovereign-rag-demo/.ragmir/config.json +3 -10
  151. package/examples/sovereign-rag-demo/README.md +21 -12
  152. package/package.json +21 -30
  153. package/skills/ragmir/SKILL.md +67 -199
  154. package/dist/access-log.d.ts +0 -30
  155. package/dist/access-log.d.ts.map +0 -1
  156. package/dist/access-log.js +0 -415
  157. package/dist/access-log.js.map +0 -1
  158. package/dist/cli-stdin.d.ts +0 -3
  159. package/dist/cli-stdin.d.ts.map +0 -1
  160. package/dist/cli-stdin.js +0 -15
  161. package/dist/cli-stdin.js.map +0 -1
  162. package/dist/portable-entry.d.ts +0 -5
  163. package/dist/portable-entry.d.ts.map +0 -1
  164. package/dist/portable-entry.js +0 -337
  165. package/dist/portable-entry.js.map +0 -1
  166. package/dist/portable.d.ts +0 -89
  167. package/dist/portable.d.ts.map +0 -1
  168. package/dist/portable.js +0 -1290
  169. package/dist/portable.js.map +0 -1
  170. package/dist/prompt-routing.d.ts +0 -12
  171. package/dist/prompt-routing.d.ts.map +0 -1
  172. package/dist/prompt-routing.js +0 -150
  173. package/dist/prompt-routing.js.map +0 -1
  174. package/dist/redaction.d.ts +0 -12
  175. package/dist/redaction.d.ts.map +0 -1
  176. package/dist/redaction.js +0 -253
  177. package/dist/redaction.js.map +0 -1
  178. package/dist/research.d.ts +0 -21
  179. package/dist/research.d.ts.map +0 -1
  180. package/dist/research.js +0 -667
  181. package/dist/research.js.map +0 -1
  182. package/dist/team-diagnostics.d.ts +0 -119
  183. package/dist/team-diagnostics.d.ts.map +0 -1
  184. package/dist/team-diagnostics.js +0 -515
  185. package/dist/team-diagnostics.js.map +0 -1
  186. package/dist/team-sync.d.ts +0 -49
  187. package/dist/team-sync.d.ts.map +0 -1
  188. package/dist/team-sync.js +0 -436
  189. package/dist/team-sync.js.map +0 -1
  190. package/skills/ragmir-audio-summary/SKILL.md +0 -80
  191. package/skills/ragmir-audio-summary/forge-voice.sh +0 -150
  192. package/skills/ragmir-audio-summary/listening-style.md +0 -92
  193. package/skills/ragmir-audio-summary/narration-templates.md +0 -162
  194. package/skills/ragmir-audio-summary/split-lines.py +0 -14
  195. package/skills/ragmir-audio-summary/xtts-voice.py +0 -46
  196. package/skills/ragmir-legal-dossier/SKILL.md +0 -143
  197. package/skills/ragmir-markdown-report/SKILL.md +0 -110
@@ -1 +1 @@
1
- {"version":3,"file":"workload.js","sourceRoot":"","sources":["../src/workload.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"workload.js","sourceRoot":"","sources":["../src/workload.ts"],"names":[],"mappings":"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"}
@@ -1,23 +1,14 @@
1
1
  {
2
- "privacyProfile": "private",
3
2
  "retrievalProfile": "balanced",
4
- "acceptedRisks": [],
5
3
  "rawDir": "raw",
6
4
  "storageDir": ".ragmir/storage",
7
5
  "sourcesFile": ".ragmir/sources.txt",
8
- "accessLogPath": ".ragmir/access.log",
9
6
  "embeddingModelPath": ".ragmir/models",
10
7
  "tableName": "chunks",
11
8
  "embeddingProvider": "local-hash",
12
9
  "embeddingModel": "intfloat/multilingual-e5-small",
13
10
  "embeddingModelRevision": "main",
14
11
  "transformersAllowRemoteModels": false,
15
- "redaction": {
16
- "enabled": true,
17
- "builtIn": true,
18
- "patterns": []
19
- },
20
- "accessLog": true,
21
12
  "mcpMaxTopK": 10,
22
13
  "mcpMaxOutputBytes": 32768,
23
14
  "topK": 5,
@@ -1,8 +1,8 @@
1
1
  # Document evidence benchmark
2
2
 
3
3
  A deterministic, public-safe benchmark for the retrieval and citation quality a coding agent
4
- receives from Ragmir. Six golden queries require the expected path and an exact file, line, chunk,
5
- or PDF-page citation. The fictional corpus runs offline with `local-hash`.
4
+ receives from Ragmir as the retrieval layer in agentic RAG. Six golden queries require the expected
5
+ path and an exact file, line, chunk, or PDF-page citation. The fictional corpus runs offline with `local-hash`.
6
6
 
7
7
  ## What passes
8
8
 
@@ -28,6 +28,8 @@ ingestion and evaluation pipeline.
28
28
 
29
29
  ## Run it
30
30
 
31
+ From a checkout of the Ragmir repository, start at its root:
32
+
31
33
  ```bash
32
34
  pnpm install --frozen-lockfile
33
35
  pnpm build
@@ -50,5 +52,5 @@ into an ignored workspace. Record the smallest expected source set and exact coo
50
52
  the source is stable. Never commit private documents, queries, or reports.
51
53
 
52
54
  A perfect score proves this fixture, not universal retrieval quality. Continue with the
53
- [confidential local RAG demo](../sovereign-rag-demo/README.md) or
55
+ [local retrieval demo](../sovereign-rag-demo/README.md) or
54
56
  [Core README](../../README.md).
@@ -4,7 +4,7 @@ Question: Does the proposed retrieval layer require a hosted account, product te
4
4
  write access to the repository?
5
5
 
6
6
  Answer: No hosted account is required. The default mode runs locally with no telemetry. MCP access is
7
- read-focused: the agent can ask for status, prompt-routing advice, search results, cited answers,
7
+ read-focused: the agent can ask for status, search results, citation expansion,
8
8
  audits, evaluation results, usage summaries, and security posture, but it does not receive a
9
9
  destructive repository tool from Ragmir.
10
10
 
@@ -1,17 +1,20 @@
1
1
  # Library API demo
2
2
 
3
3
  A runnable smoke test for the public `@jcode.labs/ragmir` TypeScript API. It opens one persistent
4
- client, ingests a fictional local corpus, retrieves cited passages, returns retrieval-only context,
5
- and reports status through the same package name an external consumer imports.
4
+ client, ingests a fictional local corpus, searches and expands cited passages, and reports status
5
+ through the same package name an external consumer imports. This is the retrieval portion of an
6
+ agentic RAG application; your agent or chat supplies the reasoning and generation model.
6
7
 
7
8
  ## Run it
8
9
 
10
+ From a checkout of the Ragmir repository, start at its root:
11
+
9
12
  ```bash
10
13
  pnpm install --frozen-lockfile
11
14
  pnpm example
12
15
  ```
13
16
 
14
- The root command builds the packages and runs [`run.mjs`](./run.mjs). Package self-reference points
17
+ The root command builds Core and runs [`run.mjs`](./run.mjs). Package self-reference points
15
18
  to this checkout's `packages/ragmir-core/dist`, never the npm release. To rerun after a build:
16
19
 
17
20
  ```bash
@@ -27,16 +30,22 @@ const ragmir = await createRagmirClient({ cwd: projectRoot })
27
30
  try {
28
31
  await ragmir.ingest({ rebuild: true, timeoutMs: 30_000 })
29
32
  const results = await ragmir.search("offline retrieval approval", { topK: 3 })
30
- const context = await ragmir.ask("What evidence supports offline operation?", { topK: 3 })
33
+ const evidence = results[0] ? await ragmir.expandCitation(results[0].citation) : undefined
31
34
  const status = await ragmir.status()
32
35
  } finally {
33
36
  await ragmir.close()
34
37
  }
35
38
  ```
36
39
 
37
- The demo proves `ingest`, `search`, `ask`, and `status` in order. `ask` returns cited context without
38
- LLM synthesis. Reuse one client per project root in a long-running process; one-shot top-level
39
- functions remain available.
40
+ The demo exercises `ingest`, `search`, `expandCitation`, and `status` in order. Expansion returns
41
+ source context. Reuse one client per project root in a long-running process; one-shot top-level
42
+ functions remain available. An agent can search again when the first passages do not answer its
43
+ question, then pass the selected evidence to its model.
44
+
45
+ The same API works with a local chat, a model on your own server or private cloud, or a cloud model
46
+ provider. The consuming application owns that connection. Retrieved text is not masked, so choose
47
+ where it may be sent and how the consumer stores or logs it. See the
48
+ [MCP and Ollama integration guide](../../../../docs/agent-integration.md).
40
49
 
41
50
  The script shares the sibling demo's synthetic Markdown, CSV, JSONL, YAML, and custom-text corpus.
42
51
  It uses offline `local-hash`, writes only ignored `.ragmir/storage`, downloads no model, and contains
@@ -45,6 +54,6 @@ private tests.
45
54
 
46
55
  | Need | Continue with |
47
56
  | --- | --- |
48
- | Complete CLI workflow | [Confidential local RAG demo](../sovereign-rag-demo/README.md) |
57
+ | Complete CLI workflow | [Local retrieval demo](../sovereign-rag-demo/README.md) |
49
58
  | Exact path and citation gates | [Document evidence benchmark](../document-evidence-benchmark/README.md) |
50
59
  | Every exported option | [TypeScript API reference](../../../../docs/api-reference.md) |
@@ -1,7 +1,7 @@
1
1
  #!/usr/bin/env node
2
2
  // Local library smoke for @jcode.labs/ragmir.
3
3
  //
4
- // This exercises the public TypeScript API (ingest -> search -> ask -> audit) the
4
+ // This exercises the public TypeScript API (ingest -> search -> expand -> status) the
5
5
  // exact way an external consumer would `import` it, but Node self-referencing
6
6
  // resolves "@jcode.labs/ragmir" to THIS repo's local build (packages/ragmir-core/dist),
7
7
  // never the npm-published version. That is the point of the demo: while developing
@@ -34,7 +34,7 @@ async function main() {
34
34
  const ingested = await ragmir.ingest({ rebuild: true, timeoutMs: 30_000 })
35
35
  console.log(
36
36
  `indexed ${ingested.indexedFiles}/${ingested.supportedFiles} supported files, ` +
37
- `${ingested.chunks} chunks, ${ingested.redactions} redactions`,
37
+ `${ingested.chunks} chunks`,
38
38
  )
39
39
 
40
40
  heading('search "offline retrieval approval"')
@@ -45,10 +45,10 @@ async function main() {
45
45
  )
46
46
  }
47
47
 
48
- heading('ask "What evidence supports offline operation?"')
49
- const answer = await ragmir.ask("What evidence supports offline operation?", { topK: 3 })
50
- console.log(`${answer.sources.length} cited sources`)
51
- console.log(answer.answer)
48
+ if (passages[0]) {
49
+ heading("expand one citation")
50
+ console.log(await ragmir.expandCitation(passages[0].citation))
51
+ }
52
52
 
53
53
  heading("status")
54
54
  const status = await ragmir.status()
@@ -1,23 +1,14 @@
1
1
  {
2
- "privacyProfile": "private",
3
2
  "retrievalProfile": "balanced",
4
- "acceptedRisks": [],
5
3
  "rawDir": "raw",
6
4
  "storageDir": ".ragmir/storage",
7
5
  "sourcesFile": ".ragmir/sources.txt",
8
- "accessLogPath": ".ragmir/access.log",
9
6
  "embeddingModelPath": ".ragmir/models",
10
7
  "tableName": "chunks",
11
8
  "embeddingProvider": "local-hash",
12
9
  "embeddingModel": "intfloat/multilingual-e5-small",
13
10
  "embeddingModelRevision": "main",
14
11
  "transformersAllowRemoteModels": false,
15
- "redaction": {
16
- "enabled": true,
17
- "builtIn": true,
18
- "patterns": []
19
- },
20
- "accessLog": true,
21
12
  "mcpMaxTopK": 10,
22
13
  "mcpMaxOutputBytes": 32768,
23
14
  "topK": 5,
@@ -25,5 +16,7 @@
25
16
  "embeddingBatchSize": 16,
26
17
  "chunkSize": 900,
27
18
  "chunkOverlap": 120,
28
- "includeExtensions": [".evidence"]
19
+ "includeExtensions": [
20
+ ".evidence"
21
+ ]
29
22
  }
@@ -1,8 +1,14 @@
1
- # Confidential local RAG demo
1
+ # Local retrieval demo for agentic RAG
2
2
 
3
3
  A complete fictional workspace for learning how agents and scripts retrieve cited project evidence
4
- with Ragmir. It covers multiple formats, privacy checks, unsupported files, golden queries, and
5
- agent access while keeping corpus and index local with offline `local-hash` retrieval.
4
+ with Ragmir. It covers multiple formats, local security checks, unsupported files, golden queries,
5
+ and agent access with offline `local-hash` retrieval. Ragmir supplies citations; the consuming
6
+ agent chooses searches, expands evidence, and generates with its own model.
7
+
8
+ The corpus is fictional. Local retrieval keeps the files and index on the machine running Ragmir;
9
+ connecting an agent or chat can send excerpts elsewhere. A local model can keep them on-device, a
10
+ self-hosted model can process them on your server or private cloud, and a cloud provider receives
11
+ what the consuming app sends. Review that complete path before using confidential documents.
6
12
 
7
13
  ## Scenario
8
14
 
@@ -17,6 +23,8 @@ agent access while keeping corpus and index local with offline `local-hash` retr
17
23
 
18
24
  ## Run the workflow
19
25
 
26
+ From a checkout of the Ragmir repository, start at its root:
27
+
20
28
  ```bash
21
29
  pnpm install --frozen-lockfile
22
30
  pnpm build
@@ -29,8 +37,7 @@ chmod 700 raw
29
37
  node ../../dist/cli.js security-audit
30
38
  node ../../dist/cli.js ingest --rebuild
31
39
  node ../../dist/cli.js search "offline retrieval approval"
32
- node ../../dist/cli.js ask "What evidence supports offline operation?"
33
- node ../../dist/cli.js research "sovereign deployment evidence" --compact
40
+ node ../../dist/cli.js search "sovereign deployment evidence" --compact
34
41
  node ../../dist/cli.js evaluate --golden golden-queries.json --fail-under 1
35
42
  node ../../dist/cli.js audit --unsupported
36
43
  node ../../dist/cli.js status
@@ -38,14 +45,13 @@ node ../../dist/cli.js status
38
45
 
39
46
  `init` is idempotent. The security audit intentionally warns that `.ragmir/` is not fully ignored
40
47
  because this public fixture commits its configuration and source list. Generated storage, models,
41
- reports, audio, logs, and salts remain ignored. Private projects should ignore the complete
48
+ reports remain ignored. Private projects should ignore the complete
42
49
  `.ragmir/` directory.
43
50
 
44
51
  Expected results:
45
52
 
46
- - search and ask identify source paths and chunks;
47
- - `ask` returns evidence, not a generated answer;
48
- - `research` combines bounded queries and source diagnostics;
53
+ - search identifies source paths and chunks;
54
+ - agents can expand selected citations and refine queries;
49
55
  - every golden query finds its expected source;
50
56
  - the audit explains why HEIC was skipped and suggests local OCR;
51
57
  - status confirms the active provider and local index.
@@ -55,14 +61,17 @@ Useful queries include `dataset residency`, `incident containment evidence`,
55
61
 
56
62
  ## Connect an agent
57
63
 
58
- In a real project, `rgr setup` writes an ignored MCP helper. A compatible agent can then follow:
64
+ In a real project, `rgr setup` writes an ignored MCP helper. Connect it to a compatible agent and
65
+ choose the model independently. The agent can search, expand citations, and refine its query before
66
+ writing a response. For example:
59
67
 
60
68
  ```text
61
69
  Use Ragmir to search for "offline retrieval approval" and write a cited report under
62
70
  .ragmir/reports/demo-sovereign-rag.md. Mention unsupported or stale files reported by the audit.
63
71
  ```
64
72
 
65
- Keep retrieved reports under ignored local state.
73
+ Keep retrieved reports under ignored local state. The [agent integration guide](../../../../docs/agent-integration.md)
74
+ shows the MCP connection and an example chat flow with a local Ollama model.
66
75
 
67
76
  ## Compare semantic retrieval
68
77
 
@@ -72,7 +81,7 @@ The committed configuration uses offline lexical/hash retrieval:
72
81
  { "embeddingProvider": "local-hash" }
73
82
  ```
74
83
 
75
- For a deliberate semantic comparison, prepare a Transformers.js model locally, set
84
+ For a deliberate semantic comparison, install `@huggingface/transformers`, prepare a model locally, set
76
85
  `embeddingProvider`, `embeddingModel`, `embeddingModelRevision`, `embeddingModelPath`, and
77
86
  `transformersAllowRemoteModels: false`, then rebuild and rerun evaluation. Keep remote loading off.
78
87
  A lower semantic score is a tuning signal, never a reason to weaken a quality gate.
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@jcode.labs/ragmir",
3
- "version": "4.2.1",
4
- "description": "Confidential local RAG for coding agents, with offline cited retrieval through CLI, MCP, and TypeScript.",
3
+ "version": "5.0.0",
4
+ "description": "Open-source retrieval for agentic RAG: local document search, exact citations, OCR, CLI, MCP, and TypeScript.",
5
5
  "type": "module",
6
6
  "license": "AGPL-3.0-only",
7
7
  "author": {
@@ -13,11 +13,10 @@
13
13
  "ragmir",
14
14
  "open-source",
15
15
  "rag",
16
- "confidential-rag",
16
+ "agentic-rag",
17
17
  "ai-agents",
18
18
  "coding-agents",
19
19
  "knowledge-base",
20
- "confidential-data",
21
20
  "offline-first",
22
21
  "cited-retrieval",
23
22
  "local-first",
@@ -39,7 +38,7 @@
39
38
  "url": "https://github.com/jcode-works/jcode-ragmir/issues"
40
39
  },
41
40
  "engines": {
42
- "node": ">=22"
41
+ "node": ">=22.12.0"
43
42
  },
44
43
  "exports": {
45
44
  ".": {
@@ -48,8 +47,6 @@
48
47
  }
49
48
  },
50
49
  "bin": {
51
- "ragmir": "dist/cli-entry.js",
52
- "kb": "dist/cli-entry.js",
53
50
  "rgr": "dist/cli-entry.js"
54
51
  },
55
52
  "files": [
@@ -65,42 +62,35 @@
65
62
  "access": "public"
66
63
  },
67
64
  "dependencies": {
68
- "@huggingface/transformers": "^4.2.0",
69
65
  "@lancedb/lancedb": "^0.30.0",
70
66
  "@modelcontextprotocol/sdk": "^1.30.0",
71
- "commander": "^14.0.3",
67
+ "commander": "^15.0.0",
72
68
  "fast-glob": "^3.3.3",
73
69
  "fflate": "^0.8.3",
74
- "html-to-text": "^10.0.0",
75
- "mammoth": "^1.12.1",
70
+ "html-to-text": "^10.0.1",
71
+ "mammoth": "^1.12.3",
76
72
  "picocolors": "^1.1.1",
77
73
  "read-excel-file": "^9.3.10",
78
- "safe-regex2": "^5.1.1",
79
74
  "unpdf": "^1.8.1",
80
- "yaml": "^2.9.0",
81
- "zod": "^4.1.13"
75
+ "yaml": "^2.9.1",
76
+ "zod": "^4.6.5"
82
77
  },
83
78
  "peerDependencies": {
84
- "@jcode.labs/ragmir-chat": "4.2.1",
85
- "@jcode.labs/ragmir-tts": "4.2.1"
79
+ "@huggingface/transformers": "^4.3.0"
86
80
  },
87
81
  "peerDependenciesMeta": {
88
- "@jcode.labs/ragmir-chat": {
89
- "optional": true
90
- },
91
- "@jcode.labs/ragmir-tts": {
82
+ "@huggingface/transformers": {
92
83
  "optional": true
93
84
  }
94
85
  },
95
86
  "devDependencies": {
87
+ "@huggingface/transformers": "^4.3.0",
96
88
  "@types/html-to-text": "^9.0.4",
97
- "@types/node": "^22.20.1",
89
+ "@types/node": "^22.20.3",
98
90
  "apache-arrow": "^18.1.0",
99
- "publint": "^0.3.23",
100
- "typescript": "^6.0.2",
101
- "vitest": "^4.1.10",
102
- "@jcode.labs/ragmir-chat": "4.2.1",
103
- "@jcode.labs/ragmir-tts": "4.2.1"
91
+ "publint": "^0.3.24",
92
+ "typescript": "^7.0.2",
93
+ "vitest": "^5.0.1"
104
94
  },
105
95
  "scripts": {
106
96
  "bench:compare": "node benchmarks/compare.mjs",
@@ -126,11 +116,12 @@
126
116
  "bench:storage": "pnpm build && node benchmarks/storage-maintenance.mjs",
127
117
  "bench:status": "pnpm build && node benchmarks/status.mjs",
128
118
  "bench:vector-index": "pnpm build && node benchmarks/vector-index.mjs",
129
- "build": "tsc -p tsconfig.json",
130
- "check": "pnpm --filter @jcode.labs/ragmir-tts build && pnpm --filter @jcode.labs/ragmir-chat build && tsc -p tsconfig.json --noEmit",
119
+ "build": "node scripts/clean-dist.mjs && tsc -p tsconfig.json",
120
+ "check": "tsc -p tsconfig.json --noEmit",
131
121
  "mcp:smoke": "pnpm build && node scripts/mcp-smoke.mjs",
132
122
  "package:check": "publint",
133
- "test": "pnpm --filter @jcode.labs/ragmir-tts build && pnpm --filter @jcode.labs/ragmir-chat build && pnpm build && vitest run",
134
- "test:coverage": "pnpm --filter @jcode.labs/ragmir-tts build && pnpm --filter @jcode.labs/ragmir-chat build && pnpm build && vitest run --coverage"
123
+ "test": "pnpm build && vitest run",
124
+ "test:coverage": "pnpm build && vitest run --coverage",
125
+ "bench:developer-evidence": "pnpm build && node benchmarks/developer-evidence.mjs"
135
126
  }
136
127
  }