@tienne/gestalt 0.6.0 → 0.8.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (129) hide show
  1. package/CLAUDE.md +13 -2
  2. package/README.ko.md +136 -3
  3. package/README.md +163 -11
  4. package/dist/package.json +2 -1
  5. package/dist/src/cli/commands/interview.d.ts +1 -0
  6. package/dist/src/cli/commands/interview.d.ts.map +1 -1
  7. package/dist/src/cli/commands/interview.js +12 -53
  8. package/dist/src/cli/commands/interview.js.map +1 -1
  9. package/dist/src/cli/index.d.ts.map +1 -1
  10. package/dist/src/cli/index.js +2 -1
  11. package/dist/src/cli/index.js.map +1 -1
  12. package/dist/src/core/types.d.ts +85 -0
  13. package/dist/src/core/types.d.ts.map +1 -1
  14. package/dist/src/execute/audit-engine.d.ts +20 -0
  15. package/dist/src/execute/audit-engine.d.ts.map +1 -0
  16. package/dist/src/execute/audit-engine.js +49 -0
  17. package/dist/src/execute/audit-engine.js.map +1 -0
  18. package/dist/src/execute/parallel-groups.d.ts +9 -0
  19. package/dist/src/execute/parallel-groups.d.ts.map +1 -0
  20. package/dist/src/execute/parallel-groups.js +39 -0
  21. package/dist/src/execute/parallel-groups.js.map +1 -0
  22. package/dist/src/execute/passthrough-engine.d.ts +2 -0
  23. package/dist/src/execute/passthrough-engine.d.ts.map +1 -1
  24. package/dist/src/execute/passthrough-engine.js +6 -0
  25. package/dist/src/execute/passthrough-engine.js.map +1 -1
  26. package/dist/src/execute/repository.d.ts.map +1 -1
  27. package/dist/src/execute/repository.js +3 -0
  28. package/dist/src/execute/repository.js.map +1 -1
  29. package/dist/src/execute/session.d.ts +3 -1
  30. package/dist/src/execute/session.d.ts.map +1 -1
  31. package/dist/src/execute/session.js +31 -0
  32. package/dist/src/execute/session.js.map +1 -1
  33. package/dist/src/interview/context-compressor.d.ts +17 -0
  34. package/dist/src/interview/context-compressor.d.ts.map +1 -0
  35. package/dist/src/interview/context-compressor.js +40 -0
  36. package/dist/src/interview/context-compressor.js.map +1 -0
  37. package/dist/src/interview/mini-interview-engine.d.ts +33 -0
  38. package/dist/src/interview/mini-interview-engine.d.ts.map +1 -0
  39. package/dist/src/interview/mini-interview-engine.js +103 -0
  40. package/dist/src/interview/mini-interview-engine.js.map +1 -0
  41. package/dist/src/interview/passthrough-engine.d.ts +7 -0
  42. package/dist/src/interview/passthrough-engine.d.ts.map +1 -1
  43. package/dist/src/interview/passthrough-engine.js +15 -1
  44. package/dist/src/interview/passthrough-engine.js.map +1 -1
  45. package/dist/src/interview/session.d.ts +2 -1
  46. package/dist/src/interview/session.d.ts.map +1 -1
  47. package/dist/src/interview/session.js +5 -0
  48. package/dist/src/interview/session.js.map +1 -1
  49. package/dist/src/mcp/schemas.d.ts +78 -9
  50. package/dist/src/mcp/schemas.d.ts.map +1 -1
  51. package/dist/src/mcp/schemas.js +26 -2
  52. package/dist/src/mcp/schemas.js.map +1 -1
  53. package/dist/src/mcp/server.d.ts.map +1 -1
  54. package/dist/src/mcp/server.js +5 -2
  55. package/dist/src/mcp/server.js.map +1 -1
  56. package/dist/src/mcp/tools/execute-passthrough.d.ts.map +1 -1
  57. package/dist/src/mcp/tools/execute-passthrough.js +174 -1
  58. package/dist/src/mcp/tools/execute-passthrough.js.map +1 -1
  59. package/dist/src/mcp/tools/interview-passthrough.d.ts.map +1 -1
  60. package/dist/src/mcp/tools/interview-passthrough.js +71 -3
  61. package/dist/src/mcp/tools/interview-passthrough.js.map +1 -1
  62. package/dist/src/mcp/tools/interview.d.ts.map +1 -1
  63. package/dist/src/mcp/tools/interview.js +34 -1
  64. package/dist/src/mcp/tools/interview.js.map +1 -1
  65. package/dist/src/mcp/tools/spec-passthrough.d.ts +2 -1
  66. package/dist/src/mcp/tools/spec-passthrough.d.ts.map +1 -1
  67. package/dist/src/mcp/tools/spec-passthrough.js +54 -3
  68. package/dist/src/mcp/tools/spec-passthrough.js.map +1 -1
  69. package/dist/src/mcp/tools/spec.d.ts.map +1 -1
  70. package/dist/src/mcp/tools/spec.js +2 -0
  71. package/dist/src/mcp/tools/spec.js.map +1 -1
  72. package/dist/src/memory/memory-context-injector.d.ts +26 -0
  73. package/dist/src/memory/memory-context-injector.d.ts.map +1 -0
  74. package/dist/src/memory/memory-context-injector.js +67 -0
  75. package/dist/src/memory/memory-context-injector.js.map +1 -0
  76. package/dist/src/memory/project-memory-store.d.ts +14 -0
  77. package/dist/src/memory/project-memory-store.d.ts.map +1 -0
  78. package/dist/src/memory/project-memory-store.js +105 -0
  79. package/dist/src/memory/project-memory-store.js.map +1 -0
  80. package/dist/src/memory/user-profile-store.d.ts +13 -0
  81. package/dist/src/memory/user-profile-store.d.ts.map +1 -0
  82. package/dist/src/memory/user-profile-store.js +89 -0
  83. package/dist/src/memory/user-profile-store.js.map +1 -0
  84. package/dist/src/recording/agg-converter.d.ts +25 -0
  85. package/dist/src/recording/agg-converter.d.ts.map +1 -0
  86. package/dist/src/recording/agg-converter.js +80 -0
  87. package/dist/src/recording/agg-converter.js.map +1 -0
  88. package/dist/src/recording/agg-installer.d.ts +6 -0
  89. package/dist/src/recording/agg-installer.d.ts.map +1 -0
  90. package/dist/src/recording/agg-installer.js +50 -0
  91. package/dist/src/recording/agg-installer.js.map +1 -0
  92. package/dist/src/recording/asciinema-installer.d.ts +6 -0
  93. package/dist/src/recording/asciinema-installer.d.ts.map +1 -0
  94. package/dist/src/recording/asciinema-installer.js +50 -0
  95. package/dist/src/recording/asciinema-installer.js.map +1 -0
  96. package/dist/src/recording/asciinema-recorder.d.ts +26 -0
  97. package/dist/src/recording/asciinema-recorder.d.ts.map +1 -0
  98. package/dist/src/recording/asciinema-recorder.js +52 -0
  99. package/dist/src/recording/asciinema-recorder.js.map +1 -0
  100. package/dist/src/recording/cast-generator.d.ts +7 -0
  101. package/dist/src/recording/cast-generator.d.ts.map +1 -0
  102. package/dist/src/recording/cast-generator.js +72 -0
  103. package/dist/src/recording/cast-generator.js.map +1 -0
  104. package/dist/src/recording/filename-generator.d.ts +1 -0
  105. package/dist/src/recording/filename-generator.d.ts.map +1 -1
  106. package/dist/src/recording/filename-generator.js +7 -0
  107. package/dist/src/recording/filename-generator.js.map +1 -1
  108. package/dist/src/recording/recording-orchestrator.d.ts +50 -0
  109. package/dist/src/recording/recording-orchestrator.d.ts.map +1 -0
  110. package/dist/src/recording/recording-orchestrator.js +98 -0
  111. package/dist/src/recording/recording-orchestrator.js.map +1 -0
  112. package/dist/src/scripts/postinstall.d.ts +2 -0
  113. package/dist/src/scripts/postinstall.d.ts.map +1 -0
  114. package/dist/src/scripts/postinstall.js +27 -0
  115. package/dist/src/scripts/postinstall.js.map +1 -0
  116. package/dist/src/spec/passthrough-generator.d.ts +2 -0
  117. package/dist/src/spec/passthrough-generator.d.ts.map +1 -1
  118. package/dist/src/spec/passthrough-generator.js +34 -0
  119. package/dist/src/spec/passthrough-generator.js.map +1 -1
  120. package/dist/src/spec/templates.d.ts +12 -0
  121. package/dist/src/spec/templates.d.ts.map +1 -0
  122. package/dist/src/spec/templates.js +103 -0
  123. package/dist/src/spec/templates.js.map +1 -0
  124. package/dist/src/spec/text-based-spec-generator.d.ts +15 -0
  125. package/dist/src/spec/text-based-spec-generator.d.ts.map +1 -0
  126. package/dist/src/spec/text-based-spec-generator.js +63 -0
  127. package/dist/src/spec/text-based-spec-generator.js.map +1 -0
  128. package/package.json +2 -1
  129. package/README.backup.md +0 -442
