@nxuss/lemma 1.10.0 → 1.12.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +92 -819
- package/dist/cjs/cli/lemma-proxy.d.ts.map +1 -1
- package/dist/cjs/cli/lemma-proxy.js +21 -2
- package/dist/cjs/cli/lemma-proxy.js.map +1 -1
- package/dist/cjs/infra/mcp-tools.d.ts +7 -0
- package/dist/cjs/infra/mcp-tools.d.ts.map +1 -1
- package/dist/cjs/infra/mcp-tools.js +22 -0
- package/dist/cjs/infra/mcp-tools.js.map +1 -1
- package/dist/cjs/mcp/index.js +32 -7
- package/dist/cjs/mcp/index.js.map +1 -1
- package/dist/cjs/mcp/prompts.d.ts +1 -0
- package/dist/cjs/mcp/prompts.d.ts.map +1 -1
- package/dist/cjs/mcp/prompts.js +98 -0
- package/dist/cjs/mcp/prompts.js.map +1 -1
- package/dist/cjs/mcp/resources.d.ts +2 -0
- package/dist/cjs/mcp/resources.d.ts.map +1 -1
- package/dist/cjs/mcp/resources.js +26 -0
- package/dist/cjs/mcp/resources.js.map +1 -1
- package/dist/cjs/mcp/tool-profiles.d.ts.map +1 -1
- package/dist/cjs/mcp/tool-profiles.js +64 -45
- package/dist/cjs/mcp/tool-profiles.js.map +1 -1
- package/dist/cjs/mcp/tools.d.ts.map +1 -1
- package/dist/cjs/mcp/tools.js +309 -65
- package/dist/cjs/mcp/tools.js.map +1 -1
- package/dist/cjs/proxy/Gatekeeper.d.ts +29 -0
- package/dist/cjs/proxy/Gatekeeper.d.ts.map +1 -1
- package/dist/cjs/proxy/Gatekeeper.js +122 -1
- package/dist/cjs/proxy/Gatekeeper.js.map +1 -1
- package/dist/cjs/utils/AstSymbolCache.d.ts +29 -0
- package/dist/cjs/utils/AstSymbolCache.d.ts.map +1 -0
- package/dist/cjs/utils/AstSymbolCache.js +66 -0
- package/dist/cjs/utils/AstSymbolCache.js.map +1 -0
- package/dist/cjs/utils/ContextSqueezer.d.ts +24 -4
- package/dist/cjs/utils/ContextSqueezer.d.ts.map +1 -1
- package/dist/cjs/utils/ContextSqueezer.js +32 -3
- package/dist/cjs/utils/ContextSqueezer.js.map +1 -1
- package/dist/cjs/utils/OutputLedger.d.ts.map +1 -1
- package/dist/cjs/utils/OutputLedger.js +20 -2
- package/dist/cjs/utils/OutputLedger.js.map +1 -1
- package/dist/cjs/utils/ReadWorkspaceCache.d.ts.map +1 -1
- package/dist/cjs/utils/ReadWorkspaceCache.js +25 -2
- package/dist/cjs/utils/ReadWorkspaceCache.js.map +1 -1
- package/dist/cjs/utils/RoiLedger.d.ts +31 -0
- package/dist/cjs/utils/RoiLedger.d.ts.map +1 -0
- package/dist/cjs/utils/RoiLedger.js +113 -0
- package/dist/cjs/utils/RoiLedger.js.map +1 -0
- package/dist/cjs/utils/SharedLedgerStore.d.ts +26 -0
- package/dist/cjs/utils/SharedLedgerStore.d.ts.map +1 -0
- package/dist/cjs/utils/SharedLedgerStore.js +130 -0
- package/dist/cjs/utils/SharedLedgerStore.js.map +1 -0
- package/dist/cjs/utils/SpeculativeWarmer.d.ts +24 -0
- package/dist/cjs/utils/SpeculativeWarmer.d.ts.map +1 -0
- package/dist/cjs/utils/SpeculativeWarmer.js +73 -0
- package/dist/cjs/utils/SpeculativeWarmer.js.map +1 -0
- package/dist/cjs/utils/reportSavings.d.ts.map +1 -1
- package/dist/cjs/utils/reportSavings.js +11 -0
- package/dist/cjs/utils/reportSavings.js.map +1 -1
- package/dist/esm/cli/lemma-proxy.d.ts.map +1 -1
- package/dist/esm/cli/lemma-proxy.js +21 -2
- package/dist/esm/cli/lemma-proxy.js.map +1 -1
- package/dist/esm/infra/mcp-tools.d.ts +7 -0
- package/dist/esm/infra/mcp-tools.d.ts.map +1 -1
- package/dist/esm/infra/mcp-tools.js +22 -0
- package/dist/esm/infra/mcp-tools.js.map +1 -1
- package/dist/esm/mcp/index.js +34 -9
- package/dist/esm/mcp/index.js.map +1 -1
- package/dist/esm/mcp/prompts.d.ts +1 -0
- package/dist/esm/mcp/prompts.d.ts.map +1 -1
- package/dist/esm/mcp/prompts.js +95 -1
- package/dist/esm/mcp/prompts.js.map +1 -1
- package/dist/esm/mcp/resources.d.ts +2 -0
- package/dist/esm/mcp/resources.d.ts.map +1 -1
- package/dist/esm/mcp/resources.js +27 -2
- package/dist/esm/mcp/resources.js.map +1 -1
- package/dist/esm/mcp/tool-profiles.d.ts.map +1 -1
- package/dist/esm/mcp/tool-profiles.js +64 -45
- package/dist/esm/mcp/tool-profiles.js.map +1 -1
- package/dist/esm/mcp/tools.d.ts.map +1 -1
- package/dist/esm/mcp/tools.js +309 -65
- package/dist/esm/mcp/tools.js.map +1 -1
- package/dist/esm/proxy/Gatekeeper.d.ts +29 -0
- package/dist/esm/proxy/Gatekeeper.d.ts.map +1 -1
- package/dist/esm/proxy/Gatekeeper.js +120 -0
- package/dist/esm/proxy/Gatekeeper.js.map +1 -1
- package/dist/esm/utils/AstSymbolCache.d.ts +29 -0
- package/dist/esm/utils/AstSymbolCache.d.ts.map +1 -0
- package/dist/esm/utils/AstSymbolCache.js +58 -0
- package/dist/esm/utils/AstSymbolCache.js.map +1 -0
- package/dist/esm/utils/ContextSqueezer.d.ts +24 -4
- package/dist/esm/utils/ContextSqueezer.d.ts.map +1 -1
- package/dist/esm/utils/ContextSqueezer.js +32 -3
- package/dist/esm/utils/ContextSqueezer.js.map +1 -1
- package/dist/esm/utils/OutputLedger.d.ts.map +1 -1
- package/dist/esm/utils/OutputLedger.js +20 -2
- package/dist/esm/utils/OutputLedger.js.map +1 -1
- package/dist/esm/utils/ReadWorkspaceCache.d.ts.map +1 -1
- package/dist/esm/utils/ReadWorkspaceCache.js +25 -2
- package/dist/esm/utils/ReadWorkspaceCache.js.map +1 -1
- package/dist/esm/utils/RoiLedger.d.ts +31 -0
- package/dist/esm/utils/RoiLedger.d.ts.map +1 -0
- package/dist/esm/utils/RoiLedger.js +104 -0
- package/dist/esm/utils/RoiLedger.js.map +1 -0
- package/dist/esm/utils/SharedLedgerStore.d.ts +26 -0
- package/dist/esm/utils/SharedLedgerStore.d.ts.map +1 -0
- package/dist/esm/utils/SharedLedgerStore.js +122 -0
- package/dist/esm/utils/SharedLedgerStore.js.map +1 -0
- package/dist/esm/utils/SpeculativeWarmer.d.ts +24 -0
- package/dist/esm/utils/SpeculativeWarmer.d.ts.map +1 -0
- package/dist/esm/utils/SpeculativeWarmer.js +66 -0
- package/dist/esm/utils/SpeculativeWarmer.js.map +1 -0
- package/dist/esm/utils/reportSavings.d.ts.map +1 -1
- package/dist/esm/utils/reportSavings.js +11 -0
- package/dist/esm/utils/reportSavings.js.map +1 -1
- package/package.json +2 -2
|
@@ -1,4 +1,10 @@
|
|
|
1
1
|
type ToolHandler = (args: Record<string, any>) => Promise<Record<string, any>>;
|
|
2
|
+
interface ToolAnnotations {
|
|
3
|
+
readOnlyHint?: boolean;
|
|
4
|
+
destructiveHint?: boolean;
|
|
5
|
+
idempotentHint?: boolean;
|
|
6
|
+
openWorldHint?: boolean;
|
|
7
|
+
}
|
|
2
8
|
interface ToolDefinition {
|
|
3
9
|
name: string;
|
|
4
10
|
description: string;
|
|
@@ -7,6 +13,7 @@ interface ToolDefinition {
|
|
|
7
13
|
properties?: Record<string, any>;
|
|
8
14
|
required?: string[];
|
|
9
15
|
};
|
|
16
|
+
annotations?: ToolAnnotations;
|
|
10
17
|
}
|
|
11
18
|
export declare const infraToolDefinitions: ToolDefinition[];
|
|
12
19
|
export declare function getInfraToolDefinitions(): ToolDefinition[];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mcp-tools.d.ts","sourceRoot":"","sources":["../../../src/infra/mcp-tools.ts"],"names":[],"mappings":"AASA,KAAK,WAAW,GAAG,CAAC,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,KAAK,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC,CAAC;AAE/E,UAAU,cAAc;IACtB,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;IACpB,WAAW,EAAE;QACX,IAAI,EAAE,MAAM,CAAC;QACb,UAAU,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;QACjC,QAAQ,CAAC,EAAE,MAAM,EAAE,CAAC;KACrB,CAAC;
|
|
1
|
+
{"version":3,"file":"mcp-tools.d.ts","sourceRoot":"","sources":["../../../src/infra/mcp-tools.ts"],"names":[],"mappings":"AASA,KAAK,WAAW,GAAG,CAAC,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,KAAK,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC,CAAC;AAE/E,UAAU,eAAe;IACvB,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,aAAa,CAAC,EAAE,OAAO,CAAC;CACzB;AAED,UAAU,cAAc;IACtB,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;IACpB,WAAW,EAAE;QACX,IAAI,EAAE,MAAM,CAAC;QACb,UAAU,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;QACjC,QAAQ,CAAC,EAAE,MAAM,EAAE,CAAC;KACrB,CAAC;IACF,WAAW,CAAC,EAAE,eAAe,CAAC;CAC/B;AAID,eAAO,MAAM,oBAAoB,EAAE,cAAc,EAmOhD,CAAC;AAoRF,wBAAgB,uBAAuB,IAAI,cAAc,EAAE,CAE1D;AAED,wBAAgB,oBAAoB,IAAI,MAAM,CAAC,MAAM,EAAE,WAAW,CAAC,CAElE;AAED,eAAO,MAAM,gBAAgB,UAA0C,CAAC"}
|
|
@@ -12,11 +12,13 @@ const TheBrainV2_1 = require("../subconscious/TheBrainV2");
|
|
|
12
12
|
exports.infraToolDefinitions = [
|
|
13
13
|
{
|
|
14
14
|
name: 'infra_discover',
|
|
15
|
+
annotations: { readOnlyHint: true },
|
|
15
16
|
description: 'Auto-detect Jenkins, OKD, and Terraform in the environment. Returns connectivity status and config requirements.',
|
|
16
17
|
inputSchema: { type: 'object', properties: {} },
|
|
17
18
|
},
|
|
18
19
|
{
|
|
19
20
|
name: 'infra_connect',
|
|
21
|
+
annotations: { readOnlyHint: false, destructiveHint: false, idempotentHint: true },
|
|
20
22
|
description: 'Connect to an infrastructure provider with credentials. Credentials are stored locally in ~/.lemma-cache/infra/.',
|
|
21
23
|
inputSchema: {
|
|
22
24
|
type: 'object',
|
|
@@ -32,16 +34,19 @@ exports.infraToolDefinitions = [
|
|
|
32
34
|
},
|
|
33
35
|
{
|
|
34
36
|
name: 'infra_status',
|
|
37
|
+
annotations: { readOnlyHint: true },
|
|
35
38
|
description: 'Get consolidated status of all connected infrastructure providers. Token-optimized: returns only anomalies.',
|
|
36
39
|
inputSchema: { type: 'object', properties: {} },
|
|
37
40
|
},
|
|
38
41
|
{
|
|
39
42
|
name: 'infra_health_check',
|
|
43
|
+
annotations: { readOnlyHint: true },
|
|
40
44
|
description: 'Detailed health check for all providers. Returns latency, version, and connectivity details.',
|
|
41
45
|
inputSchema: { type: 'object', properties: {} },
|
|
42
46
|
},
|
|
43
47
|
{
|
|
44
48
|
name: 'infra_diagnose',
|
|
49
|
+
annotations: { readOnlyHint: true },
|
|
45
50
|
description: 'Analyze infrastructure issues and suggest fixes. Caches successful solutions in TheBrain for future sessions.',
|
|
46
51
|
inputSchema: {
|
|
47
52
|
type: 'object',
|
|
@@ -52,16 +57,19 @@ exports.infraToolDefinitions = [
|
|
|
52
57
|
},
|
|
53
58
|
{
|
|
54
59
|
name: 'infra_analyze_monolith',
|
|
60
|
+
annotations: { readOnlyHint: true, openWorldHint: false },
|
|
55
61
|
description: 'Analyze monolith codebase for microservice migration. Identifies modules, coupling, and suggests split points.',
|
|
56
62
|
inputSchema: { type: 'object', properties: {} },
|
|
57
63
|
},
|
|
58
64
|
{
|
|
59
65
|
name: 'infra_suggest_split',
|
|
66
|
+
annotations: { readOnlyHint: true, openWorldHint: false },
|
|
60
67
|
description: 'Suggest microservice split points based on module coupling analysis.',
|
|
61
68
|
inputSchema: { type: 'object', properties: {} },
|
|
62
69
|
},
|
|
63
70
|
{
|
|
64
71
|
name: 'jenkins_generate_pipeline',
|
|
72
|
+
annotations: { readOnlyHint: false, destructiveHint: false, idempotentHint: true, openWorldHint: false },
|
|
65
73
|
description: 'Generate a Jenkinsfile for CI/CD pipeline. Supports standard and multibranch patterns.',
|
|
66
74
|
inputSchema: {
|
|
67
75
|
type: 'object',
|
|
@@ -79,6 +87,7 @@ exports.infraToolDefinitions = [
|
|
|
79
87
|
},
|
|
80
88
|
{
|
|
81
89
|
name: 'jenkins_trigger_build',
|
|
90
|
+
annotations: { readOnlyHint: false, destructiveHint: true, idempotentHint: false },
|
|
82
91
|
description: 'Trigger a Jenkins build. Semi-automated: returns what will be built, requires confirmation.',
|
|
83
92
|
inputSchema: {
|
|
84
93
|
type: 'object',
|
|
@@ -91,6 +100,7 @@ exports.infraToolDefinitions = [
|
|
|
91
100
|
},
|
|
92
101
|
{
|
|
93
102
|
name: 'jenkins_build_status',
|
|
103
|
+
annotations: { readOnlyHint: true },
|
|
94
104
|
description: 'Get status of a Jenkins build. Returns result, duration, and URL.',
|
|
95
105
|
inputSchema: {
|
|
96
106
|
type: 'object',
|
|
@@ -103,6 +113,7 @@ exports.infraToolDefinitions = [
|
|
|
103
113
|
},
|
|
104
114
|
{
|
|
105
115
|
name: 'jenkins_logs',
|
|
116
|
+
annotations: { readOnlyHint: true },
|
|
106
117
|
description: 'Get last 80 lines of Jenkins build console output. Token-optimized.',
|
|
107
118
|
inputSchema: {
|
|
108
119
|
type: 'object',
|
|
@@ -115,6 +126,7 @@ exports.infraToolDefinitions = [
|
|
|
115
126
|
},
|
|
116
127
|
{
|
|
117
128
|
name: 'okd_generate_manifests',
|
|
129
|
+
annotations: { readOnlyHint: false, destructiveHint: false, idempotentHint: true, openWorldHint: false },
|
|
118
130
|
description: 'Generate OKD/OpenShift manifests (DeploymentConfig, BuildConfig, ImageStream, Route, Service).',
|
|
119
131
|
inputSchema: {
|
|
120
132
|
type: 'object',
|
|
@@ -130,6 +142,7 @@ exports.infraToolDefinitions = [
|
|
|
130
142
|
},
|
|
131
143
|
{
|
|
132
144
|
name: 'okd_apply',
|
|
145
|
+
annotations: { readOnlyHint: false, destructiveHint: true, idempotentHint: false },
|
|
133
146
|
description: 'Apply OKD manifests. Semi-automated: generates manifests, shows preview, then applies on confirmation.',
|
|
134
147
|
inputSchema: {
|
|
135
148
|
type: 'object',
|
|
@@ -146,11 +159,13 @@ exports.infraToolDefinitions = [
|
|
|
146
159
|
},
|
|
147
160
|
{
|
|
148
161
|
name: 'okd_status',
|
|
162
|
+
annotations: { readOnlyHint: true },
|
|
149
163
|
description: 'Get status of pods, builds, and routes in OKD project. Token-optimized: compact summary.',
|
|
150
164
|
inputSchema: { type: 'object', properties: {} },
|
|
151
165
|
},
|
|
152
166
|
{
|
|
153
167
|
name: 'okd_logs',
|
|
168
|
+
annotations: { readOnlyHint: true },
|
|
154
169
|
description: 'Get logs from an OKD pod. Returns last N lines (default 50).',
|
|
155
170
|
inputSchema: {
|
|
156
171
|
type: 'object',
|
|
@@ -163,11 +178,13 @@ exports.infraToolDefinitions = [
|
|
|
163
178
|
},
|
|
164
179
|
{
|
|
165
180
|
name: 'okd_events',
|
|
181
|
+
annotations: { readOnlyHint: true },
|
|
166
182
|
description: 'Get recent OKD cluster events (sorted by timestamp). Useful for troubleshooting.',
|
|
167
183
|
inputSchema: { type: 'object', properties: {} },
|
|
168
184
|
},
|
|
169
185
|
{
|
|
170
186
|
name: 'okd_describe',
|
|
187
|
+
annotations: { readOnlyHint: true },
|
|
171
188
|
description: 'Describe an OKD resource (pod, dc, bc, route, etc.) for debugging.',
|
|
172
189
|
inputSchema: {
|
|
173
190
|
type: 'object',
|
|
@@ -180,6 +197,7 @@ exports.infraToolDefinitions = [
|
|
|
180
197
|
},
|
|
181
198
|
{
|
|
182
199
|
name: 'okd_route_url',
|
|
200
|
+
annotations: { readOnlyHint: true },
|
|
183
201
|
description: 'Get the external URL for an OKD route.',
|
|
184
202
|
inputSchema: {
|
|
185
203
|
type: 'object',
|
|
@@ -191,11 +209,13 @@ exports.infraToolDefinitions = [
|
|
|
191
209
|
},
|
|
192
210
|
{
|
|
193
211
|
name: 'terraform_plan',
|
|
212
|
+
annotations: { readOnlyHint: true },
|
|
194
213
|
description: 'Run terraform plan and return the output. Token-optimized: returns only changes.',
|
|
195
214
|
inputSchema: { type: 'object', properties: {} },
|
|
196
215
|
},
|
|
197
216
|
{
|
|
198
217
|
name: 'terraform_apply',
|
|
218
|
+
annotations: { readOnlyHint: false, destructiveHint: true, idempotentHint: false },
|
|
199
219
|
description: 'Run terraform apply. Semi-automated: shows plan first, requires confirmation.',
|
|
200
220
|
inputSchema: {
|
|
201
221
|
type: 'object',
|
|
@@ -206,11 +226,13 @@ exports.infraToolDefinitions = [
|
|
|
206
226
|
},
|
|
207
227
|
{
|
|
208
228
|
name: 'terraform_state_list',
|
|
229
|
+
annotations: { readOnlyHint: true },
|
|
209
230
|
description: 'List all resources in Terraform state.',
|
|
210
231
|
inputSchema: { type: 'object', properties: {} },
|
|
211
232
|
},
|
|
212
233
|
{
|
|
213
234
|
name: 'terraform_drift',
|
|
235
|
+
annotations: { readOnlyHint: true },
|
|
214
236
|
description: 'Detect configuration drift between Terraform state and actual infrastructure.',
|
|
215
237
|
inputSchema: { type: 'object', properties: {} },
|
|
216
238
|
},
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mcp-tools.js","sourceRoot":"","sources":["../../../src/infra/mcp-tools.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"mcp-tools.js","sourceRoot":"","sources":["../../../src/infra/mcp-tools.ts"],"names":[],"mappings":"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"}
|
package/dist/cjs/mcp/index.js
CHANGED
|
@@ -7,6 +7,7 @@ const index_js_1 = require("@modelcontextprotocol/sdk/server/index.js");
|
|
|
7
7
|
const stdio_js_1 = require("@modelcontextprotocol/sdk/server/stdio.js");
|
|
8
8
|
const fs_1 = __importDefault(require("fs"));
|
|
9
9
|
const path_1 = __importDefault(require("path"));
|
|
10
|
+
const os_1 = __importDefault(require("os"));
|
|
10
11
|
const axios_1 = __importDefault(require("axios"));
|
|
11
12
|
const child_process_1 = require("child_process");
|
|
12
13
|
const uuid_1 = require("uuid");
|
|
@@ -69,15 +70,18 @@ class LemmaMcpServer {
|
|
|
69
70
|
resources: { subscribe: true },
|
|
70
71
|
tools: {},
|
|
71
72
|
prompts: {},
|
|
73
|
+
completions: {},
|
|
72
74
|
},
|
|
73
75
|
instructions: prompts_1.LEMMA_TURBOMODE_PROMPT,
|
|
74
76
|
});
|
|
75
77
|
this.setupHandlers();
|
|
76
78
|
this.setupErrorHandling();
|
|
77
79
|
this.setupLiveContextWatcher();
|
|
80
|
+
this.setupStatsWatcher();
|
|
78
81
|
}
|
|
79
82
|
setupHandlers() {
|
|
80
83
|
(0, prompts_1.setupPromptsHandlers)(this.server);
|
|
84
|
+
(0, prompts_1.setupCompletionHandlers)(this.server);
|
|
81
85
|
(0, resources_1.setupResourcesHandlers)(this.server);
|
|
82
86
|
(0, tools_1.setupToolsHandlers)(this.server, (event) => this.reportMcpEvent(event));
|
|
83
87
|
}
|
|
@@ -124,13 +128,7 @@ class LemmaMcpServer {
|
|
|
124
128
|
}
|
|
125
129
|
fs_1.default.watch(liveContextPath, (eventType) => {
|
|
126
130
|
if (eventType === "change") {
|
|
127
|
-
|
|
128
|
-
// @ts-ignore
|
|
129
|
-
this.server.sendResourceUpdated({ uri: "lemma://runtime/context" });
|
|
130
|
-
}
|
|
131
|
-
catch (err) {
|
|
132
|
-
(0, utils_1.logWarn)("live-context", "Failed to send resource update");
|
|
133
|
-
}
|
|
131
|
+
(0, resources_1.notifyResourceUpdated)(this.server, "lemma://runtime/context");
|
|
134
132
|
}
|
|
135
133
|
});
|
|
136
134
|
}
|
|
@@ -138,6 +136,27 @@ class LemmaMcpServer {
|
|
|
138
136
|
(0, utils_1.logWarn)("live-context", "Could not set up live context watcher");
|
|
139
137
|
}
|
|
140
138
|
}
|
|
139
|
+
/**
|
|
140
|
+
* lemma://stats/usage reads ~/.lemma-cache/stats.json directly (see resources.ts), so a
|
|
141
|
+
* plain fs.watch on that file is enough to push updates the moment the ledger changes —
|
|
142
|
+
* no polling loop needed.
|
|
143
|
+
*/
|
|
144
|
+
setupStatsWatcher() {
|
|
145
|
+
try {
|
|
146
|
+
const statsPath = path_1.default.join(os_1.default.homedir(), ".lemma-cache", "stats.json");
|
|
147
|
+
const statsDir = path_1.default.dirname(statsPath);
|
|
148
|
+
if (!fs_1.default.existsSync(statsDir))
|
|
149
|
+
return;
|
|
150
|
+
fs_1.default.watch(statsDir, (eventType, filename) => {
|
|
151
|
+
if (filename === "stats.json") {
|
|
152
|
+
(0, resources_1.notifyResourceUpdated)(this.server, "lemma://stats/usage");
|
|
153
|
+
}
|
|
154
|
+
});
|
|
155
|
+
}
|
|
156
|
+
catch (err) {
|
|
157
|
+
(0, utils_1.logWarn)("stats-watcher", "Could not set up stats watcher");
|
|
158
|
+
}
|
|
159
|
+
}
|
|
141
160
|
// ── Proxy Auto-Start ──────────────────────────────────────────────
|
|
142
161
|
/**
|
|
143
162
|
* Set by the eval harness. The proxy is a detached background process and the handshake
|
|
@@ -233,6 +252,12 @@ class LemmaMcpServer {
|
|
|
233
252
|
(0, utils_1.logWarn)('register', 'Could not register with proxy after 5 retries');
|
|
234
253
|
}
|
|
235
254
|
// ── Sampling Context Injection (Claude Desktop) ───────────────────
|
|
255
|
+
//
|
|
256
|
+
// The MCP spec dated 2026-07-28 deprecated sampling, roots, and logging (they keep working
|
|
257
|
+
// for at least 12 months, but the spec no longer recommends building new features on them).
|
|
258
|
+
// Do not extend this function or add new sampling call sites — for anything new that needs
|
|
259
|
+
// client-side interaction or a typed response, use elicitation (see tryElicitConfirmation in
|
|
260
|
+
// src/mcp/tools.ts) or outputSchema/structuredContent instead.
|
|
236
261
|
async trySamplingContext() {
|
|
237
262
|
try {
|
|
238
263
|
const stack = detectStack();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/mcp/index.ts"],"names":[],"mappings":";;;;;AAAA,wEAAmE;AACnE,wEAAiF;AACjF,4CAAoB;AACpB,gDAAwB;AACxB,kDAA0B;AAC1B,iDAAsC;AACtC,+BAAoC;AAEpC,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/mcp/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -10,4 +10,5 @@ import { Server } from "@modelcontextprotocol/sdk/server/index.js";
|
|
|
10
10
|
*/
|
|
11
11
|
export declare const LEMMA_TURBOMODE_PROMPT = "You are operating in LEMMA TURBOMODE. Reduce what enters the model's context \u2014 file reads, command output, repeated reasoning \u2014 without ever costing the user a correct answer. Lemma's own overhead (this prompt + every tool schema) is charged to the ledger before a single token is saved, so optimize for real net savings, not for a multiplier.\n\n## RULES\n\n**0. Tool calls cost tokens too.** A call and its result stay in the transcript and are re-sent every later turn. Expect a Lemma tool to save more than that round-trip costs \u2014 on a small file or short command, reading it directly is cheaper. Never call a reporting tool on a schedule.\n\n**0b. The advertised list is not everything Lemma has.** Situational schemas are withheld to keep per-turn cost down. Before concluding Lemma can't do something, call `lemma_toolbox` (action=\"list\" with a query), then action=\"call\".\n\n**1. Compression is for YOUR context only.** NEVER hand a compressed version to the user \u2014 they get the real, complete file, comments and imports intact. If you reasoned over a squeezed version, re-fetch the original before presenting it.\n\n**2. A cache hit is a hint, not an answer.** `smarter_cache` requires similarity >= 0.8. Always tell the user the answer came from cache. If they're about to act on it (run a command, apply a patch, ship code), verify against current state first \u2014 cached answers go stale. On a MISS or any doubt, reason normally.\n\n**3. Locate before reading only when locating is cheaper.** Don't know which file? `get_ast_hologram` / `search_workspace` beats reading candidates one by one. Already know the file? Read it \u2014 a lookup round-trip on a small file costs more than the file. `read_workspace_file` carries real line numbers and takes offset/limit, so prefer a targeted range on large files.\n\n**4. store_memory only after verification.** Store once the fix actually worked (tests pass, build succeeded, user confirmed) \u2014 not your first attempt. A wrong answer stored here becomes a false cache hit for a future session, and unwinding that costs far more than it saved.\n\n**5. Never trade a required disclosure for brevity.** A cache-hit source or a risky/irreversible action is not filler. One short line.\n\n**6. File-dependent questions \u2192 state_hash_cache, not smarter_cache.** It only hits when the referenced files' hashes are unchanged: a guaranteed-valid answer instead of a similarity guess. Look up before, store after. Use `smarter_cache` only for file-independent questions.\n\n**7. Edit in place.** `apply_workspace_patch` or `surgical_ast_insert` over rewriting a file with `write_workspace_file`; reserve the full write for renames, structural rewrites and new files. For mechanical work, `get_routing_advice` says whether a cheaper model suffices.\n\n**8. \"How much did we save\" \u2192 token_receipt, don't estimate.** It returns a real auditable log. Show the byType breakdown so the user can verify it.\n\n**9. What the toolbox hands you is a candidate, not a verdict.** Auto-fixes, cached patterns and Brain-suggested patches are suggestions. Check a fix addresses the actual failing assertion before applying it.\n\n## SCORING\nCorrectness first, then cost \u2014 a fast wrong answer costs more than a slow right one once you count the round-trip to fix it. A verified cache hit is best; a MISS followed by reasoning from scratch is the normal GOOD outcome, not a failure. A cached or auto-fixed result delivered without disclosure or verification is a FAIL regardless of tokens saved.\n\nFewer tokens for the SAME quality of answer \u2014 never a worse answer for fewer tokens.";
|
|
12
12
|
export declare function setupPromptsHandlers(server: Server): void;
|
|
13
|
+
export declare function setupCompletionHandlers(server: Server): void;
|
|
13
14
|
//# sourceMappingURL=prompts.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"prompts.d.ts","sourceRoot":"","sources":["../../../src/mcp/prompts.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,2CAA2C,CAAC;
|
|
1
|
+
{"version":3,"file":"prompts.d.ts","sourceRoot":"","sources":["../../../src/mcp/prompts.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,2CAA2C,CAAC;AAMnE;;;;;;;;GAQG;AACH,eAAO,MAAM,sBAAsB,slHA6BkD,CAAC;AAItF,wBAAgB,oBAAoB,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI,CAgEzD;AA2CD,wBAAgB,uBAAuB,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI,CAiB5D"}
|
package/dist/cjs/mcp/prompts.js
CHANGED
|
@@ -1,8 +1,15 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
2
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
6
|
exports.LEMMA_TURBOMODE_PROMPT = void 0;
|
|
4
7
|
exports.setupPromptsHandlers = setupPromptsHandlers;
|
|
8
|
+
exports.setupCompletionHandlers = setupCompletionHandlers;
|
|
5
9
|
const types_js_1 = require("@modelcontextprotocol/sdk/types.js");
|
|
10
|
+
const fs_1 = __importDefault(require("fs"));
|
|
11
|
+
const path_1 = __importDefault(require("path"));
|
|
12
|
+
const WorkspaceSearch_1 = require("../utils/WorkspaceSearch");
|
|
6
13
|
/**
|
|
7
14
|
* This text is injected into the system prompt and re-sent on every turn of the session, so
|
|
8
15
|
* its length is a recurring charge against the very savings it asks for. It is kept to the
|
|
@@ -42,6 +49,7 @@ exports.LEMMA_TURBOMODE_PROMPT = `You are operating in LEMMA TURBOMODE. Reduce w
|
|
|
42
49
|
Correctness first, then cost — a fast wrong answer costs more than a slow right one once you count the round-trip to fix it. A verified cache hit is best; a MISS followed by reasoning from scratch is the normal GOOD outcome, not a failure. A cached or auto-fixed result delivered without disclosure or verification is a FAIL regardless of tokens saved.
|
|
43
50
|
|
|
44
51
|
Fewer tokens for the SAME quality of answer — never a worse answer for fewer tokens.`;
|
|
52
|
+
const REVIEW_FILE_ARG = "file";
|
|
45
53
|
function setupPromptsHandlers(server) {
|
|
46
54
|
server.setRequestHandler(types_js_1.ListPromptsRequestSchema, async () => {
|
|
47
55
|
return {
|
|
@@ -51,6 +59,17 @@ function setupPromptsHandlers(server) {
|
|
|
51
59
|
description: "LEMMA TURBOMODE: reduce context spend on file reads, command output, and repeated reasoning. Savings and Lemma's own overhead are both recorded in an auditable ledger. Use for long sessions on large repos.",
|
|
52
60
|
arguments: [],
|
|
53
61
|
},
|
|
62
|
+
{
|
|
63
|
+
name: "review-file",
|
|
64
|
+
description: "Review one workspace file end to end using Lemma's zero-LLM static tools (entropy_score, type_coverage_report, git_blame_heat) before spending a single reasoning token on it.",
|
|
65
|
+
arguments: [
|
|
66
|
+
{
|
|
67
|
+
name: REVIEW_FILE_ARG,
|
|
68
|
+
description: "Path to the file, relative to the workspace root",
|
|
69
|
+
required: true,
|
|
70
|
+
},
|
|
71
|
+
],
|
|
72
|
+
},
|
|
54
73
|
],
|
|
55
74
|
};
|
|
56
75
|
});
|
|
@@ -69,7 +88,86 @@ function setupPromptsHandlers(server) {
|
|
|
69
88
|
],
|
|
70
89
|
};
|
|
71
90
|
}
|
|
91
|
+
if (request.params.name === "review-file") {
|
|
92
|
+
const file = request.params.arguments?.[REVIEW_FILE_ARG];
|
|
93
|
+
if (!file)
|
|
94
|
+
throw new Error(`Missing required argument: ${REVIEW_FILE_ARG}`);
|
|
95
|
+
return {
|
|
96
|
+
description: `Review ${file}`,
|
|
97
|
+
messages: [
|
|
98
|
+
{
|
|
99
|
+
role: "user",
|
|
100
|
+
content: {
|
|
101
|
+
type: "text",
|
|
102
|
+
text: `Review \`${file}\`. Before reading its full content, call entropy_score, ` +
|
|
103
|
+
`type_coverage_report and git_blame_heat on it (zero LLM cost, zero tokens) to ` +
|
|
104
|
+
`decide what actually deserves a close read versus a skim. Then use ` +
|
|
105
|
+
`read_workspace_file (or smart_file_slice / get_symbol_surgical_context for a ` +
|
|
106
|
+
`narrower target) for the parts that matter, and summarize findings with file:line refs.`,
|
|
107
|
+
},
|
|
108
|
+
},
|
|
109
|
+
],
|
|
110
|
+
};
|
|
111
|
+
}
|
|
72
112
|
throw new Error(`Unknown prompt: ${request.params.name}`);
|
|
73
113
|
});
|
|
74
114
|
}
|
|
115
|
+
// ── Completions (spec 2026-07-28: completion/complete) ─────────────────────
|
|
116
|
+
//
|
|
117
|
+
// Backs argument autocomplete for review-file's `file` argument with a real workspace
|
|
118
|
+
// listing instead of leaving clients to guess paths blind. Reuses the same gitignore
|
|
119
|
+
// matcher as search_workspace so results match what the tools would actually accept.
|
|
120
|
+
const COMPLETION_IGNORED_DIRS = new Set(["node_modules", ".git", "dist", "chroma_data", ".lemma", "build", "coverage", ".next"]);
|
|
121
|
+
const MAX_COMPLETIONS = 100;
|
|
122
|
+
function listWorkspaceFilesForCompletion(workspaceRoot, partial) {
|
|
123
|
+
const gitignorePatterns = (0, WorkspaceSearch_1.loadGitignorePatterns)(workspaceRoot);
|
|
124
|
+
const lowerPartial = partial.toLowerCase();
|
|
125
|
+
const results = [];
|
|
126
|
+
function walk(dir, rel) {
|
|
127
|
+
if (results.length >= MAX_COMPLETIONS)
|
|
128
|
+
return;
|
|
129
|
+
let entries = [];
|
|
130
|
+
try {
|
|
131
|
+
entries = fs_1.default.readdirSync(dir, { withFileTypes: true });
|
|
132
|
+
}
|
|
133
|
+
catch {
|
|
134
|
+
return;
|
|
135
|
+
}
|
|
136
|
+
for (const entry of entries) {
|
|
137
|
+
if (results.length >= MAX_COMPLETIONS)
|
|
138
|
+
return;
|
|
139
|
+
if (entry.name.startsWith(".") && entry.name !== ".env")
|
|
140
|
+
continue;
|
|
141
|
+
if (COMPLETION_IGNORED_DIRS.has(entry.name))
|
|
142
|
+
continue;
|
|
143
|
+
const entryRel = rel ? `${rel}/${entry.name}` : entry.name;
|
|
144
|
+
if (gitignorePatterns.some((re) => re.test(entryRel)))
|
|
145
|
+
continue;
|
|
146
|
+
if (entry.isDirectory()) {
|
|
147
|
+
walk(path_1.default.join(dir, entry.name), entryRel);
|
|
148
|
+
}
|
|
149
|
+
else if (!lowerPartial || entryRel.toLowerCase().includes(lowerPartial)) {
|
|
150
|
+
results.push(entryRel);
|
|
151
|
+
}
|
|
152
|
+
}
|
|
153
|
+
}
|
|
154
|
+
walk(workspaceRoot, "");
|
|
155
|
+
return results;
|
|
156
|
+
}
|
|
157
|
+
function setupCompletionHandlers(server) {
|
|
158
|
+
server.setRequestHandler(types_js_1.CompleteRequestSchema, async (request) => {
|
|
159
|
+
const { ref, argument } = request.params;
|
|
160
|
+
if (ref.type === "ref/prompt" && ref.name === "review-file" && argument.name === REVIEW_FILE_ARG) {
|
|
161
|
+
const matches = listWorkspaceFilesForCompletion(process.cwd(), argument.value || "");
|
|
162
|
+
return {
|
|
163
|
+
completion: {
|
|
164
|
+
values: matches.slice(0, 100),
|
|
165
|
+
total: matches.length,
|
|
166
|
+
hasMore: matches.length >= MAX_COMPLETIONS,
|
|
167
|
+
},
|
|
168
|
+
};
|
|
169
|
+
}
|
|
170
|
+
return { completion: { values: [], total: 0, hasMore: false } };
|
|
171
|
+
});
|
|
172
|
+
}
|
|
75
173
|
//# sourceMappingURL=prompts.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"prompts.js","sourceRoot":"","sources":["../../../src/mcp/prompts.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"prompts.js","sourceRoot":"","sources":["../../../src/mcp/prompts.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,3 +1,5 @@
|
|
|
1
1
|
import { Server } from "@modelcontextprotocol/sdk/server/index.js";
|
|
2
|
+
/** Push notifications/resources/updated, but only for a URI the client subscribed to. */
|
|
3
|
+
export declare function notifyResourceUpdated(server: Server, uri: string): void;
|
|
2
4
|
export declare function setupResourcesHandlers(server: Server): void;
|
|
3
5
|
//# sourceMappingURL=resources.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"resources.d.ts","sourceRoot":"","sources":["../../../src/mcp/resources.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,2CAA2C,CAAC;
|
|
1
|
+
{"version":3,"file":"resources.d.ts","sourceRoot":"","sources":["../../../src/mcp/resources.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,2CAA2C,CAAC;AAwBnE,yFAAyF;AACzF,wBAAgB,qBAAqB,CAAC,MAAM,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,GAAG,IAAI,CAKvE;AAED,wBAAgB,sBAAsB,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI,CAqE3D"}
|
|
@@ -3,6 +3,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
3
3
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
4
|
};
|
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
exports.notifyResourceUpdated = notifyResourceUpdated;
|
|
6
7
|
exports.setupResourcesHandlers = setupResourcesHandlers;
|
|
7
8
|
const types_js_1 = require("@modelcontextprotocol/sdk/types.js");
|
|
8
9
|
const fs_1 = __importDefault(require("fs"));
|
|
@@ -11,7 +12,32 @@ const os_1 = __importDefault(require("os"));
|
|
|
11
12
|
const axios_1 = __importDefault(require("axios"));
|
|
12
13
|
const utils_1 = require("./utils");
|
|
13
14
|
const TheBrainV2_1 = require("../subconscious/TheBrainV2");
|
|
15
|
+
// ── Subscriptions ────────────────────────────────────────────────────────────
|
|
16
|
+
//
|
|
17
|
+
// The `resources: { subscribe: true }` capability is a promise that the server tracks
|
|
18
|
+
// per-URI interest and only pushes notifications/resources/updated for URIs a client
|
|
19
|
+
// actually asked about. Stdio is single-client, so a process-wide Set is enough — no
|
|
20
|
+
// per-session bookkeeping needed. Whoever detects a change (a file watcher, a poll) must
|
|
21
|
+
// go through notifyResourceUpdated below instead of calling server.sendResourceUpdated
|
|
22
|
+
// directly, or this promise goes back to being a lie the capability flag tells the client.
|
|
23
|
+
const subscribedUris = new Set();
|
|
24
|
+
/** Push notifications/resources/updated, but only for a URI the client subscribed to. */
|
|
25
|
+
function notifyResourceUpdated(server, uri) {
|
|
26
|
+
if (!subscribedUris.has(uri))
|
|
27
|
+
return;
|
|
28
|
+
server.sendResourceUpdated({ uri }).catch(() => {
|
|
29
|
+
(0, utils_1.logWarn)("resources", `Failed to send resource update for ${uri}`);
|
|
30
|
+
});
|
|
31
|
+
}
|
|
14
32
|
function setupResourcesHandlers(server) {
|
|
33
|
+
server.setRequestHandler(types_js_1.SubscribeRequestSchema, async (request) => {
|
|
34
|
+
subscribedUris.add(request.params.uri);
|
|
35
|
+
return {};
|
|
36
|
+
});
|
|
37
|
+
server.setRequestHandler(types_js_1.UnsubscribeRequestSchema, async (request) => {
|
|
38
|
+
subscribedUris.delete(request.params.uri);
|
|
39
|
+
return {};
|
|
40
|
+
});
|
|
15
41
|
server.setRequestHandler(types_js_1.ListResourcesRequestSchema, async () => {
|
|
16
42
|
return {
|
|
17
43
|
resources: [
|