agent-tasks 1.7.1 → 1.9.1

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 (68) hide show
  1. package/README.md +17 -15
  2. package/dist/domain/agent-bridge.d.ts.map +1 -1
  3. package/dist/domain/agent-bridge.js +22 -2
  4. package/dist/domain/agent-bridge.js.map +1 -1
  5. package/dist/domain/approvals.d.ts.map +1 -1
  6. package/dist/domain/approvals.js +4 -1
  7. package/dist/domain/approvals.js.map +1 -1
  8. package/dist/domain/cleanup.d.ts +1 -0
  9. package/dist/domain/cleanup.d.ts.map +1 -1
  10. package/dist/domain/cleanup.js +36 -4
  11. package/dist/domain/cleanup.js.map +1 -1
  12. package/dist/domain/comments.d.ts +1 -0
  13. package/dist/domain/comments.d.ts.map +1 -1
  14. package/dist/domain/comments.js +10 -0
  15. package/dist/domain/comments.js.map +1 -1
  16. package/dist/domain/rules.js +11 -10
  17. package/dist/domain/rules.js.map +1 -1
  18. package/dist/domain/task-validator.d.ts +9 -0
  19. package/dist/domain/task-validator.d.ts.map +1 -0
  20. package/dist/domain/task-validator.js +70 -0
  21. package/dist/domain/task-validator.js.map +1 -0
  22. package/dist/domain/tasks.d.ts +19 -9
  23. package/dist/domain/tasks.d.ts.map +1 -1
  24. package/dist/domain/tasks.js +242 -111
  25. package/dist/domain/tasks.js.map +1 -1
  26. package/dist/index.js +4 -2
  27. package/dist/index.js.map +1 -1
  28. package/dist/storage/database.d.ts.map +1 -1
  29. package/dist/storage/database.js +11 -3
  30. package/dist/storage/database.js.map +1 -1
  31. package/dist/transport/mcp-handlers.d.ts +31 -0
  32. package/dist/transport/mcp-handlers.d.ts.map +1 -0
  33. package/dist/transport/mcp-handlers.js +426 -0
  34. package/dist/transport/mcp-handlers.js.map +1 -0
  35. package/dist/transport/mcp.d.ts.map +1 -1
  36. package/dist/transport/mcp.js +207 -656
  37. package/dist/transport/mcp.js.map +1 -1
  38. package/dist/transport/rest.d.ts.map +1 -1
  39. package/dist/transport/rest.js +23 -7
  40. package/dist/transport/rest.js.map +1 -1
  41. package/dist/transport/ws.d.ts.map +1 -1
  42. package/dist/transport/ws.js +6 -4
  43. package/dist/transport/ws.js.map +1 -1
  44. package/dist/ui/app.js +186 -1608
  45. package/dist/ui/board.js +401 -0
  46. package/dist/ui/drag.js +143 -0
  47. package/dist/ui/index.html +5 -0
  48. package/dist/ui/inline-edit.js +242 -0
  49. package/dist/ui/panel.js +574 -0
  50. package/dist/ui/styles.css +109 -0
  51. package/dist/ui/ui-utils.js +323 -0
  52. package/package.json +1 -1
  53. package/dist/db.d.ts +0 -10
  54. package/dist/db.d.ts.map +0 -1
  55. package/dist/db.js +0 -112
  56. package/dist/db.js.map +0 -1
  57. package/dist/event-bus.d.ts +0 -10
  58. package/dist/event-bus.d.ts.map +0 -1
  59. package/dist/event-bus.js +0 -38
  60. package/dist/event-bus.js.map +0 -1
  61. package/dist/session.d.ts +0 -7
  62. package/dist/session.d.ts.map +0 -1
  63. package/dist/session.js +0 -11
  64. package/dist/session.js.map +0 -1
  65. package/dist/tasks.d.ts +0 -32
  66. package/dist/tasks.d.ts.map +0 -1
  67. package/dist/tasks.js +0 -410
  68. package/dist/tasks.js.map +0 -1
