@speakeasy-api/docs-mcp-cli 0.1.0 → 0.2.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.
- package/README.md +1 -1
- package/dist/git.d.ts +5 -0
- package/dist/git.d.ts.map +1 -1
- package/dist/git.js +26 -0
- package/dist/git.js.map +1 -1
- package/dist/index.js +232 -15
- package/dist/index.js.map +1 -1
- package/package.json +2 -2
package/README.md
CHANGED
|
@@ -22,7 +22,7 @@ docs-mcp build --docs-dir ./docs --out ./dist/.lancedb --embedding-provider hash
|
|
|
22
22
|
|
|
23
23
|
### `docs-mcp fix`
|
|
24
24
|
|
|
25
|
-
Bootstrap a baseline `.mcp
|
|
25
|
+
Bootstrap a baseline `.docs-mcp.json` for legacy docs without chunking strategies.
|
|
26
26
|
|
|
27
27
|
```bash
|
|
28
28
|
docs-mcp fix --docs-dir ./docs
|
package/dist/git.d.ts
CHANGED
|
@@ -1,2 +1,7 @@
|
|
|
1
1
|
export declare function resolveSourceCommit(targetDir: string): Promise<string | null>;
|
|
2
|
+
/**
|
|
3
|
+
* Derive a corpus identifier from the git repo name and the docs directory's
|
|
4
|
+
* path relative to the repo root. Falls back to the directory basename.
|
|
5
|
+
*/
|
|
6
|
+
export declare function resolveCorpusLabel(docsDir: string): Promise<string>;
|
|
2
7
|
//# sourceMappingURL=git.d.ts.map
|
package/dist/git.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"git.d.ts","sourceRoot":"","sources":["../src/git.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"git.d.ts","sourceRoot":"","sources":["../src/git.ts"],"names":[],"mappings":"AAMA,wBAAsB,mBAAmB,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAWnF;AAED;;;GAGG;AACH,wBAAsB,kBAAkB,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAyBzE"}
|
package/dist/git.js
CHANGED
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import { execFile } from "node:child_process";
|
|
2
|
+
import path from "node:path";
|
|
2
3
|
import { promisify } from "node:util";
|
|
3
4
|
const execFileAsync = promisify(execFile);
|
|
4
5
|
export async function resolveSourceCommit(targetDir) {
|
|
@@ -14,4 +15,29 @@ export async function resolveSourceCommit(targetDir) {
|
|
|
14
15
|
return null;
|
|
15
16
|
}
|
|
16
17
|
}
|
|
18
|
+
/**
|
|
19
|
+
* Derive a corpus identifier from the git repo name and the docs directory's
|
|
20
|
+
* path relative to the repo root. Falls back to the directory basename.
|
|
21
|
+
*/
|
|
22
|
+
export async function resolveCorpusLabel(docsDir) {
|
|
23
|
+
try {
|
|
24
|
+
const opts = { timeout: 5_000, windowsHide: true };
|
|
25
|
+
const { stdout: rootOut } = await execFileAsync("git", ["-C", docsDir, "rev-parse", "--show-toplevel"], opts);
|
|
26
|
+
const repoRoot = rootOut.trim();
|
|
27
|
+
let repoName;
|
|
28
|
+
try {
|
|
29
|
+
const { stdout: remoteOut } = await execFileAsync("git", ["-C", docsDir, "remote", "get-url", "origin"], opts);
|
|
30
|
+
const url = remoteOut.trim();
|
|
31
|
+
repoName = url.replace(/\.git$/, "").split(/[/:]/).pop() ?? path.basename(repoRoot);
|
|
32
|
+
}
|
|
33
|
+
catch {
|
|
34
|
+
repoName = path.basename(repoRoot);
|
|
35
|
+
}
|
|
36
|
+
const relPath = path.relative(repoRoot, docsDir);
|
|
37
|
+
return relPath ? `${repoName}/${relPath}` : repoName;
|
|
38
|
+
}
|
|
39
|
+
catch {
|
|
40
|
+
return path.basename(docsDir);
|
|
41
|
+
}
|
|
42
|
+
}
|
|
17
43
|
//# sourceMappingURL=git.js.map
|
package/dist/git.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"git.js","sourceRoot":"","sources":["../src/git.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,oBAAoB,CAAC;AAC9C,OAAO,EAAE,SAAS,EAAE,MAAM,WAAW,CAAC;AAEtC,MAAM,aAAa,GAAG,SAAS,CAAC,QAAQ,CAAC,CAAC;AAE1C,MAAM,CAAC,KAAK,UAAU,mBAAmB,CAAC,SAAiB;IACzD,IAAI,CAAC;QACH,MAAM,EAAE,MAAM,EAAE,GAAG,MAAM,aAAa,CAAC,KAAK,EAAE,CAAC,IAAI,EAAE,SAAS,EAAE,WAAW,EAAE,MAAM,CAAC,EAAE;YACpF,OAAO,EAAE,KAAK;YACd,WAAW,EAAE,IAAI;SAClB,CAAC,CAAC;QACH,MAAM,MAAM,GAAG,MAAM,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;QAC3C,OAAO,gBAAgB,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC;IACvD,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,IAAI,CAAC;IACd,CAAC;AACH,CAAC"}
|
|
1
|
+
{"version":3,"file":"git.js","sourceRoot":"","sources":["../src/git.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,oBAAoB,CAAC;AAC9C,OAAO,IAAI,MAAM,WAAW,CAAC;AAC7B,OAAO,EAAE,SAAS,EAAE,MAAM,WAAW,CAAC;AAEtC,MAAM,aAAa,GAAG,SAAS,CAAC,QAAQ,CAAC,CAAC;AAE1C,MAAM,CAAC,KAAK,UAAU,mBAAmB,CAAC,SAAiB;IACzD,IAAI,CAAC;QACH,MAAM,EAAE,MAAM,EAAE,GAAG,MAAM,aAAa,CAAC,KAAK,EAAE,CAAC,IAAI,EAAE,SAAS,EAAE,WAAW,EAAE,MAAM,CAAC,EAAE;YACpF,OAAO,EAAE,KAAK;YACd,WAAW,EAAE,IAAI;SAClB,CAAC,CAAC;QACH,MAAM,MAAM,GAAG,MAAM,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;QAC3C,OAAO,gBAAgB,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC;IACvD,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,IAAI,CAAC;IACd,CAAC;AACH,CAAC;AAED;;;GAGG;AACH,MAAM,CAAC,KAAK,UAAU,kBAAkB,CAAC,OAAe;IACtD,IAAI,CAAC;QACH,MAAM,IAAI,GAAG,EAAE,OAAO,EAAE,KAAK,EAAE,WAAW,EAAE,IAAI,EAAW,CAAC;QAE5D,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,GAAG,MAAM,aAAa,CAC7C,KAAK,EAAE,CAAC,IAAI,EAAE,OAAO,EAAE,WAAW,EAAE,iBAAiB,CAAC,EAAE,IAAI,CAC7D,CAAC;QACF,MAAM,QAAQ,GAAG,OAAO,CAAC,IAAI,EAAE,CAAC;QAEhC,IAAI,QAAgB,CAAC;QACrB,IAAI,CAAC;YACH,MAAM,EAAE,MAAM,EAAE,SAAS,EAAE,GAAG,MAAM,aAAa,CAC/C,KAAK,EAAE,CAAC,IAAI,EAAE,OAAO,EAAE,QAAQ,EAAE,SAAS,EAAE,QAAQ,CAAC,EAAE,IAAI,CAC5D,CAAC;YACF,MAAM,GAAG,GAAG,SAAS,CAAC,IAAI,EAAE,CAAC;YAC7B,QAAQ,GAAG,GAAG,CAAC,OAAO,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,IAAI,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;QACtF,CAAC;QAAC,MAAM,CAAC;YACP,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;QACrC,CAAC;QAED,MAAM,OAAO,GAAG,IAAI,CAAC,QAAQ,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;QACjD,OAAO,OAAO,CAAC,CAAC,CAAC,GAAG,QAAQ,IAAI,OAAO,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC;IACvD,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;IAChC,CAAC;AACH,CAAC"}
|
package/dist/index.js
CHANGED
|
@@ -1,15 +1,127 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
|
-
import { mkdir, readFile, stat, writeFile } from "node:fs/promises";
|
|
2
|
+
import { mkdir, readFile, rename, rm, stat, writeFile } from "node:fs/promises";
|
|
3
3
|
import { createRequire } from "node:module";
|
|
4
4
|
import path from "node:path";
|
|
5
5
|
import fg from "fast-glob";
|
|
6
6
|
import { Command } from "commander";
|
|
7
7
|
const require = createRequire(import.meta.url);
|
|
8
8
|
const { version: CLI_VERSION } = require("../package.json");
|
|
9
|
-
import { buildLanceDbIndex, buildChunks, createEmbeddingProvider, embedChunksIncremental, loadCache, parseManifestJson, resolveFileConfig, saveCache } from "@speakeasy-api/docs-mcp-core";
|
|
9
|
+
import { buildLanceDbIndex, buildChunks, computeChunkFingerprint, createEmbeddingProvider, embedChunksIncremental, formatDuration, loadCache, loadChunksFromPreviousIndex, mergeTaxonomyConfigs, parseManifestJson, resolveFileConfig, saveCache } from "@speakeasy-api/docs-mcp-core";
|
|
10
10
|
import { buildHeuristicManifest } from "./fix.js";
|
|
11
|
-
import { resolveSourceCommit } from "./git.js";
|
|
11
|
+
import { resolveCorpusLabel, resolveSourceCommit } from "./git.js";
|
|
12
12
|
const program = new Command();
|
|
13
|
+
const isTTY = process.stderr.isTTY ?? false;
|
|
14
|
+
let progressLineCount = 0;
|
|
15
|
+
function writeProgress(msg) { writeProgressBlock([msg]); }
|
|
16
|
+
function writeProgressBlock(lines) {
|
|
17
|
+
if (!isTTY)
|
|
18
|
+
return;
|
|
19
|
+
// Move cursor up to start of previous block
|
|
20
|
+
if (progressLineCount > 1) {
|
|
21
|
+
process.stderr.write(`\x1b[${progressLineCount - 1}A`);
|
|
22
|
+
}
|
|
23
|
+
// Write new lines, clearing each
|
|
24
|
+
for (let i = 0; i < lines.length; i++) {
|
|
25
|
+
process.stderr.write(`\r\x1b[K${lines[i]}`);
|
|
26
|
+
if (i < lines.length - 1)
|
|
27
|
+
process.stderr.write("\n");
|
|
28
|
+
}
|
|
29
|
+
// Clear any leftover lines from a previously taller block
|
|
30
|
+
for (let i = lines.length; i < progressLineCount; i++) {
|
|
31
|
+
process.stderr.write("\n\x1b[K");
|
|
32
|
+
}
|
|
33
|
+
const extra = progressLineCount - lines.length;
|
|
34
|
+
if (extra > 0) {
|
|
35
|
+
process.stderr.write(`\x1b[${extra}A`);
|
|
36
|
+
}
|
|
37
|
+
progressLineCount = lines.length;
|
|
38
|
+
}
|
|
39
|
+
function clearProgress() {
|
|
40
|
+
if (!isTTY || progressLineCount === 0)
|
|
41
|
+
return;
|
|
42
|
+
if (progressLineCount > 1) {
|
|
43
|
+
process.stderr.write(`\x1b[${progressLineCount - 1}A`);
|
|
44
|
+
}
|
|
45
|
+
process.stderr.write("\r\x1b[K");
|
|
46
|
+
for (let i = 1; i < progressLineCount; i++) {
|
|
47
|
+
process.stderr.write("\n\x1b[K");
|
|
48
|
+
}
|
|
49
|
+
if (progressLineCount > 1) {
|
|
50
|
+
process.stderr.write(`\x1b[${progressLineCount - 1}A\r`);
|
|
51
|
+
}
|
|
52
|
+
progressLineCount = 0;
|
|
53
|
+
}
|
|
54
|
+
let lastNonTtyWrite = 0;
|
|
55
|
+
/**
|
|
56
|
+
* Pack segments into lines that fit within `cols`, separating with `sep`.
|
|
57
|
+
* Any single segment wider than `cols` is hard-truncated.
|
|
58
|
+
*/
|
|
59
|
+
function packLines(segments, cols, sep = " ") {
|
|
60
|
+
const lines = [];
|
|
61
|
+
let cur = "";
|
|
62
|
+
for (const seg of segments) {
|
|
63
|
+
const truncated = seg.length > cols ? seg.slice(0, cols) : seg;
|
|
64
|
+
if (cur.length === 0) {
|
|
65
|
+
cur = truncated;
|
|
66
|
+
}
|
|
67
|
+
else if (cur.length + sep.length + truncated.length <= cols) {
|
|
68
|
+
cur += sep + truncated;
|
|
69
|
+
}
|
|
70
|
+
else {
|
|
71
|
+
lines.push(cur);
|
|
72
|
+
cur = truncated;
|
|
73
|
+
}
|
|
74
|
+
}
|
|
75
|
+
if (cur.length > 0)
|
|
76
|
+
lines.push(cur);
|
|
77
|
+
return lines;
|
|
78
|
+
}
|
|
79
|
+
function writeBatchProgress(event) {
|
|
80
|
+
// Non-polling phases: always emit
|
|
81
|
+
if (event.phase !== "batch-polling") {
|
|
82
|
+
if (isTTY) {
|
|
83
|
+
writeProgress(event.message);
|
|
84
|
+
}
|
|
85
|
+
else {
|
|
86
|
+
console.warn(event.message);
|
|
87
|
+
}
|
|
88
|
+
return;
|
|
89
|
+
}
|
|
90
|
+
// Non-TTY: throttle to one line per ~10s
|
|
91
|
+
if (!isTTY) {
|
|
92
|
+
const now = Date.now();
|
|
93
|
+
if (now - lastNonTtyWrite >= 10_000) {
|
|
94
|
+
lastNonTtyWrite = now;
|
|
95
|
+
console.warn(event.message);
|
|
96
|
+
}
|
|
97
|
+
return;
|
|
98
|
+
}
|
|
99
|
+
// TTY: read current width every call (terminal can be resized)
|
|
100
|
+
const cols = process.stderr.columns || 80;
|
|
101
|
+
// If the flat message fits, use it as-is
|
|
102
|
+
if (event.message.length <= cols) {
|
|
103
|
+
writeProgress(event.message);
|
|
104
|
+
return;
|
|
105
|
+
}
|
|
106
|
+
// Build discrete segments and pack into as many lines as needed
|
|
107
|
+
if (event.counts) {
|
|
108
|
+
const { completed, total, failed } = event.counts;
|
|
109
|
+
const pct = ((completed / total) * 100).toFixed(1);
|
|
110
|
+
const segments = [`Batch: ${completed}/${total} (${pct}%)`];
|
|
111
|
+
if (failed > 0)
|
|
112
|
+
segments.push(`${failed} failed`);
|
|
113
|
+
if (event.etaSec != null)
|
|
114
|
+
segments.push(`ETA ~${formatDuration(event.etaSec)}`);
|
|
115
|
+
if (event.elapsedSec != null)
|
|
116
|
+
segments.push(`Elapsed: ${formatDuration(event.elapsedSec)}`);
|
|
117
|
+
if (event.pollRemainingSec != null)
|
|
118
|
+
segments.push(`Next poll: ${event.pollRemainingSec}s`);
|
|
119
|
+
writeProgressBlock(packLines(segments, cols));
|
|
120
|
+
}
|
|
121
|
+
else {
|
|
122
|
+
writeProgress(event.message);
|
|
123
|
+
}
|
|
124
|
+
}
|
|
13
125
|
program
|
|
14
126
|
.name("docs-mcp")
|
|
15
127
|
.description("Speakeasy MCP docs authoring and indexing CLI")
|
|
@@ -74,8 +186,61 @@ program
|
|
|
74
186
|
const outDir = path.resolve(options.out);
|
|
75
187
|
const files = await listMarkdownFiles(docsDir);
|
|
76
188
|
const manifestCache = new Map();
|
|
189
|
+
const lanceDbPath = path.join(outDir, ".lancedb");
|
|
190
|
+
const lanceDbTmpPath = path.join(outDir, ".lancedb.tmp");
|
|
191
|
+
const lanceDbOldPath = path.join(outDir, ".lancedb.old");
|
|
192
|
+
// Clean up stale tmp/old dirs from interrupted builds
|
|
193
|
+
await rm(lanceDbTmpPath, { recursive: true, force: true });
|
|
194
|
+
await rm(lanceDbOldPath, { recursive: true, force: true });
|
|
195
|
+
// Load previous index for chunk caching (old .lancedb/ stays readable during build)
|
|
196
|
+
let previousIndex = options.rebuildCache
|
|
197
|
+
? null
|
|
198
|
+
: await loadChunksFromPreviousIndex(lanceDbPath);
|
|
199
|
+
// Canary validation: re-chunk the first 10 fingerprint-matching files to
|
|
200
|
+
// detect chunking logic changes without maintaining a version number.
|
|
201
|
+
if (previousIndex) {
|
|
202
|
+
let validated = 0;
|
|
203
|
+
for (const file of files) {
|
|
204
|
+
if (validated >= 10)
|
|
205
|
+
break;
|
|
206
|
+
const markdown = await readFile(file, "utf8");
|
|
207
|
+
const relative = toPosix(path.relative(docsDir, file));
|
|
208
|
+
const manifestContext = await loadNearestManifest(file, docsDir, manifestCache);
|
|
209
|
+
const resolved = resolveFileConfig({
|
|
210
|
+
relativeFilePath: relative,
|
|
211
|
+
markdown,
|
|
212
|
+
...(manifestContext
|
|
213
|
+
? {
|
|
214
|
+
manifest: manifestContext.manifest,
|
|
215
|
+
manifestBaseDir: manifestContext.manifestBaseDir
|
|
216
|
+
}
|
|
217
|
+
: {})
|
|
218
|
+
});
|
|
219
|
+
const fingerprint = computeChunkFingerprint(markdown, resolved.strategy, resolved.metadata);
|
|
220
|
+
if (previousIndex.fingerprints.get(relative) !== fingerprint)
|
|
221
|
+
continue;
|
|
222
|
+
const freshChunks = buildChunks({
|
|
223
|
+
filepath: relative,
|
|
224
|
+
markdown,
|
|
225
|
+
strategy: resolved.strategy,
|
|
226
|
+
metadata: resolved.metadata
|
|
227
|
+
});
|
|
228
|
+
const cachedChunks = await previousIndex.getChunks(relative);
|
|
229
|
+
if (JSON.stringify(freshChunks) !== JSON.stringify(cachedChunks)) {
|
|
230
|
+
console.warn(`warn: chunk cache canary mismatch for ${relative}; discarding cache`);
|
|
231
|
+
previousIndex.close();
|
|
232
|
+
previousIndex = null;
|
|
233
|
+
break;
|
|
234
|
+
}
|
|
235
|
+
validated++;
|
|
236
|
+
}
|
|
237
|
+
}
|
|
77
238
|
const chunks = [];
|
|
78
|
-
|
|
239
|
+
const newFileFingerprints = {};
|
|
240
|
+
let chunkCacheHits = 0;
|
|
241
|
+
for (let fi = 0; fi < files.length; fi++) {
|
|
242
|
+
writeProgress(`Chunking [${fi + 1}/${files.length}]...`);
|
|
243
|
+
const file = files[fi];
|
|
79
244
|
const markdown = await readFile(file, "utf8");
|
|
80
245
|
const relative = toPosix(path.relative(docsDir, file));
|
|
81
246
|
const manifestContext = await loadNearestManifest(file, docsDir, manifestCache);
|
|
@@ -89,6 +254,14 @@ program
|
|
|
89
254
|
}
|
|
90
255
|
: {})
|
|
91
256
|
});
|
|
257
|
+
const fingerprint = computeChunkFingerprint(markdown, resolved.strategy, resolved.metadata);
|
|
258
|
+
newFileFingerprints[relative] = fingerprint;
|
|
259
|
+
if (previousIndex?.fingerprints.get(relative) === fingerprint) {
|
|
260
|
+
const cachedChunks = await previousIndex.getChunks(relative);
|
|
261
|
+
chunks.push(...cachedChunks);
|
|
262
|
+
chunkCacheHits++;
|
|
263
|
+
continue;
|
|
264
|
+
}
|
|
92
265
|
const fileChunks = buildChunks({
|
|
93
266
|
filepath: relative,
|
|
94
267
|
markdown,
|
|
@@ -97,8 +270,18 @@ program
|
|
|
97
270
|
});
|
|
98
271
|
chunks.push(...fileChunks);
|
|
99
272
|
}
|
|
273
|
+
clearProgress();
|
|
274
|
+
const cacheSuffix = chunkCacheHits > 0 ? ` (${chunkCacheHits} cached)` : "";
|
|
275
|
+
console.warn(`Chunked ${files.length} files into ${chunks.length.toLocaleString()} chunks${cacheSuffix}`);
|
|
276
|
+
const taxonomyConfig = mergeTaxonomyConfigs(manifestCache.values());
|
|
277
|
+
const onBatchProgress = (event) => {
|
|
278
|
+
writeBatchProgress(event);
|
|
279
|
+
};
|
|
100
280
|
const providerInput = {
|
|
101
|
-
provider: normalizeProvider(options.embeddingProvider)
|
|
281
|
+
provider: normalizeProvider(options.embeddingProvider),
|
|
282
|
+
batchApiThreshold: 2500,
|
|
283
|
+
batchName: `docs-mcp:${await resolveCorpusLabel(docsDir)}`,
|
|
284
|
+
onBatchProgress,
|
|
102
285
|
};
|
|
103
286
|
if (options.embeddingModel !== undefined) {
|
|
104
287
|
providerInput.model = options.embeddingModel;
|
|
@@ -136,7 +319,15 @@ program
|
|
|
136
319
|
// Load cache (skip when --rebuild-cache)
|
|
137
320
|
const cache = options.rebuildCache ? null : await loadCache(cacheBaseDir, config);
|
|
138
321
|
const embedStart = Date.now();
|
|
139
|
-
const
|
|
322
|
+
const onProgress = (event) => {
|
|
323
|
+
writeProgress(`Embedding [${event.completed}/${event.total}] (${event.cached} cached)...`);
|
|
324
|
+
};
|
|
325
|
+
const result = await embedChunksIncremental(chunks, { ...config, embed: (texts) => embeddingProvider.embed(texts) }, cache, {
|
|
326
|
+
...(embeddingProvider.batchSize !== undefined ? { batchSize: embeddingProvider.batchSize } : {}),
|
|
327
|
+
...(embeddingProvider.batchApiThreshold !== undefined ? { batchApiThreshold: embeddingProvider.batchApiThreshold } : {}),
|
|
328
|
+
onProgress,
|
|
329
|
+
});
|
|
330
|
+
clearProgress();
|
|
140
331
|
const embedMs = ((Date.now() - embedStart) / 1000).toFixed(1);
|
|
141
332
|
vectorsByChunkId = result.vectorsByChunkId;
|
|
142
333
|
// Emit stats to stderr on every run
|
|
@@ -166,18 +357,34 @@ program
|
|
|
166
357
|
dimensions: embeddingProvider.dimensions
|
|
167
358
|
};
|
|
168
359
|
const sourceCommit = await resolveSourceCommit(docsDir);
|
|
169
|
-
const metadata = buildMetadata(chunks, files, options.description, embeddingMetadata, sourceCommit);
|
|
360
|
+
const metadata = buildMetadata(chunks, files, options.description, embeddingMetadata, sourceCommit, taxonomyConfig);
|
|
170
361
|
const metadataKeys = Object.keys(metadata.taxonomy);
|
|
171
|
-
|
|
362
|
+
// Warn about taxonomy config keys that don't match any chunk metadata
|
|
363
|
+
for (const key of Object.keys(taxonomyConfig)) {
|
|
364
|
+
if (!metadata.taxonomy[key]) {
|
|
365
|
+
console.warn(`warn: taxonomy config key '${key}' does not match any chunk metadata — this configuration has no effect`);
|
|
366
|
+
}
|
|
367
|
+
}
|
|
368
|
+
// Close previous index before writing the new one
|
|
369
|
+
previousIndex?.close();
|
|
370
|
+
const indexStepLabels = {
|
|
371
|
+
"writing-table": "Building search index: writing table...",
|
|
372
|
+
"indexing-fts": "Building search index: full-text index...",
|
|
373
|
+
"indexing-scalar": "Building search index: scalar indices...",
|
|
374
|
+
"indexing-vector": "Building search index: vector index...",
|
|
375
|
+
};
|
|
172
376
|
const buildInput = {
|
|
173
|
-
dbPath:
|
|
377
|
+
dbPath: lanceDbTmpPath,
|
|
174
378
|
chunks,
|
|
175
|
-
metadataKeys
|
|
379
|
+
metadataKeys,
|
|
380
|
+
fileFingerprints: newFileFingerprints,
|
|
381
|
+
onProgress: (step) => writeProgress(indexStepLabels[step]),
|
|
176
382
|
};
|
|
177
383
|
if (vectorsByChunkId) {
|
|
178
384
|
buildInput.vectorsByChunkId = vectorsByChunkId;
|
|
179
385
|
}
|
|
180
386
|
await buildLanceDbIndex(buildInput);
|
|
387
|
+
clearProgress();
|
|
181
388
|
await writeFile(path.join(outDir, "chunks.json"), JSON.stringify(chunks, null, 2));
|
|
182
389
|
await writeFile(path.join(outDir, "metadata.json"), JSON.stringify({
|
|
183
390
|
...metadata,
|
|
@@ -187,15 +394,23 @@ program
|
|
|
187
394
|
path: ".lancedb"
|
|
188
395
|
}
|
|
189
396
|
}, null, 2));
|
|
397
|
+
// Atomic swap: .lancedb.tmp → .lancedb
|
|
398
|
+
await rm(lanceDbOldPath, { recursive: true, force: true });
|
|
399
|
+
try {
|
|
400
|
+
await rename(lanceDbPath, lanceDbOldPath);
|
|
401
|
+
}
|
|
402
|
+
catch { }
|
|
403
|
+
await rename(lanceDbTmpPath, lanceDbPath);
|
|
404
|
+
await rm(lanceDbOldPath, { recursive: true, force: true }).catch(() => { });
|
|
190
405
|
console.log(`wrote ${chunks.length} chunks and .lancedb index to ${outDir}`);
|
|
191
406
|
});
|
|
192
407
|
program
|
|
193
408
|
.command("fix")
|
|
194
|
-
.description("Generate a baseline .mcp
|
|
409
|
+
.description("Generate a baseline .docs-mcp.json using deterministic heading heuristics")
|
|
195
410
|
.requiredOption("--docs-dir <path>", "Path to markdown corpus")
|
|
196
411
|
.action(async (options) => {
|
|
197
412
|
const docsDir = path.resolve(options.docsDir);
|
|
198
|
-
const manifestPath = path.join(docsDir, ".mcp
|
|
413
|
+
const manifestPath = path.join(docsDir, ".docs-mcp.json");
|
|
199
414
|
if (await exists(manifestPath)) {
|
|
200
415
|
console.log(`manifest already exists: ${manifestPath}`);
|
|
201
416
|
return;
|
|
@@ -219,7 +434,7 @@ async function loadNearestManifest(filePath, docsDir, cache) {
|
|
|
219
434
|
let currentDir = path.dirname(filePath);
|
|
220
435
|
const stopDir = path.resolve(docsDir);
|
|
221
436
|
while (true) {
|
|
222
|
-
const candidate = path.join(currentDir, ".mcp
|
|
437
|
+
const candidate = path.join(currentDir, ".docs-mcp.json");
|
|
223
438
|
if (await exists(candidate)) {
|
|
224
439
|
const cached = cache.get(candidate);
|
|
225
440
|
const manifest = cached ?? parseManifestJson(await readFile(candidate, "utf8"));
|
|
@@ -253,7 +468,7 @@ async function listMarkdownFiles(docsDir) {
|
|
|
253
468
|
files.sort((a, b) => a.localeCompare(b));
|
|
254
469
|
return files;
|
|
255
470
|
}
|
|
256
|
-
function buildMetadata(chunks, files, corpusDescription, embedding, sourceCommit) {
|
|
471
|
+
function buildMetadata(chunks, files, corpusDescription, embedding, sourceCommit, taxonomyConfig) {
|
|
257
472
|
const taxonomyValues = new Map();
|
|
258
473
|
for (const chunk of chunks) {
|
|
259
474
|
for (const [key, value] of Object.entries(chunk.metadata)) {
|
|
@@ -264,9 +479,11 @@ function buildMetadata(chunks, files, corpusDescription, embedding, sourceCommit
|
|
|
264
479
|
}
|
|
265
480
|
const taxonomy = {};
|
|
266
481
|
for (const [key, values] of taxonomyValues.entries()) {
|
|
482
|
+
const config = taxonomyConfig[key];
|
|
267
483
|
taxonomy[key] = {
|
|
268
484
|
description: `Filter results by ${key}.`,
|
|
269
|
-
values: [...values].sort((a, b) => a.localeCompare(b))
|
|
485
|
+
values: [...values].sort((a, b) => a.localeCompare(b)),
|
|
486
|
+
...(config?.vector_collapse ? { vector_collapse: true } : {})
|
|
270
487
|
};
|
|
271
488
|
}
|
|
272
489
|
return {
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@speakeasy-api/docs-mcp-cli",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.2.0",
|
|
4
4
|
"description": "CLI toolchain for validating, indexing, and bootstrapping docs-mcp documentation corpora",
|
|
5
5
|
"license": "AGPL-3.0-only",
|
|
6
6
|
"type": "module",
|
|
@@ -34,7 +34,7 @@
|
|
|
34
34
|
"dependencies": {
|
|
35
35
|
"commander": "^13.1.0",
|
|
36
36
|
"fast-glob": "^3.3.3",
|
|
37
|
-
"@speakeasy-api/docs-mcp-core": "0.
|
|
37
|
+
"@speakeasy-api/docs-mcp-core": "0.2.0"
|
|
38
38
|
},
|
|
39
39
|
"scripts": {
|
|
40
40
|
"build": "tsc -p tsconfig.json",
|