@@ -1,3 +1,6 @@
1
+ import { ProjectMemoryStore } from '../../memory/project-memory-store.js';
2
+ import { AuditEngine } from '../../execute/audit-engine.js';
3
+ import { randomUUID } from 'node:crypto';
1
4
  export function handleExecutePassthrough(engine, input) {
2
5
  switch (input.action) {
3
6
  case 'start': {
@@ -66,6 +69,7 @@ export function handleExecutePassthrough(engine, input) {
66
69
  atomicTasks: executionPlan.atomicTasks,
67
70
  taskGroups: executionPlan.taskGroups,
68
71
  dagValidation: executionPlan.dagValidation,
72
+ parallelGroups: executionPlan.parallelGroups,
69
73
  },
70
74
  message: 'Execution plan assembled and validated. Call execute_start to begin task execution.',
71
75
  }, null, 2);
@@ -129,9 +133,33 @@ export function handleExecutePassthrough(engine, input) {
129
133
  if (!result.ok)
130
134
  return formatError(result.error.message);
131
135
  const { evaluationResult } = result.value;
136
+ const completedSession = result.value.session;
137
+ // Update project memory on execution completion
138
+ try {
139
+ const memoryStore = new ProjectMemoryStore();
140
+ const completedTasks = completedSession.taskResults
141
+ .filter((t) => t.status === 'completed')
142
+ .map((t) => t.taskId);
143
+ const failedTasks = completedSession.taskResults
144
+ .filter((t) => t.status === 'failed')
145
+ .map((t) => t.taskId);
146
+ const score = evaluationResult?.overallScore ?? 0;
147
+ const goalAlign = evaluationResult?.goalAlignment ?? 0;
148
+ memoryStore.addExecution({
149
+ executeSessionId: completedSession.sessionId,
150
+ specId: completedSession.specId,
151
+ completedTasks,
152
+ failedTasks,
153
+ resultSummary: `Score: ${score.toFixed(2)}, goalAlignment: ${goalAlign.toFixed(2)}`,
154
+ completedAt: new Date().toISOString(),
155
+ });
156
+ }
157
+ catch {
158
+ // Memory update failure should not block the response
159
+ }
132
160
  return JSON.stringify({
133
161
  status: 'completed',
134
- sessionId: result.value.session.sessionId,
162
+ sessionId: completedSession.sessionId,
135
163
  stage: 'complete',
136
164
  evaluationResult,
137
165
  message: `Evaluation complete. Overall score: ${evaluationResult.overallScore.toFixed(2)}, goal alignment: ${evaluationResult.goalAlignment.toFixed(2)}. Session is now completed.`,
@@ -176,6 +204,123 @@ export function handleExecutePassthrough(engine, input) {
176
204
  case 'status': {
177
205
  return handleStatus(engine, input.sessionId);
178
206
  }
207
+ // ─── Execution Continuity Actions ─────────────────────────
208
+ case 'resume': {
209
+ if (!input.sessionId)
210
+ return formatError('sessionId is required for resume action');
211
+ try {
212
+ const session = engine.getSession(input.sessionId);
213
+ if (session.status !== 'executing' && session.status !== 'planning') {
214
+ return formatError(`Session status is "${session.status}". Resume is only available for in-progress sessions.`);
215
+ }
216
+ if (!session.executionPlan) {
217
+ return formatError('No execution plan found. Complete planning first.');
218
+ }
219
+ const completedSet = new Set(session.completedTaskIds);
220
+ const remaining = session.executionPlan.dagValidation.topologicalOrder.filter((id) => !completedSet.has(id));
221
+ const nextTaskId = remaining[0] ?? null;
222
+ const totalTasks = session.executionPlan.atomicTasks.length;
223
+ const progressPercent = totalTasks > 0
224
+ ? Math.round((session.completedTaskIds.length / totalTasks) * 100)
225
+ : 0;
226
+ const resumeContext = {
227
+ completedTaskIds: session.completedTaskIds,
228
+ nextTaskId,
229
+ totalTasks,
230
+ progressPercent,
231
+ };
232
+ return JSON.stringify({
233
+ status: 'resume_context',
234
+ sessionId: session.sessionId,
235
+ resumeContext,
236
+ message: nextTaskId
237
+ ? `Resuming from task "${nextTaskId}". ${session.completedTaskIds.length}/${totalTasks} tasks completed (${progressPercent}%). Use execute_task to continue.`
238
+ : 'All tasks completed. Call evaluate to verify acceptance criteria.',
239
+ }, null, 2);
240
+ }
241
+ catch (e) {
242
+ return formatError(e instanceof Error ? e.message : String(e));
243
+ }
244
+ }
245
+ // ─── Audit Actions ─────────────────────────────────────────
246
+ case 'audit': {
247
+ if (!input.sessionId)
248
+ return formatError('sessionId is required for audit action');
249
+ try {
250
+ const session = engine.getSession(input.sessionId);
251
+ const auditEngine = new AuditEngine();
252
+ // Call 2: Submit audit result
253
+ if (input.auditResult) {
254
+ const auditResult = auditEngine.buildAuditResult(input.auditResult);
255
+ engine.getSessionManager().setAuditResult(session.sessionId, auditResult);
256
+ return JSON.stringify({
257
+ status: 'audit_complete',
258
+ sessionId: session.sessionId,
259
+ auditResult,
260
+ summary: {
261
+ total: session.spec.acceptanceCriteria.length,
262
+ implemented: auditResult.implementedACs.length,
263
+ partial: auditResult.partialACs.length,
264
+ missing: auditResult.missingACs.length,
265
+ },
266
+ message: `Audit complete. ${auditResult.missingACs.length} ACs missing, ${auditResult.partialACs.length} partial. Review gapAnalysis for next steps.`,
267
+ }, null, 2);
268
+ }
269
+ // Call 1: Return audit context
270
+ const codebaseSnapshot = input.codebaseSnapshot ?? '(no snapshot provided — analyze based on spec ACs only)';
271
+ const auditContext = auditEngine.buildAuditContext(session.spec, codebaseSnapshot);
272
+ return JSON.stringify({
273
+ status: 'auditing',
274
+ sessionId: session.sessionId,
275
+ auditContext,
276
+ message: 'Use auditContext.systemPrompt + auditContext.auditPrompt to analyze the codebase, then submit auditResult.',
277
+ }, null, 2);
278
+ }
279
+ catch (e) {
280
+ return formatError(e instanceof Error ? e.message : String(e));
281
+ }
282
+ }
283
+ // ─── Sub-task Spawning Actions ─────────────────────────────
284
+ case 'spawn': {
285
+ if (!input.sessionId)
286
+ return formatError('sessionId is required for spawn action');
287
+ if (!input.parentTaskId)
288
+ return formatError('parentTaskId is required for spawn action');
289
+ if (!input.subTasks || input.subTasks.length === 0)
290
+ return formatError('subTasks is required for spawn action');
291
+ try {
292
+ const session = engine.getSession(input.sessionId);
293
+ const parentTask = session.executionPlan?.atomicTasks.find((t) => t.taskId === input.parentTaskId);
294
+ const inheritedContext = parentTask
295
+ ? `Parent task: "${parentTask.title}"\n${parentTask.description}`
296
+ : `Parent task ID: ${input.parentTaskId}`;
297
+ const spawnedTasks = input.subTasks.map((st) => ({
298
+ taskId: `spawned-${randomUUID().slice(0, 8)}`,
299
+ parentTaskId: input.parentTaskId,
300
+ title: st.title,
301
+ description: st.description,
302
+ inheritedContext,
303
+ dependsOn: st.dependsOn ?? [],
304
+ status: 'pending',
305
+ createdAt: new Date().toISOString(),
306
+ }));
307
+ engine.getSessionManager().addSubTasks(session.sessionId, spawnedTasks);
308
+ return JSON.stringify({
309
+ status: 'spawned',
310
+ sessionId: session.sessionId,
311
+ parentTaskId: input.parentTaskId,
312
+ spawnedTasks: spawnedTasks.map((t) => ({
313
+ taskId: t.taskId,
314
+ title: t.title,
315
+ dependsOn: t.dependsOn,
316
+ })),
317
+ message: `${spawnedTasks.length} sub-tasks spawned from "${input.parentTaskId}". Submit results with execute_task using each sub-task's taskId.`,
318
+ }, null, 2);
319
+ }
320
+ catch (e) {
321
+ return formatError(e instanceof Error ? e.message : String(e));
322
+ }
323
+ }
179
324
  // ─── Evolution Loop Actions ───────────────────────────────
180
325
  case 'evolve_fix': {
181
326
  if (!input.sessionId)
@@ -429,6 +574,21 @@ function handleStatus(engine, sessionId) {
429
574
  try {
430
575
  if (sessionId) {
431
576
  const session = engine.getSession(sessionId);
577
+ // Build resumeContext for in-progress sessions
578
+ let resumeContext;
579
+ if (session.status === 'executing' && session.executionPlan) {
580
+ const completedSet = new Set(session.completedTaskIds);
581
+ const totalTasks = session.executionPlan.atomicTasks.length;
582
+ const nextTaskId = session.executionPlan.dagValidation.topologicalOrder.find((id) => !completedSet.has(id)) ?? null;
583
+ resumeContext = {
584
+ completedTaskIds: session.completedTaskIds,
585
+ nextTaskId,
586
+ totalTasks,
587
+ progressPercent: totalTasks > 0
588
+ ? Math.round((session.completedTaskIds.length / totalTasks) * 100)
589
+ : 0,
590
+ };
591
+ }
432
592
  return JSON.stringify({
433
593
  session: {
434
594
  sessionId: session.sessionId,
@@ -445,6 +605,9 @@ function handleStatus(engine, sessionId) {
445
605
  currentGeneration: session.currentGeneration,
446
606
  evolutionCount: session.evolutionHistory.length,
447
607
  terminationReason: session.terminationReason ?? null,
608
+ ...(resumeContext ? { resumeContext } : {}),
609
+ ...(session.auditResult ? { hasAuditResult: true } : {}),
610
+ subTaskCount: session.subTasks.length,
448
611
  createdAt: session.createdAt,
449
612
  updatedAt: session.updatedAt,
450
613
  },
@@ -460,6 +623,16 @@ function handleStatus(engine, sessionId) {
460
623
  hasPlan: !!s.executionPlan,
461
624
  taskResults: s.taskResults.length,
462
625
  hasEvaluation: !!s.evaluationResult,
626
+ ...(s.status === 'executing' ? {
627
+ resumeContext: {
628
+ completedTaskIds: s.completedTaskIds,
629
+ nextTaskId: s.nextTaskId,
630
+ totalTasks: s.executionPlan?.atomicTasks.length ?? 0,
631
+ progressPercent: s.executionPlan
632
+ ? Math.round((s.completedTaskIds.length / s.executionPlan.atomicTasks.length) * 100)
633
+ : 0,
634
+ },
635
+ } : {}),
463
636
  createdAt: s.createdAt,
464
637
  })),
465
638
  total: sessions.length,
@@ -1 +1 @@
1
- {"version":3,"file":"execute-passthrough.js","sourceRoot":"","sources":["../../../../src/mcp/tools/execute-passthrough.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"execute-passthrough.js","sourceRoot":"","sources":["../../../../src/mcp/tools/execute-passthrough.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"interview-passthrough.d.ts","sourceRoot":"","sources":["../../../../src/mcp/tools/interview-passthrough.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,uCAAuC,CAAC;AAC/E,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,eAAe,CAAC;AAEpD,wBAAgB,0BAA0B,CACxC,MAAM,EAAE,iBAAiB,EACzB,KAAK,EAAE,cAAc,GACpB,MAAM,CAiGR"}
1
+ {"version":3,"file":"interview-passthrough.d.ts","sourceRoot":"","sources":["../../../../src/mcp/tools/interview-passthrough.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,uCAAuC,CAAC;AAI/E,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,eAAe,CAAC;AAIpD,wBAAgB,0BAA0B,CACxC,MAAM,EAAE,iBAAiB,EACzB,KAAK,EAAE,cAAc,GACpB,MAAM,CAuJR"}
@@ -1,3 +1,8 @@
1
+ import { join } from 'node:path';
2
+ import { CastGenerator, slugify, getDateString } from '../../recording/cast-generator.js';
3
+ import { AggConverter } from '../../recording/agg-converter.js';
4
+ import { ContextCompressor } from '../../interview/context-compressor.js';
5
+ import { ProjectMemoryStore } from '../../memory/project-memory-store.js';
1
6
  export function handleInterviewPassthrough(engine, input) {
2
7
  switch (input.action) {
3
8
  case 'start': {
@@ -26,12 +31,13 @@ export function handleInterviewPassthrough(engine, input) {
26
31
  const result = engine.respond(input.sessionId, input.response, input.generatedQuestion, input.ambiguityScore);
27
32
  if (!result.ok)
28
33
  return formatError(result.error.message);
29
- const { session, ambiguityScore, gestaltContext } = result.value;
34
+ const { session, ambiguityScore, gestaltContext, compressionContext, needsCompression } = result.value;
30
35
  return JSON.stringify({
31
36
  status: 'in_progress',
32
37
  sessionId: session.sessionId,
33
38
  roundNumber: session.rounds.length,
34
39
  gestaltContext,
40
+ ...(needsCompression ? { compressionContext, needsCompression } : {}),
35
41
  ambiguityScore: ambiguityScore
36
42
  ? {
37
43
  overall: ambiguityScore.overall.toFixed(2),
@@ -45,7 +51,9 @@ export function handleInterviewPassthrough(engine, input) {
45
51
  : null,
46
52
  message: ambiguityScore?.isReady
47
53
  ? 'Ambiguity threshold met! You can complete the interview and generate a spec.'
48
- : 'Use gestaltContext.questionPrompt to generate the next question. Use gestaltContext.scoringPrompt to compute ambiguity scores.',
54
+ : needsCompression
55
+ ? 'Use compressionContext to compress previous rounds, then continue with gestaltContext.questionPrompt.'
56
+ : 'Use gestaltContext.questionPrompt to generate the next question. Use gestaltContext.scoringPrompt to compute ambiguity scores.',
49
57
  }, null, 2);
50
58
  }
51
59
  case 'score': {
@@ -74,18 +82,60 @@ export function handleInterviewPassthrough(engine, input) {
74
82
  : undefined,
75
83
  }, null, 2);
76
84
  }
85
+ case 'compress': {
86
+ if (!input.sessionId)
87
+ return formatError('sessionId is required for compress action');
88
+ try {
89
+ const session = engine.getSession(input.sessionId);
90
+ const compressor = new ContextCompressor();
91
+ // Call 2: submit compressed summary
92
+ if (input.compressedSummary) {
93
+ const completedRounds = session.rounds.filter((r) => r.userResponse !== null);
94
+ const roundsToCompress = Math.max(0, completedRounds.length - 3);
95
+ const compressedContext = compressor.buildCompressedContext(input.compressedSummary, roundsToCompress);
96
+ engine.getSessionManager().setCompressedContext(input.sessionId, compressedContext);
97
+ // Persist to project memory
98
+ try {
99
+ const memoryStore = new ProjectMemoryStore();
100
+ memoryStore.addCompressedContext(input.sessionId, input.compressedSummary);
101
+ }
102
+ catch { /* non-blocking */ }
103
+ return JSON.stringify({
104
+ status: 'compressed',
105
+ sessionId: input.sessionId,
106
+ roundsCompressed: roundsToCompress,
107
+ message: `Context compressed (${roundsToCompress} rounds summarized). Continue with respond action.`,
108
+ }, null, 2);
109
+ }
110
+ // Call 1: return compression context
111
+ const compressionCtx = compressor.buildCompressionContext(session.topic, session.rounds, session.compressedContext?.summary);
112
+ return JSON.stringify({
113
+ status: 'compressing',
114
+ sessionId: input.sessionId,
115
+ compressionContext: compressionCtx,
116
+ message: 'Use compressionContext.systemPrompt + compressionContext.compressionPrompt to generate a summary, then submit with compressedSummary.',
117
+ }, null, 2);
118
+ }
119
+ catch (e) {
120
+ return formatError(e instanceof Error ? e.message : String(e));
121
+ }
122
+ }
77
123
  case 'complete': {
78
124
  if (!input.sessionId)
79
125
  return formatError('sessionId is required for complete action');
80
126
  const result = engine.complete(input.sessionId);
81
127
  if (!result.ok)
82
128
  return formatError(result.error.message);
129
+ const recordingPath = input.record ? triggerRecording(result.value) : undefined;
83
130
  return JSON.stringify({
84
131
  status: 'completed',
85
132
  sessionId: result.value.sessionId,
86
133
  totalRounds: result.value.rounds.length,
87
134
  finalAmbiguityScore: result.value.ambiguityScore?.overall.toFixed(2) ?? 'N/A',
88
- message: 'Interview completed. Use ges_generate_spec to generate a spec.',
135
+ ...(recordingPath && { recordingPath }),
136
+ message: recordingPath
137
+ ? `Interview completed. GIF recording is being generated: ${recordingPath}`
138
+ : 'Interview completed. Use ges_generate_spec to generate a spec.',
89
139
  }, null, 2);
90
140
  }
91
141
  }
@@ -93,4 +143,22 @@ export function handleInterviewPassthrough(engine, input) {
93
143
  function formatError(message) {
94
144
  return JSON.stringify({ error: message }, null, 2);
95
145
  }
146
+ function triggerRecording(session) {
147
+ const slug = slugify(session.topic);
148
+ const date = getDateString();
149
+ const gifPath = join('.gestalt', 'recordings', `${slug}-${date}.gif`);
150
+ const castPath = join('.gestalt', 'recordings', `tmp-${session.sessionId}.cast`);
151
+ try {
152
+ new CastGenerator().generate(session, castPath);
153
+ void new AggConverter().convertAsync(castPath, gifPath, {
154
+ deleteCastAfter: true,
155
+ onComplete: (p) => process.stderr.write(`[gestalt] Recording saved: ${p}\n`),
156
+ onError: (e) => process.stderr.write(`[gestalt] Recording failed: ${e.message}\n`),
157
+ }).catch(() => { });
158
+ }
159
+ catch {
160
+ // cast generation failure should not break complete action
161
+ }
162
+ return gifPath;
163
+ }
96
164
  //# sourceMappingURL=interview-passthrough.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"interview-passthrough.js","sourceRoot":"","sources":["../../../../src/mcp/tools/interview-passthrough.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"interview-passthrough.js","sourceRoot":"","sources":["../../../../src/mcp/tools/interview-passthrough.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AAGjC,OAAO,EAAE,aAAa,EAAE,OAAO,EAAE,aAAa,EAAE,MAAM,mCAAmC,CAAC;AAC1F,OAAO,EAAE,YAAY,EAAE,MAAM,kCAAkC,CAAC;AAEhE,OAAO,EAAE,iBAAiB,EAAE,MAAM,uCAAuC,CAAC;AAC1E,OAAO,EAAE,kBAAkB,EAAE,MAAM,sCAAsC,CAAC;AAE1E,MAAM,UAAU,0BAA0B,CACxC,MAAyB,EACzB,KAAqB;IAErB,QAAQ,KAAK,CAAC,MAAM,EAAE,CAAC;QACrB,KAAK,OAAO,CAAC,CAAC,CAAC;YACb,MAAM,KAAK,GAAG,KAAK,CAAC,KAAK,IAAI,kBAAkB,CAAC;YAChD,MAAM,MAAM,GAAG,MAAM,CAAC,KAAK,CAAC,KAAK,EAAE,KAAK,CAAC,GAAG,CAAC,CAAC;YAC9C,IAAI,CAAC,MAAM,CAAC,EAAE;gBAAE,OAAO,WAAW,CAAC,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;YAEzD,MAAM,EAAE,OAAO,EAAE,WAAW,EAAE,aAAa,EAAE,cAAc,EAAE,GAAG,MAAM,CAAC,KAAK,CAAC;YAC7E,OAAO,IAAI,CAAC,SAAS,CAAC;gBACpB,MAAM,EAAE,SAAS;gBACjB,SAAS,EAAE,OAAO,CAAC,SAAS;gBAC5B,WAAW;gBACX,aAAa;gBACb,cAAc;gBACd,WAAW,EAAE,CAAC;gBACd,OAAO,EAAE,0BAA0B,KAAK,MAAM,WAAW,2GAA2G;aACrK,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC;QACd,CAAC;QAED,KAAK,SAAS,CAAC,CAAC,CAAC;YACf,IAAI,CAAC,KAAK,CAAC,SAAS;gBAAE,OAAO,WAAW,CAAC,0CAA0C,CAAC,CAAC;YACrF,IAAI,CAAC,KAAK,CAAC,QAAQ;gBAAE,OAAO,WAAW,CAAC,yCAAyC,CAAC,CAAC;YACnF,IAAI,CAAC,KAAK,CAAC,iBAAiB;gBAAE,OAAO,WAAW,CAAC,sEAAsE,CAAC,CAAC;YAEzH,MAAM,MAAM,GAAG,MAAM,CAAC,OAAO,CAC3B,KAAK,CAAC,SAAS,EACf,KAAK,CAAC,QAAQ,EACd,KAAK,CAAC,iBAAiB,EACvB,KAAK,CAAC,cAAc,CACrB,CAAC;YACF,IAAI,CAAC,MAAM,CAAC,EAAE;gBAAE,OAAO,WAAW,CAAC,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;YAEzD,MAAM,EAAE,OAAO,EAAE,cAAc,EAAE,cAAc,EAAE,kBAAkB,EAAE,gBAAgB,EAAE,GAAG,MAAM,CAAC,KAAK,CAAC;YACvG,OAAO,IAAI,CAAC,SAAS,CAAC;gBACpB,MAAM,EAAE,aAAa;gBACrB,SAAS,EAAE,OAAO,CAAC,SAAS;gBAC5B,WAAW,EAAE,OAAO,CAAC,MAAM,CAAC,MAAM;gBAClC,cAAc;gBACd,GAAG,CAAC,gBAAgB,CAAC,CAAC,CAAC,EAAE,kBAAkB,EAAE,gBAAgB,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;gBACrE,cAAc,EAAE,cAAc;oBAC5B,CAAC,CAAC;wBACE,OAAO,EAAE,cAAc,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC;wBAC1C,OAAO,EAAE,cAAc,CAAC,OAAO;wBAC/B,UAAU,EAAE,cAAc,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;4BAChD,IAAI,EAAE,CAAC,CAAC,IAAI;4BACZ,OAAO,EAAE,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC;4BAC7B,SAAS,EAAE,CAAC,CAAC,gBAAgB;yBAC9B,CAAC,CAAC;qBACJ;oBACH,CAAC,CAAC,IAAI;gBACR,OAAO,EAAE,cAAc,EAAE,OAAO;oBAC9B,CAAC,CAAC,8EAA8E;oBAChF,CAAC,CAAC,gBAAgB;wBAChB,CAAC,CAAC,uGAAuG;wBACzG,CAAC,CAAC,gIAAgI;aACvI,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC;QACd,CAAC;QAED,KAAK,OAAO,CAAC,CAAC,CAAC;YACb,IAAI,CAAC,KAAK,CAAC,SAAS;gBAAE,OAAO,WAAW,CAAC,wCAAwC,CAAC,CAAC;YAEnF,MAAM,MAAM,GAAG,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,SAAS,EAAE,KAAK,CAAC,cAAc,CAAC,CAAC;YACnE,IAAI,CAAC,MAAM,CAAC,EAAE;gBAAE,OAAO,WAAW,CAAC,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;YAEzD,MAAM,EAAE,cAAc,EAAE,aAAa,EAAE,GAAG,MAAM,CAAC,KAAK,CAAC;YACvD,OAAO,IAAI,CAAC,SAAS,CAAC;gBACpB,MAAM,EAAE,QAAQ;gBAChB,cAAc,EAAE,cAAc;oBAC5B,CAAC,CAAC;wBACE,OAAO,EAAE,cAAc,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC;wBAC1C,OAAO,EAAE,cAAc,CAAC,OAAO;wBAC/B,UAAU,EAAE,cAAc,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;4BAChD,IAAI,EAAE,CAAC,CAAC,IAAI;4BACZ,OAAO,EAAE,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC;4BAC7B,SAAS,EAAE,CAAC,CAAC,gBAAgB;yBAC9B,CAAC,CAAC;qBACJ;oBACH,CAAC,CAAC,IAAI;gBACR,aAAa,EAAE,aAAa,IAAI,IAAI;gBACpC,OAAO,EAAE,aAAa;oBACpB,CAAC,CAAC,6GAA6G;oBAC/G,CAAC,CAAC,SAAS;aACd,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC;QACd,CAAC;QAED,KAAK,UAAU,CAAC,CAAC,CAAC;YAChB,IAAI,CAAC,KAAK,CAAC,SAAS;gBAAE,OAAO,WAAW,CAAC,2CAA2C,CAAC,CAAC;YAEtF,IAAI,CAAC;gBACH,MAAM,OAAO,GAAG,MAAM,CAAC,UAAU,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;gBACnD,MAAM,UAAU,GAAG,IAAI,iBAAiB,EAAE,CAAC;gBAE3C,oCAAoC;gBACpC,IAAI,KAAK,CAAC,iBAAiB,EAAE,CAAC;oBAC5B,MAAM,eAAe,GAAG,OAAO,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,YAAY,KAAK,IAAI,CAAC,CAAC;oBAC9E,MAAM,gBAAgB,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,eAAe,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;oBACjE,MAAM,iBAAiB,GAAG,UAAU,CAAC,sBAAsB,CAAC,KAAK,CAAC,iBAAiB,EAAE,gBAAgB,CAAC,CAAC;oBACvG,MAAM,CAAC,iBAAiB,EAAE,CAAC,oBAAoB,CAAC,KAAK,CAAC,SAAS,EAAE,iBAAiB,CAAC,CAAC;oBAEpF,4BAA4B;oBAC5B,IAAI,CAAC;wBACH,MAAM,WAAW,GAAG,IAAI,kBAAkB,EAAE,CAAC;wBAC7C,WAAW,CAAC,oBAAoB,CAAC,KAAK,CAAC,SAAS,EAAE,KAAK,CAAC,iBAAiB,CAAC,CAAC;oBAC7E,CAAC;oBAAC,MAAM,CAAC,CAAC,kBAAkB,CAAC,CAAC;oBAE9B,OAAO,IAAI,CAAC,SAAS,CAAC;wBACpB,MAAM,EAAE,YAAY;wBACpB,SAAS,EAAE,KAAK,CAAC,SAAS;wBAC1B,gBAAgB,EAAE,gBAAgB;wBAClC,OAAO,EAAE,uBAAuB,gBAAgB,oDAAoD;qBACrG,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC;gBACd,CAAC;gBAED,qCAAqC;gBACrC,MAAM,cAAc,GAAG,UAAU,CAAC,uBAAuB,CACvD,OAAO,CAAC,KAAK,EACb,OAAO,CAAC,MAAM,EACd,OAAO,CAAC,iBAAiB,EAAE,OAAO,CACnC,CAAC;gBAEF,OAAO,IAAI,CAAC,SAAS,CAAC;oBACpB,MAAM,EAAE,aAAa;oBACrB,SAAS,EAAE,KAAK,CAAC,SAAS;oBAC1B,kBAAkB,EAAE,cAAc;oBAClC,OAAO,EAAE,uIAAuI;iBACjJ,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC;YACd,CAAC;YAAC,OAAO,CAAC,EAAE,CAAC;gBACX,OAAO,WAAW,CAAC,CAAC,YAAY,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC;YACjE,CAAC;QACH,CAAC;QAED,KAAK,UAAU,CAAC,CAAC,CAAC;YAChB,IAAI,CAAC,KAAK,CAAC,SAAS;gBAAE,OAAO,WAAW,CAAC,2CAA2C,CAAC,CAAC;YAEtF,MAAM,MAAM,GAAG,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;YAChD,IAAI,CAAC,MAAM,CAAC,EAAE;gBAAE,OAAO,WAAW,CAAC,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;YAEzD,MAAM,aAAa,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,gBAAgB,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;YAEhF,OAAO,IAAI,CAAC,SAAS,CAAC;gBACpB,MAAM,EAAE,WAAW;gBACnB,SAAS,EAAE,MAAM,CAAC,KAAK,CAAC,SAAS;gBACjC,WAAW,EAAE,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,MAAM;gBACvC,mBAAmB,EAAE,MAAM,CAAC,KAAK,CAAC,cAAc,EAAE,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,KAAK;gBAC7E,GAAG,CAAC,aAAa,IAAI,EAAE,aAAa,EAAE,CAAC;gBACvC,OAAO,EAAE,aAAa;oBACpB,CAAC,CAAC,0DAA0D,aAAa,EAAE;oBAC3E,CAAC,CAAC,gEAAgE;aACrE,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC;QACd,CAAC;IACH,CAAC;AACH,CAAC;AAED,SAAS,WAAW,CAAC,OAAe;IAClC,OAAO,IAAI,CAAC,SAAS,CAAC,EAAE,KAAK,EAAE,OAAO,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC;AACrD,CAAC;AAED,SAAS,gBAAgB,CAAC,OAAyB;IACjD,MAAM,IAAI,GAAG,OAAO,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;IACpC,MAAM,IAAI,GAAG,aAAa,EAAE,CAAC;IAC7B,MAAM,OAAO,GAAG,IAAI,CAAC,UAAU,EAAE,YAAY,EAAE,GAAG,IAAI,IAAI,IAAI,MAAM,CAAC,CAAC;IACtE,MAAM,QAAQ,GAAG,IAAI,CAAC,UAAU,EAAE,YAAY,EAAE,OAAO,OAAO,CAAC,SAAS,OAAO,CAAC,CAAC;IAEjF,IAAI,CAAC;QACH,IAAI,aAAa,EAAE,CAAC,QAAQ,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAC;QAChD,KAAK,IAAI,YAAY,EAAE,CAAC,YAAY,CAAC,QAAQ,EAAE,OAAO,EAAE;YACtD,eAAe,EAAE,IAAI;YACrB,UAAU,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,8BAA8B,CAAC,IAAI,CAAC;YAC5E,OAAO,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,+BAA+B,CAAC,CAAC,OAAO,IAAI,CAAC;SACnF,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC,CAAC;IACrB,CAAC;IAAC,MAAM,CAAC;QACP,2DAA2D;IAC7D,CAAC;IAED,OAAO,OAAO,CAAC;AACjB,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"interview.d.ts","sourceRoot":"","sources":["../../../../src/mcp/tools/interview.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,2BAA2B,CAAC;AACjE,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,eAAe,CAAC;AAEpD,wBAAsB,eAAe,CACnC,MAAM,EAAE,eAAe,EACvB,KAAK,EAAE,cAAc,GACpB,OAAO,CAAC,MAAM,CAAC,CAkFjB"}
1
+ {"version":3,"file":"interview.d.ts","sourceRoot":"","sources":["../../../../src/mcp/tools/interview.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,2BAA2B,CAAC;AAIjE,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,eAAe,CAAC;AAEpD,wBAAsB,eAAe,CACnC,MAAM,EAAE,eAAe,EACvB,KAAK,EAAE,cAAc,GACpB,OAAO,CAAC,MAAM,CAAC,CAiGjB"}
@@ -1,3 +1,6 @@
1
+ import { join } from 'node:path';
2
+ import { CastGenerator, slugify, getDateString } from '../../recording/cast-generator.js';
3
+ import { AggConverter } from '../../recording/agg-converter.js';
1
4
  export async function handleInterview(engine, input) {
2
5
  switch (input.action) {
3
6
  case 'start': {
@@ -69,17 +72,47 @@ export async function handleInterview(engine, input) {
69
72
  const result = engine.complete(input.sessionId);
70
73
  if (!result.ok)
71
74
  return formatError(result.error.message);
75
+ const recordingPath = input.record ? triggerRecording(result.value) : undefined;
72
76
  return JSON.stringify({
73
77
  status: 'completed',
74
78
  sessionId: result.value.sessionId,
75
79
  totalRounds: result.value.rounds.length,
76
80
  finalAmbiguityScore: result.value.ambiguityScore?.overall.toFixed(2) ?? 'N/A',
77
- message: 'Interview completed. You can now generate a spec with ges_generate_spec.',
81
+ ...(recordingPath && { recordingPath }),
82
+ message: recordingPath
83
+ ? `Interview completed. GIF recording is being generated: ${recordingPath}`
84
+ : 'Interview completed. You can now generate a spec with ges_generate_spec.',
78
85
  }, null, 2);
79
86
  }
87
+ case 'compress': {
88
+ // compress action is passthrough-only; normal mode does not support it
89
+ return formatError('compress action is only available in passthrough mode');
90
+ }
91
+ default: {
92
+ const _exhaustive = input.action;
93
+ return formatError(`Unknown action: ${_exhaustive}`);
94
+ }
80
95
  }
81
96
  }
82
97
  function formatError(message) {
83
98
  return JSON.stringify({ error: message }, null, 2);
84
99
  }
100
+ function triggerRecording(session) {
101
+ const slug = slugify(session.topic);
102
+ const date = getDateString();
103
+ const gifPath = join('.gestalt', 'recordings', `${slug}-${date}.gif`);
104
+ const castPath = join('.gestalt', 'recordings', `tmp-${session.sessionId}.cast`);
105
+ try {
106
+ new CastGenerator().generate(session, castPath);
107
+ void new AggConverter().convertAsync(castPath, gifPath, {
108
+ deleteCastAfter: true,
109
+ onComplete: (p) => process.stderr.write(`[gestalt] Recording saved: ${p}\n`),
110
+ onError: (e) => process.stderr.write(`[gestalt] Recording failed: ${e.message}\n`),
111
+ }).catch(() => { });
112
+ }
113
+ catch {
114
+ // cast generation failure should not break complete action
115
+ }
116
+ return gifPath;
117
+ }
85
118
  //# sourceMappingURL=interview.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"interview.js","sourceRoot":"","sources":["../../../../src/mcp/tools/interview.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"interview.js","sourceRoot":"","sources":["../../../../src/mcp/tools/interview.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,6 @@
1
1
  import type { PassthroughEngine } from '../../interview/passthrough-engine.js';
2
2
  import type { PassthroughSpecGenerator } from '../../spec/passthrough-generator.js';
3
3
  import type { SpecInput } from '../schemas.js';
4
- export declare function handleSpecPassthrough(engine: PassthroughEngine, generator: PassthroughSpecGenerator, input: SpecInput): string;
4
+ import type { AgentRegistry } from '../../agent/registry.js';
5
+ export declare function handleSpecPassthrough(engine: PassthroughEngine, generator: PassthroughSpecGenerator, input: SpecInput, agentRegistry?: AgentRegistry): string;
5
6
  //# sourceMappingURL=spec-passthrough.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"spec-passthrough.d.ts","sourceRoot":"","sources":["../../../../src/mcp/tools/spec-passthrough.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,uCAAuC,CAAC;AAC/E,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,qCAAqC,CAAC;AACpF,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,eAAe,CAAC;AAE/C,wBAAgB,qBAAqB,CACnC,MAAM,EAAE,iBAAiB,EACzB,SAAS,EAAE,wBAAwB,EACnC,KAAK,EAAE,SAAS,GACf,MAAM,CA8BR"}
1
+ {"version":3,"file":"spec-passthrough.d.ts","sourceRoot":"","sources":["../../../../src/mcp/tools/spec-passthrough.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,uCAAuC,CAAC;AAC/E,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,qCAAqC,CAAC;AAEpF,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,eAAe,CAAC;AAC/C,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,yBAAyB,CAAC;AAG7D,wBAAgB,qBAAqB,CACnC,MAAM,EAAE,iBAAiB,EACzB,SAAS,EAAE,wBAAwB,EACnC,KAAK,EAAE,SAAS,EAChB,aAAa,CAAC,EAAE,aAAa,GAC5B,MAAM,CAqFR"}