matryoshka-rlm 0.2.4 → 0.2.6

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,149 @@
1
+ /**
2
+ * HandleSession - Handle-based document analysis session
3
+ *
4
+ * Wraps NucleusEngine with handle-based persistence for 97%+ token savings.
5
+ * Query results are stored in SQLite and only handle stubs are returned to the LLM.
6
+ */
7
+ /**
8
+ * Result of a handle-based query execution
9
+ */
10
+ export interface HandleResult {
11
+ success: boolean;
12
+ /** Handle reference (e.g., "$res1") if result is an array */
13
+ handle?: string;
14
+ /** Handle stub for LLM context (e.g., "$res1: Array(1000) [preview...]") */
15
+ stub?: string;
16
+ /** Scalar value if result is not an array */
17
+ value?: unknown;
18
+ /** Execution logs */
19
+ logs: string[];
20
+ /** Error message if failed */
21
+ error?: string;
22
+ /** Inferred type */
23
+ type?: string;
24
+ }
25
+ /**
26
+ * Options for expanding a handle
27
+ */
28
+ export interface ExpandOptions {
29
+ /** Maximum number of items to return (default: all) */
30
+ limit?: number;
31
+ /** Offset for pagination */
32
+ offset?: number;
33
+ /** Format: 'full' returns all fields, 'lines' returns just line content */
34
+ format?: "full" | "lines";
35
+ }
36
+ /**
37
+ * Result of expanding a handle
38
+ */
39
+ export interface ExpandResult {
40
+ success: boolean;
41
+ data?: unknown[];
42
+ total?: number;
43
+ offset?: number;
44
+ limit?: number;
45
+ error?: string;
46
+ }
47
+ /**
48
+ * HandleSession - combines NucleusEngine with handle-based storage
49
+ */
50
+ export declare class HandleSession {
51
+ private engine;
52
+ private db;
53
+ private registry;
54
+ private ops;
55
+ private documentPath;
56
+ private documentSize;
57
+ private loadedAt;
58
+ private lastAccessedAt;
59
+ private queryCount;
60
+ constructor();
61
+ /**
62
+ * Load a document from file
63
+ */
64
+ loadFile(filePath: string): Promise<{
65
+ lineCount: number;
66
+ size: number;
67
+ }>;
68
+ /**
69
+ * Load a document from string content
70
+ */
71
+ loadContent(content: string, path?: string): {
72
+ lineCount: number;
73
+ size: number;
74
+ };
75
+ /**
76
+ * Check if a document is loaded
77
+ */
78
+ isLoaded(): boolean;
79
+ /**
80
+ * Get document statistics
81
+ */
82
+ getStats(): {
83
+ path: string;
84
+ lineCount: number;
85
+ size: number;
86
+ loadedAt: Date | null;
87
+ } | null;
88
+ /**
89
+ * Execute a Nucleus query and return handle-based result
90
+ *
91
+ * Arrays are stored in SQLite and a handle stub is returned.
92
+ * Scalars are returned directly.
93
+ */
94
+ execute(command: string): HandleResult;
95
+ /**
96
+ * Expand a handle to get full data
97
+ *
98
+ * Use this when the LLM needs to see actual data for decision-making.
99
+ */
100
+ expand(handle: string, options?: ExpandOptions): ExpandResult;
101
+ /**
102
+ * Get a preview of handle contents (first N items)
103
+ */
104
+ preview(handle: string, n?: number): unknown[];
105
+ /**
106
+ * Get a random sample from a handle
107
+ */
108
+ sample(handle: string, n?: number): unknown[];
109
+ /**
110
+ * Describe handle contents (schema + stats)
111
+ */
112
+ describe(handle: string): {
113
+ count: number;
114
+ fields: string[];
115
+ sample: unknown[];
116
+ };
117
+ /**
118
+ * Get current handle bindings as stubs
119
+ */
120
+ getBindings(): Record<string, string>;
121
+ /**
122
+ * Build context string with all handle stubs
123
+ */
124
+ buildContext(): string;
125
+ /**
126
+ * Reset bindings but keep document loaded
127
+ */
128
+ reset(): void;
129
+ /**
130
+ * Get session info
131
+ */
132
+ getSessionInfo(): {
133
+ documentPath: string;
134
+ documentSize: number;
135
+ loadedAt: Date | null;
136
+ lastAccessedAt: Date | null;
137
+ queryCount: number;
138
+ handleCount: number;
139
+ };
140
+ /**
141
+ * Close the session and free resources
142
+ */
143
+ close(): void;
144
+ /**
145
+ * Get command reference
146
+ */
147
+ static getCommandReference(): string;
148
+ }
149
+ //# sourceMappingURL=handle-session.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"handle-session.d.ts","sourceRoot":"","sources":["../../src/engine/handle-session.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,240 @@
1
+ /**
2
+ * HandleSession - Handle-based document analysis session
3
+ *
4
+ * Wraps NucleusEngine with handle-based persistence for 97%+ token savings.
5
+ * Query results are stored in SQLite and only handle stubs are returned to the LLM.
6
+ */
7
+ import { readFile } from "node:fs/promises";
8
+ import { NucleusEngine } from "./nucleus-engine.js";
9
+ import { SessionDB } from "../persistence/session-db.js";
10
+ import { HandleRegistry } from "../persistence/handle-registry.js";
11
+ import { HandleOps } from "../persistence/handle-ops.js";
12
+ /**
13
+ * HandleSession - combines NucleusEngine with handle-based storage
14
+ */
15
+ export class HandleSession {
16
+ engine;
17
+ db;
18
+ registry;
19
+ ops;
20
+ documentPath = "";
21
+ documentSize = 0;
22
+ loadedAt = null;
23
+ lastAccessedAt = null;
24
+ queryCount = 0;
25
+ constructor() {
26
+ this.engine = new NucleusEngine();
27
+ this.db = new SessionDB();
28
+ this.registry = new HandleRegistry(this.db);
29
+ this.ops = new HandleOps(this.db, this.registry);
30
+ }
31
+ /**
32
+ * Load a document from file
33
+ */
34
+ async loadFile(filePath) {
35
+ const content = await readFile(filePath, "utf-8");
36
+ return this.loadContent(content, filePath);
37
+ }
38
+ /**
39
+ * Load a document from string content
40
+ */
41
+ loadContent(content, path = "<string>") {
42
+ // Load into NucleusEngine for query execution
43
+ this.engine.loadContent(content);
44
+ // Also load into SessionDB for FTS5 search and handle storage
45
+ const lineCount = this.db.loadDocument(content);
46
+ this.documentPath = path;
47
+ this.documentSize = content.length;
48
+ this.loadedAt = new Date();
49
+ this.lastAccessedAt = new Date();
50
+ this.queryCount = 0;
51
+ return { lineCount, size: content.length };
52
+ }
53
+ /**
54
+ * Check if a document is loaded
55
+ */
56
+ isLoaded() {
57
+ return this.engine.isLoaded();
58
+ }
59
+ /**
60
+ * Get document statistics
61
+ */
62
+ getStats() {
63
+ const engineStats = this.engine.getStats();
64
+ if (!engineStats)
65
+ return null;
66
+ return {
67
+ path: this.documentPath,
68
+ lineCount: engineStats.lineCount,
69
+ size: this.documentSize,
70
+ loadedAt: this.loadedAt,
71
+ };
72
+ }
73
+ /**
74
+ * Execute a Nucleus query and return handle-based result
75
+ *
76
+ * Arrays are stored in SQLite and a handle stub is returned.
77
+ * Scalars are returned directly.
78
+ */
79
+ execute(command) {
80
+ this.lastAccessedAt = new Date();
81
+ this.queryCount++;
82
+ // Execute via NucleusEngine
83
+ const result = this.engine.execute(command);
84
+ if (!result.success) {
85
+ return {
86
+ success: false,
87
+ logs: result.logs,
88
+ error: result.error,
89
+ type: result.type,
90
+ };
91
+ }
92
+ // If result is an array, store in handle registry
93
+ if (Array.isArray(result.value)) {
94
+ const handle = this.registry.store(result.value);
95
+ this.registry.setResults(handle);
96
+ // Get the stub for LLM context
97
+ const stub = this.registry.getStub(handle);
98
+ return {
99
+ success: true,
100
+ handle,
101
+ stub,
102
+ logs: result.logs,
103
+ type: result.type,
104
+ };
105
+ }
106
+ // Scalar result - return directly
107
+ return {
108
+ success: true,
109
+ value: result.value,
110
+ logs: result.logs,
111
+ type: result.type,
112
+ };
113
+ }
114
+ /**
115
+ * Expand a handle to get full data
116
+ *
117
+ * Use this when the LLM needs to see actual data for decision-making.
118
+ */
119
+ expand(handle, options = {}) {
120
+ this.lastAccessedAt = new Date();
121
+ const data = this.registry.get(handle);
122
+ if (data === null) {
123
+ return {
124
+ success: false,
125
+ error: `Invalid handle: ${handle}`,
126
+ };
127
+ }
128
+ const total = data.length;
129
+ const offset = options.offset ?? 0;
130
+ const limit = options.limit ?? total;
131
+ // Slice the data
132
+ let sliced = data.slice(offset, offset + limit);
133
+ // Format if requested
134
+ if (options.format === "lines") {
135
+ sliced = sliced.map((item) => {
136
+ if (typeof item === "object" && item !== null) {
137
+ const obj = item;
138
+ // Extract line content
139
+ const line = obj.line ?? obj.content ?? obj.text;
140
+ if (line !== undefined) {
141
+ const lineNum = obj.lineNum ?? obj.lineNumber ?? obj.num;
142
+ if (lineNum !== undefined) {
143
+ return `[${lineNum}] ${line}`;
144
+ }
145
+ return String(line);
146
+ }
147
+ }
148
+ return item;
149
+ });
150
+ }
151
+ return {
152
+ success: true,
153
+ data: sliced,
154
+ total,
155
+ offset,
156
+ limit,
157
+ };
158
+ }
159
+ /**
160
+ * Get a preview of handle contents (first N items)
161
+ */
162
+ preview(handle, n = 5) {
163
+ this.lastAccessedAt = new Date();
164
+ return this.ops.preview(handle, n);
165
+ }
166
+ /**
167
+ * Get a random sample from a handle
168
+ */
169
+ sample(handle, n = 5) {
170
+ this.lastAccessedAt = new Date();
171
+ return this.ops.sample(handle, n);
172
+ }
173
+ /**
174
+ * Describe handle contents (schema + stats)
175
+ */
176
+ describe(handle) {
177
+ this.lastAccessedAt = new Date();
178
+ return this.ops.describe(handle);
179
+ }
180
+ /**
181
+ * Get current handle bindings as stubs
182
+ */
183
+ getBindings() {
184
+ const handles = this.registry.listHandles();
185
+ const bindings = {};
186
+ for (const handle of handles) {
187
+ bindings[handle] = this.registry.getStub(handle);
188
+ }
189
+ // Mark current RESULTS
190
+ const resultsHandle = this.registry.getResults();
191
+ if (resultsHandle) {
192
+ bindings["RESULTS"] = `-> ${resultsHandle}`;
193
+ }
194
+ return bindings;
195
+ }
196
+ /**
197
+ * Build context string with all handle stubs
198
+ */
199
+ buildContext() {
200
+ return this.registry.buildContext();
201
+ }
202
+ /**
203
+ * Reset bindings but keep document loaded
204
+ */
205
+ reset() {
206
+ // Clear handles
207
+ const handles = this.registry.listHandles();
208
+ for (const handle of handles) {
209
+ this.registry.delete(handle);
210
+ }
211
+ // Reset engine state
212
+ this.engine.reset();
213
+ }
214
+ /**
215
+ * Get session info
216
+ */
217
+ getSessionInfo() {
218
+ return {
219
+ documentPath: this.documentPath,
220
+ documentSize: this.documentSize,
221
+ loadedAt: this.loadedAt,
222
+ lastAccessedAt: this.lastAccessedAt,
223
+ queryCount: this.queryCount,
224
+ handleCount: this.registry.listHandles().length,
225
+ };
226
+ }
227
+ /**
228
+ * Close the session and free resources
229
+ */
230
+ close() {
231
+ this.db.close();
232
+ }
233
+ /**
234
+ * Get command reference
235
+ */
236
+ static getCommandReference() {
237
+ return NucleusEngine.getCommandReference();
238
+ }
239
+ }
240
+ //# sourceMappingURL=handle-session.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"handle-session.js","sourceRoot":"","sources":["../../src/engine/handle-session.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"nucleus-engine.d.ts","sourceRoot":"","sources":["../../src/engine/nucleus-engine.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAOH;;GAEG;AACH,MAAM,WAAW,eAAe;IAC9B,OAAO,EAAE,OAAO,CAAC;IACjB,KAAK,EAAE,OAAO,CAAC;IACf,IAAI,EAAE,MAAM,EAAE,CAAC;IACf,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,IAAI,CAAC,EAAE,MAAM,CAAC;CACf;AAED;;GAEG;AACH,MAAM,WAAW,oBAAoB;IACnC,6BAA6B;IAC7B,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB;AAqGD;;;;;;;;;;;;;;GAcG;AACH,qBAAa,aAAa;IACxB,OAAO,CAAC,OAAO,CAAc;IAC7B,OAAO,CAAC,QAAQ,CAAuB;IACvC,OAAO,CAAC,WAAW,CAA4B;IAC/C,OAAO,CAAC,OAAO,CAAU;IACzB,OAAO,CAAC,WAAW,CAAa;gBAEpB,OAAO,GAAE,oBAAyB;IAI9C;;OAEG;IACG,QAAQ,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAK/C;;OAEG;IACH,WAAW,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI;IAYlC;;OAEG;IACH,QAAQ,IAAI,OAAO;IAInB;;OAEG;IACH,QAAQ,IAAI;QAAE,MAAM,EAAE,MAAM,CAAC;QAAC,SAAS,EAAE,MAAM,CAAA;KAAE,GAAG,IAAI;IAMxD;;;;;OAKG;IACH,OAAO,CAAC,OAAO,EAAE,MAAM,GAAG,eAAe;IAyEzC;;;;;OAKG;IACH,UAAU,CAAC,QAAQ,EAAE,MAAM,EAAE,GAAG,eAAe,EAAE;IAIjD;;OAEG;IACH,WAAW,IAAI,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;IAatC;;OAEG;IACH,UAAU,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO;IAIjC;;OAEG;IACH,UAAU,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,GAAG,IAAI;IAI9C;;OAEG;IACH,KAAK,IAAI,IAAI;IAQb;;OAEG;IACH,UAAU,IAAI,MAAM;IAIpB;;OAEG;IACH,MAAM,CAAC,mBAAmB,IAAI,MAAM;CA6CrC;AAED;;GAEG;AACH,wBAAsB,YAAY,CAAC,QAAQ,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,oBAAoB,GAAG,OAAO,CAAC,aAAa,CAAC,CAI3G;AAED;;GAEG;AACH,wBAAgB,uBAAuB,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,oBAAoB,GAAG,aAAa,CAItG"}
1
+ {"version":3,"file":"nucleus-engine.d.ts","sourceRoot":"","sources":["../../src/engine/nucleus-engine.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAOH;;GAEG;AACH,MAAM,WAAW,eAAe;IAC9B,OAAO,EAAE,OAAO,CAAC;IACjB,KAAK,EAAE,OAAO,CAAC;IACf,IAAI,EAAE,MAAM,EAAE,CAAC;IACf,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,IAAI,CAAC,EAAE,MAAM,CAAC;CACf;AAED;;GAEG;AACH,MAAM,WAAW,oBAAoB;IACnC,6BAA6B;IAC7B,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB;AAqGD;;;;;;;;;;;;;;GAcG;AACH,qBAAa,aAAa;IACxB,OAAO,CAAC,OAAO,CAAc;IAC7B,OAAO,CAAC,QAAQ,CAAuB;IACvC,OAAO,CAAC,WAAW,CAA4B;IAC/C,OAAO,CAAC,OAAO,CAAU;IACzB,OAAO,CAAC,WAAW,CAAa;gBAEpB,OAAO,GAAE,oBAAyB;IAI9C;;OAEG;IACG,QAAQ,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAK/C;;OAEG;IACH,WAAW,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI;IAYlC;;OAEG;IACH,QAAQ,IAAI,OAAO;IAInB;;OAEG;IACH,QAAQ,IAAI;QAAE,MAAM,EAAE,MAAM,CAAC;QAAC,SAAS,EAAE,MAAM,CAAA;KAAE,GAAG,IAAI;IAMxD;;;;;OAKG;IACH,OAAO,CAAC,OAAO,EAAE,MAAM,GAAG,eAAe;IAyEzC;;;;;OAKG;IACH,UAAU,CAAC,QAAQ,EAAE,MAAM,EAAE,GAAG,eAAe,EAAE;IAIjD;;OAEG;IACH,WAAW,IAAI,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;IAatC;;OAEG;IACH,UAAU,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO;IAIjC;;OAEG;IACH,UAAU,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,GAAG,IAAI;IAI9C;;OAEG;IACH,KAAK,IAAI,IAAI;IAQb;;OAEG;IACH,UAAU,IAAI,MAAM;IAIpB;;OAEG;IACH,MAAM,CAAC,mBAAmB,IAAI,MAAM;CAgDrC;AAED;;GAEG;AACH,wBAAsB,YAAY,CAAC,QAAQ,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,oBAAoB,GAAG,OAAO,CAAC,aAAa,CAAC,CAI3G;AAED;;GAEG;AACH,wBAAgB,uBAAuB,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,oBAAoB,GAAG,aAAa,CAItG"}
@@ -316,10 +316,13 @@ SYNTHESIS:
316
316
  (synthesize (example "in1" out1) (example "in2" out2) ...)
317
317
  Synthesize function from examples
318
318
 
319
- VARIABLES:
319
+ VARIABLES (for use in queries):
320
320
  RESULTS Last array result (auto-bound)
321
321
  _1, _2, _3, ... Results from turn N (auto-bound)
322
322
  context Raw document content
323
+
324
+ NOTE: $res1, $res2, etc. are handle stubs for lattice_expand only.
325
+ Use RESULTS or _1, _2, _3 to reference previous results in queries.
323
326
  `;
324
327
  }
325
328
  }
@@ -1 +1 @@
1
- {"version":3,"file":"nucleus-engine.js","sourceRoot":"","sources":["../../src/engine/nucleus-engine.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"nucleus-engine.js","sourceRoot":"","sources":["../../src/engine/nucleus-engine.ts"],"names":[],"mappings":"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"}
@@ -1,20 +1,25 @@
1
1
  #!/usr/bin/env node
2
2
  /**
3
- * Lattice MCP Server
3
+ * Lattice MCP Server - Handle-Based Document Analysis
4
4
  *
5
- * A stateful document analysis tool for LLM agents with session lifecycle management.
6
- * Uses Nucleus S-expression syntax for queries.
5
+ * A stateful document analysis tool that achieves 97%+ token savings by
6
+ * storing results in SQLite and returning only handle references to the LLM.
7
+ *
8
+ * KEY CONCEPT:
9
+ * - Query results are stored server-side, LLM sees only compact stubs
10
+ * - Use lattice_expand when you need to see actual data for decision-making
11
+ * - Chain operations via RESULTS without transferring full datasets
7
12
  *
8
13
  * SESSION LIFECYCLE:
9
14
  * - Sessions auto-expire after inactivity (default: 10 minutes)
10
15
  * - Loading a new document closes the previous session
11
16
  * - Explicit lattice_close tool for cleanup
12
- * - Memory is freed when session ends
13
17
  *
14
18
  * Usage:
15
19
  * 1. lattice_load - Load a document (starts session)
16
- * 2. lattice_query - Run queries (resets inactivity timer)
17
- * 3. lattice_close - Explicitly end session (or wait for timeout)
20
+ * 2. lattice_query - Run queries (returns handle stubs, not full data)
21
+ * 3. lattice_expand - Get full data when you need to inspect results
22
+ * 4. lattice_close - End session
18
23
  */
19
24
  export {};
20
25
  //# sourceMappingURL=lattice-mcp-server.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"lattice-mcp-server.d.ts","sourceRoot":"","sources":["../src/lattice-mcp-server.ts"],"names":[],"mappings":";AACA;;;;;;;;;;;;;;;;GAgBG"}
1
+ {"version":3,"file":"lattice-mcp-server.d.ts","sourceRoot":"","sources":["../src/lattice-mcp-server.ts"],"names":[],"mappings":";AACA;;;;;;;;;;;;;;;;;;;;;GAqBG"}
@@ -1,29 +1,35 @@
1
1
  #!/usr/bin/env node
2
2
  /**
3
- * Lattice MCP Server
3
+ * Lattice MCP Server - Handle-Based Document Analysis
4
4
  *
5
- * A stateful document analysis tool for LLM agents with session lifecycle management.
6
- * Uses Nucleus S-expression syntax for queries.
5
+ * A stateful document analysis tool that achieves 97%+ token savings by
6
+ * storing results in SQLite and returning only handle references to the LLM.
7
+ *
8
+ * KEY CONCEPT:
9
+ * - Query results are stored server-side, LLM sees only compact stubs
10
+ * - Use lattice_expand when you need to see actual data for decision-making
11
+ * - Chain operations via RESULTS without transferring full datasets
7
12
  *
8
13
  * SESSION LIFECYCLE:
9
14
  * - Sessions auto-expire after inactivity (default: 10 minutes)
10
15
  * - Loading a new document closes the previous session
11
16
  * - Explicit lattice_close tool for cleanup
12
- * - Memory is freed when session ends
13
17
  *
14
18
  * Usage:
15
19
  * 1. lattice_load - Load a document (starts session)
16
- * 2. lattice_query - Run queries (resets inactivity timer)
17
- * 3. lattice_close - Explicitly end session (or wait for timeout)
20
+ * 2. lattice_query - Run queries (returns handle stubs, not full data)
21
+ * 3. lattice_expand - Get full data when you need to inspect results
22
+ * 4. lattice_close - End session
18
23
  */
19
24
  import { Server } from "@modelcontextprotocol/sdk/server/index.js";
20
25
  import { StdioServerTransport } from "@modelcontextprotocol/sdk/server/stdio.js";
21
26
  import { CallToolRequestSchema, ListToolsRequestSchema, } from "@modelcontextprotocol/sdk/types.js";
22
- import { NucleusEngine } from "./engine/nucleus-engine.js";
27
+ import { HandleSession } from "./engine/handle-session.js";
23
28
  import { getVersion } from "./version.js";
24
29
  // Configuration
25
30
  const SESSION_TIMEOUT_MS = 10 * 60 * 1000; // 10 minutes
26
31
  const MAX_DOCUMENT_SIZE = 50 * 1024 * 1024; // 50MB limit
32
+ // Session state
27
33
  let session = null;
28
34
  let timeoutHandle = null;
29
35
  function resetInactivityTimer() {
@@ -39,11 +45,14 @@ function resetInactivityTimer() {
39
45
  }
40
46
  function closeSession(reason) {
41
47
  if (session) {
42
- const duration = Date.now() - session.loadedAt.getTime();
48
+ const info = session.getSessionInfo();
49
+ const duration = info.loadedAt ? Date.now() - info.loadedAt.getTime() : 0;
43
50
  console.error(`[Lattice] Session closed: ${reason} | ` +
44
- `Document: ${session.documentPath} | ` +
51
+ `Document: ${info.documentPath} | ` +
45
52
  `Duration: ${Math.round(duration / 1000)}s | ` +
46
- `Queries: ${session.queryCount}`);
53
+ `Queries: ${info.queryCount} | ` +
54
+ `Handles: ${info.handleCount}`);
55
+ session.close();
47
56
  session = null;
48
57
  }
49
58
  if (timeoutHandle) {
@@ -55,17 +64,19 @@ function getSessionInfo() {
55
64
  if (!session) {
56
65
  return "No active session";
57
66
  }
67
+ const info = session.getSessionInfo();
58
68
  const now = new Date();
59
- const age = Math.round((now.getTime() - session.loadedAt.getTime()) / 1000);
60
- const idle = Math.round((now.getTime() - session.lastAccessedAt.getTime()) / 1000);
69
+ const age = info.loadedAt ? Math.round((now.getTime() - info.loadedAt.getTime()) / 1000) : 0;
70
+ const idle = info.lastAccessedAt ? Math.round((now.getTime() - info.lastAccessedAt.getTime()) / 1000) : 0;
61
71
  const timeout = Math.round((SESSION_TIMEOUT_MS - idle * 1000) / 1000);
62
72
  return `Session active:
63
- Document: ${session.documentPath}
64
- Size: ${(session.documentSize / 1024).toFixed(1)} KB
73
+ Document: ${info.documentPath}
74
+ Size: ${(info.documentSize / 1024).toFixed(1)} KB
65
75
  Age: ${age}s
66
76
  Idle: ${idle}s
67
77
  Timeout in: ${Math.max(0, timeout)}s
68
- Queries: ${session.queryCount}`;
78
+ Queries: ${info.queryCount}
79
+ Active handles: ${info.handleCount}`;
69
80
  }
