mcp-local-rag 0.13.1 → 0.14.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 (97) hide show
  1. package/README.md +25 -4
  2. package/dist/cli/common.d.ts +1 -1
  3. package/dist/cli/common.d.ts.map +1 -1
  4. package/dist/cli/common.js +2 -0
  5. package/dist/cli/common.js.map +1 -1
  6. package/dist/cli/ingest.d.ts +41 -0
  7. package/dist/cli/ingest.d.ts.map +1 -1
  8. package/dist/cli/ingest.js +119 -34
  9. package/dist/cli/ingest.js.map +1 -1
  10. package/dist/cli/list.d.ts.map +1 -1
  11. package/dist/cli/list.js +6 -3
  12. package/dist/cli/list.js.map +1 -1
  13. package/dist/cli/options.d.ts +8 -0
  14. package/dist/cli/options.d.ts.map +1 -1
  15. package/dist/cli/options.js +16 -1
  16. package/dist/cli/options.js.map +1 -1
  17. package/dist/cli/query.d.ts.map +1 -1
  18. package/dist/cli/query.js +4 -0
  19. package/dist/cli/query.js.map +1 -1
  20. package/dist/cli/sync.d.ts +3 -0
  21. package/dist/cli/sync.d.ts.map +1 -0
  22. package/dist/cli/sync.js +81 -0
  23. package/dist/cli/sync.js.map +1 -0
  24. package/dist/cli-main.d.ts +7 -3
  25. package/dist/cli-main.d.ts.map +1 -1
  26. package/dist/cli-main.js +22 -16
  27. package/dist/cli-main.js.map +1 -1
  28. package/dist/embedder/index.d.ts +6 -0
  29. package/dist/embedder/index.d.ts.map +1 -1
  30. package/dist/embedder/index.js +40 -19
  31. package/dist/embedder/index.js.map +1 -1
  32. package/dist/index.js +27 -14
  33. package/dist/index.js.map +1 -1
  34. package/dist/ingest/compute.d.ts +40 -0
  35. package/dist/ingest/compute.d.ts.map +1 -0
  36. package/dist/ingest/compute.js +47 -0
  37. package/dist/ingest/compute.js.map +1 -0
  38. package/dist/ingest/visual.d.ts +75 -0
  39. package/dist/ingest/visual.d.ts.map +1 -0
  40. package/dist/ingest/visual.js +89 -0
  41. package/dist/ingest/visual.js.map +1 -0
  42. package/dist/parser/index.d.ts +49 -0
  43. package/dist/parser/index.d.ts.map +1 -1
  44. package/dist/parser/index.js +173 -54
  45. package/dist/parser/index.js.map +1 -1
  46. package/dist/pdf-visual/captioner.d.ts +21 -0
  47. package/dist/pdf-visual/captioner.d.ts.map +1 -0
  48. package/dist/pdf-visual/captioner.js +180 -0
  49. package/dist/pdf-visual/captioner.js.map +1 -0
  50. package/dist/pdf-visual/detector.d.ts +36 -0
  51. package/dist/pdf-visual/detector.d.ts.map +1 -0
  52. package/dist/pdf-visual/detector.js +233 -0
  53. package/dist/pdf-visual/detector.js.map +1 -0
  54. package/dist/pdf-visual/index.d.ts +45 -0
  55. package/dist/pdf-visual/index.d.ts.map +1 -0
  56. package/dist/pdf-visual/index.js +98 -0
  57. package/dist/pdf-visual/index.js.map +1 -0
  58. package/dist/pdf-visual/renderer.d.ts +17 -0
  59. package/dist/pdf-visual/renderer.d.ts.map +1 -0
  60. package/dist/pdf-visual/renderer.js +82 -0
  61. package/dist/pdf-visual/renderer.js.map +1 -0
  62. package/dist/pdf-visual/types.d.ts +39 -0
  63. package/dist/pdf-visual/types.d.ts.map +1 -0
  64. package/dist/pdf-visual/types.js +28 -0
  65. package/dist/pdf-visual/types.js.map +1 -0
  66. package/dist/server/index.d.ts +7 -0
  67. package/dist/server/index.d.ts.map +1 -1
  68. package/dist/server/index.js +71 -17
  69. package/dist/server/index.js.map +1 -1
  70. package/dist/server/tool-definitions.d.ts.map +1 -1
  71. package/dist/server/tool-definitions.js +4 -0
  72. package/dist/server/tool-definitions.js.map +1 -1
  73. package/dist/server/types.d.ts +12 -0
  74. package/dist/server/types.d.ts.map +1 -1
  75. package/dist/server-main.d.ts +2 -0
  76. package/dist/server-main.d.ts.map +1 -1
  77. package/dist/server-main.js +12 -1
  78. package/dist/server-main.js.map +1 -1
  79. package/dist/utils/raw-data-utils.d.ts.map +1 -1
  80. package/dist/utils/raw-data-utils.js +5 -2
  81. package/dist/utils/raw-data-utils.js.map +1 -1
  82. package/dist/utils/sync-runner.d.ts +68 -0
  83. package/dist/utils/sync-runner.d.ts.map +1 -0
  84. package/dist/utils/sync-runner.js +73 -0
  85. package/dist/utils/sync-runner.js.map +1 -0
  86. package/dist/utils/sync-utils.d.ts +26 -0
  87. package/dist/utils/sync-utils.d.ts.map +1 -0
  88. package/dist/utils/sync-utils.js +39 -0
  89. package/dist/utils/sync-utils.js.map +1 -0
  90. package/dist/vectordb/index.d.ts +4 -0
  91. package/dist/vectordb/index.d.ts.map +1 -1
  92. package/dist/vectordb/index.js +13 -0
  93. package/dist/vectordb/index.js.map +1 -1
  94. package/package.json +12 -11
  95. package/skills/mcp-local-rag/SKILL.md +42 -6
  96. package/skills/mcp-local-rag/references/cli-reference.md +15 -0
  97. package/skills/mcp-local-rag/references/query-optimization.md +1 -1
