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.
- package/dist/engine/handle-session.d.ts +149 -0
- package/dist/engine/handle-session.d.ts.map +1 -0
- package/dist/engine/handle-session.js +240 -0
- package/dist/engine/handle-session.js.map +1 -0
- package/dist/engine/nucleus-engine.d.ts.map +1 -1
- package/dist/engine/nucleus-engine.js +4 -1
- package/dist/engine/nucleus-engine.js.map +1 -1
- package/dist/lattice-mcp-server.d.ts +11 -6
- package/dist/lattice-mcp-server.d.ts.map +1 -1
- package/dist/lattice-mcp-server.js +196 -88
- package/dist/lattice-mcp-server.js.map +1 -1
- package/package.json +4 -3
|
@@ -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":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAC5C,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AACpD,OAAO,EAAE,SAAS,EAAE,MAAM,8BAA8B,CAAC;AACzD,OAAO,EAAE,cAAc,EAAE,MAAM,mCAAmC,CAAC;AACnE,OAAO,EAAE,SAAS,EAAE,MAAM,8BAA8B,CAAC;AA6CzD;;GAEG;AACH,MAAM,OAAO,aAAa;IAChB,MAAM,CAAgB;IACtB,EAAE,CAAY;IACd,QAAQ,CAAiB;IACzB,GAAG,CAAY;IACf,YAAY,GAAW,EAAE,CAAC;IAC1B,YAAY,GAAW,CAAC,CAAC;IACzB,QAAQ,GAAgB,IAAI,CAAC;IAC7B,cAAc,GAAgB,IAAI,CAAC;IACnC,UAAU,GAAW,CAAC,CAAC;IAE/B;QACE,IAAI,CAAC,MAAM,GAAG,IAAI,aAAa,EAAE,CAAC;QAClC,IAAI,CAAC,EAAE,GAAG,IAAI,SAAS,EAAE,CAAC;QAC1B,IAAI,CAAC,QAAQ,GAAG,IAAI,cAAc,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QAC5C,IAAI,CAAC,GAAG,GAAG,IAAI,SAAS,CAAC,IAAI,CAAC,EAAE,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC;IACnD,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,QAAQ,CAAC,QAAgB;QAC7B,MAAM,OAAO,GAAG,MAAM,QAAQ,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;QAClD,OAAO,IAAI,CAAC,WAAW,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAC;IAC7C,CAAC;IAED;;OAEG;IACH,WAAW,CAAC,OAAe,EAAE,OAAe,UAAU;QACpD,8CAA8C;QAC9C,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC;QAEjC,8DAA8D;QAC9D,MAAM,SAAS,GAAG,IAAI,CAAC,EAAE,CAAC,YAAY,CAAC,OAAO,CAAC,CAAC;QAEhD,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC;QACzB,IAAI,CAAC,YAAY,GAAG,OAAO,CAAC,MAAM,CAAC;QACnC,IAAI,CAAC,QAAQ,GAAG,IAAI,IAAI,EAAE,CAAC;QAC3B,IAAI,CAAC,cAAc,GAAG,IAAI,IAAI,EAAE,CAAC;QACjC,IAAI,CAAC,UAAU,GAAG,CAAC,CAAC;QAEpB,OAAO,EAAE,SAAS,EAAE,IAAI,EAAE,OAAO,CAAC,MAAM,EAAE,CAAC;IAC7C,CAAC;IAED;;OAEG;IACH,QAAQ;QACN,OAAO,IAAI,CAAC,MAAM,CAAC,QAAQ,EAAE,CAAC;IAChC,CAAC;IAED;;OAEG;IACH,QAAQ;QACN,MAAM,WAAW,GAAG,IAAI,CAAC,MAAM,CAAC,QAAQ,EAAE,CAAC;QAC3C,IAAI,CAAC,WAAW;YAAE,OAAO,IAAI,CAAC;QAE9B,OAAO;YACL,IAAI,EAAE,IAAI,CAAC,YAAY;YACvB,SAAS,EAAE,WAAW,CAAC,SAAS;YAChC,IAAI,EAAE,IAAI,CAAC,YAAY;YACvB,QAAQ,EAAE,IAAI,CAAC,QAAQ;SACxB,CAAC;IACJ,CAAC;IAED;;;;;OAKG;IACH,OAAO,CAAC,OAAe;QACrB,IAAI,CAAC,cAAc,GAAG,IAAI,IAAI,EAAE,CAAC;QACjC,IAAI,CAAC,UAAU,EAAE,CAAC;QAElB,4BAA4B;QAC5B,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;QAE5C,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;YACpB,OAAO;gBACL,OAAO,EAAE,KAAK;gBACd,IAAI,EAAE,MAAM,CAAC,IAAI;gBACjB,KAAK,EAAE,MAAM,CAAC,KAAK;gBACnB,IAAI,EAAE,MAAM,CAAC,IAAI;aAClB,CAAC;QACJ,CAAC;QAED,kDAAkD;QAClD,IAAI,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC;YAChC,MAAM,MAAM,GAAG,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;YACjD,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC;YAEjC,+BAA+B;YAC/B,MAAM,IAAI,GAAG,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;YAE3C,OAAO;gBACL,OAAO,EAAE,IAAI;gBACb,MAAM;gBACN,IAAI;gBACJ,IAAI,EAAE,MAAM,CAAC,IAAI;gBACjB,IAAI,EAAE,MAAM,CAAC,IAAI;aAClB,CAAC;QACJ,CAAC;QAED,kCAAkC;QAClC,OAAO;YACL,OAAO,EAAE,IAAI;YACb,KAAK,EAAE,MAAM,CAAC,KAAK;YACnB,IAAI,EAAE,MAAM,CAAC,IAAI;YACjB,IAAI,EAAE,MAAM,CAAC,IAAI;SAClB,CAAC;IACJ,CAAC;IAED;;;;OAIG;IACH,MAAM,CAAC,MAAc,EAAE,UAAyB,EAAE;QAChD,IAAI,CAAC,cAAc,GAAG,IAAI,IAAI,EAAE,CAAC;QAEjC,MAAM,IAAI,GAAG,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;QACvC,IAAI,IAAI,KAAK,IAAI,EAAE,CAAC;YAClB,OAAO;gBACL,OAAO,EAAE,KAAK;gBACd,KAAK,EAAE,mBAAmB,MAAM,EAAE;aACnC,CAAC;QACJ,CAAC;QAED,MAAM,KAAK,GAAG,IAAI,CAAC,MAAM,CAAC;QAC1B,MAAM,MAAM,GAAG,OAAO,CAAC,MAAM,IAAI,CAAC,CAAC;QACnC,MAAM,KAAK,GAAG,OAAO,CAAC,KAAK,IAAI,KAAK,CAAC;QAErC,iBAAiB;QACjB,IAAI,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,EAAE,MAAM,GAAG,KAAK,CAAC,CAAC;QAEhD,sBAAsB;QACtB,IAAI,OAAO,CAAC,MAAM,KAAK,OAAO,EAAE,CAAC;YAC/B,MAAM,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE;gBAC3B,IAAI,OAAO,IAAI,KAAK,QAAQ,IAAI,IAAI,KAAK,IAAI,EAAE,CAAC;oBAC9C,MAAM,GAAG,GAAG,IAA+B,CAAC;oBAC5C,uBAAuB;oBACvB,MAAM,IAAI,GAAG,GAAG,CAAC,IAAI,IAAI,GAAG,CAAC,OAAO,IAAI,GAAG,CAAC,IAAI,CAAC;oBACjD,IAAI,IAAI,KAAK,SAAS,EAAE,CAAC;wBACvB,MAAM,OAAO,GAAG,GAAG,CAAC,OAAO,IAAI,GAAG,CAAC,UAAU,IAAI,GAAG,CAAC,GAAG,CAAC;wBACzD,IAAI,OAAO,KAAK,SAAS,EAAE,CAAC;4BAC1B,OAAO,IAAI,OAAO,KAAK,IAAI,EAAE,CAAC;wBAChC,CAAC;wBACD,OAAO,MAAM,CAAC,IAAI,CAAC,CAAC;oBACtB,CAAC;gBACH,CAAC;gBACD,OAAO,IAAI,CAAC;YACd,CAAC,CAAC,CAAC;QACL,CAAC;QAED,OAAO;YACL,OAAO,EAAE,IAAI;YACb,IAAI,EAAE,MAAM;YACZ,KAAK;YACL,MAAM;YACN,KAAK;SACN,CAAC;IACJ,CAAC;IAED;;OAEG;IACH,OAAO,CAAC,MAAc,EAAE,IAAY,CAAC;QACnC,IAAI,CAAC,cAAc,GAAG,IAAI,IAAI,EAAE,CAAC;QACjC,OAAO,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC;IACrC,CAAC;IAED;;OAEG;IACH,MAAM,CAAC,MAAc,EAAE,IAAY,CAAC;QAClC,IAAI,CAAC,cAAc,GAAG,IAAI,IAAI,EAAE,CAAC;QACjC,OAAO,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC;IACpC,CAAC;IAED;;OAEG;IACH,QAAQ,CAAC,MAAc;QACrB,IAAI,CAAC,cAAc,GAAG,IAAI,IAAI,EAAE,CAAC;QACjC,OAAO,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;IACnC,CAAC;IAED;;OAEG;IACH,WAAW;QACT,MAAM,OAAO,GAAG,IAAI,CAAC,QAAQ,CAAC,WAAW,EAAE,CAAC;QAC5C,MAAM,QAAQ,GAA2B,EAAE,CAAC;QAE5C,KAAK,MAAM,MAAM,IAAI,OAAO,EAAE,CAAC;YAC7B,QAAQ,CAAC,MAAM,CAAC,GAAG,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;QACnD,CAAC;QAED,uBAAuB;QACvB,MAAM,aAAa,GAAG,IAAI,CAAC,QAAQ,CAAC,UAAU,EAAE,CAAC;QACjD,IAAI,aAAa,EAAE,CAAC;YAClB,QAAQ,CAAC,SAAS,CAAC,GAAG,MAAM,aAAa,EAAE,CAAC;QAC9C,CAAC;QAED,OAAO,QAAQ,CAAC;IAClB,CAAC;IAED;;OAEG;IACH,YAAY;QACV,OAAO,IAAI,CAAC,QAAQ,CAAC,YAAY,EAAE,CAAC;IACtC,CAAC;IAED;;OAEG;IACH,KAAK;QACH,gBAAgB;QAChB,MAAM,OAAO,GAAG,IAAI,CAAC,QAAQ,CAAC,WAAW,EAAE,CAAC;QAC5C,KAAK,MAAM,MAAM,IAAI,OAAO,EAAE,CAAC;YAC7B,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;QAC/B,CAAC;QAED,qBAAqB;QACrB,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC;IACtB,CAAC;IAED;;OAEG;IACH,cAAc;QAQZ,OAAO;YACL,YAAY,EAAE,IAAI,CAAC,YAAY;YAC/B,YAAY,EAAE,IAAI,CAAC,YAAY;YAC/B,QAAQ,EAAE,IAAI,CAAC,QAAQ;YACvB,cAAc,EAAE,IAAI,CAAC,cAAc;YACnC,UAAU,EAAE,IAAI,CAAC,UAAU;YAC3B,WAAW,EAAE,IAAI,CAAC,QAAQ,CAAC,WAAW,EAAE,CAAC,MAAM;SAChD,CAAC;IACJ,CAAC;IAED;;OAEG;IACH,KAAK;QACH,IAAI,CAAC,EAAE,CAAC,KAAK,EAAE,CAAC;IAClB,CAAC;IAED;;OAEG;IACH,MAAM,CAAC,mBAAmB;QACxB,OAAO,aAAa,CAAC,mBAAmB,EAAE,CAAC;IAC7C,CAAC;CACF"}
|
|
@@ -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;
|
|
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
|
|
6
|
-
*
|
|
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 (
|
|
17
|
-
* 3.
|
|
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
|
|
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
|
|
6
|
-
*
|
|
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 (
|
|
17
|
-
* 3.
|
|
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 {
|
|
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
|
|
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: ${
|
|
51
|
+
`Document: ${info.documentPath} | ` +
|
|
45
52
|
`Duration: ${Math.round(duration / 1000)}s | ` +
|
|
46
|
-
`Queries: ${
|
|
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() -
|
|
60
|
-
const idle = Math.round((now.getTime() -
|
|
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: ${
|
|
64
|
-
Size: ${(
|
|
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: ${
|
|
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
|
-
|
|
109
|
-
|
|
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
|
|
114
|
-
(count RESULTS) Count items
|
|
115
|
-
(sum RESULTS) Sum
|
|
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
|
|
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
|
-
|
|
125
|
-
1. (grep "ERROR") →
|
|
126
|
-
2. (filter RESULTS ...)
|
|
127
|
-
3. (count RESULTS)
|
|
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
|
-
|
|
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,
|
|
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:
|
|
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: "
|
|
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
|
|
264
|
+
function formatHandleResult(result) {
|
|
190
265
|
if (!result.success) {
|
|
191
266
|
return `Error: ${result.error}`;
|
|
192
267
|
}
|
|
193
|
-
|
|
194
|
-
if (
|
|
195
|
-
|
|
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
|
-
|
|
210
|
-
|
|
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
|
|
230
|
-
|
|
231
|
-
await
|
|
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.
|
|
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.
|
|
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.
|
|
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.
|
|
287
|
-
return { content: [{ type: "text", text:
|
|
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 =
|
|
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:
|
|
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.
|
|
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.
|
|
324
|
-
session.lastAccessedAt = new Date();
|
|
431
|
+
session.reset();
|
|
325
432
|
resetInactivityTimer();
|
|
326
|
-
return { content: [{ type: "text", text: "Bindings
|
|
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:
|
|
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.
|
|
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": "^
|
|
90
|
+
"@vitest/coverage-v8": "^4.0.17",
|
|
90
91
|
"tsx": "^4.19.0",
|
|
91
92
|
"typescript": "^5.6.0",
|
|
92
|
-
"vitest": "^
|
|
93
|
+
"vitest": "^4.0.17"
|
|
93
94
|
},
|
|
94
95
|
"engines": {
|
|
95
96
|
"node": ">=20.0.0"
|