70
81
  const TOOLS = [
71
82
  {
@@ -78,15 +89,17 @@ RECOMMENDED WORKFLOW:
78
89
  3. Use Lattice for large files (>500 lines) - saves 80%+ tokens
79
90
  4. Chain queries: grep → filter → count/sum
80
91
 
92
+ HOW HANDLES WORK:
93
+ - Query results are stored server-side in SQLite
94
+ - You receive a compact stub like "$res1: Array(1000) [preview...]"
95
+ - Use lattice_expand to see full data when you need to make decisions
96
+ - This saves 97%+ tokens compared to returning full results
97
+
81
98
  EFFICIENT QUERY PATTERNS:
82
99
  - Start broad: (grep "ERROR") to find all errors
83
100
  - Then narrow: (filter RESULTS (lambda x (match x "timeout" 0)))
84
101
  - Finally aggregate: (count RESULTS) or (sum RESULTS)
85
-
86
- TOKEN EFFICIENCY:
87
- - Results show preview (first 20 items), not full data
88
- - Use (count RESULTS) to get totals without listing all
89
- - Chain operations to refine without re-reading
102
+ - Inspect when needed: use lattice_expand with limit
90
103
 
91
104
  SESSION: Document stays loaded for ${SESSION_TIMEOUT_MS / 60000} minutes.
92
105
  Call lattice_close when done.`,
@@ -105,28 +118,37 @@ Call lattice_close when done.`,
105
118
  name: "lattice_query",
106
119
  description: `Execute a Nucleus query on the loaded document.
107
120
 
108
- SEARCH (returns matches bound to RESULTS):
109
- (grep "pattern") Regex search - finds all matching lines
121
+ RETURNS HANDLE STUBS (not full data):
122
+ - Array results return a handle like "$res1: Array(500) [preview...]"
123
+ - Scalar results (count, sum) return the value directly
124
+ - Use lattice_expand when you need to see the actual data
125
+
126
+ SEARCH (returns handle to matches):
127
+ (grep "pattern") Regex search - returns handle to matching lines
110
128
  (fuzzy_search "query" 10) Fuzzy search - top N matches by relevance
111
129
  (lines 10 20) Get specific line range
112
130
 
113
- AGGREGATE (returns scalar, RESULTS unchanged):
114
- (count RESULTS) Count items
115
- (sum RESULTS) Sum numbers (auto-extracts from $1,234 format)
131
+ AGGREGATE (returns scalar directly):
132
+ (count RESULTS) Count items in current results
133
+ (sum RESULTS) Sum numeric values (auto-extracts from $1,234 format)
116
134
 
117
- TRANSFORM (returns new array, updates RESULTS):
135
+ TRANSFORM (returns new handle):
118
136
  (filter RESULTS (lambda x (match x "pattern" 0)))
119
137
  (map RESULTS (lambda x (match x "(\\d+)" 1)))
120
138
 
121
139
  EXTRACT:
122
140
  (match str "pattern" 1) Extract regex group from string
123
141
 
124
- EFFICIENT WORKFLOW:
125
- 1. (grep "ERROR") → Find all errors
126
- 2. (filter RESULTS ...) Narrow down
127
- 3. (count RESULTS) or (sum RESULTS) Get final answer
142
+ EXAMPLE WORKFLOW:
143
+ 1. (grep "ERROR") → Returns: $res1: Array(500) [preview]
144
+ 2. (filter RESULTS (lambda x ...)) Returns: $res2: Array(50) [preview]
145
+ 3. (count RESULTS) Returns: 50
146
+ 4. lattice_expand $res2 limit=10 → See 10 actual error messages
128
147
 
129
- Results are bound to RESULTS. Each turn also saves to _1, _2, etc.`,
148
+ VARIABLE BINDING:
149
+ - RESULTS: Always points to the last array result (use in queries)
150
+ - _1, _2, _3, ...: Results from turn N (use in queries for older results)
151
+ - $res1, $res2, ...: Handle stubs (use ONLY with lattice_expand, NOT in queries)`,
130
152
  inputSchema: {
131
153
  type: "object",
132
154
  properties: {
@@ -138,6 +160,52 @@ Results are bound to RESULTS. Each turn also saves to _1, _2, etc.`,
138
160
  required: ["command"],
139
161
  },
140
162
  },
