@telora/mcp-products 0.21.27 → 0.21.30

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.
Files changed (38) hide show
  1. package/dist/handlers/componentHandlers.d.ts +3 -0
  2. package/dist/handlers/componentHandlers.js +128 -0
  3. package/dist/handlers/componentHandlers.js.map +1 -0
  4. package/dist/handlers/contractHandlers.d.ts +3 -0
  5. package/dist/handlers/contractHandlers.js +150 -0
  6. package/dist/handlers/contractHandlers.js.map +1 -0
  7. package/dist/handlers/factoryHandlers.js +3 -182
  8. package/dist/handlers/factoryHandlers.js.map +1 -1
  9. package/dist/handlers/index.d.ts +3 -0
  10. package/dist/handlers/index.js +3 -0
  11. package/dist/handlers/index.js.map +1 -1
  12. package/dist/handlers/prerequisiteTreeHandlers.d.ts +3 -0
  13. package/dist/handlers/prerequisiteTreeHandlers.js +416 -0
  14. package/dist/handlers/prerequisiteTreeHandlers.js.map +1 -0
  15. package/dist/handlers/realityTreeHandlers.js +6 -4
  16. package/dist/handlers/realityTreeHandlers.js.map +1 -1
  17. package/dist/handlers/strategyHandlers.js +2 -0
  18. package/dist/handlers/strategyHandlers.js.map +1 -1
  19. package/dist/index.js +72 -2
  20. package/dist/index.js.map +1 -1
  21. package/dist/scanner/ast-extraction.d.ts +10 -0
  22. package/dist/scanner/ast-extraction.js +156 -0
  23. package/dist/scanner/ast-extraction.js.map +1 -0
  24. package/dist/scanner/file-discovery.d.ts +9 -0
  25. package/dist/scanner/file-discovery.js +134 -0
  26. package/dist/scanner/file-discovery.js.map +1 -0
  27. package/dist/scanner/index.d.ts +19 -0
  28. package/dist/scanner/index.js +193 -0
  29. package/dist/scanner/index.js.map +1 -0
  30. package/dist/scanner/relationship-extraction.d.ts +11 -0
  31. package/dist/scanner/relationship-extraction.js +187 -0
  32. package/dist/scanner/relationship-extraction.js.map +1 -0
  33. package/dist/scanner/types.d.ts +45 -0
  34. package/dist/scanner/types.js +3 -0
  35. package/dist/scanner/types.js.map +1 -0
  36. package/dist/shared.js +34 -7
  37. package/dist/shared.js.map +1 -1
  38. package/package.json +2 -1