package/README.md CHANGED
@@ -119,6 +119,26 @@ Supports PDF, DOCX, TXT, and Markdown. The server extracts text, splits it into
119
119
 
120
120
  Re-ingesting the same file replaces the old version automatically.
121
121
 
122
+ ##### Ingesting PDFs with figures (visual mode)
123
+
124
+ PDFs with charts, tables, or diagrams can optionally add local VLM-generated captions to the related text chunks, giving visual content some searchable representation in the same vector + FTS pipeline.
125
+
126
+ **Via MCP**:
127
+ ```
128
+ "Ingest /Users/me/docs/api-spec.pdf with visual: true"
129
+ ```
130
+
131
+ **Via CLI**:
132
+ ```bash
133
+ npx mcp-local-rag ingest ./docs/spec.pdf --visual
134
+ ```
135
+
136
+ Captions are inlined into the corresponding page's chunks as `[Visual content on page N: …]`. They flow through the existing chunker and embedder unchanged — no schema differences, no separate index.
137
+
138
+ Visual mode is opt-in; normal ingest does not load the VLM. When visual mode is enabled, the VLM (`HuggingFaceTB/SmolVLM-256M-Instruct`) is cached under `CACHE_DIR` (default: `./models/`). The first download is hundreds of MB. The model identifier and quantization variant are fixed in this release; per-page VLM failures are tolerated — that page proceeds with text only.
139
+
140
+ > **Security note**: Visual captions are derived from PDF contents and may inherit attacker-controlled text. Downstream LLM consumers should treat retrieved chunks as untrusted data, not as instructions. The `[Visual content on page N: …]` envelope helps consumers distinguish caption text from prose.
141
+
122
142
  #### Ingesting HTML Content
123
143
 
124
144
  Use `ingest_data` to ingest HTML content retrieved by your AI assistant (via web fetch, curl, browser tools, etc.):