163
+ {
164
+ name: "lattice_expand",
165
+ description: `Get full data from a handle when you need to inspect actual results.
166
+
167
+ USE THIS WHEN:
168
+ - You need to see actual content to make decisions
169
+ - You want to verify what's in a result set
170
+ - You need to extract specific data for your response
171
+
172
+ PARAMETERS:
173
+ - handle: The handle reference (e.g., "$res1")
174
+ - limit: Max items to return (default: all) - use for large result sets
175
+ - offset: Skip first N items (for pagination)
176
+ - format: "full" (default) or "lines" (just line content with numbers)
177
+
178
+ EXAMPLES:
179
+ lattice_expand $res1 → Full data from handle
180
+ lattice_expand $res1 limit=10 → First 10 items only
181
+ lattice_expand $res1 offset=10 limit=10 → Items 11-20 (pagination)
182
+ lattice_expand $res1 format=lines → "[1] line content..." format
183
+
184
+ TIP: Start with a small limit to preview, then expand more if needed.`,
185
+ inputSchema: {
186
+ type: "object",
187
+ properties: {
188
+ handle: {
189
+ type: "string",
190
+ description: 'Handle reference to expand (e.g., "$res1")',
191
+ },
192
+ limit: {
193
+ type: "number",
194
+ description: "Maximum number of items to return (default: all)",
195
+ },
196
+ offset: {
197
+ type: "number",
198
+ description: "Number of items to skip (for pagination)",
199
+ },
200
+ format: {
201
+ type: "string",
202
+ enum: ["full", "lines"],
203
+ description: '"full" for complete objects, "lines" for readable line format',
204
+ },
205
+ },
206
+ required: ["handle"],
207
+ },
208
+ },
141
209
  {
142
210
  name: "lattice_close",
143
211
  description: "Close the current session and free memory. " +
@@ -151,7 +219,7 @@ Results are bound to RESULTS. Each turn also saves to _1, _2, etc.`,
151
219
  },
152
220
  {
153
221
  name: "lattice_status",
154
- description: "Get current session status including document info, memory usage, and timeout.",
222
+ description: "Get current session status including document info, active handles, and timeout.",
155
223
  inputSchema: {
156
224
  type: "object",
157
225
  properties: {},
@@ -160,7 +228,14 @@ Results are bound to RESULTS. Each turn also saves to _1, _2, etc.`,
160
228
  },