@@ -0,0 +1,3 @@
1
+ import type { McpServer } from "@modelcontextprotocol/sdk/server/mcp.js";
2
+ import { type GetCreds } from "../shared.js";
3
+ export declare function registerComponentTools(server: McpServer, getCreds: GetCreds): void;
@@ -0,0 +1,128 @@
1
+ // ---------------------------------------------------------------------------
2
+ // Component architecture MCP tool handlers:
3
+ // telora_component_scan (scan codebase)
4
+ // telora_component (list | get)
5
+ // telora_component_scan_list (list scans)
6
+ // telora_component_scan_diff (compare two scans)
7
+ // ---------------------------------------------------------------------------
8
+ import { z } from "zod";
9
+ import { callProductApi, successResult, validationError, wrapHandler, } from "../shared.js";
10
+ import { runScan } from "../scanner/index.js";
11
+ export function registerComponentTools(server, getCreds) {
12
+ // ── Scanner ─────────────────────────────────────────────────────
13
+ server.tool("telora_component_scan", "Scan a product's source code to extract its component architecture: files, " +
14
+ "public API (props, functions, types), and import relationships. Creates a " +
15
+ "snapshot that can be compared with previous scans to track architectural drift. " +
16
+ "Uses ts-morph AST parsing for accurate extraction.", {
17
+ productId: z.string().uuid().describe("Product UUID to scan"),
18
+ repoPath: z.string().optional().describe("Path to git repository (defaults to cwd)"),
19
+ sourceRoot: z.string().optional().describe("Source root relative to repo (default: 'src/')"),
20
+ maxScans: z.number().int().min(1).max(100).optional().describe("Max completed scans to retain per product (default: 10). Older scans are pruned after a successful scan."),
21
+ }, wrapHandler(async (params) => {
22
+ if (!params.productId)
23
+ return validationError("productId is required");
24
+ const repoPath = params.repoPath || process.cwd();
25
+ const result = await runScan(getCreds(), {
26
+ productId: params.productId,
27
+ repoPath,
28
+ sourceRoot: params.sourceRoot,
29
+ maxScans: params.maxScans,
30
+ });
31
+ return successResult({
32
+ scanId: result.scanId,
33
+ commitSha: result.commitSha,
34
+ componentCount: result.componentCount,
35
+ memberCount: result.memberCount,
36
+ relationshipCount: result.relationshipCount,
37
+ });
38
+ }));
39
+ // ── Component List ──────────────────────────────────────────────
40
+ server.tool("telora_component_list", "List components from the persisted architecture model. Defaults to the latest " +
41
+ "completed scan. Filter by type, parent directory, or scan. Returns hierarchy-aware " +
42
+ "results ordered by path.", {
43
+ productId: z.string().uuid().describe("Product UUID"),
44
+ scanId: z.string().uuid().optional().describe("Specific scan ID (default: latest completed)"),
45
+ componentType: z.enum([
46
+ "page", "component", "hook", "context",
47
+ "library", "utility", "type_definition", "barrel",
48
+ ]).optional().describe("Filter by component type"),
49
+ parentId: z.string().uuid().nullable().optional().describe("List children of this directory (null = root level)"),
50
+ limit: z.number().int().min(1).max(500).optional().describe("Max results (default 50)"),
51
+ offset: z.number().int().min(0).optional().describe("Skip N results"),
52
+ }, wrapHandler(async (params) => {
53
+ if (!params.productId)
54
+ return validationError("productId is required");
55
+ const body = {
56
+ action: "component_list",
57
+ productId: params.productId,
58
+ };
59
+ if (params.scanId)
60
+ body.scanId = params.scanId;
61
+ if (params.componentType)
62
+ body.componentType = params.componentType;
63
+ if (params.parentId !== undefined)
64
+ body.parentId = params.parentId;
65
+ if (params.limit !== undefined)
66
+ body.limit = params.limit;
67
+ if (params.offset !== undefined)
68
+ body.offset = params.offset;
69
+ const result = await callProductApi(getCreds(), body);
70
+ return successResult({ items: result.components, totalCount: result.totalCount });
71
+ }));
72
+ // ── Component Get ───────────────────────────────────────────────
73
+ server.tool("telora_component_get", "Get full details for a single component: its members (props, functions, types), " +
74
+ "inbound/outbound relationships, parent info, and children. Use after " +
75
+ "telora_component_list to drill into a specific component.", {
76
+ componentId: z.string().uuid().describe("Component UUID"),
77
+ }, wrapHandler(async (params) => {
78
+ if (!params.componentId)
79
+ return validationError("componentId is required");
80
+ const result = await callProductApi(getCreds(), {
81
+ action: "component_get",
82
+ componentId: params.componentId,
83
+ });
84
+ return successResult(result);
85
+ }));
86
+ // ── Scan List ───────────────────────────────────────────────────
87
+ server.tool("telora_component_scan_list", "List past component scans for a product. Shows commit SHA, scan time, " +
88
+ "component/relationship counts, and status. Most recent first.", {
89
+ productId: z.string().uuid().describe("Product UUID"),
90
+ status: z.enum(["running", "completed", "failed"]).optional().describe("Filter by status"),
91
+ limit: z.number().int().min(1).max(500).optional().describe("Max results (default 50)"),
92
+ offset: z.number().int().min(0).optional().describe("Skip N results"),
93
+ }, wrapHandler(async (params) => {
94
+ if (!params.productId)
95
+ return validationError("productId is required");
96
+ const body = {
97
+ action: "component_scan_list",
98
+ productId: params.productId,
99
+ };
100
+ if (params.status)
101
+ body.fields = { status: params.status };
102
+ if (params.limit !== undefined)
103
+ body.limit = params.limit;
104
+ if (params.offset !== undefined)
105
+ body.offset = params.offset;
106
+ const result = await callProductApi(getCreds(), body);
107
+ return successResult({ items: result.scans, totalCount: result.totalCount });
108
+ }));
109
+ // ── Scan Diff ───────────────────────────────────────────────────
110
+ server.tool("telora_component_scan_diff", "Compare two scans to see what changed: added/removed/changed components, " +
111
+ "new/dropped import relationships, and changed member signatures. Components " +
112
+ "matched by path (stable identity across scans).", {
113
+ baseScanId: z.string().uuid().describe("Base scan UUID (older)"),
114
+ headScanId: z.string().uuid().describe("Head scan UUID (newer)"),
115
+ }, wrapHandler(async (params) => {
116
+ if (!params.baseScanId)
117
+ return validationError("baseScanId is required");
118
+ if (!params.headScanId)
119
+ return validationError("headScanId is required");
120
+ const result = await callProductApi(getCreds(), {
121
+ action: "component_scan_diff",
122
+ baseScanId: params.baseScanId,
123
+ headScanId: params.headScanId,
124
+ });
125
+ return successResult(result);
126
+ }));
127
+ }
128
+ //# sourceMappingURL=componentHandlers.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"componentHandlers.js","sourceRoot":"","sources":["../../src/handlers/componentHandlers.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,3 @@
1
+ import type { McpServer } from "@modelcontextprotocol/sdk/server/mcp.js";
2
+ import { type GetCreds } from "../shared.js";
3
+ export declare function registerContractTools(server: McpServer, getCreds: GetCreds): void;
@@ -0,0 +1,150 @@
1
+ // ---------------------------------------------------------------------------
2
+ // Contract tool handlers:
3
+ // telora_contract (list | create | get | update)
4
+ // telora_contract_version (add | list | get | diff)
5
+ // ---------------------------------------------------------------------------
6
+ import { z } from "zod";
7
+ import { callProductApi, successResult, validationError, wrapHandler, compactEntity, } from "../shared.js";
8
+ const contractStatusEnum = z.enum(["draft", "active", "completed", "terminated"]);
9
+ export function registerContractTools(server, getCreds) {
10
+ // -- telora_contract --------------------------------------------------------
11
+ server.tool("telora_contract", "Contracts: named agreements linked to a product. " +
12
+ "Each contract has a name, counterparty, effective date, and status (draft/active/completed/terminated). " +
13
+ "Contract text is stored as versioned markdown in contract_versions. " +
14
+ "Actions: list (productId, optional status filter), create (productId + name), " +
15
+ "get (contractId -- returns contract with version metadata), update (contractId + fields).", {
16
+ action: z.enum(["list", "create", "get", "update"]).describe("Action to perform"),
17
+ productId: z.string().uuid().optional().describe("Product UUID (required for list, create)"),
18
+ contractId: z.string().uuid().optional().describe("Contract UUID (required for get, update)"),
19
+ name: z.string().max(200).optional().describe("Contract name (required for create)"),
20
+ counterparty: z.string().max(500).optional().describe("Counterparty name"),
21
+ effectiveDate: z.string().optional().describe("Effective date (ISO 8601 date)"),
22
+ status: contractStatusEnum.optional().describe("Contract status"),
23
+ returnFull: z.boolean().optional().describe("Return full entity (default: compact)"),
24
+ }, wrapHandler(async (params) => {
25
+ switch (params.action) {
26
+ case "list": {
27
+ if (!params.productId)
28
+ return validationError("productId required for list");
29
+ const body = {
30
+ action: "contract_list",
31
+ productId: params.productId,
32
+ };
33
+ if (params.status !== undefined)
34
+ body.status = params.status;
35
+ const result = await callProductApi(getCreds(), body);
36
+ return successResult(result);
37
+ }
38
+ case "create": {
39
+ if (!params.productId || !params.name)
40
+ return validationError("productId and name required for create");
41
+ const body = {
42
+ action: "contract_create",
43
+ productId: params.productId,
44
+ name: params.name,
45
+ };
46
+ if (params.counterparty !== undefined)
47
+ body.counterparty = params.counterparty;
48
+ if (params.effectiveDate !== undefined)
49
+ body.effectiveDate = params.effectiveDate;
50
+ if (params.status !== undefined)
51
+ body.status = params.status;
52
+ const result = await callProductApi(getCreds(), body);
53
+ const contract = result.contract;
54
+ return successResult({ contract: params.returnFull ? contract : compactEntity(contract, ["name", "status", "counterparty"]) });
55
+ }
56
+ case "get": {
57
+ if (!params.contractId)
58
+ return validationError("contractId required for get");
59
+ const result = await callProductApi(getCreds(), {
60
+ action: "contract_get",
61
+ contractId: params.contractId,
62
+ });
63
+ return successResult(result);
64
+ }
65
+ case "update": {
66
+ if (!params.contractId)
67
+ return validationError("contractId required for update");
68
+ const body = {
69
+ action: "contract_update",
70
+ contractId: params.contractId,
71
+ };
72
+ if (params.name !== undefined)
73
+ body.name = params.name;
74
+ if (params.counterparty !== undefined)
75
+ body.counterparty = params.counterparty;
76
+ if (params.effectiveDate !== undefined)
77
+ body.effectiveDate = params.effectiveDate;
78
+ if (params.status !== undefined)
79
+ body.status = params.status;
80
+ const result = await callProductApi(getCreds(), body);
81
+ const contract = result.contract;
82
+ return successResult({ contract: params.returnFull ? contract : compactEntity(contract, ["name", "status", "counterparty"]) });
83
+ }
84
+ default:
85
+ return validationError(`Unknown action: ${params.action}`);
86
+ }
87
+ }));
88
+ // -- telora_contract_version ------------------------------------------------
89
+ server.tool("telora_contract_version", "Contract versions: versioned markdown text for contracts. " +
90
+ "Each version is immutable once created. Version numbers auto-increment per contract. " +
91
+ "Actions: add (contractId + content -- creates next version), " +
92
+ "list (contractId -- version metadata without content), " +
93
+ "get (contractId + versionNumber -- returns full content), " +
94
+ "diff (contractId + fromVersion + toVersion -- line-level diff).", {
95
+ action: z.enum(["add", "list", "get", "diff"]).describe("Action to perform"),
96
+ contractId: z.string().uuid().describe("Contract UUID"),
97
+ content: z.string().optional().describe("Markdown content (required for add)"),
98
+ versionNumber: z.number().int().positive().optional()
99
+ .describe("Version number (required for get)"),
100
+ fromVersion: z.number().int().positive().optional()
101
+ .describe("From version number (required for diff)"),
102
+ toVersion: z.number().int().positive().optional()
103
+ .describe("To version number (required for diff)"),
104
+ }, wrapHandler(async (params) => {
105
+ switch (params.action) {
106
+ case "add": {
107
+ if (!params.content)
108
+ return validationError("content required for add");
109
+ const result = await callProductApi(getCreds(), {
110
+ action: "contract_version_add",
111
+ contractId: params.contractId,
112
+ content: params.content,
113
+ });
114
+ return successResult(result);
115
+ }
116
+ case "list": {
117
+ const result = await callProductApi(getCreds(), {
118
+ action: "contract_version_list",
119
+ contractId: params.contractId,
120
+ });
121
+ return successResult(result);
122
+ }
123
+ case "get": {
124
+ if (params.versionNumber === undefined)
125
+ return validationError("versionNumber required for get");
126
+ const result = await callProductApi(getCreds(), {
127
+ action: "contract_version_get",
128
+ contractId: params.contractId,
129
+ versionNumber: params.versionNumber,
130
+ });
131
+ return successResult(result);
132
+ }
133
+ case "diff": {
134
+ if (params.fromVersion === undefined || params.toVersion === undefined) {
135
+ return validationError("fromVersion and toVersion required for diff");
136
+ }
137
+ const result = await callProductApi(getCreds(), {
138
+ action: "contract_version_diff",
139
+ contractId: params.contractId,
140
+ fromVersion: params.fromVersion,
141
+ toVersion: params.toVersion,
142
+ });
143
+ return successResult(result);
144
+ }
145
+ default:
146
+ return validationError(`Unknown action: ${params.action}`);
147
+ }
148
+ }));
149
+ }
150
+ //# sourceMappingURL=contractHandlers.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"contractHandlers.js","sourceRoot":"","sources":["../../src/handlers/contractHandlers.ts"],"names":[],"mappings":"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"}
@@ -107,188 +107,9 @@ export function registerFactoryTools(server, getCreds, profile = 'full') {
107
107
  return successResult(compactEntity(result.blueprint, Object.keys(fields), returnFull));
108
108
  }));