@@ -217,7 +237,7 @@ For the full list of CLI flags, environment variables, and defaults, see [Config
217
237
 
218
238
  For CLI-only setups (no MCP server), install [Agent Skills](#agent-skills) so your AI assistant can form better queries and interpret results consistently.
219
239
 
220
- > ⚠️ **`--model-name` must match your MCP server config.** Using a different embedding model against an existing database produces incompatible vectors, silently degrading search quality.
240
+ > ⚠️ **CLI `--model-name` must match the MCP server's `MODEL_NAME` env var.** Using a different embedding model against an existing database produces incompatible vectors, silently degrading search quality.
221
241
 
222
242
  ## Search Tuning
223
243
 
@@ -310,7 +330,7 @@ apply the mcp-local-rag skill for better query formulation and result interpreta
310
330
 
311
331
  ### Environment Variables and CLI Flags
312
332
 
313
- Both MCP and CLI use the same environment variables. The CLI also accepts equivalent flags.
333
+ The MCP server is configured by environment variables only — pass them through your MCP client's `env` block. The CLI accepts the same env vars plus equivalent flags (priority: CLI flag > env > default). CLI flags are not accepted on the bare `mcp-local-rag` (MCP server) launch.
314
334
 
315
335
  | Environment Variable | CLI Flag | Default | Description |
316
336
  |---------------------|----------|---------|-------------|
@@ -320,6 +340,7 @@ Both MCP and CLI use the same environment variables. The CLI also accepts equiva
320
340
  | `MODEL_NAME` | `--model-name` | `Xenova/all-MiniLM-L6-v2` | HuggingFace model ID ([available models](https://huggingface.co/models?library=transformers.js&pipeline_tag=feature-extraction)) |
321
341
  | `MAX_FILE_SIZE` | `--max-file-size` | `104857600` (100MB) | Maximum file size in bytes |
322
342
  | `CHUNK_MIN_LENGTH` | `--chunk-min-length` | `50` | Minimum chunk length in characters (1–10000) |
343
+ | `RAG_DEVICE` | — | `cpu` | Execution device. Passed straight to ONNX Runtime. See the [Transformers.js device source code](https://github.com/huggingface/transformers.js/blob/main/packages/transformers/src/utils/devices.js) for the live list of supported backend names. If initialization fails, the server throws an error. |
323
344
 
324
345
  **Model choice tips:**
325
346
  - Multilingual docs → e.g., `onnx-community/embeddinggemma-300m-ONNX` (100+ languages)
@@ -432,7 +453,7 @@ Ensure file paths are within `BASE_DIR`. Use absolute paths.
432
453
  Yes. After model download, nothing leaves your machine. Verify with network monitoring.
433
454
 
434
455
  **Can I use this offline?**
435
- Yes, after the first model download (~90MB).
456
+ Yes, after the required models are cached locally. Text ingest/search needs the embedding model. PDF visual mode is opt-in and also needs the VLM model on first use; the download is hundreds of MB for the default `q4` variant and is cached under `CACHE_DIR` (default: `./models/`).
436
457
 
437
458
  **How does this compare to cloud RAG?**
438
459
  Cloud services offer better accuracy at scale but require sending data externally. This trades some accuracy for complete privacy and zero runtime cost.
@@ -444,7 +465,7 @@ PDF, DOCX, TXT, Markdown, and HTML (via `ingest_data`). Not yet: Excel, PowerPoi
444
465
  Yes, but you must delete your database and re-ingest all documents. Different models produce incompatible vector dimensions.
445
466
 
446
467
  **GPU acceleration?**
447
- Transformers.js runs on CPU. GPU support is experimental. CPU performance is adequate for most use cases.
468
+ Opt-in via `RAG_DEVICE`. Devices are passed straight to ONNX Runtime. GPU support is highly dependent on your system, Node.js version, and the underlying ONNX backend. See the [Transformers.js device source code](https://github.com/huggingface/transformers.js/blob/main/packages/transformers/src/utils/devices.js) for the live list of supported backend names. If the requested device fails to initialize, the server throws an error — set `RAG_DEVICE=cpu` to revert.
448
469
 
449
470
  **Multi-user support?**
450
471
  No. Designed for single-user, local access. Multi-user would require authentication/access control.
@@ -1,6 +1,6 @@
1
1
  import { Embedder } from '../embedder/index.js';
2
2
  import { VectorStore } from '../vectordb/index.js';
3
- import type { ResolvedGlobalConfig } from './options.js';
3
+ import { type ResolvedGlobalConfig } from './options.js';
4
4
  /**
5
5
  * Create an uninitialized VectorStore from resolved global config.
6
6
  * Callers are responsible for calling initialize() before use.
@@ -1 +1 @@
1
- {"version":3,"file":"common.d.ts","sourceRoot":"","sources":["../../src/cli/common.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAA;AAC/C,OAAO,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAA;AAClD,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,cAAc,CAAA;AAExD;;;GAGG;AACH,wBAAgB,iBAAiB,CAAC,MAAM,EAAE,oBAAoB,GAAG,WAAW,CAK3E;AAED;;;GAGG;AACH,wBAAgB,cAAc,CAAC,MAAM,EAAE,oBAAoB,GAAG,QAAQ,CAMrE"}
1
+ {"version":3,"file":"common.d.ts","sourceRoot":"","sources":["../../src/cli/common.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAA;AAC/C,OAAO,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAA;AAClD,OAAO,EAAE,KAAK,oBAAoB,EAAiB,MAAM,cAAc,CAAA;AAEvE;;;GAGG;AACH,wBAAgB,iBAAiB,CAAC,MAAM,EAAE,oBAAoB,GAAG,WAAW,CAK3E;AAED;;;GAGG;AACH,wBAAgB,cAAc,CAAC,MAAM,EAAE,oBAAoB,GAAG,QAAQ,CAOrE"}
@@ -1,6 +1,7 @@
1
1
  // Shared CLI component helpers — factory functions for VectorStore and Embedder
2
2
  import { Embedder } from '../embedder/index.js';
3
3
  import { VectorStore } from '../vectordb/index.js';
4
+ import { resolveDevice } from './options.js';
4
5
  /**
5
6
  * Create an uninitialized VectorStore from resolved global config.
6
7
  * Callers are responsible for calling initialize() before use.
@@ -20,6 +21,7 @@ export function createEmbedder(config) {
20
21
  modelPath: config.modelName,
21
22
  batchSize: 16,
22
23
  cacheDir: config.cacheDir,
24
+ device: resolveDevice(process.env['RAG_DEVICE']),
23
25
  });
24
26
  }
25
27
  //# sourceMappingURL=common.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"common.js","sourceRoot":"","sources":["../../src/cli/common.ts"],"names":[],"mappings":"AAAA,gFAAgF;AAEhF,OAAO,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAA;AAC/C,OAAO,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAA;AAGlD;;;GAGG;AACH,MAAM,UAAU,iBAAiB,CAAC,MAA4B;IAC5D,OAAO,IAAI,WAAW,CAAC;QACrB,MAAM,EAAE,MAAM,CAAC,MAAM;QACrB,SAAS,EAAE,QAAQ;KACpB,CAAC,CAAA;AACJ,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,cAAc,CAAC,MAA4B;IACzD,OAAO,IAAI,QAAQ,CAAC;QAClB,SAAS,EAAE,MAAM,CAAC,SAAS;QAC3B,SAAS,EAAE,EAAE;QACb,QAAQ,EAAE,MAAM,CAAC,QAAQ;KAC1B,CAAC,CAAA;AACJ,CAAC"}
1
+ {"version":3,"file":"common.js","sourceRoot":"","sources":["../../src/cli/common.ts"],"names":[],"mappings":"AAAA,gFAAgF;AAEhF,OAAO,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAA;AAC/C,OAAO,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAA;AAClD,OAAO,EAA6B,aAAa,EAAE,MAAM,cAAc,CAAA;AAEvE;;;GAGG;AACH,MAAM,UAAU,iBAAiB,CAAC,MAA4B;IAC5D,OAAO,IAAI,WAAW,CAAC;QACrB,MAAM,EAAE,MAAM,CAAC,MAAM;QACrB,SAAS,EAAE,QAAQ;KACpB,CAAC,CAAA;AACJ,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,cAAc,CAAC,MAA4B;IACzD,OAAO,IAAI,QAAQ,CAAC;QAClB,SAAS,EAAE,MAAM,CAAC,SAAS;QAC3B,SAAS,EAAE,EAAE;QACb,QAAQ,EAAE,MAAM,CAAC,QAAQ;QACzB,MAAM,EAAE,aAAa,CAAC,OAAO,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC;KACjD,CAAC,CAAA;AACJ,CAAC"}
@@ -1,3 +1,7 @@
1
+ import { SemanticChunker } from '../chunker/index.js';
2
+ import type { Embedder } from '../embedder/index.js';
3
+ import { DocumentParser } from '../parser/index.js';
4
+ import type { VectorStore } from '../vectordb/index.js';
1
5
  import type { GlobalOptions, ResolvedGlobalConfig } from './options.js';
2
6
  interface IngestConfig {
3
7
  baseDir: string;
@@ -11,6 +15,7 @@ interface IngestCliOptions {
11
15
  baseDir?: string | undefined;
12
16
  maxFileSize?: number | undefined;
13
17
  chunkMinLength?: number | undefined;
18
+ visual?: boolean | undefined;
14
19
  }
15
20
  interface ParsedArgs {
16
21
  positional: string | undefined;
@@ -29,6 +34,42 @@ export declare function parseArgs(args: string[]): ParsedArgs;
29
34
  * Validates all resolved values before returning.
30
35
  */
31
36
  export declare function resolveConfig(globalConfig: ResolvedGlobalConfig, ingestOptions?: IngestCliOptions): IngestConfig;
37
+ /**
38
+ * Options for `ingestSingleFile`. Discriminated on `visual` so the visual path
39
+ * is type-only callable with the VLM config it actually needs:
40
+ * - `visual` absent or `false` → no VLM fields required (and not accepted).
41
+ * - `visual: true` → `vlmModelName` and `cacheDir` required; `device` optional.
42
+ *
43
+ * Why a union rather than always-required fields: making `vlmModelName` /
44
+ * `cacheDir` unconditionally required forces non-visual callers (default-mode
45
+ * tests, future direct-import callers that only ingest non-PDF files) to
46
+ * fabricate VLM config they will never use. The visual-true variant still
47
+ * catches accidental misuse at compile time, which was the original goal.
48
+ */
49
+ export type IngestSingleFileOptions = {
50
+ visual?: false | undefined;
51
+ } | {
52
+ visual: true;
53
+ vlmModelName: string;
54
+ cacheDir: string;
55
+ device?: string | undefined;
56
+ };
57
+ /**
58
+ * Ingest a single file: parse, chunk, embed, delete old chunks, insert new chunks.
59
+ * Returns the number of chunks inserted.
60
+ *
61
+ * When `options.visual === true` AND the file is a `.pdf`, routes through the
62
+ * visual-enrichment path: `parsePdfPages` + VLM captioning (`pdf-visual`
63
+ * orchestrator) + joined-text chunking. `pdf-visual` is loaded via dynamic
64
+ * `await import('../pdf-visual/index.js')` so the default (non-visual) path
65
+ * never pulls the VLM module into the bundle (NFR-1 dynamic-import discipline,
66
+ * verified by AC-001 Proxy sentinel in T4.6).
67
+ *
68
+ * Non-visual, non-PDF, and `visual: true` + non-PDF (silently falls through
69
+ * to the default branch — AC-006) paths are byte-identical to the post-T0.3
70
+ * state and never load `pdf-visual`.
71
+ */
72
+ export declare function ingestSingleFile(filePath: string, parser: DocumentParser, chunker: SemanticChunker, embedder: Embedder, vectorStore: VectorStore, options?: IngestSingleFileOptions): Promise<number>;
32
73
  /**
33
74
  * Run the ingest CLI subcommand.
34
75
  * @param args - Arguments after "ingest" (e.g., option flags and file/directory path)
@@ -1 +1 @@
1
- {"version":3,"file":"ingest.d.ts","sourceRoot":"","sources":["../../src/cli/ingest.ts"],"names":[],"mappings":"AAWA,OAAO,KAAK,EAAE,aAAa,EAAE,oBAAoB,EAAE,MAAM,cAAc,CAAA;AAkBvE,UAAU,YAAY;IACpB,OAAO,EAAE,MAAM,CAAA;IACf,MAAM,EAAE,MAAM,CAAA;IACd,QAAQ,EAAE,MAAM,CAAA;IAChB,SAAS,EAAE,MAAM,CAAA;IACjB,WAAW,EAAE,MAAM,CAAA;IACnB,cAAc,CAAC,EAAE,MAAM,CAAA;CACxB;AAQD,UAAU,gBAAgB;IACxB,OAAO,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;IAC5B,WAAW,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;IAChC,cAAc,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;CACpC;AAED,UAAU,UAAU;IAClB,UAAU,EAAE,MAAM,GAAG,SAAS,CAAA;IAC9B,OAAO,EAAE,gBAAgB,CAAA;IACzB,IAAI,EAAE,OAAO,CAAA;CACd;AAiCD;;;;GAIG;AACH,wBAAgB,SAAS,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,UAAU,CAwEpD;AAMD;;;;GAIG;AACH,wBAAgB,aAAa,CAC3B,YAAY,EAAE,oBAAoB,EAClC,aAAa,GAAE,gBAAqB,GACnC,YAAY,CA+Cd;AAuJD;;;;GAIG;AACH,wBAAsB,SAAS,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE,aAAa,GAAE,aAAkB,GAAG,OAAO,CAAC,IAAI,CAAC,CA4FhG"}
1
+ {"version":3,"file":"ingest.d.ts","sourceRoot":"","sources":["../../src/cli/ingest.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAA;AACrD,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAA;AAGpD,OAAO,EAAE,cAAc,EAAwB,MAAM,oBAAoB,CAAA;AACzE,OAAO,KAAK,EAAe,WAAW,EAAE,MAAM,sBAAsB,CAAA;AAEpE,OAAO,KAAK,EAAE,aAAa,EAAE,oBAAoB,EAAE,MAAM,cAAc,CAAA;AAmBvE,UAAU,YAAY;IACpB,OAAO,EAAE,MAAM,CAAA;IACf,MAAM,EAAE,MAAM,CAAA;IACd,QAAQ,EAAE,MAAM,CAAA;IAChB,SAAS,EAAE,MAAM,CAAA;IACjB,WAAW,EAAE,MAAM,CAAA;IACnB,cAAc,CAAC,EAAE,MAAM,CAAA;CACxB;AAQD,UAAU,gBAAgB;IACxB,OAAO,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;IAC5B,WAAW,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;IAChC,cAAc,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;IACnC,MAAM,CAAC,EAAE,OAAO,GAAG,SAAS,CAAA;CAC7B;AAED,UAAU,UAAU;IAClB,UAAU,EAAE,MAAM,GAAG,SAAS,CAAA;IAC9B,OAAO,EAAE,gBAAgB,CAAA;IACzB,IAAI,EAAE,OAAO,CAAA;CACd;AAkCD;;;;GAIG;AACH,wBAAgB,SAAS,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,UAAU,CA6EpD;AAMD;;;;GAIG;AACH,wBAAgB,aAAa,CAC3B,YAAY,EAAE,oBAAoB,EAClC,aAAa,GAAE,gBAAqB,GACnC,YAAY,CA+Cd;AAgFD;;;;;;;;;;;GAWG;AACH,MAAM,MAAM,uBAAuB,GAC/B;IAAE,MAAM,CAAC,EAAE,KAAK,GAAG,SAAS,CAAA;CAAE,GAC9B;IACE,MAAM,EAAE,IAAI,CAAA;IACZ,YAAY,EAAE,MAAM,CAAA;IACpB,QAAQ,EAAE,MAAM,CAAA;IAChB,MAAM,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;CAC5B,CAAA;AAEL;;;;;;;;;;;;;;GAcG;AACH,wBAAsB,gBAAgB,CACpC,QAAQ,EAAE,MAAM,EAChB,MAAM,EAAE,cAAc,EACtB,OAAO,EAAE,eAAe,EACxB,QAAQ,EAAE,QAAQ,EAClB,WAAW,EAAE,WAAW,EACxB,OAAO,CAAC,EAAE,uBAAuB,GAChC,OAAO,CAAC,MAAM,CAAC,CAsGjB;AAMD;;;;GAIG;AACH,wBAAsB,SAAS,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE,aAAa,GAAE,aAAkB,GAAG,OAAO,CAAC,IAAI,CAAC,CAuHhG"}
@@ -1,11 +1,13 @@
1
1
  // CLI ingest subcommand — bulk file ingestion with single optimize() at end
2
2
  import { randomUUID } from 'node:crypto';
3
3
  import { opendir, stat } from 'node:fs/promises';
4
- import { extname, join, resolve } from 'node:path';
4
+ import { basename, extname, join, resolve, sep } from 'node:path';
5
5
  import { SemanticChunker } from '../chunker/index.js';
6
+ import { buildChunksAndEmbeddings } from '../ingest/compute.js';
7
+ import { prepareVisualPdfChunks } from '../ingest/visual.js';
6
8
  import { DocumentParser, SUPPORTED_EXTENSIONS } from '../parser/index.js';
7
9
  import { createEmbedder, createVectorStore } from './common.js';
8
- import { resolveGlobalConfig, validateChunkMinLength, validateMaxFileSize, validatePath, } from './options.js';
10
+ import { resolveDevice, resolveGlobalConfig, validateChunkMinLength, validateMaxFileSize, validatePath, } from './options.js';
9
11
  // ============================================
10
12
  // Constants
11
13
  // ============================================
@@ -27,6 +29,7 @@ Options:
27
29
  --base-dir <path> Base directory for documents (default: cwd)
28
30
  --max-file-size <n> Max file size in bytes (default: ${INGEST_DEFAULTS.maxFileSize})
29
31
  --chunk-min-length <n> Minimum chunk length in characters (default: 50, range: 1-10000)
32
+ --visual Enable VLM captioning for PDF figure pages (PDFs only; no effect on other types)
30
33
  -h, --help Show this help
31
34
 
32
35
  Global options (must appear before "ingest"):
@@ -92,6 +95,11 @@ export function parseArgs(args) {
92
95
  i++;
93
96
  break;
94
97
  }
98
+ case '--visual':
99
+ // Boolean toggle: no value consumed. Mirrors the -h/--help pattern.
100
+ options.visual = true;
101
+ i++;
102
+ break;
95
103
  default:
96
104
  if (arg.startsWith('-')) {
97
105
  console.error(`Unknown option: ${arg}`);
@@ -221,19 +229,77 @@ async function collectFiles(targetPath, excludePaths) {
221
229
  }
222
230
  return [];
223
231
  }
224
- // ============================================
225
- // Per-file Ingestion
226
- // ============================================
227
232
  /**
228
233
  * Ingest a single file: parse, chunk, embed, delete old chunks, insert new chunks.
229
234
  * Returns the number of chunks inserted.
235
+ *
236
+ * When `options.visual === true` AND the file is a `.pdf`, routes through the
237
+ * visual-enrichment path: `parsePdfPages` + VLM captioning (`pdf-visual`
238
+ * orchestrator) + joined-text chunking. `pdf-visual` is loaded via dynamic
239
+ * `await import('../pdf-visual/index.js')` so the default (non-visual) path
240
+ * never pulls the VLM module into the bundle (NFR-1 dynamic-import discipline,
241
+ * verified by AC-001 Proxy sentinel in T4.6).
242
+ *
243
+ * Non-visual, non-PDF, and `visual: true` + non-PDF (silently falls through
244
+ * to the default branch — AC-006) paths are byte-identical to the post-T0.3
245
+ * state and never load `pdf-visual`.
230
246
  */
231
- async function ingestSingleFile(filePath, parser, chunker, embedder, vectorStore) {
247
+ export async function ingestSingleFile(filePath, parser, chunker, embedder, vectorStore, options) {
232
248
  // Parse file
233
249
  const isPdf = filePath.toLowerCase().endsWith('.pdf');
234
250
  let text;
235
251
  let title = null;
236
- if (isPdf) {
252
+ if (options?.visual === true && isPdf) {
253
+ // Visual dispatch — delegates the shared visual-PDF flow to
254
+ // `prepareVisualPdfChunks` (NFR-1: the dynamic `pdf-visual` import lives
255
+ // inside that helper, not here). This branch keeps the CLI persistence
256
+ // model (delete + insert; bulk-loop optimize at the end of `runIngest`).
257
+ //
258
+ // `vlmModelName` and `cacheDir` are required by `prepareVisualPdfChunks`;
259
+ // the CLI bulk-loop always supplies them via the resolved `globalConfig`
260
+ // (see `resolveGlobalConfig` in `cli/options.ts`).
261
+ const visualResult = await prepareVisualPdfChunks(filePath, parser, chunker, embedder, {
262
+ modelName: options.vlmModelName,
263
+ cacheDir: options.cacheDir,
264
+ device: options.device,
265
+ });
266
+ const { chunks, embeddings } = visualResult;
267
+ if (chunks.length === 0) {
268
+ console.error(` Warning: 0 chunks generated (file may be empty or too short)`);
269
+ return 0;
270
+ }
271
+ title = visualResult.title;
272
+ // Persistence — identical to the default branch below; inlined here so
273
+ // chunks/embeddings produced on the visual path persist correctly. The
274
+ // joined enriched-page text is taken from the helper to preserve the
275
+ // pre-existing `metadata.fileSize` semantics (post-enrichment,
276
+ // pre-chunking text length).
277
+ await vectorStore.deleteChunks(filePath);
278
+ const timestamp = new Date().toISOString();
279
+ const vectorChunks = chunks.map((chunk, index) => {
280
+ const embedding = embeddings[index];
281
+ if (!embedding) {
282
+ throw new Error(`Missing embedding for chunk ${index}`);
283
+ }
284
+ return {
285
+ id: randomUUID(),
286
+ filePath,
287
+ chunkIndex: chunk.index,
288
+ text: chunk.text,
289
+ vector: embedding,
290
+ metadata: {
291
+ fileName: basename(filePath),
292
+ fileSize: visualResult.text.length,
293
+ fileType: extname(filePath).slice(1),
294
+ },
295
+ fileTitle: title,
296
+ timestamp,
297
+ };
298
+ });
299
+ await vectorStore.insertChunks(vectorChunks);
300
+ return vectorChunks.length;
301
+ }
302
+ else if (isPdf) {
237
303
  const result = await parser.parsePdf(filePath, embedder);
238
304
  text = result.content;
239
305
  title = result.title || null;
@@ -243,14 +309,12 @@ async function ingestSingleFile(filePath, parser, chunker, embedder, vectorStore
243
309
  text = result.content;
244
310
  title = result.title || null;
245
311
  }
246
- // Chunk text
247
- const chunks = await chunker.chunkText(text, embedder);
312
+ // Chunk text + generate embeddings via the shared computation layer (Phase 0).
313
+ const { chunks, embeddings } = await buildChunksAndEmbeddings(text, title, chunker, embedder);
248
314
  if (chunks.length === 0) {
249
315
  console.error(` Warning: 0 chunks generated (file may be empty or too short)`);
250
316
  return 0;
251
317
  }
252
- // Generate embeddings
253
- const embeddings = await embedder.embedBatch(chunks.map((c) => c.text));
254
318
  // Delete existing chunks for this file
255
319
  await vectorStore.deleteChunks(filePath);
256
320
  // Build vector chunks
@@ -267,9 +331,9 @@ async function ingestSingleFile(filePath, parser, chunker, embedder, vectorStore
267
331
  text: chunk.text,
268
332
  vector: embedding,
269
333
  metadata: {
270
- fileName: filePath.split('/').pop() || filePath,
334
+ fileName: basename(filePath),
271
335
  fileSize: text.length,
272
- fileType: filePath.split('.').pop() || '',
336
+ fileType: extname(filePath).slice(1),
273
337
  },
274
338
  fileTitle: title,
275
339
  timestamp,
@@ -314,7 +378,7 @@ export async function runIngest(args, globalOptions = {}) {
314
378
  // Resolve config: CLI flags > env vars > defaults
315
379
  const globalConfig = resolveGlobalConfig(globalOptions);
316
380
  const config = resolveConfig(globalConfig, options);
317
- const excludePaths = [`${resolve(config.dbPath)}/`, `${resolve(config.cacheDir)}/`];
381
+ const excludePaths = [`${resolve(config.dbPath)}${sep}`, `${resolve(config.cacheDir)}${sep}`];
318
382
  // Collect files
319
383
  const files = await collectFiles(targetPath, excludePaths);
320
384
  if (files.length === 0) {
@@ -333,30 +397,51 @@ export async function runIngest(args, globalOptions = {}) {
333
397
  await vectorStore.initialize();
334
398
  // Process each file
335
399
  const summary = { succeeded: 0, failed: 0, totalChunks: 0 };
336
- for (let i = 0; i < files.length; i++) {
337
- const filePath = files[i];
338
- const label = `[${i + 1}/${files.length}]`;
339
- try {
340
- const chunkCount = await ingestSingleFile(filePath, parser, chunker, embedder, vectorStore);
341
- if (chunkCount === 0) {
342
- // 0 chunks is a skip/warning, not a failure
343
- console.error(`${label} ${filePath} ... SKIPPED (0 chunks)`);
344
- summary.succeeded++;
400
+ try {
401
+ for (let i = 0; i < files.length; i++) {
402
+ const filePath = files[i];
403
+ const label = `[${i + 1}/${files.length}]`;
404
+ try {
405
+ // Forward visual + VLM env-resolved options into the per-file ingestor.
406
+ // `ingestSingleFile` routes through the visual path when
407
+ // `options.visual === true && filePath.endsWith('.pdf')`. The two
408
+ // variants of `IngestSingleFileOptions` are built explicitly so the
409
+ // VLM fields only travel with the visual-true branch (the cacheDir is
410
+ // pre-validated by `resolveGlobalConfig` so the captioner does not
411
+ // re-read `process.env['CACHE_DIR']` raw).
412
+ const ingestOptions = options.visual
413
+ ? {
414
+ visual: true,
415
+ vlmModelName: globalConfig.vlmModelName,
416
+ cacheDir: globalConfig.cacheDir,
417
+ device: resolveDevice(process.env['RAG_DEVICE']),
418
+ }
419
+ : { visual: false };
420
+ const chunkCount = await ingestSingleFile(filePath, parser, chunker, embedder, vectorStore, ingestOptions);
421
+ if (chunkCount === 0) {
422
+ // 0 chunks is a skip/warning, not a failure
423
+ console.error(`${label} ${filePath} ... SKIPPED (0 chunks)`);
424
+ summary.succeeded++;
425
+ }
426
+ else {
427
+ console.error(`${label} ${filePath} ... OK (${chunkCount} chunks)`);
428
+ summary.succeeded++;
429
+ summary.totalChunks += chunkCount;
430
+ }
345
431
  }
346
- else {
347
- console.error(`${label} ${filePath} ... OK (${chunkCount} chunks)`);
348
- summary.succeeded++;
349
- summary.totalChunks += chunkCount;
432
+ catch (error) {
433
+ const reason = error instanceof Error ? error.message : String(error);
434
+ console.error(`${label} ${filePath} ... FAILED: ${reason}`);
435
+ summary.failed++;
350
436
  }
351
437
  }
352
- catch (error) {
353
- const reason = error instanceof Error ? error.message : String(error);
354
- console.error(`${label} ${filePath} ... FAILED: ${reason}`);
355
- summary.failed++;
356
- }
438
+ // Optimize once at end (not per-file)
439
+ await vectorStore.optimize();
440
+ }
441
+ finally {
442
+ await embedder.dispose();
443
+ await vectorStore.close();
357
444
  }
358
- // Optimize once at end (not per-file)
359
- await vectorStore.optimize();
360
445
  // Print summary
361
446
  console.error('');
362
447
  console.error('--- Ingest Summary ---');
@@ -1 +1 @@
1
- {"version":3,"file":"ingest.js","sourceRoot":"","sources":["../../src/cli/ingest.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ingest.js","sourceRoot":"","sources":["../../src/cli/ingest.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"list.d.ts","sourceRoot":"","sources":["../../src/cli/list.ts"],"names":[],"mappings":"AAQA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,cAAc,CAAA;AAOjD,UAAU,cAAc;IACtB,OAAO,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;CAC7B;AAED,UAAU,UAAU;IAClB,OAAO,EAAE,cAAc,CAAA;IACvB,IAAI,EAAE,OAAO,CAAA;CACd;AA2CD;;;;;GAKG;AACH,wBAAgB,SAAS,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,UAAU,CAoCpD;AAMD;;;;GAIG;AACH,wBAAsB,OAAO,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE,aAAa,GAAE,aAAkB,GAAG,OAAO,CAAC,IAAI,CAAC,CA6E9F"}
1
+ {"version":3,"file":"list.d.ts","sourceRoot":"","sources":["../../src/cli/list.ts"],"names":[],"mappings":"AAQA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,cAAc,CAAA;AAOjD,UAAU,cAAc;IACtB,OAAO,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;CAC7B;AAED,UAAU,UAAU;IAClB,OAAO,EAAE,cAAc,CAAA;IACvB,IAAI,EAAE,OAAO,CAAA;CACd;AA2CD;;;;;GAKG;AACH,wBAAgB,SAAS,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,UAAU,CAoCpD;AAMD;;;;GAIG;AACH,wBAAsB,OAAO,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE,aAAa,GAAE,aAAkB,GAAG,OAAO,CAAC,IAAI,CAAC,CAgF9F"}
package/dist/cli/list.js CHANGED
@@ -1,6 +1,6 @@
1
1
  // CLI list subcommand — list files and ingestion status
2
2
  import { readdir } from 'node:fs/promises';
3
- import { extname, join, resolve } from 'node:path';
3
+ import { extname, join, resolve, sep } from 'node:path';
4
4
  import { SUPPORTED_EXTENSIONS } from '../parser/index.js';
5
5
  import { extractSourceFromPath, isRawDataPath } from '../utils/raw-data-utils.js';
6
6
  import { createVectorStore } from './common.js';
@@ -94,8 +94,11 @@ export async function runList(args, globalOptions = {}) {
94
94
  // Initialize VectorStore only (no Embedder needed for list)
95
95
  const vectorStore = createVectorStore(globalConfig);
96
96
  await vectorStore.initialize();
97
- // Build exclude paths (resolved to absolute)
98
- const excludePaths = [`${resolve(globalConfig.dbPath)}/`, `${resolve(globalConfig.cacheDir)}/`];
97
+ // Build exclude paths (resolved to absolute, platform-aware trailing separator)
98
+ const excludePaths = [
99
+ `${resolve(globalConfig.dbPath)}${sep}`,
100
+ `${resolve(globalConfig.cacheDir)}${sep}`,
101
+ ];
99
102
  // Get all ingested entries from the vector store
100
103
  const ingested = await vectorStore.listFiles();
101
104
  const ingestedMap = new Map(ingested.map((f) => [f.filePath, f]));
@@ -1 +1 @@
1
- {"version":3,"file":"list.js","sourceRoot":"","sources":["../../src/cli/list.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"list.js","sourceRoot":"","sources":["../../src/cli/list.ts"],"names":[],"mappings":"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"}
@@ -22,6 +22,7 @@ export interface GlobalOptions {
22
22
  dbPath?: string | undefined;
23
23
  cacheDir?: string | undefined;
24
24
  modelName?: string | undefined;
25
+ vlmModelName?: string | undefined;
25
26
  }
26
27
  export interface ParsedGlobalResult {
27
28
  globalOptions: GlobalOptions;
@@ -31,11 +32,13 @@ export interface ResolvedGlobalConfig {
31
32
  dbPath: string;
32
33
  cacheDir: string;
33
34
  modelName: string;
35
+ vlmModelName: string;
34
36
  }
35
37
  export declare const GLOBAL_DEFAULTS: {
36
38
  readonly dbPath: "./lancedb/";
37
39
  readonly cacheDir: "./models/";
38
40
  readonly modelName: "Xenova/all-MiniLM-L6-v2";
41
+ readonly vlmModelName: "HuggingFaceTB/SmolVLM-256M-Instruct";
39
42
  };
40
43
  export declare const ROOT_HELP_TEXT: string;
41
44
  /**
@@ -51,4 +54,9 @@ export declare function parseGlobalOptions(args: string[]): ParsedGlobalResult;
51
54
  * Validates all resolved values before returning.
52
55
  */
53
56
  export declare function resolveGlobalConfig(options: GlobalOptions): ResolvedGlobalConfig;
57
+ /**
58
+ * Resolve RAG_DEVICE. The value is passed through to transformers.js — no
59
+ * allowlist is maintained here. Whitespace-only is treated as unset.
60
+ */
61
+ export declare function resolveDevice(value: string | undefined): string;
54
62
  //# sourceMappingURL=options.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"options.d.ts","sourceRoot":"","sources":["../../src/cli/options.ts"],"names":[],"mappings":"AAaA;;;GAGG;AACH,wBAAgB,YAAY,CAAC,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAuBhF;AAED;;;GAGG;AACH,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CASnE;AAED;;;GAGG;AACH,wBAAgB,mBAAmB,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAKrE;AAED;;;GAGG;AACH,wBAAgB,sBAAsB,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAKxE;AAMD,MAAM,WAAW,aAAa;IAC5B,MAAM,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;IAC3B,QAAQ,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;IAC7B,SAAS,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;CAC/B;AAED,MAAM,WAAW,kBAAkB;IACjC,aAAa,EAAE,aAAa,CAAA;IAC5B,aAAa,EAAE,MAAM,EAAE,CAAA;CACxB;AAED,MAAM,WAAW,oBAAoB;IACnC,MAAM,EAAE,MAAM,CAAA;IACd,QAAQ,EAAE,MAAM,CAAA;IAChB,SAAS,EAAE,MAAM,CAAA;CAClB;AAMD,eAAO,MAAM,eAAe;;;;CAIlB,CAAA;AAMV,eAAO,MAAM,cAAc,QAeiC,CAAA;AAM5D;;;;;;GAMG;AACH,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,kBAAkB,CAqErE;AAMD;;;GAGG;AACH,wBAAgB,mBAAmB,CAAC,OAAO,EAAE,aAAa,GAAG,oBAAoB,CA0BhF"}
1
+ {"version":3,"file":"options.d.ts","sourceRoot":"","sources":["../../src/cli/options.ts"],"names":[],"mappings":"AAaA;;;GAGG;AACH,wBAAgB,YAAY,CAAC,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAuBhF;AAED;;;GAGG;AACH,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CASnE;AAED;;;GAGG;AACH,wBAAgB,mBAAmB,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAKrE;AAED;;;GAGG;AACH,wBAAgB,sBAAsB,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAKxE;AAMD,MAAM,WAAW,aAAa;IAC5B,MAAM,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;IAC3B,QAAQ,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;IAC7B,SAAS,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;IAC9B,YAAY,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;CAClC;AAED,MAAM,WAAW,kBAAkB;IACjC,aAAa,EAAE,aAAa,CAAA;IAC5B,aAAa,EAAE,MAAM,EAAE,CAAA;CACxB;AAED,MAAM,WAAW,oBAAoB;IACnC,MAAM,EAAE,MAAM,CAAA;IACd,QAAQ,EAAE,MAAM,CAAA;IAChB,SAAS,EAAE,MAAM,CAAA;IACjB,YAAY,EAAE,MAAM,CAAA;CACrB;AAMD,eAAO,MAAM,eAAe;;;;;CAKlB,CAAA;AAMV,eAAO,MAAM,cAAc,QAeiC,CAAA;AAM5D;;;;;;GAMG;AACH,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,kBAAkB,CAqErE;AAMD;;;GAGG;AACH,wBAAgB,mBAAmB,CAAC,OAAO,EAAE,aAAa,GAAG,oBAAoB,CA+BhF;AAED;;;GAGG;AACH,wBAAgB,aAAa,CAAC,KAAK,EAAE,MAAM,GAAG,SAAS,GAAG,MAAM,CAG/D"}
@@ -74,6 +74,7 @@ export const GLOBAL_DEFAULTS = {
74
74
  dbPath: './lancedb/',
75
75
  cacheDir: './models/',
76
76
  modelName: 'Xenova/all-MiniLM-L6-v2',
77
+ vlmModelName: 'HuggingFaceTB/SmolVLM-256M-Instruct',
77
78
  };
78
79
  // ============================================
79
80
  // Help
@@ -182,6 +183,11 @@ export function resolveGlobalConfig(options) {
182
183
  const dbPath = options.dbPath ?? process.env['DB_PATH'] ?? GLOBAL_DEFAULTS.dbPath;
183
184
  const cacheDir = options.cacheDir ?? process.env['CACHE_DIR'] ?? GLOBAL_DEFAULTS.cacheDir;
184
185
  const modelName = options.modelName ?? process.env['MODEL_NAME'] ?? GLOBAL_DEFAULTS.modelName;
186
+ // VLM model identifier and ONNX quantization variant are fixed for v1 — see
187
+ // server-main.ts for the rationale. `vlmModelName` is retained in the
188
+ // resolved config for the future model-family adapter; it is not
189
+ // user-tunable on the CLI surface yet.
190
+ const vlmModelName = GLOBAL_DEFAULTS.vlmModelName;
185
191
  // Validate paths
186
192
  const dbPathError = validatePath(dbPath, '--db-path');
187
193
  if (dbPathError) {
@@ -199,6 +205,15 @@ export function resolveGlobalConfig(options) {
199
205
  console.error(modelNameError);
200
206
  process.exit(1);
201
207
  }
202
- return { dbPath, cacheDir, modelName };
208
+ return { dbPath, cacheDir, modelName, vlmModelName };
209
+ }
210
+ /**
211
+ * Resolve RAG_DEVICE. The value is passed through to transformers.js — no
212
+ * allowlist is maintained here. Whitespace-only is treated as unset.
213
+ */
214
+ export function resolveDevice(value) {
215
+ if (!value || value.trim() === '')
216
+ return 'cpu';
217
+ return value.trim();
203
218
  }
204
219
  //# sourceMappingURL=options.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"options.js","sourceRoot":"","sources":["../../src/cli/options.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"options.js","sourceRoot":"","sources":["../../src/cli/options.ts"],"names":[],"mappings":"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"}