161
229
  {
162
230
  name: "lattice_bindings",
163
- description: "Show current variable bindings (RESULTS, _1, _2, etc).",
231
+ description: `Show current handle bindings.
232
+
233
+ Returns all active handles with their stubs:
234
+ $res1: Array(500) [preview of first item...]
235
+ $res2: Array(50) [preview...]
236
+ RESULTS: -> $res2
237
+
238
+ Use this to see what data you have available before deciding what to expand.`,
164
239
  inputSchema: {
165
240
  type: "object",
166
241
  properties: {},
@@ -169,7 +244,7 @@ Results are bound to RESULTS. Each turn also saves to _1, _2, etc.`,
169
244
  },
170
245
  {
171
246
  name: "lattice_reset",
172
- description: "Reset variable bindings but keep document loaded.",
247
+ description: "Clear all handles and bindings but keep the document loaded. Use this to start fresh analysis.",
173
248
  inputSchema: {
174
249
  type: "object",
175
250
  properties: {},
@@ -186,33 +261,58 @@ Results are bound to RESULTS. Each turn also saves to _1, _2, etc.`,
186
261
  },
187
262
  },
188
263
  ];
189
- function formatResult(result) {
264
+ function formatHandleResult(result) {
190
265
  if (!result.success) {
191
266
  return `Error: ${result.error}`;
192
267
  }
193
- const value = result.value;
194
- if (Array.isArray(value)) {
195
- const preview = value.slice(0, 20).map((item) => {
196
- if (typeof item === "object" && item !== null && "line" in item) {
197
- const gr = item;
198
- return `[${gr.lineNum}] ${gr.line.slice(0, 100)}`;
199
- }
200
- return JSON.stringify(item).slice(0, 100);
201
- });
202
- let text = `Found ${value.length} results:\n${preview.join("\n")}`;
203
- if (value.length > 20) {
204
- text += `\n... and ${value.length - 20} more`;
205
- }
268
+ // If we have a handle (array result), return the stub
269
+ if (result.handle && result.stub) {
270
+ let text = result.stub;
206
271
  text += "\n\nChain with (count RESULTS), (filter RESULTS ...), (map RESULTS ...), etc.";
272
+ text += "\nUse lattice_expand to see full data when needed.";
207
273
  return text;
208
274
  }
209
- if (typeof value === "number") {
210
- return `Result: ${value.toLocaleString()}`;
275
+ // Scalar result
276
+ if (typeof result.value === "number") {
277
+ return `Result: ${result.value.toLocaleString()}`;
211
278
  }
212
- if (typeof value === "string") {
213
- return value;
279
+ if (typeof result.value === "string") {
280
+ return result.value;
214
281
  }
215
- return JSON.stringify(value, null, 2);
282
+ return JSON.stringify(result.value, null, 2);
283
+ }
284
+ function formatExpandResult(result) {
285
+ if (!result.success) {
286
+ return `Error: ${result.error}`;
287
+ }
288
+ const data = result.data;
289
+ let text = `Showing ${data.length} of ${result.total} items`;
290
+ if (result.offset && result.offset > 0) {
291
+ text += ` (offset: ${result.offset})`;
292
+ }
293
+ text += ":\n\n";
294
+ for (const item of data) {
295
+ if (typeof item === "string") {
296
+ text += item + "\n";
297
+ }
298
+ else if (typeof item === "object" && item !== null) {
299
+ const obj = item;
300
+ // Format nicely for line-based results
301
+ if ("lineNum" in obj && "line" in obj) {
302
+ text += `[${obj.lineNum}] ${obj.line}\n`;
303
+ }
304
+ else if ("lineNum" in obj && "content" in obj) {
305
+ text += `[${obj.lineNum}] ${obj.content}\n`;
306
+ }
307
+ else {
308
+ text += JSON.stringify(item) + "\n";
309
+ }
310
+ }
311
+ else {
312
+ text += JSON.stringify(item) + "\n";
313
+ }
314
+ }
315
+ return text;
216
316
  }
217
317
  async function handleToolCall(name, args) {
218
318
  try {
@@ -226,32 +326,21 @@ async function handleToolCall(name, args) {
226
326
  if (session) {
227
327
  closeSession("new document loaded");
228
328
  }
229
- // Create new engine and load
230
- const engine = new NucleusEngine();
231
- await engine.loadFile(filePath);
232
- const stats = engine.getStats();
233
- if (!stats) {
234
- return { content: [{ type: "text", text: "Error: Failed to get document stats" }] };
235
- }
329
+ // Create new session
330
+ session = new HandleSession();
331
+ const stats = await session.loadFile(filePath);
236
332
  // Check size limit
237
- if (stats.length > MAX_DOCUMENT_SIZE) {
333
+ if (stats.size > MAX_DOCUMENT_SIZE) {
334
+ session.close();
335
+ session = null;
238
336
  return {
239
337
  content: [{
240
338
  type: "text",
241
- text: `Error: Document too large (${(stats.length / 1024 / 1024).toFixed(1)}MB). ` +
339
+ text: `Error: Document too large (${(stats.size / 1024 / 1024).toFixed(1)}MB). ` +
242
340
  `Maximum size is ${MAX_DOCUMENT_SIZE / 1024 / 1024}MB.`,
243
341
  }],
244
342
  };
245
343
  }
246
- // Create session
247
- session = {
248
- engine,
249
- documentPath: filePath,
250
- documentSize: stats.length,
251
- loadedAt: new Date(),
252
- lastAccessedAt: new Date(),
253
- queryCount: 0,
254
- };
255
344
  // Start inactivity timer
256
345
  resetInactivityTimer();
257
346
  console.error(`[Lattice] Session started: ${filePath} (${stats.lineCount} lines)`);
@@ -260,8 +349,10 @@ async function handleToolCall(name, args) {
260
349
  type: "text",
261
350
  text: `Loaded ${filePath}:\n` +
262
351
  ` Lines: ${stats.lineCount.toLocaleString()}\n` +
263
- ` Size: ${(stats.length / 1024).toFixed(1)} KB\n` +
352
+ ` Size: ${(stats.size / 1024).toFixed(1)} KB\n` +
264
353
  ` Session timeout: ${SESSION_TIMEOUT_MS / 60000} minutes\n\n` +
354
+ `Results will be returned as handle stubs (97%+ token savings).\n` +
355
+ `Use lattice_expand to see full data when needed.\n\n` +
265
356
  `Ready for queries. Call lattice_close when done.`,
266
357
  }],
267
358
  };
@@ -279,20 +370,39 @@ async function handleToolCall(name, args) {
279
370
  if (!command) {
280
371
  return { content: [{ type: "text", text: "Error: command is required" }] };
281
372
  }
282
- // Update session
283
- session.lastAccessedAt = new Date();
284
- session.queryCount++;
285
373
  resetInactivityTimer();
286
- const result = session.engine.execute(command);
287
- return { content: [{ type: "text", text: formatResult(result) }] };
374
+ const result = session.execute(command);
375
+ return { content: [{ type: "text", text: formatHandleResult(result) }] };
376
+ }
377
+ case "lattice_expand": {
378
+ if (!session) {
379
+ return {
380
+ content: [{
381
+ type: "text",
382
+ text: "Error: No active session. Use lattice_load first.",
383
+ }],
384
+ };
385
+ }
386
+ const handle = args.handle;
387
+ if (!handle) {
388
+ return { content: [{ type: "text", text: "Error: handle is required" }] };
389
+ }
390
+ resetInactivityTimer();
391
+ const result = session.expand(handle, {
392
+ limit: args.limit,
393
+ offset: args.offset,
394
+ format: args.format,
395
+ });
396
+ return { content: [{ type: "text", text: formatExpandResult(result) }] };
288
397
  }
289
398
  case "lattice_close": {
290
399
  if (!session) {
291
400
  return { content: [{ type: "text", text: "No active session to close." }] };
292
401
  }
293
- const info = `Closed session for ${session.documentPath} (${session.queryCount} queries)`;
402
+ const info = session.getSessionInfo();
403
+ const summary = `Closed session for ${info.documentPath} (${info.queryCount} queries, ${info.handleCount} handles)`;
294
404
  closeSession("explicit close");
295
- return { content: [{ type: "text", text: info }] };
405
+ return { content: [{ type: "text", text: summary }] };
296
406
  }
297
407
  case "lattice_status": {
298
408
  return { content: [{ type: "text", text: getSessionInfo() }] };
@@ -301,10 +411,8 @@ async function handleToolCall(name, args) {
301
411
  if (!session) {
302
412
  return { content: [{ type: "text", text: "No active session." }] };
303
413
  }
304
- // Update access time
305
- session.lastAccessedAt = new Date();
306
414
  resetInactivityTimer();
307
- const bindings = session.engine.getBindings();
415
+ const bindings = session.getBindings();
308
416
  if (Object.keys(bindings).length === 0) {
309
417
  return { content: [{ type: "text", text: "No bindings yet. Run a query first." }] };
310
418
  }
@@ -312,7 +420,7 @@ async function handleToolCall(name, args) {
312
420
  return {
313
421
  content: [{
314
422
  type: "text",
315
- text: `Current bindings:\n${lines.join("\n")}`,
423
+ text: `Current bindings:\n${lines.join("\n")}\n\nUse lattice_expand <handle> to see full data.`,
316
424
  }],
317
425
  };
318
426
  }
@@ -320,14 +428,13 @@ async function handleToolCall(name, args) {
320
428
  if (!session) {
321
429
  return { content: [{ type: "text", text: "No active session." }] };
322
430
  }
323
- session.engine.reset();
324
- session.lastAccessedAt = new Date();
431
+ session.reset();
325
432
  resetInactivityTimer();
326
- return { content: [{ type: "text", text: "Bindings reset. Document still loaded." }] };
433
+ return { content: [{ type: "text", text: "Bindings and handles cleared. Document still loaded." }] };
327
434
  }
328
435
  case "lattice_help": {
329
436
  return {
330
- content: [{ type: "text", text: NucleusEngine.getCommandReference() }],
437
+ content: [{ type: "text", text: HandleSession.getCommandReference() }],
331
438
  };
332
439
  }
333
440
  default:
@@ -371,9 +478,10 @@ async function main() {
371
478
  });
372
479
  const transport = new StdioServerTransport();
373
480
  await server.connect(transport);
374
- console.error("[Lattice] MCP server started");
481
+ console.error("[Lattice] MCP server started (handle-based mode)");
375
482
  console.error(`[Lattice] Session timeout: ${SESSION_TIMEOUT_MS / 1000}s`);
376
483
  console.error(`[Lattice] Max document size: ${MAX_DOCUMENT_SIZE / 1024 / 1024}MB`);
484
+ console.error("[Lattice] Query results return handle stubs for 97%+ token savings");
377
485
  }
378
486
  main().catch((err) => {
379
487
  console.error("[Lattice] Fatal error:", err);
@@ -1 +1 @@
1
- {"version":3,"file":"lattice-mcp-server.js","sourceRoot":"","sources":["../src/lattice-mcp-server.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"lattice-mcp-server.js","sourceRoot":"","sources":["../src/lattice-mcp-server.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "matryoshka-rlm",
3
- "version": "0.2.4",
3
+ "version": "0.2.6",
4
4
  "type": "module",
5
5
  "description": "Recursive Language Model - Process documents larger than LLM context windows",
6
6
  "main": "dist/lib.js",
@@ -82,14 +82,15 @@
82
82
  "@modelcontextprotocol/sdk": "^1.0.0",
83
83
  "@types/better-sqlite3": "^7.6.13",
84
84
  "better-sqlite3": "^12.6.2",
85
+ "matryoshka-rlm": "^0.2.5",
85
86
  "ramo": "^0.1.2"
86
87
  },
87
88
  "devDependencies": {
88
89
  "@types/node": "^22.0.0",
89
- "@vitest/coverage-v8": "^2.1.0",
90
+ "@vitest/coverage-v8": "^4.0.17",
90
91
  "tsx": "^4.19.0",
91
92
  "typescript": "^5.6.0",
92
- "vitest": "^2.1.0"
93
+ "vitest": "^4.0.17"
93
94
  },
94
95
  "engines": {
95
96
  "node": ">=20.0.0"