109
109
  }
110
- // -- telora_factory_spec (consolidated) --------------------------------------
111
- server.tool("telora_factory_spec", "Factory specifications: define what to build. Specs capture requirements through a conversational authoring flow " +
112
- "(intent capture, context gathering, synthesis, readiness assessment). " +
113
- "Actions: create a spec (productId), get spec details, list specs, update fields (conversation, readiness, synthesized text), " +
114
- "validate spec against a blueprint's constraints.", {
115
- action: z.enum(["create", "get", "list", "update", "validate"]).describe("Action to perform"),
116
- specId: z.string().uuid().optional().describe("Spec UUID (required for get, update, validate)"),
117
- productId: z.string().uuid().optional().describe("Product UUID (required for create, optional filter for list)"),
118
- blueprintId: z.string().uuid().optional().describe("Blueprint UUID (required for validate)"),
119
- title: z.string().max(500).optional().describe("Spec title (for create/update)"),
120
- specType: z.enum(["prototype", "mvp", "extend_existing"]).optional().describe("Spec type (for create/update)"),
121
- conversationPhase: z.enum(["intent_capture", "context_gathering", "template_selection", "dimension_exploration", "synthesis", "readiness_assessment", "strategy_preview"]).optional().describe("Current conversation phase (for update)"),
122
- synthesizedSpec: z.string().optional().describe("Synthesized specification text (for update)"),
123
- conversation: z.array(z.record(z.string(), z.unknown())).optional().describe("Conversation history [{role, content, timestamp}] (for update)"),
124
- readiness: z.record(z.string(), z.unknown()).optional().describe("Readiness assessment {overall, dimensions} (for update)"),
125
- status: z.enum(["drafting", "ready", "launched", "abandoned"]).optional().describe("Spec status (for list filter or update)"),
126
- launchedInstanceId: z.string().uuid().nullable().optional().describe("Factory instance ID when spec is launched (for update)"),
127
- limit: z.number().int().min(1).max(500).optional().describe("Max results for list (1-500, default 50)"),
128
- offset: z.number().int().min(0).optional().describe("Skip results for list (default 0)"),
129
- returnFull: z.boolean().optional().describe("Return full entity (default: compact, for create/update)"),
130
- }, wrapHandler(async (params) => {
131
- switch (params.action) {
132
- case "create": {
133
- if (!params.productId)
134
- return validationError("productId is required for create");
135
- const fields = buildFields(params, ['title', 'specType']);
136
- const result = await callProductApi(getCreds(), {
137
- action: "factory_spec_create",
138
- productId: params.productId,
139
- fields: Object.keys(fields).length > 0 ? fields : undefined,
140
- });
141
- return successResult(compactEntity(result.spec, ['title', 'status', 'specType'], params.returnFull));
142
- }
143
- case "get": {
144
- if (!params.specId)
145
- return validationError("specId is required for get");
146
- const result = await callProductApi(getCreds(), {
147
- action: "factory_spec_get",
148
- specId: params.specId,
149
- });
150
- return successResult(result.spec);
151
- }
152
- case "list": {
153
- const fields = buildFields({ status: params.status });
154
- const body = {
155
- action: "factory_spec_list",
156
- fields: Object.keys(fields).length > 0 ? fields : undefined,
157
- };
158
- if (params.productId !== undefined)
159
- body.productId = params.productId;
160
- if (params.limit !== undefined)
161
- body.limit = params.limit;
162
- if (params.offset !== undefined)
163
- body.offset = params.offset;
164
- const result = await callProductApi(getCreds(), body);
165
- return successResult({ items: result.specs, totalCount: result.totalCount });
166
- }
167
- case "update": {
168
- if (!params.specId)
169
- return validationError("specId is required for update");
170
- const fields = buildFields(params, ['title', 'specType', 'conversationPhase', 'synthesizedSpec', 'conversation', 'readiness', 'status', 'launchedInstanceId']);
171
- if (Object.keys(fields).length === 0) {
172
- return validationError("At least one field must be provided to update");
173
- }
174
- const result = await callProductApi(getCreds(), {
175
- action: "factory_spec_update",
176
- specId: params.specId,
177
- fields,
178
- });
179
- return successResult(compactEntity(result.spec, Object.keys(fields), params.returnFull));
180
- }
181
- case "validate": {
182
- if (!params.specId)
183
- return validationError("specId is required for validate");
184
- if (!params.blueprintId)
185
- return validationError("blueprintId is required for validate");
186
- const result = await callProductApi(getCreds(), {
187
- action: "factory-spec-compatibility-check",
188
- specId: params.specId,
189
- blueprintId: params.blueprintId,
190
- });
191
- return successResult(result);
192
- }
193
- default:
194
- return validationError(`Unknown action: ${params.action}`);
195
- }
196
- }));
197
- // -- telora_factory_spec_template (consolidated) -----------------------------
198
- // Gated out for human profile: templates, selections, work units, gates,
199
- // and execution units are primarily used by the daemon or admin setup.
200
- if (profile !== 'human') {
201
- server.tool("telora_factory_spec_template", "Spec authoring templates: dimension-based guidance for writing factory specs. " +
202
- "Templates define the structure and dimensions AI uses during spec conversations. " +
203
- "Actions: create a template (name + content), list templates (filter by type: spec_type or reference), update template fields.", {
204
- action: z.enum(["create", "list", "update"]).describe("Action to perform"),
205
- templateId: z.string().uuid().optional().describe("Spec template UUID (required for update)"),
206
- name: z.string().max(200).optional().describe("Template name (required for create, unique per org)"),
207
- description: z.string().max(2000).optional().describe("Template description"),
208
- templateContent: z.record(z.string(), z.unknown()).optional().describe("Template content with dimensions array (required for create)"),
209
- tags: z.array(z.string()).optional().describe("Tags for template discovery and AI selection"),
210
- status: z.enum(["draft", "active", "archived"]).optional().describe("Template status (default: draft)"),
211
- templateType: z.enum(["spec_type", "reference"]).optional().describe("Template type. 'spec_type' (default) = authoring template. 'reference' = reference document for agents."),
212
- limit: z.number().int().min(1).max(500).optional().describe("Max results for list (1-500, default 50)"),
213
- offset: z.number().int().min(0).optional().describe("Skip results for list (default 0)"),
214
- detail: z.enum(["titles", "summary", "full"]).optional().describe("Detail level for list"),
215
- returnFull: z.boolean().optional().describe("Return full entity (default: compact, for create/update)"),
216
- }, wrapHandler(async (params) => {
217
- switch (params.action) {
218
- case "create": {
219
- if (!params.name)
220
- return validationError("name is required for create");
221
- if (!params.templateContent)
222
- return validationError("templateContent is required for create");
223
- const fields = buildFields(params, ['name', 'description', 'templateContent', 'tags', 'status', 'templateType']);
224
- const result = await callProductApi(getCreds(), {
225
- action: "factory_spec_template_create",
226
- fields,
227
- });
228
- return successResult(compactEntity(result.specTemplate, Object.keys(fields), params.returnFull));
229
- }
230
- case "list": {
231
- const fields = buildFields({ status: params.status, templateType: params.templateType });
232
- const body = {
233
- action: "factory_spec_template_list",
234
- fields: Object.keys(fields).length > 0 ? fields : undefined,
235
- };
236
- if (params.limit !== undefined)
237
- body.limit = params.limit;
238
- if (params.offset !== undefined)
239
- body.offset = params.offset;
240
- if (params.detail !== undefined)
241
- body.detail = params.detail;
242
- const result = await callProductApi(getCreds(), body);
243
- return successResult({ items: result.specTemplates, totalCount: result.totalCount });
244
- }
245
- case "update": {
246
- if (!params.templateId)
247
- return validationError("templateId is required for update");
248
- const fields = buildFields(params, ['name', 'description', 'templateContent', 'tags', 'status', 'templateType']);
249
- if (Object.keys(fields).length === 0) {
250
- return validationError("At least one field must be provided to update");
251
- }
252
- const result = await callProductApi(getCreds(), {
253
- action: "factory_spec_template_update",
254
- templateId: params.templateId,
255
- fields,
256
- });
257
- return successResult(compactEntity(result.specTemplate, Object.keys(fields), params.returnFull));
258
- }
259
- default:
260
- return validationError(`Unknown action: ${params.action}`);
261
- }
262
- }));
263
- // -- telora_factory_spec_template_selection (consolidated) -------------------
264
- server.tool("telora_factory_spec_template_selection", "Template linking: associate authoring templates with a factory spec. " +
265
- "Selected templates guide the AI conversation during spec authoring. " +
266
- "Actions: add (link template to spec), remove (unlink). Both require specId + templateId.", {
267
- action: z.enum(["add", "remove"]).describe("Action to perform"),
268
- specId: z.string().uuid().describe("Spec UUID"),
269
- templateId: z.string().uuid().describe("Spec template UUID"),
270
- selectedBy: z.enum(["user", "ai"]).optional().describe("Who selected this template (for add, default: 'user')"),
271
- }, wrapHandler(async (params) => {
272
- if (params.action === "add") {
273
- const fields = buildFields({ selectedBy: params.selectedBy });
274
- const result = await callProductApi(getCreds(), {
275
- action: "factory_spec_template_selection_add",
276
- specId: params.specId,
277
- templateId: params.templateId,
278
- fields: Object.keys(fields).length > 0 ? fields : undefined,
279
- });
280
- return successResult(result.selection);
281
- }
282
- else {
283
- await callProductApi(getCreds(), {
284
- action: "factory_spec_template_selection_remove",
285
- specId: params.specId,
286
- templateId: params.templateId,
287
- });
288
- return successResult("Template selection removed successfully.");
289
- }
290
- }));
291
- } // end profile !== 'human' gate (templates, selections)
110
+ // -- telora_factory_spec removed (PRT is the sole factory input) --
111
+ // -- telora_factory_spec_template removed --
112
+ // -- telora_factory_spec_template_selection removed --
292
113
  // -- telora_factory_instance (consolidated) -----------------------------------
