@trentapps/manager-protocol 1.1.1 → 1.1.3
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 +1 -1
- package/dist/analyzers/CSSAnalyzer.d.ts +8 -0
- package/dist/analyzers/CSSAnalyzer.d.ts.map +1 -1
- package/dist/analyzers/CSSAnalyzer.js +246 -100
- package/dist/analyzers/CSSAnalyzer.js.map +1 -1
- package/dist/cli.js +1 -1
- package/dist/engine/AppMonitor.d.ts.map +1 -1
- package/dist/engine/AppMonitor.js +7 -5
- package/dist/engine/AppMonitor.js.map +1 -1
- package/dist/engine/AuditLogger.d.ts.map +1 -1
- package/dist/engine/AuditLogger.js +6 -3
- package/dist/engine/AuditLogger.js.map +1 -1
- package/dist/engine/GitHubApprovalManager.d.ts +17 -0
- package/dist/engine/GitHubApprovalManager.d.ts.map +1 -1
- package/dist/engine/GitHubApprovalManager.js +82 -50
- package/dist/engine/GitHubApprovalManager.js.map +1 -1
- package/dist/engine/RateLimiter.d.ts.map +1 -1
- package/dist/engine/RateLimiter.js +10 -4
- package/dist/engine/RateLimiter.js.map +1 -1
- package/dist/engine/TaskManager.d.ts +5 -0
- package/dist/engine/TaskManager.d.ts.map +1 -1
- package/dist/engine/TaskManager.js +25 -12
- package/dist/engine/TaskManager.js.map +1 -1
- package/dist/server.d.ts +2 -8
- package/dist/server.d.ts.map +1 -1
- package/dist/server.js +97 -18
- package/dist/server.js.map +1 -1
- package/dist/supervisor/ProjectTracker.d.ts +22 -1
- package/dist/supervisor/ProjectTracker.d.ts.map +1 -1
- package/dist/supervisor/ProjectTracker.js +147 -51
- package/dist/supervisor/ProjectTracker.js.map +1 -1
- package/package.json +5 -2
|
@@ -39,6 +39,11 @@ export declare class TaskManager {
|
|
|
39
39
|
* Resolve project name - use provided or auto-detect
|
|
40
40
|
*/
|
|
41
41
|
private resolveRepo;
|
|
42
|
+
/**
|
|
43
|
+
* Ensure a task exists before operating on it
|
|
44
|
+
* @throws Error if task is not found
|
|
45
|
+
*/
|
|
46
|
+
private ensureTaskExists;
|
|
42
47
|
/**
|
|
43
48
|
* Execute a gh command and return parsed JSON output
|
|
44
49
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"TaskManager.d.ts","sourceRoot":"","sources":["../../src/engine/TaskManager.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"TaskManager.d.ts","sourceRoot":"","sources":["../../src/engine/TaskManager.ts"],"names":[],"mappings":"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"}
|
|
@@ -78,6 +78,17 @@ export class TaskManager {
|
|
|
78
78
|
throw new Error('No repository specified and could not auto-detect from current directory. ' +
|
|
79
79
|
'Either provide projectName or run from within a git repository.');
|
|
80
80
|
}
|
|
81
|
+
/**
|
|
82
|
+
* Ensure a task exists before operating on it
|
|
83
|
+
* @throws Error if task is not found
|
|
84
|
+
*/
|
|
85
|
+
async ensureTaskExists(repo, taskId) {
|
|
86
|
+
const task = await this.getTask(repo, taskId);
|
|
87
|
+
if (!task) {
|
|
88
|
+
throw new Error(`Task #${taskId} not found in ${repo}`);
|
|
89
|
+
}
|
|
90
|
+
return task;
|
|
91
|
+
}
|
|
81
92
|
/**
|
|
82
93
|
* Execute a gh command and return parsed JSON output
|
|
83
94
|
*/
|
|
@@ -246,12 +257,12 @@ export class TaskManager {
|
|
|
246
257
|
cmd += ` --body ${escapeForShell(params.description)}`;
|
|
247
258
|
}
|
|
248
259
|
if (allLabels.length > 0) {
|
|
249
|
-
cmd += ` --label
|
|
260
|
+
cmd += ` --label ${escapeForShell(allLabels.join(','))}`;
|
|
250
261
|
}
|
|
251
262
|
if (params.assignee) {
|
|
252
263
|
// Handle @me specially
|
|
253
264
|
const assignee = params.assignee === '@me' ? '@me' : params.assignee;
|
|
254
|
-
cmd += ` --assignee
|
|
265
|
+
cmd += ` --assignee ${escapeForShell(assignee)}`;
|
|
255
266
|
}
|
|
256
267
|
// Create the issue - gh issue create returns the URL, not JSON
|
|
257
268
|
const issueUrl = await this.execGhRaw(cmd);
|
|
@@ -303,10 +314,10 @@ export class TaskManager {
|
|
|
303
314
|
labelFilters.push(...filter.labels);
|
|
304
315
|
}
|
|
305
316
|
if (labelFilters.length > 0) {
|
|
306
|
-
cmd += ` --label
|
|
317
|
+
cmd += ` --label ${escapeForShell(labelFilters.join(','))}`;
|
|
307
318
|
}
|
|
308
319
|
if (filter?.assignee) {
|
|
309
|
-
cmd += ` --assignee
|
|
320
|
+
cmd += ` --assignee ${escapeForShell(filter.assignee)}`;
|
|
310
321
|
}
|
|
311
322
|
const issues = await this.execGh(cmd);
|
|
312
323
|
let tasks = issues.map(issue => this.issueToTask(issue, repo));
|
|
@@ -358,11 +369,7 @@ export class TaskManager {
|
|
|
358
369
|
try {
|
|
359
370
|
const repo = await this.resolveRepo(projectName);
|
|
360
371
|
// Verify task exists before attempting update
|
|
361
|
-
const existingTask = await this.
|
|
362
|
-
if (!existingTask) {
|
|
363
|
-
console.error(`[TaskManager] Cannot update task ${taskId}: task not found in ${repo}`);
|
|
364
|
-
return null;
|
|
365
|
-
}
|
|
372
|
+
const existingTask = await this.ensureTaskExists(repo, taskId);
|
|
366
373
|
let cmd = `issue edit ${taskId} --repo "${repo}"`;
|
|
367
374
|
if (updates.title) {
|
|
368
375
|
cmd += ` --title ${escapeForShell(updates.title)}`;
|
|
@@ -423,6 +430,8 @@ export class TaskManager {
|
|
|
423
430
|
async addComment(projectName, taskId, comment, commits) {
|
|
424
431
|
try {
|
|
425
432
|
const repo = await this.resolveRepo(projectName);
|
|
433
|
+
// Verify task exists before attempting to add comment
|
|
434
|
+
await this.ensureTaskExists(repo, taskId);
|
|
426
435
|
// Build comment body
|
|
427
436
|
let body = '';
|
|
428
437
|
if (comment) {
|
|
@@ -466,6 +475,8 @@ export class TaskManager {
|
|
|
466
475
|
*/
|
|
467
476
|
async closeWithComment(projectName, taskId, resolution, commits) {
|
|
468
477
|
const repo = await this.resolveRepo(projectName);
|
|
478
|
+
// Verify task exists before attempting to close
|
|
479
|
+
await this.ensureTaskExists(repo, taskId);
|
|
469
480
|
// Add the resolution comment
|
|
470
481
|
await this.addComment(repo, taskId, `**Resolution:** ${resolution}`, commits);
|
|
471
482
|
// Close the issue
|
|
@@ -527,8 +538,10 @@ export class TaskManager {
|
|
|
527
538
|
*/
|
|
528
539
|
async blockTask(projectName, taskId, reason) {
|
|
529
540
|
const repo = await this.resolveRepo(projectName);
|
|
541
|
+
// Verify task exists before attempting to block
|
|
542
|
+
await this.ensureTaskExists(repo, taskId);
|
|
530
543
|
if (reason) {
|
|
531
|
-
await this.execGhRaw(`issue comment ${taskId} --repo "${repo}" --body
|
|
544
|
+
await this.execGhRaw(`issue comment ${taskId} --repo "${repo}" --body ${escapeForShell(`Blocked: ${reason}`)}`);
|
|
532
545
|
}
|
|
533
546
|
return this.updateTaskStatus(repo, taskId, 'blocked');
|
|
534
547
|
}
|
|
@@ -649,9 +662,9 @@ export class TaskManager {
|
|
|
649
662
|
*/
|
|
650
663
|
async searchTasks(query, projectName) {
|
|
651
664
|
try {
|
|
652
|
-
let cmd = `issue list --search
|
|
665
|
+
let cmd = `issue list --search ${escapeForShell(query)} --state all --json number,title,body,state,labels,assignees,createdAt,updatedAt,closedAt,url --limit 50`;
|
|
653
666
|
if (projectName) {
|
|
654
|
-
cmd += ` --repo
|
|
667
|
+
cmd += ` --repo ${escapeForShell(projectName)}`;
|
|
655
668
|
}
|
|
656
669
|
const issues = await this.execGh(cmd);
|
|
657
670
|
return issues.map(issue => {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"TaskManager.js","sourceRoot":"","sources":["../../src/engine/TaskManager.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"TaskManager.js","sourceRoot":"","sources":["../../src/engine/TaskManager.ts"],"names":[],"mappings":"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"}
|
package/dist/server.d.ts
CHANGED
|
@@ -8,16 +8,10 @@ declare const server: Server<{
|
|
|
8
8
|
method: string;
|
|
9
9
|
params?: {
|
|
10
10
|
[x: string]: unknown;
|
|
11
|
-
task?: {
|
|
12
|
-
[x: string]: unknown;
|
|
13
|
-
ttl?: number | null | undefined;
|
|
14
|
-
pollInterval?: number | undefined;
|
|
15
|
-
} | undefined;
|
|
16
11
|
_meta?: {
|
|
17
12
|
[x: string]: unknown;
|
|
18
13
|
progressToken?: string | number | undefined;
|
|
19
14
|
"io.modelcontextprotocol/related-task"?: {
|
|
20
|
-
[x: string]: unknown;
|
|
21
15
|
taskId: string;
|
|
22
16
|
} | undefined;
|
|
23
17
|
} | undefined;
|
|
@@ -28,8 +22,8 @@ declare const server: Server<{
|
|
|
28
22
|
[x: string]: unknown;
|
|
29
23
|
_meta?: {
|
|
30
24
|
[x: string]: unknown;
|
|
25
|
+
progressToken?: string | number | undefined;
|
|
31
26
|
"io.modelcontextprotocol/related-task"?: {
|
|
32
|
-
[x: string]: unknown;
|
|
33
27
|
taskId: string;
|
|
34
28
|
} | undefined;
|
|
35
29
|
} | undefined;
|
|
@@ -38,8 +32,8 @@ declare const server: Server<{
|
|
|
38
32
|
[x: string]: unknown;
|
|
39
33
|
_meta?: {
|
|
40
34
|
[x: string]: unknown;
|
|
35
|
+
progressToken?: string | number | undefined;
|
|
41
36
|
"io.modelcontextprotocol/related-task"?: {
|
|
42
|
-
[x: string]: unknown;
|
|
43
37
|
taskId: string;
|
|
44
38
|
} | undefined;
|
|
45
39
|
} | undefined;
|
package/dist/server.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"server.d.ts","sourceRoot":"","sources":["../src/server.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,MAAM,EAAE,MAAM,2CAA2C,CAAC;
|
|
1
|
+
{"version":3,"file":"server.d.ts","sourceRoot":"","sources":["../src/server.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,MAAM,EAAE,MAAM,2CAA2C,CAAC;AAw+CnE,QAAA,MAAM,MAAM;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAWX,CAAC;AA+jCF,OAAO,EAAE,MAAM,EAAE,CAAC;AAElB,wBAAsB,WAAW,IAAI,OAAO,CAAC,IAAI,CAAC,CAIjD"}
|
package/dist/server.js
CHANGED
|
@@ -20,10 +20,33 @@ const supervisor = new AgentSupervisor({
|
|
|
20
20
|
},
|
|
21
21
|
auditOptions: {
|
|
22
22
|
enableConsoleLog: process.env.DEBUG === 'true',
|
|
23
|
-
dbPath: process.env.AUDIT_DB_PATH || '/
|
|
23
|
+
dbPath: process.env.AUDIT_DB_PATH || './data/audit.db'
|
|
24
24
|
}
|
|
25
25
|
});
|
|
26
26
|
// ============================================================================
|
|
27
|
+
// RESPONSE SIZE LIMITS - Prevent OOM errors from large payloads
|
|
28
|
+
// ============================================================================
|
|
29
|
+
/** Maximum number of items in any list response to prevent memory exhaustion */
|
|
30
|
+
const MAX_RESPONSE_ITEMS = 1000;
|
|
31
|
+
/** Default limit for list responses when not specified */
|
|
32
|
+
const DEFAULT_RESPONSE_LIMIT = 100;
|
|
33
|
+
/** Helper to truncate arrays and add warning if truncated */
|
|
34
|
+
function limitResults(items, limit = DEFAULT_RESPONSE_LIMIT, maxLimit = MAX_RESPONSE_ITEMS) {
|
|
35
|
+
const effectiveLimit = Math.min(limit, maxLimit);
|
|
36
|
+
const total = items.length;
|
|
37
|
+
const truncated = total > effectiveLimit;
|
|
38
|
+
const limitedItems = items.slice(0, effectiveLimit);
|
|
39
|
+
return {
|
|
40
|
+
items: limitedItems,
|
|
41
|
+
total,
|
|
42
|
+
truncated,
|
|
43
|
+
...(truncated && {
|
|
44
|
+
warning: `Response truncated: showing ${effectiveLimit} of ${total} items. Use limit/offset parameters for pagination.`,
|
|
45
|
+
pagination: { offset: 0, limit: effectiveLimit, hasMore: true }
|
|
46
|
+
})
|
|
47
|
+
};
|
|
48
|
+
}
|
|
49
|
+
// ============================================================================
|
|
27
50
|
// COMPACT RESPONSE HELPERS - Keep MCP responses concise
|
|
28
51
|
// ============================================================================
|
|
29
52
|
/** Compact JSON (no pretty printing) */
|
|
@@ -1589,8 +1612,14 @@ server.setRequestHandler(CallToolRequestSchema, async (request) => {
|
|
|
1589
1612
|
}
|
|
1590
1613
|
case 'list_pending_approvals': {
|
|
1591
1614
|
const repo = typeof args?.repo === 'string' ? args.repo : undefined;
|
|
1592
|
-
const
|
|
1593
|
-
|
|
1615
|
+
const allApprovals = await supervisor.getPendingApprovals(repo);
|
|
1616
|
+
const result = limitResults(allApprovals, DEFAULT_RESPONSE_LIMIT);
|
|
1617
|
+
return resp({
|
|
1618
|
+
count: result.items.length,
|
|
1619
|
+
total: result.total,
|
|
1620
|
+
approvals: result.items.map((a) => ({ id: a.requestId, reason: a.reason, priority: a.priority })),
|
|
1621
|
+
...(result.truncated && { warning: result.warning, pagination: result.pagination })
|
|
1622
|
+
});
|
|
1594
1623
|
}
|
|
1595
1624
|
case 'approve_request': {
|
|
1596
1625
|
const validated = ApproveRequestArgsSchema.parse(args);
|
|
@@ -1766,8 +1795,15 @@ server.setRequestHandler(CallToolRequestSchema, async (request) => {
|
|
|
1766
1795
|
// Audit & reporting
|
|
1767
1796
|
case 'get_audit_events': {
|
|
1768
1797
|
const validated = GetAuditEventsArgsSchema.parse(args);
|
|
1769
|
-
const
|
|
1770
|
-
|
|
1798
|
+
const requestedLimit = validated.limit || DEFAULT_RESPONSE_LIMIT;
|
|
1799
|
+
const events = supervisor.getAuditEvents({ ...validated, limit: Math.min(requestedLimit, MAX_RESPONSE_ITEMS) });
|
|
1800
|
+
const result = limitResults(events, requestedLimit);
|
|
1801
|
+
return resp({
|
|
1802
|
+
count: result.items.length,
|
|
1803
|
+
total: result.total,
|
|
1804
|
+
events: result.items,
|
|
1805
|
+
...(result.truncated && { warning: result.warning, pagination: result.pagination })
|
|
1806
|
+
});
|
|
1771
1807
|
}
|
|
1772
1808
|
case 'get_audit_stats': {
|
|
1773
1809
|
const validated = GetAuditStatsArgsSchema.parse(args || {});
|
|
@@ -1781,7 +1817,23 @@ server.setRequestHandler(CallToolRequestSchema, async (request) => {
|
|
|
1781
1817
|
case 'export_audit_log': {
|
|
1782
1818
|
const validated = ExportAuditLogArgsSchema.parse(args || {});
|
|
1783
1819
|
const exported = supervisor.exportAuditLog(validated);
|
|
1784
|
-
|
|
1820
|
+
// Parse exported JSON to apply limits
|
|
1821
|
+
try {
|
|
1822
|
+
const parsed = JSON.parse(exported);
|
|
1823
|
+
if (Array.isArray(parsed)) {
|
|
1824
|
+
const result = limitResults(parsed, MAX_RESPONSE_ITEMS, MAX_RESPONSE_ITEMS);
|
|
1825
|
+
return resp({
|
|
1826
|
+
count: result.items.length,
|
|
1827
|
+
total: result.total,
|
|
1828
|
+
events: result.items,
|
|
1829
|
+
...(result.truncated && { warning: result.warning, pagination: result.pagination })
|
|
1830
|
+
});
|
|
1831
|
+
}
|
|
1832
|
+
return { content: [{ type: 'text', text: exported }] };
|
|
1833
|
+
}
|
|
1834
|
+
catch {
|
|
1835
|
+
return { content: [{ type: 'text', text: exported }] };
|
|
1836
|
+
}
|
|
1785
1837
|
}
|
|
1786
1838
|
// Configuration
|
|
1787
1839
|
case 'get_config': {
|
|
@@ -2017,7 +2069,8 @@ server.setRequestHandler(CallToolRequestSchema, async (request) => {
|
|
|
2017
2069
|
apps = supervisor.findAppsByTag(args.tag);
|
|
2018
2070
|
}
|
|
2019
2071
|
const includeHealth = args?.includeHealth !== false;
|
|
2020
|
-
const
|
|
2072
|
+
const limited = limitResults(apps, DEFAULT_RESPONSE_LIMIT);
|
|
2073
|
+
const mappedApps = limited.items.map((app) => {
|
|
2021
2074
|
const base = { ...app };
|
|
2022
2075
|
if (includeHealth) {
|
|
2023
2076
|
return {
|
|
@@ -2027,7 +2080,12 @@ server.setRequestHandler(CallToolRequestSchema, async (request) => {
|
|
|
2027
2080
|
}
|
|
2028
2081
|
return base;
|
|
2029
2082
|
});
|
|
2030
|
-
return {
|
|
2083
|
+
return resp({
|
|
2084
|
+
count: mappedApps.length,
|
|
2085
|
+
total: limited.total,
|
|
2086
|
+
apps: mappedApps,
|
|
2087
|
+
...(limited.truncated && { warning: limited.warning, pagination: limited.pagination })
|
|
2088
|
+
});
|
|
2031
2089
|
}
|
|
2032
2090
|
case 'get_app_status': {
|
|
2033
2091
|
const validated = GetAppStatusArgsSchema.parse(args);
|
|
@@ -2200,26 +2258,44 @@ server.setRequestHandler(CallToolRequestSchema, async (request) => {
|
|
|
2200
2258
|
}
|
|
2201
2259
|
case 'get_tasks': {
|
|
2202
2260
|
const validated = GetTasksArgsSchema.parse(args || {});
|
|
2203
|
-
const
|
|
2261
|
+
const allTasks = await taskManager.getTasksByProject(validated.projectName, {
|
|
2204
2262
|
status: validated.status,
|
|
2205
2263
|
priority: validated.priority,
|
|
2206
2264
|
assignee: validated.assignee,
|
|
2207
2265
|
labels: validated.labels
|
|
2208
2266
|
});
|
|
2209
|
-
|
|
2267
|
+
const result = limitResults(allTasks, DEFAULT_RESPONSE_LIMIT);
|
|
2268
|
+
return resp({
|
|
2269
|
+
count: result.items.length,
|
|
2270
|
+
total: result.total,
|
|
2271
|
+
tasks: result.items.map(slimTask),
|
|
2272
|
+
...(result.truncated && { warning: result.warning, pagination: result.pagination })
|
|
2273
|
+
});
|
|
2210
2274
|
}
|
|
2211
2275
|
case 'get_pending_tasks': {
|
|
2212
2276
|
const projectName = typeof args?.projectName === 'string' ? args.projectName : undefined;
|
|
2213
2277
|
const tasks = await taskManager.getPendingTasks(projectName);
|
|
2214
2278
|
const approvedTasks = tasks.filter(task => !task.labels?.includes('needs-approval'));
|
|
2215
|
-
|
|
2279
|
+
const result = limitResults(approvedTasks, DEFAULT_RESPONSE_LIMIT);
|
|
2280
|
+
return resp({
|
|
2281
|
+
count: result.items.length,
|
|
2282
|
+
total: result.total,
|
|
2283
|
+
tasks: result.items.map(slimTask),
|
|
2284
|
+
...(result.truncated && { warning: result.warning, pagination: result.pagination })
|
|
2285
|
+
});
|
|
2216
2286
|
}
|
|
2217
2287
|
case 'get_approved_tasks': {
|
|
2218
2288
|
const projectName = typeof args?.projectName === 'string' ? args.projectName : undefined;
|
|
2219
2289
|
const allTasks = await taskManager.getTasksByProject(projectName);
|
|
2220
2290
|
const approvedTasks = allTasks.filter(task => (task.status === 'pending' || task.status === 'in_progress') &&
|
|
2221
2291
|
task.labels?.includes('approved'));
|
|
2222
|
-
|
|
2292
|
+
const result = limitResults(approvedTasks, DEFAULT_RESPONSE_LIMIT);
|
|
2293
|
+
return resp({
|
|
2294
|
+
count: result.items.length,
|
|
2295
|
+
total: result.total,
|
|
2296
|
+
tasks: result.items.map(slimTask),
|
|
2297
|
+
...(result.truncated && { warning: result.warning, pagination: result.pagination })
|
|
2298
|
+
});
|
|
2223
2299
|
}
|
|
2224
2300
|
case 'get_task': {
|
|
2225
2301
|
const validated = GetTaskArgsSchema.parse(args);
|
|
@@ -2298,12 +2374,15 @@ server.setRequestHandler(CallToolRequestSchema, async (request) => {
|
|
|
2298
2374
|
}
|
|
2299
2375
|
case 'search_tasks': {
|
|
2300
2376
|
const validated = SearchTasksArgsSchema.parse(args);
|
|
2301
|
-
const
|
|
2302
|
-
|
|
2303
|
-
|
|
2304
|
-
|
|
2305
|
-
|
|
2306
|
-
|
|
2377
|
+
const allTasks = await taskManager.searchTasks(validated.query, validated.projectName);
|
|
2378
|
+
const result = limitResults(allTasks, DEFAULT_RESPONSE_LIMIT);
|
|
2379
|
+
return resp({
|
|
2380
|
+
query: validated.query,
|
|
2381
|
+
count: result.items.length,
|
|
2382
|
+
total: result.total,
|
|
2383
|
+
tasks: result.items.map(slimTask),
|
|
2384
|
+
...(result.truncated && { warning: result.warning, pagination: result.pagination })
|
|
2385
|
+
});
|
|
2307
2386
|
}
|
|
2308
2387
|
default:
|
|
2309
2388
|
throw new Error(`Unknown tool: ${name}`);
|