@@ -0,0 +1,426 @@
1
+ // =============================================================================
2
+ // agent-tasks — MCP tool handlers
3
+ //
4
+ // Individual handler functions for each MCP tool. Called from the dispatch
5
+ // map in mcp.ts. Validation helpers are co-located here.
6
+ // =============================================================================
7
+ import { writeFileSync, mkdirSync } from 'fs';
8
+ import { join } from 'path';
9
+ import { homedir } from 'os';
10
+ import { ValidationError } from '../types.js';
11
+ import { generateRules } from '../domain/rules.js';
12
+ export function sessionName(state) {
13
+ return state.current?.name ?? 'system';
14
+ }
15
+ // ---------------------------------------------------------------------------
16
+ // Input validation helpers
17
+ // ---------------------------------------------------------------------------
18
+ export function requireString(args, key) {
19
+ const val = args[key];
20
+ if (typeof val !== 'string' || !val.trim()) {
21
+ throw new ValidationError(`"${key}" must be a non-empty string.`);
22
+ }
23
+ return val;
24
+ }
25
+ export function optString(args, key) {
26
+ const val = args[key];
27
+ if (val === undefined || val === null)
28
+ return undefined;
29
+ if (typeof val !== 'string')
30
+ throw new ValidationError(`"${key}" must be a string.`);
31
+ return val;
32
+ }
33
+ export function requireNumber(args, key) {
34
+ const val = args[key];
35
+ if (typeof val !== 'number') {
36
+ throw new ValidationError(`"${key}" is required and must be a number.`);
37
+ }
38
+ return val;
39
+ }
40
+ export function optNumber(args, key) {
41
+ const val = args[key];
42
+ if (val === undefined || val === null)
43
+ return undefined;
44
+ if (typeof val !== 'number')
45
+ throw new ValidationError(`"${key}" must be a number.`);
46
+ return val;
47
+ }
48
+ export function optBoolean(args, key) {
49
+ const val = args[key];
50
+ if (val === undefined || val === null)
51
+ return undefined;
52
+ if (typeof val !== 'boolean')
53
+ throw new ValidationError(`"${key}" must be a boolean.`);
54
+ return val;
55
+ }
56
+ export function optStringArray(args, key) {
57
+ const val = args[key];
58
+ if (val === undefined || val === null)
59
+ return undefined;
60
+ if (!Array.isArray(val) || !val.every((v) => typeof v === 'string')) {
61
+ throw new ValidationError(`"${key}" must be an array of strings.`);
62
+ }
63
+ return val;
64
+ }
65
+ function validateEnum(val, allowed, label) {
66
+ if (!val)
67
+ throw new ValidationError(`${label} is required`);
68
+ if (!allowed.includes(val))
69
+ throw new ValidationError(`Invalid ${label}: ${val}`);
70
+ return val;
71
+ }
72
+ function optionalEnum(val, allowed, label, defaultVal) {
73
+ if (val === undefined || val === null)
74
+ return defaultVal;
75
+ if (!allowed.includes(val))
76
+ throw new ValidationError(`Invalid ${label}: ${val}`);
77
+ return val;
78
+ }
79
+ // ---------------------------------------------------------------------------
80
+ // Session file helper
81
+ // ---------------------------------------------------------------------------
82
+ function writeSessionFile(id, name) {
83
+ try {
84
+ const claudeDir = join(homedir(), '.claude');
85
+ mkdirSync(claudeDir, { recursive: true });
86
+ const filePath = join(claudeDir, `hub-session.${id}.json`);
87
+ writeFileSync(filePath, JSON.stringify({ pid: process.pid, name, id, timestamp: new Date().toISOString() }));
88
+ }
89
+ catch (err) {
90
+ process.stderr.write('[agent-tasks] writeSessionFile: ' +
91
+ (err instanceof Error ? err.message : String(err)) +
92
+ '\n');
93
+ }
94
+ }
95
+ // ---------------------------------------------------------------------------
96
+ // Handlers
97
+ // ---------------------------------------------------------------------------
98
+ export function handleCreate(ctx, args, session) {
99
+ return ctx.tasks.create({
100
+ title: requireString(args, 'title'),
101
+ description: optString(args, 'description'),
102
+ assign_to: optString(args, 'assign_to'),
103
+ stage: optString(args, 'stage'),
104
+ priority: optNumber(args, 'priority'),
105
+ project: optString(args, 'project'),
106
+ tags: optStringArray(args, 'tags'),
107
+ parent_id: optNumber(args, 'parent_id'),
108
+ }, sessionName(session));
109
+ }
110
+ export function handleGet(ctx, args) {
111
+ const taskId = requireNumber(args, 'task_id');
112
+ const task = ctx.tasks.getById(taskId);
113
+ if (!task)
114
+ throw new ValidationError(`Task ${taskId} not found.`);
115
+ const deps = ctx.tasks.getDependencies(taskId);
116
+ const artifacts = ctx.tasks.getArtifacts(taskId);
117
+ const collaborators = ctx.collaborators.list(taskId);
118
+ const commentCounts = ctx.comments.countByTaskIds([taskId]);
119
+ return {
120
+ ...task,
121
+ artifacts,
122
+ comments_count: commentCounts[taskId] ?? 0,
123
+ dependencies: deps,
124
+ collaborators,
125
+ };
126
+ }
127
+ export function handleList(ctx, args, session) {
128
+ const query = optString(args, 'query');
129
+ if (query) {
130
+ return ctx.tasks.search(query, {
131
+ project: optString(args, 'project'),
132
+ limit: optNumber(args, 'limit'),
133
+ });
134
+ }
135
+ const next = optBoolean(args, 'next');
136
+ if (next) {
137
+ const result = ctx.tasks.next(optString(args, 'project'), optString(args, 'stage'), optString(args, 'agent') ?? sessionName(session));
138
+ if (!result)
139
+ return { message: 'No available tasks.' };
140
+ return {
141
+ ...result.task,
142
+ affinity_score: result.affinity_score,
143
+ affinity_reasons: result.affinity_reasons,
144
+ };
145
+ }
146
+ return ctx.tasks.list({
147
+ status: optString(args, 'status')
148
+ ? validateEnum(optString(args, 'status'), ['pending', 'in_progress', 'completed', 'failed', 'cancelled'], 'status')
149
+ : undefined,
150
+ assigned_to: optString(args, 'assign_to'),
151
+ stage: optString(args, 'stage'),
152
+ project: optString(args, 'project'),
153
+ parent_id: optNumber(args, 'parent_id'),
154
+ root_only: optBoolean(args, 'root_only'),
155
+ collaborator: optString(args, 'collaborator'),
156
+ limit: optNumber(args, 'limit'),
157
+ offset: optNumber(args, 'offset'),
158
+ });
159
+ }
160
+ export function handleClaim(ctx, args, session) {
161
+ const claimer = optString(args, 'claimer') ?? sessionName(session);
162
+ return ctx.tasks.claim(requireNumber(args, 'task_id'), claimer);
163
+ }
164
+ export function handleUpdate(ctx, args) {
165
+ return ctx.tasks.update(requireNumber(args, 'task_id'), {
166
+ title: optString(args, 'title'),
167
+ description: optString(args, 'description'),
168
+ priority: optNumber(args, 'priority'),
169
+ project: optString(args, 'project'),
170
+ tags: optStringArray(args, 'tags'),
171
+ assigned_to: optString(args, 'assign_to'),
172
+ });
173
+ }
174
+ export function handleDelete(ctx, args) {
175
+ ctx.tasks.delete(requireNumber(args, 'task_id'));
176
+ return { success: true };
177
+ }
178
+ export function handleComment(ctx, args, session) {
179
+ return ctx.comments.add(requireNumber(args, 'task_id'), sessionName(session), requireString(args, 'content'), optNumber(args, 'parent_comment_id'));
180
+ }
181
+ // ---------------------------------------------------------------------------
182
+ // Consolidated: task_stage (advance, regress, complete, fail, cancel)
183
+ // ---------------------------------------------------------------------------
184
+ export function handleStage(ctx, args, session) {
185
+ const action = validateEnum(optString(args, 'action'), ['advance', 'regress', 'complete', 'fail', 'cancel'], 'action');
186
+ const taskId = requireNumber(args, 'task_id');
187
+ if (action === 'advance') {
188
+ const advanceComment = optString(args, 'comment');
189
+ const advanced = ctx.tasks.advance(taskId, optString(args, 'stage'), advanceComment);
190
+ if (advanceComment) {
191
+ ctx.comments.add(taskId, sessionName(session), advanceComment);
192
+ }
193
+ return advanced;
194
+ }
195
+ if (action === 'regress') {
196
+ return ctx.tasks.regress(taskId, requireString(args, 'stage'), optString(args, 'reason'));
197
+ }
198
+ if (action === 'complete') {
199
+ return ctx.tasks.complete(taskId, requireString(args, 'result'));
200
+ }
201
+ if (action === 'fail') {
202
+ return ctx.tasks.fail(taskId, requireString(args, 'result'));
203
+ }
204
+ // action === 'cancel'
205
+ return ctx.tasks.cancel(taskId, requireString(args, 'reason'));
206
+ }
207
+ // ---------------------------------------------------------------------------
208
+ // Consolidated: task_query (subtasks, artifacts, comments)
209
+ // ---------------------------------------------------------------------------
210
+ export function handleQuery(ctx, args) {
211
+ const type = validateEnum(optString(args, 'type'), ['subtasks', 'artifacts', 'comments'], 'type');
212
+ const taskId = requireNumber(args, 'task_id');
213
+ if (type === 'subtasks') {
214
+ return ctx.tasks.getSubtasks(taskId);
215
+ }
216
+ if (type === 'artifacts') {
217
+ return ctx.tasks.getArtifacts(taskId, optString(args, 'stage'));
218
+ }
219
+ // type === 'comments'
220
+ return ctx.comments.list(taskId, optNumber(args, 'limit'));
221
+ }
222
+ // ---------------------------------------------------------------------------
223
+ // Consolidated: task_artifact (general, decision, learning)
224
+ // ---------------------------------------------------------------------------
225
+ export function handleArtifact(ctx, args, session) {
226
+ const type = validateEnum(optString(args, 'type'), ['general', 'decision', 'learning'], 'type');
227
+ const taskId = requireNumber(args, 'task_id');
228
+ if (type === 'general') {
229
+ return ctx.tasks.addArtifact(taskId, requireString(args, 'name'), requireString(args, 'content'), sessionName(session), optString(args, 'stage'));
230
+ }
231
+ if (type === 'decision') {
232
+ const chose = requireString(args, 'chose');
233
+ const over = requireString(args, 'over');
234
+ const because = requireString(args, 'because');
235
+ const task = ctx.tasks.getById(taskId);
236
+ if (!task)
237
+ throw new ValidationError(`Task ${taskId} not found.`);
238
+ const decisionStage = task.stage;
239
+ const decisionContent = [
240
+ '## Decision',
241
+ `**Chose:** ${chose}`,
242
+ `**Over:** ${over}`,
243
+ `**Because:** ${because}`,
244
+ '',
245
+ `_Recorded at stage: ${decisionStage}_`,
246
+ ].join('\n');
247
+ return ctx.tasks.addArtifact(taskId, 'decision', decisionContent, 'system', decisionStage);
248
+ }
249
+ // type === 'learning'
250
+ return ctx.tasks.learn(taskId, requireString(args, 'content'), optString(args, 'category') ?? 'technique', sessionName(session));
251
+ }
252
+ // ---------------------------------------------------------------------------
253
+ // Consolidated: task_config (pipeline, session, cleanup, rules)
254
+ // ---------------------------------------------------------------------------
255
+ export function handleConfig(ctx, args, session) {
256
+ const action = validateEnum(optString(args, 'action'), ['pipeline', 'session', 'cleanup', 'rules'], 'action');
257
+ if (action === 'pipeline') {
258
+ return handlePipelineConfig(ctx, args);
259
+ }
260
+ if (action === 'session') {
261
+ const id = requireString(args, 'id');
262
+ const sName = requireString(args, 'name');
263
+ session.current = { id, name: sName };
264
+ writeSessionFile(id, sName);
265
+ return { success: true, id, name: sName };
266
+ }
267
+ if (action === 'cleanup') {
268
+ return handleCleanup(ctx, args);
269
+ }
270
+ // action === 'rules'
271
+ return handleGenerateRules(ctx, args);
272
+ }
273
+ function handlePipelineConfig(ctx, args) {
274
+ const stages = optStringArray(args, 'stages');
275
+ const gateConfig = args.gate_config;
276
+ const project = optString(args, 'project') || 'default';
277
+ if (stages) {
278
+ ctx.tasks.setPipelineConfig(project, stages);
279
+ }
280
+ if (gateConfig && typeof gateConfig === 'object') {
281
+ const parsedGates = {};
282
+ if (gateConfig.gates && typeof gateConfig.gates === 'object') {
283
+ for (const [stageName, stageRule] of Object.entries(gateConfig.gates)) {
284
+ parsedGates[stageName] = {
285
+ require_artifacts: Array.isArray(stageRule.require_artifacts)
286
+ ? stageRule.require_artifacts
287
+ : undefined,
288
+ require_min_artifacts: typeof stageRule.require_min_artifacts === 'number'
289
+ ? stageRule.require_min_artifacts
290
+ : undefined,
291
+ require_comment: stageRule.require_comment === true ? true : undefined,
292
+ require_approval: stageRule.require_approval === true ? true : undefined,
293
+ };
294
+ }
295
+ }
296
+ ctx.tasks.setGateConfig(project, {
297
+ require_comment: gateConfig.require_comment === true,
298
+ require_artifact: gateConfig.require_artifact === true,
299
+ exempt_stages: Array.isArray(gateConfig.exempt_stages)
300
+ ? gateConfig.exempt_stages
301
+ : undefined,
302
+ gates: Object.keys(parsedGates).length > 0 ? parsedGates : undefined,
303
+ });
304
+ }
305
+ if (stages || gateConfig) {
306
+ const config = ctx.tasks.getGateConfig(project);
307
+ return {
308
+ stages: ctx.tasks.getPipelineStages(project),
309
+ gate_config: config ?? { require_comment: false },
310
+ };
311
+ }
312
+ return {
313
+ stages: ctx.tasks.getPipelineStages(optString(args, 'project')),
314
+ gate_config: ctx.tasks.getGateConfig(optString(args, 'project')) ?? {
315
+ require_comment: false,
316
+ },
317
+ };
318
+ }
319
+ function handleCleanup(ctx, args) {
320
+ const cleanupMode = (optString(args, 'mode') ?? 'retention');
321
+ const timeoutMinutes = optNumber(args, 'timeout_minutes');
322
+ if (cleanupMode === 'stale_agents') {
323
+ return ctx.cleanup.failStaleAgentTasks(timeoutMinutes).then((stale) => ({
324
+ stale_agents: stale,
325
+ }));
326
+ }
327
+ if (cleanupMode === 'all') {
328
+ const retention = ctx.cleanup.run();
329
+ return ctx.cleanup.failStaleAgentTasks(timeoutMinutes).then((stale) => ({
330
+ retention,
331
+ stale_agents: stale,
332
+ }));
333
+ }
334
+ return ctx.cleanup.run();
335
+ }
336
+ function handleGenerateRules(ctx, args) {
337
+ const format = requireString(args, 'format');
338
+ if (format !== 'mdc' && format !== 'claude_md') {
339
+ throw new ValidationError('Format must be "mdc" or "claude_md".');
340
+ }
341
+ const project = optString(args, 'project');
342
+ const stages = ctx.tasks.getPipelineStages(project);
343
+ return { rules: generateRules(format, stages, project) };
344
+ }
345
+ export function handleDependency(ctx, args) {
346
+ const action = validateEnum(optString(args, 'action'), ['add', 'remove'], 'action');
347
+ if (action === 'add') {
348
+ const relationship = optionalEnum(optString(args, 'relationship'), ['blocks', 'related', 'duplicate'], 'relationship', 'blocks');
349
+ ctx.tasks.addDependency(requireNumber(args, 'task_id'), requireNumber(args, 'depends_on'), relationship);
350
+ return { success: true, task_id: args.task_id, depends_on: args.depends_on, relationship };
351
+ }
352
+ ctx.tasks.removeDependency(requireNumber(args, 'task_id'), requireNumber(args, 'depends_on'));
353
+ return { success: true };
354
+ }
355
+ export function handleCollaborator(ctx, args) {
356
+ const action = validateEnum(optString(args, 'action'), ['add', 'remove'], 'action');
357
+ if (action === 'add') {
358
+ return ctx.collaborators.add(requireNumber(args, 'task_id'), requireString(args, 'agent_id'), optionalEnum(optString(args, 'role'), ['collaborator', 'reviewer', 'watcher'], 'role', 'collaborator'));
359
+ }
360
+ ctx.collaborators.remove(requireNumber(args, 'task_id'), requireString(args, 'agent_id'));
361
+ return { success: true };
362
+ }
363
+ export function handleApproval(ctx, args, session) {
364
+ const action = validateEnum(optString(args, 'action'), ['request', 'approve', 'reject', 'list', 'review'], 'action');
365
+ if (action === 'request') {
366
+ const taskId = requireNumber(args, 'task_id');
367
+ const task = ctx.tasks.getById(taskId);
368
+ if (!task)
369
+ throw new ValidationError(`Task ${taskId} not found.`);
370
+ const stage = optString(args, 'stage') ?? task.stage;
371
+ return ctx.approvals.request(taskId, stage, optString(args, 'reviewer'));
372
+ }
373
+ if (action === 'approve') {
374
+ return ctx.approvals.approve(requireNumber(args, 'approval_id'), sessionName(session), optString(args, 'comment'));
375
+ }
376
+ if (action === 'reject') {
377
+ const approval = ctx.approvals.reject(requireNumber(args, 'approval_id'), sessionName(session), requireString(args, 'comment'));
378
+ const regressTo = optString(args, 'regress_to');
379
+ if (regressTo) {
380
+ ctx.tasks.regress(approval.task_id, regressTo, requireString(args, 'comment'));
381
+ }
382
+ return approval;
383
+ }
384
+ if (action === 'list') {
385
+ return ctx.approvals.getPending(optString(args, 'reviewer'));
386
+ }
387
+ // action === 'review'
388
+ const taskId = requireNumber(args, 'task_id');
389
+ const decision = requireString(args, 'decision');
390
+ const task = ctx.tasks.getById(taskId);
391
+ if (!task)
392
+ throw new ValidationError(`Task ${taskId} not found.`);
393
+ if (decision === 'approve') {
394
+ ctx.tasks.advance(taskId);
395
+ return { success: true, action: 'approved', task: ctx.tasks.getById(taskId) };
396
+ }
397
+ else if (decision === 'reject') {
398
+ const reason = requireString(args, 'reason');
399
+ const regressTo = optString(args, 'regress_to') ?? 'implement';
400
+ ctx.tasks.regress(taskId, regressTo, reason);
401
+ return { success: true, action: 'rejected', task: ctx.tasks.getById(taskId) };
402
+ }
403
+ else {
404
+ throw new ValidationError(`Invalid decision: ${decision}. Use "approve" or "reject".`);
405
+ }
406
+ }
407
+ // ---------------------------------------------------------------------------
408
+ // Dispatch map
409
+ // ---------------------------------------------------------------------------
410
+ export const handlers = {
411
+ task_create: handleCreate,
412
+ task_get: handleGet,
413
+ task_list: handleList,
414
+ task_claim: handleClaim,
415
+ task_update: handleUpdate,
416
+ task_delete: handleDelete,
417
+ task_comment: handleComment,
418
+ task_stage: handleStage,
419
+ task_query: handleQuery,
420
+ task_artifact: handleArtifact,
421
+ task_config: handleConfig,
422
+ task_dependency: handleDependency,
423
+ task_collaborator: handleCollaborator,
424
+ task_approval: handleApproval,
425
+ };
426
+ //# sourceMappingURL=mcp-handlers.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"mcp-handlers.js","sourceRoot":"","sources":["../../src/transport/mcp-handlers.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"mcp.d.ts","sourceRoot":"","sources":["../../src/transport/mcp.ts"],"names":[],"mappings":"AAUA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAChD,OAAO,KAAK,EAAgC,cAAc,EAAE,MAAM,aAAa,CAAC;AAQhF,eAAO,MAAM,KAAK,EAAE,cAAc,EAqiBjC,CAAC;AAwDF,MAAM,MAAM,WAAW,GAAG,CACxB,IAAI,EAAE,MAAM,EACZ,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,KAC1B,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;AAEhC,wBAAgB,iBAAiB,CAAC,GAAG,EAAE,UAAU,GAAG,WAAW,CAkW9D"}
1
+ {"version":3,"file":"mcp.d.ts","sourceRoot":"","sources":["../../src/transport/mcp.ts"],"names":[],"mappings":"AAOA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAChD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAQlD,eAAO,MAAM,KAAK,EAAE,cAAc,EAqbjC,CAAC;AAMF,MAAM,MAAM,WAAW,GAAG,CACxB,IAAI,EAAE,MAAM,EACZ,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,KAC1B,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;AAEhC,wBAAgB,iBAAiB,CAAC,GAAG,EAAE,UAAU,GAAG,WAAW,CAW9D"}