@extentos/mcp-server 0.0.4 → 0.0.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/index.js +1 -1
- package/dist/tools/definitions.d.ts.map +1 -1
- package/dist/tools/definitions.js +6 -3
- package/dist/tools/definitions.js.map +1 -1
- package/dist/tools/docs/index.d.ts.map +1 -1
- package/dist/tools/docs/index.js +134 -1
- package/dist/tools/docs/index.js.map +1 -1
- package/dist/tools/handlers/generateConnectionModule.d.ts.map +1 -1
- package/dist/tools/handlers/generateConnectionModule.js +41 -6
- package/dist/tools/handlers/generateConnectionModule.js.map +1 -1
- package/dist/tools/handlers/generateConsumer.d.ts.map +1 -1
- package/dist/tools/handlers/generateConsumer.js +59 -15
- package/dist/tools/handlers/generateConsumer.js.map +1 -1
- package/dist/tools/handlers/initSpec.d.ts.map +1 -1
- package/dist/tools/handlers/initSpec.js +23 -0
- package/dist/tools/handlers/initSpec.js.map +1 -1
- package/dist/tools/handlers/planIntegration.d.ts.map +1 -1
- package/dist/tools/handlers/planIntegration.js +15 -2
- package/dist/tools/handlers/planIntegration.js.map +1 -1
- package/dist/tools/handlers/updateSpec.d.ts.map +1 -1
- package/dist/tools/handlers/updateSpec.js +73 -3
- package/dist/tools/handlers/updateSpec.js.map +1 -1
- package/dist/tools/util/manifest.d.ts +50 -0
- package/dist/tools/util/manifest.d.ts.map +1 -1
- package/dist/tools/util/manifest.js +90 -3
- package/dist/tools/util/manifest.js.map +1 -1
- package/package.json +1 -1
|
@@ -2,12 +2,20 @@
|
|
|
2
2
|
// Spec: docs/mcp/MCP_TOOLS.md § initSpec
|
|
3
3
|
// The MCP server has no filesystem — "refuse if spec already populated" is advisory
|
|
4
4
|
// and enforced by the agent calling inspectIntegration first (see tool description).
|
|
5
|
+
//
|
|
6
|
+
// Manifest contract: when the agent passes `currentManifest` (the manifest
|
|
7
|
+
// returned by inspectIntegration / generateConnectionModule), this tool
|
|
8
|
+
// applies its patch in-memory and returns the full next-state manifest under
|
|
9
|
+
// `manifest: { path, content }`. The agent overwrites the file verbatim, no
|
|
10
|
+
// agent-side merging required. Falls back to returning only `manifestPatch`
|
|
11
|
+
// when `currentManifest` is omitted (legacy callers).
|
|
5
12
|
import { createHash } from "node:crypto";
|
|
6
13
|
import { androidSourcePath, iosModuleName } from "../util/appPackage.js";
|
|
7
14
|
import { validateSpec } from "../validation/validateSpec.js";
|
|
8
15
|
import { renderAndroidCallbacks, renderIosCallbacks } from "../templates/callbackHandler.js";
|
|
9
16
|
import { PRESET_TRIGGERS, PRESET_TRIGGER_IDS } from "../data/presetTriggers.js";
|
|
10
17
|
import { derivesInfoPlistPatch } from "../util/permissions.js";
|
|
18
|
+
import { applyManifestPatch, manifestPath, } from "../util/manifest.js";
|
|
11
19
|
import { okResponse, errorResponse } from "../response.js";
|
|
12
20
|
export function handleInitSpec(raw) {
|
|
13
21
|
const parsed = parseArgs(raw);
|
|
@@ -38,6 +46,7 @@ export function handleInitSpec(raw) {
|
|
|
38
46
|
: undefined;
|
|
39
47
|
const infoPlistPatch = args.platform === "ios" ? derivesInfoPlistPatch(spec) : undefined;
|
|
40
48
|
const manifestPatch = {
|
|
49
|
+
lastUpdatedAt: nowIso,
|
|
41
50
|
integrationAdded: {
|
|
42
51
|
blocks: args.blocks.map((b) => b.type).filter((x) => typeof x === "string").sort(),
|
|
43
52
|
streams: args.streams.map((s) => s.type).filter((x) => typeof x === "string").sort(),
|
|
@@ -48,8 +57,11 @@ export function handleInitSpec(raw) {
|
|
|
48
57
|
generatedFilesAdded: files.map((f) => ({
|
|
49
58
|
path: f.path,
|
|
50
59
|
template: "callback_handler",
|
|
60
|
+
hash: `sha256:${sha256(f.content)}`,
|
|
61
|
+
generatedAt: nowIso,
|
|
51
62
|
generatedByTool: "initSpec",
|
|
52
63
|
})),
|
|
64
|
+
permissionsAdded: args.platform === "android" ? validation.stats.permissions : undefined,
|
|
53
65
|
specUpdated: { path: specPath, hash: `sha256:${specHash}`, updatedAt: nowIso },
|
|
54
66
|
};
|
|
55
67
|
const summary = buildSummary(args, handlerNames, validation);
|
|
@@ -66,6 +78,13 @@ export function handleInitSpec(raw) {
|
|
|
66
78
|
basedOn: { hash: `sha256:${specHash}`, timestamp: nowIso },
|
|
67
79
|
summary,
|
|
68
80
|
};
|
|
81
|
+
// If the agent supplied the current manifest, return the full next-state
|
|
82
|
+
// manifest under `manifest.content`. Agents should write that verbatim to
|
|
83
|
+
// `extentos.manifest.json` — no merging required at the agent layer.
|
|
84
|
+
if (args.currentManifest) {
|
|
85
|
+
const next = applyManifestPatch(args.currentManifest, manifestPatch);
|
|
86
|
+
response.manifest = { path: manifestPath(), content: next };
|
|
87
|
+
}
|
|
69
88
|
if (infoPlistPatch)
|
|
70
89
|
response.infoPlistPatch = infoPlistPatch;
|
|
71
90
|
return okResponse(response);
|
|
@@ -138,6 +157,9 @@ function parseArgs(raw) {
|
|
|
138
157
|
}
|
|
139
158
|
presetTriggers.push(p);
|
|
140
159
|
}
|
|
160
|
+
const currentManifest = obj.currentManifest && typeof obj.currentManifest === "object" && !Array.isArray(obj.currentManifest)
|
|
161
|
+
? obj.currentManifest
|
|
162
|
+
: undefined;
|
|
141
163
|
return {
|
|
142
164
|
args: {
|
|
143
165
|
blocks: obj.blocks,
|
|
@@ -146,6 +168,7 @@ function parseArgs(raw) {
|
|
|
146
168
|
presetTriggers,
|
|
147
169
|
platform: obj.platform,
|
|
148
170
|
appPackage: obj.appPackage,
|
|
171
|
+
currentManifest,
|
|
149
172
|
},
|
|
150
173
|
};
|
|
151
174
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"initSpec.js","sourceRoot":"","sources":["../../../src/tools/handlers/initSpec.ts"],"names":[],"mappings":"AAAA,0FAA0F;AAC1F,yCAAyC;AACzC,oFAAoF;AACpF,qFAAqF;
|
|
1
|
+
{"version":3,"file":"initSpec.js","sourceRoot":"","sources":["../../../src/tools/handlers/initSpec.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"planIntegration.d.ts","sourceRoot":"","sources":["../../../src/tools/handlers/planIntegration.ts"],"names":[],"mappings":"AAGA,OAAO,EAA6B,KAAK,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAqG5E,wBAAgB,qBAAqB,CAAC,GAAG,EAAE,OAAO,GAAG,UAAU,
|
|
1
|
+
{"version":3,"file":"planIntegration.d.ts","sourceRoot":"","sources":["../../../src/tools/handlers/planIntegration.ts"],"names":[],"mappings":"AAGA,OAAO,EAA6B,KAAK,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAqG5E,wBAAgB,qBAAqB,CAAC,GAAG,EAAE,OAAO,GAAG,UAAU,CAgG9D"}
|
|
@@ -89,15 +89,28 @@ export function handlePlanIntegration(raw) {
|
|
|
89
89
|
const triggers = new Set();
|
|
90
90
|
const handlers = new Set();
|
|
91
91
|
let referencePattern = null;
|
|
92
|
+
// Merge rule (documented in MCP_TOOLS.md § planIntegration):
|
|
93
|
+
// 1. KEYWORDS entries with a `pattern:` field are exclusive — only the
|
|
94
|
+
// FIRST matching pattern entry contributes its primitives. This
|
|
95
|
+
// prevents over-suggestion when a goal mentions both "voice notes"
|
|
96
|
+
// (matches `voice_notes`) and "voice command" (matches
|
|
97
|
+
// `voice_assistant`) — we emit only the voice_notes pattern's
|
|
98
|
+
// primitives, not a noisy union of both.
|
|
99
|
+
// 2. KEYWORDS entries WITHOUT a `pattern:` field are additive (e.g.
|
|
100
|
+
// `tap` adds the tap trigger; `music` adds speak_text). They stack
|
|
101
|
+
// with the chosen pattern.
|
|
92
102
|
for (const kw of KEYWORDS) {
|
|
93
103
|
if (!kw.match.test(lower))
|
|
94
104
|
continue;
|
|
105
|
+
if (kw.pattern) {
|
|
106
|
+
if (referencePattern)
|
|
107
|
+
continue; // already locked in a pattern
|
|
108
|
+
referencePattern = kw.pattern;
|
|
109
|
+
}
|
|
95
110
|
kw.blocks?.forEach((b) => blocks.add(b));
|
|
96
111
|
kw.streams?.forEach((s) => streams.add(s));
|
|
97
112
|
kw.triggers?.forEach((t) => triggers.add(t));
|
|
98
113
|
kw.handlers?.forEach((h) => handlers.add(h));
|
|
99
|
-
if (kw.pattern && !referencePattern)
|
|
100
|
-
referencePattern = kw.pattern;
|
|
101
114
|
}
|
|
102
115
|
if (triggers.has("voice_command") && blocks.size === 0 && streams.size === 0) {
|
|
103
116
|
blocks.add("speak_text");
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"planIntegration.js","sourceRoot":"","sources":["../../../src/tools/handlers/planIntegration.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"planIntegration.js","sourceRoot":"","sources":["../../../src/tools/handlers/planIntegration.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"updateSpec.d.ts","sourceRoot":"","sources":["../../../src/tools/handlers/updateSpec.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"updateSpec.d.ts","sourceRoot":"","sources":["../../../src/tools/handlers/updateSpec.ts"],"names":[],"mappings":"AAkBA,OAAO,EAA6B,KAAK,UAAU,EAAE,MAAM,gBAAgB,CAAC;AA0C5E,wBAAgB,gBAAgB,CAAC,GAAG,EAAE,OAAO,GAAG,UAAU,CAqKzD"}
|
|
@@ -2,9 +2,15 @@
|
|
|
2
2
|
// Spec: docs/mcp/MCP_TOOLS.md § updateSpec
|
|
3
3
|
// Hard-enforced chain: refuses with stale_based_on if the basedOn hash doesn't match
|
|
4
4
|
// the hash of the provided spec (the agent must re-run inspectIntegration).
|
|
5
|
+
//
|
|
6
|
+
// Manifest contract: when the agent passes `currentManifest`, this tool emits
|
|
7
|
+
// the full next-state manifest under `manifest: { path, content }` with the
|
|
8
|
+
// new spec hash, integration summary, and permissions. Agent overwrites the
|
|
9
|
+
// manifest file verbatim.
|
|
5
10
|
import { createHash } from "node:crypto";
|
|
6
11
|
import { validateSpec } from "../validation/validateSpec.js";
|
|
7
12
|
import { deriveAndroid, deriveIos, deriveMetaDat } from "../util/permissions.js";
|
|
13
|
+
import { applyManifestPatch, manifestPath, } from "../util/manifest.js";
|
|
8
14
|
import { okResponse, errorResponse } from "../response.js";
|
|
9
15
|
const OP_TYPES = new Set([
|
|
10
16
|
"addBlock",
|
|
@@ -25,7 +31,7 @@ export function handleUpdateSpec(raw) {
|
|
|
25
31
|
const parsed = parseArgs(raw);
|
|
26
32
|
if ("error" in parsed)
|
|
27
33
|
return parsed.error;
|
|
28
|
-
const { spec: originalSpec, basedOn, operations, platform } = parsed;
|
|
34
|
+
const { spec: originalSpec, basedOn, operations, platform, currentManifest } = parsed;
|
|
29
35
|
const originalJson = JSON.stringify(originalSpec, null, 2);
|
|
30
36
|
const originalHash = `sha256:${sha256(originalJson)}`;
|
|
31
37
|
const providedHash = normalizeHash(basedOn.hash);
|
|
@@ -103,7 +109,7 @@ export function handleUpdateSpec(raw) {
|
|
|
103
109
|
summary,
|
|
104
110
|
});
|
|
105
111
|
}
|
|
106
|
-
|
|
112
|
+
const response = {
|
|
107
113
|
status,
|
|
108
114
|
spec: workingSpec,
|
|
109
115
|
basedOn: { hash: newHash, timestamp },
|
|
@@ -119,7 +125,67 @@ export function handleUpdateSpec(raw) {
|
|
|
119
125
|
metaDat: deltas.permissionsAdded.length || deltas.streamsAdded.length
|
|
120
126
|
? deriveMetaDat(workingSpec)
|
|
121
127
|
: undefined,
|
|
122
|
-
}
|
|
128
|
+
};
|
|
129
|
+
if (currentManifest) {
|
|
130
|
+
const specPathFromManifest = typeof currentManifest.spec?.path === "string"
|
|
131
|
+
? currentManifest.spec.path
|
|
132
|
+
: undefined;
|
|
133
|
+
const blocks = Array.from(new Set((workingSpec.blocks ?? [])
|
|
134
|
+
.map((b) => b.type)
|
|
135
|
+
.filter((x) => typeof x === "string"))).sort();
|
|
136
|
+
const streams = Array.from(new Set((workingSpec.streams ?? [])
|
|
137
|
+
.map((s) => s.type)
|
|
138
|
+
.filter((x) => typeof x === "string"))).sort();
|
|
139
|
+
const triggers = Array.from(new Set((workingSpec.triggers ?? [])
|
|
140
|
+
.map((t) => t.type)
|
|
141
|
+
.filter((x) => typeof x === "string"))).sort();
|
|
142
|
+
const handlerNames = [...afterCallbacks].sort();
|
|
143
|
+
const togglesOverridden = collectToggleKeys(workingSpec);
|
|
144
|
+
const manifestPatchOut = {
|
|
145
|
+
lastUpdatedAt: timestamp,
|
|
146
|
+
specUpdated: specPathFromManifest
|
|
147
|
+
? { path: specPathFromManifest, hash: newHash, updatedAt: timestamp }
|
|
148
|
+
: undefined,
|
|
149
|
+
permissionsAdded: platform === "android" ? deltas.permissionsAdded : undefined,
|
|
150
|
+
permissionsRemoved: platform === "android" ? deltas.permissionsRemoved : undefined,
|
|
151
|
+
integrationSet: {
|
|
152
|
+
blocks,
|
|
153
|
+
streams,
|
|
154
|
+
triggers,
|
|
155
|
+
handlerNames,
|
|
156
|
+
togglesOverridden,
|
|
157
|
+
},
|
|
158
|
+
};
|
|
159
|
+
const next = applyManifestPatch(currentManifest, manifestPatchOut);
|
|
160
|
+
response.manifest = { path: manifestPath(), content: next };
|
|
161
|
+
}
|
|
162
|
+
return okResponse(response);
|
|
163
|
+
}
|
|
164
|
+
function collectToggleKeys(spec) {
|
|
165
|
+
const keys = new Set();
|
|
166
|
+
const visit = (actions) => {
|
|
167
|
+
if (!Array.isArray(actions))
|
|
168
|
+
return;
|
|
169
|
+
for (const a of actions) {
|
|
170
|
+
if (!a || typeof a !== "object")
|
|
171
|
+
continue;
|
|
172
|
+
const rec = a;
|
|
173
|
+
if (rec.type === "set_toggle" && typeof rec.key === "string")
|
|
174
|
+
keys.add(rec.key);
|
|
175
|
+
if (rec.type === "branch") {
|
|
176
|
+
visit(rec.then);
|
|
177
|
+
visit(rec.else);
|
|
178
|
+
}
|
|
179
|
+
if (rec.type === "retry_with_backoff" || rec.type === "when_connected") {
|
|
180
|
+
if (rec.action)
|
|
181
|
+
visit([rec.action]);
|
|
182
|
+
}
|
|
183
|
+
}
|
|
184
|
+
};
|
|
185
|
+
const triggers = spec.triggers ?? [];
|
|
186
|
+
for (const t of triggers)
|
|
187
|
+
visit(t.actions);
|
|
188
|
+
return [...keys].sort();
|
|
123
189
|
}
|
|
124
190
|
function applyOp(spec, op, index, applied, skipped) {
|
|
125
191
|
switch (op.op) {
|
|
@@ -433,11 +499,15 @@ function parseArgs(raw) {
|
|
|
433
499
|
if (obj.platform !== "android" && obj.platform !== "ios") {
|
|
434
500
|
return errInvalid(`platform must be "android" or "ios" (got ${JSON.stringify(obj.platform)}).`, 'Pass platform: "android" or "ios".');
|
|
435
501
|
}
|
|
502
|
+
const currentManifest = obj.currentManifest && typeof obj.currentManifest === "object" && !Array.isArray(obj.currentManifest)
|
|
503
|
+
? obj.currentManifest
|
|
504
|
+
: undefined;
|
|
436
505
|
return {
|
|
437
506
|
spec: obj.spec,
|
|
438
507
|
basedOn: { hash: basedOn.hash, timestamp: basedOn.timestamp },
|
|
439
508
|
operations: ops,
|
|
440
509
|
platform: obj.platform,
|
|
510
|
+
currentManifest,
|
|
441
511
|
};
|
|
442
512
|
}
|
|
443
513
|
function errInvalid(message, fixHint) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"updateSpec.js","sourceRoot":"","sources":["../../../src/tools/handlers/updateSpec.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"updateSpec.js","sourceRoot":"","sources":["../../../src/tools/handlers/updateSpec.ts"],"names":[],"mappings":"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"}
|
|
@@ -6,4 +6,54 @@ export interface ManifestInit {
|
|
|
6
6
|
}
|
|
7
7
|
export declare function buildEmptyManifest(init: ManifestInit, nowIso: string): Record<string, unknown>;
|
|
8
8
|
export declare const EMPTY_SPEC_CONTENT: Record<string, unknown>;
|
|
9
|
+
export interface ManifestGeneratedFileEntry {
|
|
10
|
+
path: string;
|
|
11
|
+
template: string;
|
|
12
|
+
hash?: string;
|
|
13
|
+
generatedAt?: string;
|
|
14
|
+
generatedByTool: string;
|
|
15
|
+
}
|
|
16
|
+
export interface ManifestPatch {
|
|
17
|
+
/** Update extentos.lastUpdatedAt to this ISO timestamp. Required. */
|
|
18
|
+
lastUpdatedAt: string;
|
|
19
|
+
/** Replace spec.{path,hash,updatedAt} when the spec content changed. */
|
|
20
|
+
specUpdated?: {
|
|
21
|
+
path: string;
|
|
22
|
+
hash: string;
|
|
23
|
+
updatedAt: string;
|
|
24
|
+
};
|
|
25
|
+
/** Append (de-duped by path) to generatedFiles[]. */
|
|
26
|
+
generatedFilesAdded?: ManifestGeneratedFileEntry[];
|
|
27
|
+
/** Replace existing entries in generatedFiles[] keyed by path. */
|
|
28
|
+
generatedFilesUpdated?: ManifestGeneratedFileEntry[];
|
|
29
|
+
/** Remove entries from generatedFiles[] by path. */
|
|
30
|
+
generatedFilesRemoved?: string[];
|
|
31
|
+
/** Union into manifest.permissions[]. */
|
|
32
|
+
permissionsAdded?: string[];
|
|
33
|
+
/** Remove from manifest.permissions[]. */
|
|
34
|
+
permissionsRemoved?: string[];
|
|
35
|
+
/** Union into integration.{blocks,streams,triggers,handlerNames,togglesOverridden}. Sorted-deduped. */
|
|
36
|
+
integrationAdded?: {
|
|
37
|
+
blocks?: string[];
|
|
38
|
+
streams?: string[];
|
|
39
|
+
triggers?: string[];
|
|
40
|
+
handlerNames?: string[];
|
|
41
|
+
togglesOverridden?: string[];
|
|
42
|
+
};
|
|
43
|
+
/**
|
|
44
|
+
* Authoritative replacement for integration[*] arrays. Used by updateSpec
|
|
45
|
+
* which knows the full post-state (unlike incremental tools that only
|
|
46
|
+
* declare what they're adding). Mutually exclusive with integrationAdded
|
|
47
|
+
* for the same field — `integrationSet` wins if both are provided.
|
|
48
|
+
*/
|
|
49
|
+
integrationSet?: {
|
|
50
|
+
blocks?: string[];
|
|
51
|
+
streams?: string[];
|
|
52
|
+
triggers?: string[];
|
|
53
|
+
handlerNames?: string[];
|
|
54
|
+
togglesOverridden?: string[];
|
|
55
|
+
};
|
|
56
|
+
}
|
|
57
|
+
export declare function applyManifestPatch(current: Record<string, unknown>, patch: ManifestPatch): Record<string, unknown>;
|
|
58
|
+
export declare function manifestPath(): string;
|
|
9
59
|
//# sourceMappingURL=manifest.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"manifest.d.ts","sourceRoot":"","sources":["../../../src/tools/util/manifest.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"manifest.d.ts","sourceRoot":"","sources":["../../../src/tools/util/manifest.ts"],"names":[],"mappings":"AAUA,MAAM,WAAW,YAAY;IAC3B,QAAQ,EAAE,SAAS,GAAG,KAAK,CAAC;IAC5B,UAAU,EAAE,MAAM,CAAC;IACnB,cAAc,EAAE,MAAM,CAAC;IACvB,QAAQ,EAAE,MAAM,CAAC;CAClB;AAED,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,YAAY,EAAE,MAAM,EAAE,MAAM,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAmD9F;AAED,eAAO,MAAM,kBAAkB,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAMtD,CAAC;AASF,MAAM,WAAW,0BAA0B;IACzC,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,MAAM,CAAC;IACjB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,eAAe,EAAE,MAAM,CAAC;CACzB;AAED,MAAM,WAAW,aAAa;IAC5B,qEAAqE;IACrE,aAAa,EAAE,MAAM,CAAC;IACtB,wEAAwE;IACxE,WAAW,CAAC,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAC;QAAC,SAAS,EAAE,MAAM,CAAA;KAAE,CAAC;IAChE,qDAAqD;IACrD,mBAAmB,CAAC,EAAE,0BAA0B,EAAE,CAAC;IACnD,kEAAkE;IAClE,qBAAqB,CAAC,EAAE,0BAA0B,EAAE,CAAC;IACrD,oDAAoD;IACpD,qBAAqB,CAAC,EAAE,MAAM,EAAE,CAAC;IACjC,yCAAyC;IACzC,gBAAgB,CAAC,EAAE,MAAM,EAAE,CAAC;IAC5B,0CAA0C;IAC1C,kBAAkB,CAAC,EAAE,MAAM,EAAE,CAAC;IAC9B,uGAAuG;IACvG,gBAAgB,CAAC,EAAE;QACjB,MAAM,CAAC,EAAE,MAAM,EAAE,CAAC;QAClB,OAAO,CAAC,EAAE,MAAM,EAAE,CAAC;QACnB,QAAQ,CAAC,EAAE,MAAM,EAAE,CAAC;QACpB,YAAY,CAAC,EAAE,MAAM,EAAE,CAAC;QACxB,iBAAiB,CAAC,EAAE,MAAM,EAAE,CAAC;KAC9B,CAAC;IACF;;;;;OAKG;IACH,cAAc,CAAC,EAAE;QACf,MAAM,CAAC,EAAE,MAAM,EAAE,CAAC;QAClB,OAAO,CAAC,EAAE,MAAM,EAAE,CAAC;QACnB,QAAQ,CAAC,EAAE,MAAM,EAAE,CAAC;QACpB,YAAY,CAAC,EAAE,MAAM,EAAE,CAAC;QACxB,iBAAiB,CAAC,EAAE,MAAM,EAAE,CAAC;KAC9B,CAAC;CACH;AAED,wBAAgB,kBAAkB,CAChC,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAChC,KAAK,EAAE,aAAa,GACnB,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAiFzB;AAED,wBAAgB,YAAY,IAAI,MAAM,CAErC"}
|
|
@@ -1,6 +1,12 @@
|
|
|
1
|
-
// Build
|
|
2
|
-
// Used by generateConnectionModule
|
|
3
|
-
//
|
|
1
|
+
// Build and mutate extentos.manifest.json per schemas/extentos-manifest.schema.json.
|
|
2
|
+
// Used by generateConnectionModule (initial scaffold) and the mutating tools
|
|
3
|
+
// (initSpec, updateSpec, generateConsumer) which apply a patch in-memory and
|
|
4
|
+
// return the next-state manifest for the agent to write back.
|
|
5
|
+
//
|
|
6
|
+
// The MCP server is intentionally filesystem-agnostic for write tools — the
|
|
7
|
+
// agent reads the current manifest via inspectIntegration, passes it to a
|
|
8
|
+
// write tool, and writes the returned manifest.content verbatim. See
|
|
9
|
+
// docs/mcp/INTEGRATION_SHAPE.md § Modification Rules.
|
|
4
10
|
export function buildEmptyManifest(init, nowIso) {
|
|
5
11
|
const base = {
|
|
6
12
|
manifestVersion: 1,
|
|
@@ -59,4 +65,85 @@ export const EMPTY_SPEC_CONTENT = {
|
|
|
59
65
|
streams: [],
|
|
60
66
|
triggers: [],
|
|
61
67
|
};
|
|
68
|
+
export function applyManifestPatch(current, patch) {
|
|
69
|
+
const next = JSON.parse(JSON.stringify(current));
|
|
70
|
+
const extentos = next.extentos ?? {};
|
|
71
|
+
next.extentos = { ...extentos, lastUpdatedAt: patch.lastUpdatedAt };
|
|
72
|
+
if (patch.specUpdated) {
|
|
73
|
+
next.spec = { ...patch.specUpdated };
|
|
74
|
+
}
|
|
75
|
+
const filesArr = Array.isArray(next.generatedFiles)
|
|
76
|
+
? next.generatedFiles.slice()
|
|
77
|
+
: [];
|
|
78
|
+
const fileIndexByPath = new Map(filesArr.map((f, i) => [f.path, i]));
|
|
79
|
+
if (patch.generatedFilesUpdated) {
|
|
80
|
+
for (const entry of patch.generatedFilesUpdated) {
|
|
81
|
+
const idx = fileIndexByPath.get(entry.path);
|
|
82
|
+
if (idx == null) {
|
|
83
|
+
fileIndexByPath.set(entry.path, filesArr.length);
|
|
84
|
+
filesArr.push(entry);
|
|
85
|
+
}
|
|
86
|
+
else {
|
|
87
|
+
filesArr[idx] = entry;
|
|
88
|
+
}
|
|
89
|
+
}
|
|
90
|
+
}
|
|
91
|
+
if (patch.generatedFilesAdded) {
|
|
92
|
+
for (const entry of patch.generatedFilesAdded) {
|
|
93
|
+
if (fileIndexByPath.has(entry.path)) {
|
|
94
|
+
// De-dupe by path: prefer the newer entry.
|
|
95
|
+
filesArr[fileIndexByPath.get(entry.path)] = entry;
|
|
96
|
+
}
|
|
97
|
+
else {
|
|
98
|
+
fileIndexByPath.set(entry.path, filesArr.length);
|
|
99
|
+
filesArr.push(entry);
|
|
100
|
+
}
|
|
101
|
+
}
|
|
102
|
+
}
|
|
103
|
+
if (patch.generatedFilesRemoved) {
|
|
104
|
+
const removed = new Set(patch.generatedFilesRemoved);
|
|
105
|
+
next.generatedFiles = filesArr.filter((f) => !removed.has(f.path));
|
|
106
|
+
}
|
|
107
|
+
else {
|
|
108
|
+
next.generatedFiles = filesArr;
|
|
109
|
+
}
|
|
110
|
+
if (patch.permissionsAdded?.length || patch.permissionsRemoved?.length) {
|
|
111
|
+
const existing = new Set(Array.isArray(next.permissions) ? next.permissions : []);
|
|
112
|
+
for (const p of patch.permissionsAdded ?? [])
|
|
113
|
+
existing.add(p);
|
|
114
|
+
for (const p of patch.permissionsRemoved ?? [])
|
|
115
|
+
existing.delete(p);
|
|
116
|
+
next.permissions = [...existing].sort();
|
|
117
|
+
}
|
|
118
|
+
if (patch.integrationAdded || patch.integrationSet) {
|
|
119
|
+
const integration = next.integration ?? {
|
|
120
|
+
blocks: [],
|
|
121
|
+
streams: [],
|
|
122
|
+
triggers: [],
|
|
123
|
+
handlerNames: [],
|
|
124
|
+
togglesOverridden: [],
|
|
125
|
+
};
|
|
126
|
+
const resolve = (key) => {
|
|
127
|
+
// integrationSet wins when present — it carries the full post-state.
|
|
128
|
+
if (patch.integrationSet?.[key] !== undefined) {
|
|
129
|
+
return [...new Set(patch.integrationSet[key])].sort();
|
|
130
|
+
}
|
|
131
|
+
const existing = Array.isArray(integration[key]) ? integration[key] : [];
|
|
132
|
+
const incoming = patch.integrationAdded?.[key] ?? [];
|
|
133
|
+
return [...new Set([...existing, ...incoming])].sort();
|
|
134
|
+
};
|
|
135
|
+
next.integration = {
|
|
136
|
+
...integration,
|
|
137
|
+
blocks: resolve("blocks"),
|
|
138
|
+
streams: resolve("streams"),
|
|
139
|
+
triggers: resolve("triggers"),
|
|
140
|
+
handlerNames: resolve("handlerNames"),
|
|
141
|
+
togglesOverridden: resolve("togglesOverridden"),
|
|
142
|
+
};
|
|
143
|
+
}
|
|
144
|
+
return next;
|
|
145
|
+
}
|
|
146
|
+
export function manifestPath() {
|
|
147
|
+
return "extentos.manifest.json";
|
|
148
|
+
}
|
|
62
149
|
//# sourceMappingURL=manifest.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"manifest.js","sourceRoot":"","sources":["../../../src/tools/util/manifest.ts"],"names":[],"mappings":"AAAA,
|
|
1
|
+
{"version":3,"file":"manifest.js","sourceRoot":"","sources":["../../../src/tools/util/manifest.ts"],"names":[],"mappings":"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"}
|