293
114
  // Available in all profiles: humans need get/update (pause, cancel) for instances
294
115
  server.tool("telora_factory_instance", "Factory execution: view and control running factory instances. " +
@@ -1 +1 @@
1
- {"version":3,"file":"factoryHandlers.js","sourceRoot":"","sources":["../../src/handlers/factoryHandlers.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"factoryHandlers.js","sourceRoot":"","sources":["../../src/handlers/factoryHandlers.ts"],"names":[],"mappings":"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"}
@@ -19,3 +19,6 @@ export { registerRiskTools, registerRiskDependencyTools, registerRiskCommunicati
19
19
  export { registerLoopTools } from "./loopHandlers.js";
20
20
  export { registerRealityTools } from "./realityHandlers.js";
21
21
  export { registerRealityTreeTools } from "./realityTreeHandlers.js";
22
+ export { registerContractTools } from "./contractHandlers.js";
23
+ export { registerPrerequisiteTreeTools } from "./prerequisiteTreeHandlers.js";
24
+ export { registerComponentTools } from "./componentHandlers.js";
@@ -22,4 +22,7 @@ export { registerRiskTools, registerRiskDependencyTools, registerRiskCommunicati
22
22
  export { registerLoopTools } from "./loopHandlers.js";
23
23
  export { registerRealityTools } from "./realityHandlers.js";
24
24
  export { registerRealityTreeTools } from "./realityTreeHandlers.js";
25
+ export { registerContractTools } from "./contractHandlers.js";
26
+ export { registerPrerequisiteTreeTools } from "./prerequisiteTreeHandlers.js";
27
+ export { registerComponentTools } from "./componentHandlers.js";
25
28
  //# sourceMappingURL=index.js.map