@jcode.labs/ragmir 3.0.0 → 4.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.
@@ -0,0 +1,336 @@
1
+ import { existsSync } from "node:fs";
2
+ import path from "node:path";
3
+ import { McpServer } from "@modelcontextprotocol/sdk/server/mcp.js";
4
+ import { StdioServerTransport } from "@modelcontextprotocol/sdk/server/stdio.js";
5
+ import { z } from "zod";
6
+ import { loadConfig } from "./config.js";
7
+ import { RAGMIR_PORTABLE_READ_ONLY_ENV, RAGMIR_PROJECT_ROOT_ENV } from "./defaults.js";
8
+ import { verifyPortableKnowledgeBase } from "./portable.js";
9
+ import { routePrompt } from "./prompt-routing.js";
10
+ import { ask, expandCitation, search } from "./query.js";
11
+ import { readIndexManifestHeader } from "./store.js";
12
+ import { VERSION } from "./version.js";
13
+ const MAX_PORTABLE_TOP_K = 20;
14
+ const MAX_COMPACT_SNIPPET_CHARACTERS = 320;
15
+ const READ_ONLY_ANNOTATIONS = {
16
+ readOnlyHint: true,
17
+ destructiveHint: false,
18
+ idempotentHint: true,
19
+ openWorldHint: false,
20
+ };
21
+ const searchInputSchema = z
22
+ .object({
23
+ query: z.string().trim().min(1).max(20_000),
24
+ topK: z.number().int().positive().max(MAX_PORTABLE_TOP_K).optional(),
25
+ contextRadius: z.number().int().min(0).max(3).optional(),
26
+ compact: z.boolean().optional(),
27
+ includePaths: z.array(z.string().min(1).max(500)).max(20).optional(),
28
+ excludePaths: z.array(z.string().min(1).max(500)).max(20).optional(),
29
+ contextPaths: z.array(z.string().min(1).max(500)).max(20).optional(),
30
+ })
31
+ .strict();
32
+ const expandInputSchema = z
33
+ .object({
34
+ citation: z.string().min(1).max(2_000),
35
+ contextRadius: z.number().int().min(0).max(3).optional(),
36
+ })
37
+ .strict();
38
+ const routeInputSchema = z.object({ prompt: z.string().trim().min(1).max(20_000) }).strict();
39
+ export async function runPortableCli(argv = process.argv.slice(2)) {
40
+ const [command, ...rest] = argv;
41
+ if (!command || command === "--help" || command === "-h") {
42
+ writeHelp();
43
+ return;
44
+ }
45
+ if (command === "--version" || command === "-V") {
46
+ process.stdout.write(`${VERSION}\n`);
47
+ return;
48
+ }
49
+ const root = portableRoot();
50
+ process.chdir(root);
51
+ process.env[RAGMIR_PROJECT_ROOT_ENV] = root;
52
+ process.env[RAGMIR_PORTABLE_READ_ONLY_ENV] = "1";
53
+ if (command === "serve-mcp") {
54
+ await servePortableMcp(root);
55
+ return;
56
+ }
57
+ if (command === "portable") {
58
+ await runPortableVerification(rest, root);
59
+ return;
60
+ }
61
+ if (command === "status" || command === "doctor") {
62
+ const json = rest.includes("--json");
63
+ const result = await portableStatus(root);
64
+ writeValue(result, json);
65
+ return;
66
+ }
67
+ if (command === "route-prompt") {
68
+ const parsed = parseCommandArguments(rest);
69
+ const prompt = parsed.positionals.join(" ");
70
+ if (!prompt) {
71
+ throw new Error("Missing prompt. Pass text after `route-prompt`.");
72
+ }
73
+ writeValue(routePrompt(prompt), parsed.json);
74
+ return;
75
+ }
76
+ if (command === "search" || command === "ask") {
77
+ const parsed = parseCommandArguments(rest);
78
+ const query = parsed.positionals.join(" ");
79
+ if (!query) {
80
+ throw new Error(`Missing query. Pass text after \`${command}\`.`);
81
+ }
82
+ const options = searchOptions(parsed, root);
83
+ const result = command === "search" ? await search(query, options) : await ask(query, options);
84
+ writeValue(parsed.compact ? compactValue(result) : result, parsed.json);
85
+ return;
86
+ }
87
+ throw new Error("This frozen bundle allows only status, doctor, route-prompt, search, ask, serve-mcp, and portable verify.");
88
+ }
89
+ async function runPortableVerification(args, root) {
90
+ const [subcommand, ...rest] = args;
91
+ if (subcommand !== "verify") {
92
+ throw new Error("Portable bundles allow only the `portable verify` subcommand.");
93
+ }
94
+ const target = rest.find((value) => !value.startsWith("-")) ?? root;
95
+ const result = await verifyPortableKnowledgeBase(target);
96
+ writeValue(result, rest.includes("--json"));
97
+ if (!result.valid) {
98
+ process.exitCode = 1;
99
+ }
100
+ }
101
+ export async function servePortableMcp(cwd = portableRoot()) {
102
+ const server = createPortableMcpServer(cwd);
103
+ await server.connect(new StdioServerTransport());
104
+ }
105
+ export function createPortableMcpServer(cwd = portableRoot()) {
106
+ const server = new McpServer({ name: "ragmir-portable", version: VERSION });
107
+ server.registerResource("ragmir-context", "ragmir://context", {
108
+ title: "Ragmir Portable Knowledge Base Context",
109
+ description: "Identity and read-only capabilities of this frozen portable knowledge base.",
110
+ mimeType: "application/json",
111
+ }, async (uri) => jsonResource(uri.href, await portableStatus(cwd)));
112
+ server.registerResource("ragmir-sources", "ragmir://sources", {
113
+ title: "Ragmir Portable Source Catalog",
114
+ description: "The source catalog is intentionally unavailable in a frozen portable bundle.",
115
+ mimeType: "application/json",
116
+ }, async (uri) => jsonResource(uri.href, {
117
+ sourceFilesIncluded: false,
118
+ indexedPassagesIncluded: true,
119
+ message: "Raw source files are intentionally excluded from this frozen portable bundle.",
120
+ }));
121
+ server.registerTool("ragmir_status", {
122
+ title: "Ragmir Portable Status",
123
+ description: "Show frozen knowledge-base identity, readiness, and read-only capabilities.",
124
+ inputSchema: z.object({}).strict(),
125
+ annotations: READ_ONLY_ANNOTATIONS,
126
+ }, async () => jsonToolResult(await portableStatus(cwd)));
127
+ server.registerTool("ragmir_route_prompt", {
128
+ title: "Ragmir Prompt Router",
129
+ description: "Classify a prompt and suggest whether cited portable evidence is useful.",
130
+ inputSchema: routeInputSchema,
131
+ annotations: READ_ONLY_ANNOTATIONS,
132
+ }, async ({ prompt }) => jsonToolResult(routePrompt(prompt)));
133
+ server.registerTool("ragmir_search", {
134
+ title: "Ragmir Portable Search",
135
+ description: "Retrieve cited evidence from the frozen portable knowledge base.",
136
+ inputSchema: searchInputSchema,
137
+ annotations: READ_ONLY_ANNOTATIONS,
138
+ }, async (input) => {
139
+ const results = await search(input.query, searchOptions(input, cwd));
140
+ return jsonToolResult(input.compact === false ? results : compactResults(results));
141
+ });
142
+ server.registerTool("ragmir_ask", {
143
+ title: "Ragmir Portable Ask",
144
+ description: "Return cited retrieval context without invoking an LLM.",
145
+ inputSchema: searchInputSchema,
146
+ annotations: READ_ONLY_ANNOTATIONS,
147
+ }, async (input) => {
148
+ const result = await ask(input.query, searchOptions(input, cwd));
149
+ return jsonToolResult(input.compact === false
150
+ ? result
151
+ : {
152
+ answer: "Ragmir returns compact cited retrieval only. Expand a citation when needed.",
153
+ sources: compactResults(result.sources),
154
+ staleWarning: result.staleWarning,
155
+ });
156
+ });
157
+ server.registerTool("ragmir_expand", {
158
+ title: "Ragmir Portable Expand",
159
+ description: "Expand an exact cited passage from the frozen portable knowledge base.",
160
+ inputSchema: expandInputSchema,
161
+ annotations: READ_ONLY_ANNOTATIONS,
162
+ }, async ({ citation, contextRadius }) => jsonToolResult(await expandCitation(citation, {
163
+ cwd,
164
+ ...(contextRadius === undefined ? {} : { contextRadius }),
165
+ })));
166
+ return server;
167
+ }
168
+ async function portableStatus(cwd) {
169
+ const config = await loadConfig(cwd);
170
+ const manifest = await readIndexManifestHeader(config);
171
+ return {
172
+ knowledgeBaseId: ".",
173
+ frozen: true,
174
+ ready: manifest !== null && (manifest.chunkCount ?? 0) > 0,
175
+ corpusFingerprint: manifest?.corpusFingerprint ?? null,
176
+ indexedFiles: manifest?.fileCount ?? 0,
177
+ chunksIndexed: manifest?.chunkCount ?? 0,
178
+ embeddingProvider: config.embeddingProvider,
179
+ embeddingModel: config.embeddingModel,
180
+ embeddingModelRevision: config.embeddingModelRevision,
181
+ embeddingModelDigest: config.embeddingModelDigest,
182
+ retrievalProfile: config.retrievalProfile,
183
+ sourceFilesIncluded: false,
184
+ indexedPassagesIncluded: true,
185
+ accessLogsIncluded: false,
186
+ tools: ["ragmir_status", "ragmir_route_prompt", "ragmir_search", "ragmir_ask", "ragmir_expand"],
187
+ };
188
+ }
189
+ function parseCommandArguments(args) {
190
+ const parsed = {
191
+ json: false,
192
+ compact: false,
193
+ topK: undefined,
194
+ contextRadius: undefined,
195
+ includePaths: [],
196
+ excludePaths: [],
197
+ contextPaths: [],
198
+ positionals: [],
199
+ };
200
+ for (let index = 0; index < args.length; index += 1) {
201
+ const value = args[index];
202
+ if (value === undefined) {
203
+ continue;
204
+ }
205
+ if (value === "--json") {
206
+ parsed.json = true;
207
+ continue;
208
+ }
209
+ if (value === "--compact") {
210
+ parsed.compact = true;
211
+ continue;
212
+ }
213
+ if (value === "--top-k" || value === "--topK") {
214
+ parsed.topK = parsePositiveInteger(args[++index], value);
215
+ continue;
216
+ }
217
+ if (value === "--context-radius") {
218
+ parsed.contextRadius = parseNonnegativeInteger(args[++index], value);
219
+ continue;
220
+ }
221
+ if (value === "--include-path") {
222
+ parsed.includePaths.push(requiredOptionValue(args[++index], value));
223
+ continue;
224
+ }
225
+ if (value === "--exclude-path") {
226
+ parsed.excludePaths.push(requiredOptionValue(args[++index], value));
227
+ continue;
228
+ }
229
+ if (value === "--context-path") {
230
+ parsed.contextPaths.push(requiredOptionValue(args[++index], value));
231
+ continue;
232
+ }
233
+ if (value.startsWith("-")) {
234
+ throw new Error(`Unknown option: ${value}`);
235
+ }
236
+ parsed.positionals.push(value);
237
+ }
238
+ return parsed;
239
+ }
240
+ function searchOptions(input, cwd) {
241
+ return {
242
+ cwd,
243
+ ...(input.topK === undefined ? {} : { topK: Math.min(input.topK, MAX_PORTABLE_TOP_K) }),
244
+ ...(input.contextRadius === undefined ? {} : { contextRadius: input.contextRadius }),
245
+ ...(input.includePaths?.length ? { includePaths: input.includePaths } : {}),
246
+ ...(input.excludePaths?.length ? { excludePaths: input.excludePaths } : {}),
247
+ ...(input.contextPaths?.length ? { contextPaths: input.contextPaths } : {}),
248
+ };
249
+ }
250
+ function compactResults(results) {
251
+ return results.map((result) => ({
252
+ source: result.source,
253
+ relativePath: result.relativePath,
254
+ chunkIndex: result.chunkIndex,
255
+ contextPath: result.contextPath,
256
+ citation: result.citation,
257
+ snippet: result.text.slice(0, MAX_COMPACT_SNIPPET_CHARACTERS),
258
+ distance: result.distance,
259
+ lineStart: result.lineStart,
260
+ lineEnd: result.lineEnd,
261
+ pageStart: result.pageStart,
262
+ pageEnd: result.pageEnd,
263
+ }));
264
+ }
265
+ function compactValue(value) {
266
+ if (Array.isArray(value)) {
267
+ return compactResults(value);
268
+ }
269
+ return value;
270
+ }
271
+ function jsonToolResult(value) {
272
+ return {
273
+ content: [{ type: "text", text: JSON.stringify(value) }],
274
+ };
275
+ }
276
+ function jsonResource(uri, value) {
277
+ return {
278
+ contents: [{ uri, mimeType: "application/json", text: JSON.stringify(value) }],
279
+ };
280
+ }
281
+ function writeValue(value, json) {
282
+ if (json) {
283
+ process.stdout.write(`${JSON.stringify(value, null, 2)}\n`);
284
+ return;
285
+ }
286
+ process.stdout.write(`${JSON.stringify(value, null, 2)}\n`);
287
+ }
288
+ function writeHelp() {
289
+ process.stdout.write([
290
+ "Usage: node bin/rgr.cjs <command> [options]",
291
+ "",
292
+ "Frozen portable knowledge-base commands:",
293
+ " status [--json]",
294
+ " doctor [--json]",
295
+ " route-prompt [--json] <prompt>",
296
+ " search [--json] [--compact] [--top-k <n>] <query>",
297
+ " ask [--json] [--compact] [--top-k <n>] <query>",
298
+ " serve-mcp",
299
+ " portable verify [directory] [--json]",
300
+ "",
301
+ ].join("\n"));
302
+ }
303
+ function portableRoot() {
304
+ const configured = process.env[RAGMIR_PROJECT_ROOT_ENV];
305
+ if (configured && existsSync(path.join(configured, ".ragmir", "config.json"))) {
306
+ return path.resolve(configured);
307
+ }
308
+ return process.cwd();
309
+ }
310
+ function parsePositiveInteger(value, option) {
311
+ const parsed = parseNonnegativeInteger(value, option);
312
+ if (parsed < 1) {
313
+ throw new Error(`${option} must be a positive integer.`);
314
+ }
315
+ return parsed;
316
+ }
317
+ function parseNonnegativeInteger(value, option) {
318
+ const parsed = Number(requiredOptionValue(value, option));
319
+ if (!Number.isInteger(parsed) || parsed < 0) {
320
+ throw new Error(`${option} must be a non-negative integer.`);
321
+ }
322
+ return parsed;
323
+ }
324
+ function requiredOptionValue(value, option) {
325
+ if (!value || value.startsWith("-")) {
326
+ throw new Error(`Missing value for ${option}.`);
327
+ }
328
+ return value;
329
+ }
330
+ if (process.argv[1]?.endsWith("portable-entry.js")) {
331
+ runPortableCli().catch((error) => {
332
+ process.stderr.write(`${error instanceof Error ? error.message : String(error)}\n`);
333
+ process.exitCode = 1;
334
+ });
335
+ }
336
+ //# sourceMappingURL=portable-entry.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"portable-entry.js","sourceRoot":"","sources":["../src/portable-entry.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,89 @@
1
+ import { z } from "zod";
2
+ import type { OperationOptions } from "./types.js";
3
+ export declare const portableKnowledgeBaseManifestSchema: z.ZodObject<{
4
+ schemaVersion: z.ZodLiteral<1>;
5
+ kind: z.ZodLiteral<"ragmir-portable-knowledge-base">;
6
+ createdAt: z.ZodString;
7
+ name: z.ZodString;
8
+ ragmirVersion: z.ZodString;
9
+ runtime: z.ZodObject<{
10
+ node: z.ZodLiteral<">=22">;
11
+ package: z.ZodLiteral<"@jcode.labs/ragmir">;
12
+ packageVersion: z.ZodString;
13
+ resolution: z.ZodEnum<{
14
+ "embedded-platform-runtime": "embedded-platform-runtime";
15
+ "local-install-or-pinned-npx": "local-install-or-pinned-npx";
16
+ }>;
17
+ exportedOn: z.ZodObject<{
18
+ platform: z.ZodString;
19
+ arch: z.ZodString;
20
+ }, z.core.$strict>;
21
+ }, z.core.$strict>;
22
+ knowledgeBase: z.ZodObject<{
23
+ corpusFingerprint: z.ZodNullable<z.ZodString>;
24
+ indexedFiles: z.ZodNumber;
25
+ indexedChunks: z.ZodNumber;
26
+ embeddingProvider: z.ZodEnum<{
27
+ "local-hash": "local-hash";
28
+ transformers: "transformers";
29
+ }>;
30
+ embeddingModel: z.ZodString;
31
+ embeddingModelRevision: z.ZodString;
32
+ embeddingModelDigest: z.ZodNullable<z.ZodString>;
33
+ indexSchemaVersion: z.ZodNumber;
34
+ tableName: z.ZodString;
35
+ }, z.core.$strict>;
36
+ contents: z.ZodObject<{
37
+ rawSourcesIncluded: z.ZodLiteral<false>;
38
+ indexedTextIncluded: z.ZodLiteral<true>;
39
+ accessLogsIncluded: z.ZodLiteral<false>;
40
+ embeddingModelIncluded: z.ZodBoolean;
41
+ skills: z.ZodArray<z.ZodEnum<{
42
+ "ragmir-portable": "ragmir-portable";
43
+ "ragmir-decision-evidence": "ragmir-decision-evidence";
44
+ }>>;
45
+ adapters: z.ZodArray<z.ZodEnum<{
46
+ "claude-mcp-server.json": "claude-mcp-server.json";
47
+ "codex-mcp.toml": "codex-mcp.toml";
48
+ "kimi-mcp.json": "kimi-mcp.json";
49
+ "opencode.jsonc": "opencode.jsonc";
50
+ "cline-mcp.json": "cline-mcp.json";
51
+ "README.md": "README.md";
52
+ "generic-mcp.json": "generic-mcp.json";
53
+ "openclaw-mcp-server.json": "openclaw-mcp-server.json";
54
+ "stdio-command.txt": "stdio-command.txt";
55
+ }>>;
56
+ }, z.core.$strict>;
57
+ files: z.ZodArray<z.ZodObject<{
58
+ path: z.ZodString;
59
+ bytes: z.ZodNumber;
60
+ sha256: z.ZodString;
61
+ }, z.core.$strict>>;
62
+ }, z.core.$strict>;
63
+ export type PortableKnowledgeBaseManifest = z.infer<typeof portableKnowledgeBaseManifestSchema>;
64
+ export interface ExportPortableKnowledgeBaseOptions extends OperationOptions {
65
+ cwd?: string;
66
+ outputDir?: string;
67
+ name?: string;
68
+ replaceExisting?: boolean;
69
+ }
70
+ export interface PortableKnowledgeBaseVerification {
71
+ root: string;
72
+ valid: boolean;
73
+ checkedFiles: number;
74
+ errors: string[];
75
+ warnings: string[];
76
+ manifest: PortableKnowledgeBaseManifest | null;
77
+ }
78
+ export interface ExportPortableKnowledgeBaseResult {
79
+ outputDir: string;
80
+ previousOutputDir: string | null;
81
+ manifestPath: string;
82
+ fileCount: number;
83
+ totalBytes: number;
84
+ embeddingModelIncluded: boolean;
85
+ verification: PortableKnowledgeBaseVerification;
86
+ }
87
+ export declare function exportPortableKnowledgeBase(options?: ExportPortableKnowledgeBaseOptions): Promise<ExportPortableKnowledgeBaseResult>;
88
+ export declare function verifyPortableKnowledgeBase(root: string): Promise<PortableKnowledgeBaseVerification>;
89
+ //# sourceMappingURL=portable.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"portable.d.ts","sourceRoot":"","sources":["../src/portable.ts"],"names":[],"mappings":"AAgBA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAA;AAoBvB,OAAO,KAAK,EAAyB,gBAAgB,EAAE,MAAM,YAAY,CAAA;AAyEzE,eAAO,MAAM,mCAAmC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;kBAgDrC,CAAA;AAEX,MAAM,MAAM,6BAA6B,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,mCAAmC,CAAC,CAAA;AAE/F,MAAM,WAAW,kCAAmC,SAAQ,gBAAgB;IAC1E,GAAG,CAAC,EAAE,MAAM,CAAA;IACZ,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,eAAe,CAAC,EAAE,OAAO,CAAA;CAC1B;AAED,MAAM,WAAW,iCAAiC;IAChD,IAAI,EAAE,MAAM,CAAA;IACZ,KAAK,EAAE,OAAO,CAAA;IACd,YAAY,EAAE,MAAM,CAAA;IACpB,MAAM,EAAE,MAAM,EAAE,CAAA;IAChB,QAAQ,EAAE,MAAM,EAAE,CAAA;IAClB,QAAQ,EAAE,6BAA6B,GAAG,IAAI,CAAA;CAC/C;AAED,MAAM,WAAW,iCAAiC;IAChD,SAAS,EAAE,MAAM,CAAA;IACjB,iBAAiB,EAAE,MAAM,GAAG,IAAI,CAAA;IAChC,YAAY,EAAE,MAAM,CAAA;IACpB,SAAS,EAAE,MAAM,CAAA;IACjB,UAAU,EAAE,MAAM,CAAA;IAClB,sBAAsB,EAAE,OAAO,CAAA;IAC/B,YAAY,EAAE,iCAAiC,CAAA;CAChD;AAMD,wBAAsB,2BAA2B,CAC/C,OAAO,GAAE,kCAAuC,GAC/C,OAAO,CAAC,iCAAiC,CAAC,CAwE5C;AAED,wBAAsB,2BAA2B,CAC/C,IAAI,EAAE,MAAM,GACX,OAAO,CAAC,iCAAiC,CAAC,CAgH5C"}