mcp-agent-foundry 1.3.1 → 2.1.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 (144) hide show
  1. package/README.md +265 -2
  2. package/dist/background/index.d.ts +33 -0
  3. package/dist/background/index.d.ts.map +1 -0
  4. package/dist/background/index.js +33 -0
  5. package/dist/background/index.js.map +1 -0
  6. package/dist/background/task-runner.d.ts +177 -0
  7. package/dist/background/task-runner.d.ts.map +1 -0
  8. package/dist/background/task-runner.js +551 -0
  9. package/dist/background/task-runner.js.map +1 -0
  10. package/dist/background/types.d.ts +135 -0
  11. package/dist/background/types.d.ts.map +1 -0
  12. package/dist/background/types.js +8 -0
  13. package/dist/background/types.js.map +1 -0
  14. package/dist/config/validator.d.ts +2 -2
  15. package/dist/config/validator.d.ts.map +1 -1
  16. package/dist/config/validator.js +2 -2
  17. package/dist/config/validator.js.map +1 -1
  18. package/dist/failover/health-tracker.d.ts +81 -1
  19. package/dist/failover/health-tracker.d.ts.map +1 -1
  20. package/dist/failover/health-tracker.js +229 -1
  21. package/dist/failover/health-tracker.js.map +1 -1
  22. package/dist/failover/orchestrator.d.ts.map +1 -1
  23. package/dist/failover/orchestrator.js +12 -2
  24. package/dist/failover/orchestrator.js.map +1 -1
  25. package/dist/hooks/hook-executor.d.ts +77 -0
  26. package/dist/hooks/hook-executor.d.ts.map +1 -0
  27. package/dist/hooks/hook-executor.js +308 -0
  28. package/dist/hooks/hook-executor.js.map +1 -0
  29. package/dist/hooks/hook-manager.d.ts +140 -0
  30. package/dist/hooks/hook-manager.d.ts.map +1 -0
  31. package/dist/hooks/hook-manager.js +520 -0
  32. package/dist/hooks/hook-manager.js.map +1 -0
  33. package/dist/hooks/index.d.ts +10 -0
  34. package/dist/hooks/index.d.ts.map +1 -0
  35. package/dist/hooks/index.js +10 -0
  36. package/dist/hooks/index.js.map +1 -0
  37. package/dist/hooks/types.d.ts +221 -0
  38. package/dist/hooks/types.d.ts.map +1 -0
  39. package/dist/hooks/types.js +31 -0
  40. package/dist/hooks/types.js.map +1 -0
  41. package/dist/index.d.ts +1 -1
  42. package/dist/index.js +1 -1
  43. package/dist/mcp/auto-mode.d.ts +221 -0
  44. package/dist/mcp/auto-mode.d.ts.map +1 -0
  45. package/dist/mcp/auto-mode.js +436 -0
  46. package/dist/mcp/auto-mode.js.map +1 -0
  47. package/dist/mcp/index.d.ts +14 -0
  48. package/dist/mcp/index.d.ts.map +1 -0
  49. package/dist/mcp/index.js +22 -0
  50. package/dist/mcp/index.js.map +1 -0
  51. package/dist/mcp/tools/critique-plan.d.ts.map +1 -1
  52. package/dist/mcp/tools/critique-plan.js +57 -4
  53. package/dist/mcp/tools/critique-plan.js.map +1 -1
  54. package/dist/mcp/tools/design-feedback.d.ts.map +1 -1
  55. package/dist/mcp/tools/design-feedback.js +58 -4
  56. package/dist/mcp/tools/design-feedback.js.map +1 -1
  57. package/dist/mcp/tools/invoke-agent.d.ts.map +1 -1
  58. package/dist/mcp/tools/invoke-agent.js +64 -1
  59. package/dist/mcp/tools/invoke-agent.js.map +1 -1
  60. package/dist/mcp/tools/review-code.d.ts.map +1 -1
  61. package/dist/mcp/tools/review-code.js +57 -4
  62. package/dist/mcp/tools/review-code.js.map +1 -1
  63. package/dist/mcp/tools/tasks/delete-task.d.ts +25 -0
  64. package/dist/mcp/tools/tasks/delete-task.d.ts.map +1 -0
  65. package/dist/mcp/tools/tasks/delete-task.js +148 -0
  66. package/dist/mcp/tools/tasks/delete-task.js.map +1 -0
  67. package/dist/mcp/tools/tasks/execute-task.d.ts.map +1 -1
  68. package/dist/mcp/tools/tasks/execute-task.js +74 -5
  69. package/dist/mcp/tools/tasks/execute-task.js.map +1 -1
  70. package/dist/mcp/tools/tasks/index.d.ts +2 -0
  71. package/dist/mcp/tools/tasks/index.d.ts.map +1 -1
  72. package/dist/mcp/tools/tasks/index.js +6 -0
  73. package/dist/mcp/tools/tasks/index.js.map +1 -1
  74. package/dist/observability/debug-logger.d.ts +209 -0
  75. package/dist/observability/debug-logger.d.ts.map +1 -0
  76. package/dist/observability/debug-logger.js +430 -0
  77. package/dist/observability/debug-logger.js.map +1 -0
  78. package/dist/observability/index.d.ts +12 -0
  79. package/dist/observability/index.d.ts.map +1 -0
  80. package/dist/observability/index.js +12 -0
  81. package/dist/observability/index.js.map +1 -0
  82. package/dist/observability/logger.d.ts +180 -0
  83. package/dist/observability/logger.d.ts.map +1 -1
  84. package/dist/observability/logger.js +158 -0
  85. package/dist/observability/logger.js.map +1 -1
  86. package/dist/providers/anthropic.d.ts +40 -6
  87. package/dist/providers/anthropic.d.ts.map +1 -1
  88. package/dist/providers/anthropic.js +120 -8
  89. package/dist/providers/anthropic.js.map +1 -1
  90. package/dist/providers/base.d.ts +6 -3
  91. package/dist/providers/base.d.ts.map +1 -1
  92. package/dist/providers/base.js.map +1 -1
  93. package/dist/router/context-manager.d.ts +214 -1
  94. package/dist/router/context-manager.d.ts.map +1 -1
  95. package/dist/router/context-manager.js +759 -2
  96. package/dist/router/context-manager.js.map +1 -1
  97. package/dist/router/context-types.d.ts +182 -0
  98. package/dist/router/context-types.d.ts.map +1 -0
  99. package/dist/router/context-types.js +8 -0
  100. package/dist/router/context-types.js.map +1 -0
  101. package/dist/router/engine.d.ts +3 -3
  102. package/dist/router/engine.d.ts.map +1 -1
  103. package/dist/router/engine.js +32 -4
  104. package/dist/router/engine.js.map +1 -1
  105. package/dist/router/pattern-executor.d.ts.map +1 -1
  106. package/dist/router/pattern-executor.js +38 -7
  107. package/dist/router/pattern-executor.js.map +1 -1
  108. package/dist/server.d.ts +41 -0
  109. package/dist/server.d.ts.map +1 -1
  110. package/dist/server.js +165 -0
  111. package/dist/server.js.map +1 -1
  112. package/dist/skills/hot-reloader.d.ts +104 -0
  113. package/dist/skills/hot-reloader.d.ts.map +1 -0
  114. package/dist/skills/hot-reloader.js +314 -0
  115. package/dist/skills/hot-reloader.js.map +1 -0
  116. package/dist/skills/index.d.ts +14 -0
  117. package/dist/skills/index.d.ts.map +1 -0
  118. package/dist/skills/index.js +16 -0
  119. package/dist/skills/index.js.map +1 -0
  120. package/dist/skills/skill-executor.d.ts +96 -0
  121. package/dist/skills/skill-executor.d.ts.map +1 -0
  122. package/dist/skills/skill-executor.js +289 -0
  123. package/dist/skills/skill-executor.js.map +1 -0
  124. package/dist/skills/skill-loader.d.ts +147 -0
  125. package/dist/skills/skill-loader.d.ts.map +1 -0
  126. package/dist/skills/skill-loader.js +579 -0
  127. package/dist/skills/skill-loader.js.map +1 -0
  128. package/dist/skills/types.d.ts +198 -0
  129. package/dist/skills/types.d.ts.map +1 -0
  130. package/dist/skills/types.js +21 -0
  131. package/dist/skills/types.js.map +1 -0
  132. package/dist/tasks/coordinator.d.ts +22 -1
  133. package/dist/tasks/coordinator.d.ts.map +1 -1
  134. package/dist/tasks/coordinator.js +83 -0
  135. package/dist/tasks/coordinator.js.map +1 -1
  136. package/dist/tasks/state-coordinator.d.ts +19 -0
  137. package/dist/tasks/state-coordinator.d.ts.map +1 -1
  138. package/dist/tasks/state-coordinator.js +40 -0
  139. package/dist/tasks/state-coordinator.js.map +1 -1
  140. package/dist/types.d.ts +39 -7
  141. package/dist/types.d.ts.map +1 -1
  142. package/dist/types.js +9 -0
  143. package/dist/types.js.map +1 -1
  144. package/package.json +1 -1
@@ -0,0 +1,436 @@
1
+ /**
2
+ * MCP Auto Mode
3
+ *
4
+ * Automatically defers tool descriptions when they would exceed a configurable
5
+ * percentage of the context window. This prevents context overflow in long
6
+ * sessions with many tools.
7
+ *
8
+ * Based on Claude Code v2.1.7's MCP Auto Mode feature.
9
+ *
10
+ * Key features:
11
+ * - Configurable percentage threshold for tool descriptions
12
+ * - Priority-based tool selection
13
+ * - Always-include and always-defer lists
14
+ * - On-demand fetching of deferred tool descriptions
15
+ * - Force-include override for user requests
16
+ */
17
+ // ============================================================================
18
+ // Default Configuration
19
+ // ============================================================================
20
+ const DEFAULT_CONFIG = {
21
+ enabled: true,
22
+ maxToolDescriptionPercent: 10,
23
+ minToolsToInclude: 5,
24
+ alwaysInclude: [],
25
+ alwaysDefer: [],
26
+ };
27
+ // ============================================================================
28
+ // MCPAutoMode Class
29
+ // ============================================================================
30
+ /**
31
+ * MCP Auto Mode - Intelligent tool description management
32
+ *
33
+ * Automatically defers tool descriptions that would exceed context limits.
34
+ * This is based on Claude Code v2.1.7's MCP Auto Mode feature.
35
+ *
36
+ * @example
37
+ * ```typescript
38
+ * const autoMode = new MCPAutoMode(
39
+ * { maxToolDescriptionPercent: 15 },
40
+ * contextManager,
41
+ * logger
42
+ * );
43
+ *
44
+ * // Register tools
45
+ * autoMode.registerTool({
46
+ * name: 'invoke_agent',
47
+ * description: 'Invoke a specialized agent...',
48
+ * estimatedTokens: 150,
49
+ * priority: 10,
50
+ * });
51
+ *
52
+ * // Before each request, process tools
53
+ * const contextState = contextManager.getState('openai', 'gpt-4o', messages);
54
+ * const result = autoMode.processForRequest(contextState);
55
+ *
56
+ * // Use result.includedTools for this request
57
+ * if (result.hadDeferrals) {
58
+ * console.log(result.deferralMessage);
59
+ * }
60
+ * ```
61
+ */
62
+ export class MCPAutoMode {
63
+ config;
64
+ contextManager;
65
+ logger;
66
+ toolRegistry = new Map();
67
+ forcedIncludes = new Set();
68
+ /**
69
+ * Create a new MCPAutoMode instance.
70
+ *
71
+ * @param config - Partial configuration (merged with defaults)
72
+ * @param contextManager - ContextManager for token estimation
73
+ * @param logger - Logger instance for observability
74
+ */
75
+ constructor(config, contextManager, logger) {
76
+ this.config = {
77
+ ...DEFAULT_CONFIG,
78
+ ...config,
79
+ alwaysInclude: config.alwaysInclude ?? DEFAULT_CONFIG.alwaysInclude,
80
+ alwaysDefer: config.alwaysDefer ?? DEFAULT_CONFIG.alwaysDefer,
81
+ };
82
+ this.contextManager = contextManager;
83
+ this.logger = logger;
84
+ this.logger.debug('MCPAutoMode initialized', {
85
+ enabled: this.config.enabled,
86
+ maxToolDescriptionPercent: this.config.maxToolDescriptionPercent,
87
+ minToolsToInclude: this.config.minToolsToInclude,
88
+ alwaysIncludeCount: this.config.alwaysInclude?.length ?? 0,
89
+ alwaysDeferCount: this.config.alwaysDefer?.length ?? 0,
90
+ });
91
+ }
92
+ // ==========================================================================
93
+ // Tool Registration
94
+ // ==========================================================================
95
+ /**
96
+ * Register a tool with its description.
97
+ *
98
+ * @param tool - Tool descriptor to register
99
+ */
100
+ registerTool(tool) {
101
+ // Validate tool
102
+ if (!tool.name) {
103
+ this.logger.warn('Attempted to register tool without name', { tool });
104
+ return;
105
+ }
106
+ // Set defaults
107
+ const normalizedTool = {
108
+ ...tool,
109
+ priority: tool.priority ?? 0,
110
+ deferred: false,
111
+ estimatedTokens: tool.estimatedTokens > 0
112
+ ? tool.estimatedTokens
113
+ : this.estimateToolTokens(tool),
114
+ };
115
+ this.toolRegistry.set(tool.name, normalizedTool);
116
+ this.logger.debug('Tool registered', {
117
+ name: tool.name,
118
+ estimatedTokens: normalizedTool.estimatedTokens,
119
+ priority: normalizedTool.priority,
120
+ });
121
+ }
122
+ /**
123
+ * Unregister a tool.
124
+ *
125
+ * @param name - Name of tool to unregister
126
+ */
127
+ unregisterTool(name) {
128
+ if (this.toolRegistry.has(name)) {
129
+ this.toolRegistry.delete(name);
130
+ this.forcedIncludes.delete(name);
131
+ this.logger.debug('Tool unregistered', { name });
132
+ }
133
+ }
134
+ /**
135
+ * Get all registered tools.
136
+ *
137
+ * @returns Array of all tool descriptors
138
+ */
139
+ getAllTools() {
140
+ return Array.from(this.toolRegistry.values());
141
+ }
142
+ /**
143
+ * Calculate total tokens for all tool descriptions.
144
+ *
145
+ * @returns Total estimated tokens
146
+ */
147
+ getTotalToolTokens() {
148
+ let total = 0;
149
+ for (const tool of this.toolRegistry.values()) {
150
+ total += tool.estimatedTokens;
151
+ }
152
+ return total;
153
+ }
154
+ // ==========================================================================
155
+ // Request Processing
156
+ // ==========================================================================
157
+ /**
158
+ * Process tools for a request given current context state.
159
+ * Returns which tools to include and which to defer.
160
+ *
161
+ * @param contextState - Current context state from ContextManager
162
+ * @param requestedTools - Optional list of specifically requested tool names
163
+ * @returns AutoModeResult with included/deferred tools
164
+ */
165
+ processForRequest(contextState, requestedTools) {
166
+ // If auto mode is disabled, include all tools
167
+ if (!this.config.enabled) {
168
+ const allTools = Array.from(this.toolRegistry.keys());
169
+ return {
170
+ includedTools: allTools,
171
+ deferredTools: [],
172
+ tokensSaved: 0,
173
+ hadDeferrals: false,
174
+ };
175
+ }
176
+ // Calculate how many tokens we can use for tools
177
+ const maxToolTokens = Math.floor(contextState.maxTokens * (this.config.maxToolDescriptionPercent / 100));
178
+ this.logger.debug('Processing tools for request', {
179
+ maxToolTokens,
180
+ totalRegisteredTools: this.toolRegistry.size,
181
+ requestedToolsCount: requestedTools?.length ?? 0,
182
+ });
183
+ // Sort tools by priority
184
+ const sortedTools = this.getSortedTools(requestedTools);
185
+ // Greedily include tools until we hit the limit
186
+ const included = [];
187
+ const deferred = [];
188
+ let usedTokens = 0;
189
+ for (const tool of sortedTools) {
190
+ // Always include first
191
+ if (this.config.alwaysInclude?.includes(tool.name)) {
192
+ included.push(tool.name);
193
+ usedTokens += tool.estimatedTokens;
194
+ tool.deferred = false;
195
+ continue;
196
+ }
197
+ // Always defer
198
+ if (this.config.alwaysDefer?.includes(tool.name) && !this.forcedIncludes.has(tool.name)) {
199
+ deferred.push(tool.name);
200
+ tool.deferred = true;
201
+ continue;
202
+ }
203
+ // Forced includes from user override
204
+ if (this.forcedIncludes.has(tool.name)) {
205
+ included.push(tool.name);
206
+ usedTokens += tool.estimatedTokens;
207
+ tool.deferred = false;
208
+ continue;
209
+ }
210
+ // Check if we have room (always include minimum tools)
211
+ if (usedTokens + tool.estimatedTokens <= maxToolTokens ||
212
+ included.length < this.config.minToolsToInclude) {
213
+ included.push(tool.name);
214
+ usedTokens += tool.estimatedTokens;
215
+ tool.deferred = false;
216
+ }
217
+ else {
218
+ deferred.push(tool.name);
219
+ tool.deferred = true;
220
+ }
221
+ }
222
+ // Calculate tokens saved
223
+ const tokensSaved = this.calculateTokensSaved(deferred);
224
+ const result = {
225
+ includedTools: included,
226
+ deferredTools: deferred,
227
+ tokensSaved,
228
+ hadDeferrals: deferred.length > 0,
229
+ deferralMessage: deferred.length > 0
230
+ ? `${deferred.length} tool${deferred.length !== 1 ? 's' : ''} deferred to save context (${tokensSaved} tokens saved). Use tool explicitly to include.`
231
+ : undefined,
232
+ };
233
+ this.logger.debug('Tool processing completed', {
234
+ includedCount: included.length,
235
+ deferredCount: deferred.length,
236
+ tokensSaved,
237
+ usedTokens,
238
+ maxToolTokens,
239
+ });
240
+ return result;
241
+ }
242
+ /**
243
+ * Get deferred tool description on demand.
244
+ * (When user explicitly requests a deferred tool)
245
+ *
246
+ * @param name - Name of deferred tool
247
+ * @returns Tool descriptor if found, undefined otherwise
248
+ */
249
+ getDeferredToolDescription(name) {
250
+ const tool = this.toolRegistry.get(name);
251
+ if (tool?.deferred) {
252
+ this.logger.debug('Fetching deferred tool description', { name });
253
+ return tool;
254
+ }
255
+ return undefined;
256
+ }
257
+ /**
258
+ * Check if a specific tool is currently deferred.
259
+ *
260
+ * @param name - Tool name to check
261
+ * @returns True if tool is deferred
262
+ */
263
+ isDeferred(name) {
264
+ return this.toolRegistry.get(name)?.deferred ?? false;
265
+ }
266
+ /**
267
+ * Force include a deferred tool (user override).
268
+ * This tool will be included in subsequent requests until reset.
269
+ *
270
+ * @param name - Tool name to force include
271
+ */
272
+ forceInclude(name) {
273
+ if (this.toolRegistry.has(name)) {
274
+ this.forcedIncludes.add(name);
275
+ const tool = this.toolRegistry.get(name);
276
+ if (tool) {
277
+ tool.deferred = false;
278
+ }
279
+ this.logger.debug('Tool force-included', { name });
280
+ }
281
+ else {
282
+ this.logger.warn('Attempted to force-include unknown tool', { name });
283
+ }
284
+ }
285
+ /**
286
+ * Reset all deferrals and force-includes.
287
+ */
288
+ resetDeferrals() {
289
+ this.forcedIncludes.clear();
290
+ for (const tool of this.toolRegistry.values()) {
291
+ tool.deferred = false;
292
+ }
293
+ this.logger.debug('Deferrals reset');
294
+ }
295
+ /**
296
+ * Mark a tool as recently used (for recency-based prioritization).
297
+ *
298
+ * @param name - Tool name that was used
299
+ */
300
+ markToolUsed(name) {
301
+ const tool = this.toolRegistry.get(name);
302
+ if (tool) {
303
+ tool.lastUsedAt = Date.now();
304
+ }
305
+ }
306
+ // ==========================================================================
307
+ // Configuration
308
+ // ==========================================================================
309
+ /**
310
+ * Get current configuration.
311
+ *
312
+ * @returns Current MCPAutoModeConfig
313
+ */
314
+ getConfig() {
315
+ return { ...this.config };
316
+ }
317
+ /**
318
+ * Update configuration.
319
+ *
320
+ * @param config - Partial configuration to merge
321
+ */
322
+ updateConfig(config) {
323
+ this.config = {
324
+ ...this.config,
325
+ ...config,
326
+ alwaysInclude: config.alwaysInclude ?? this.config.alwaysInclude,
327
+ alwaysDefer: config.alwaysDefer ?? this.config.alwaysDefer,
328
+ };
329
+ this.logger.debug('MCPAutoMode config updated', {
330
+ enabled: this.config.enabled,
331
+ maxToolDescriptionPercent: this.config.maxToolDescriptionPercent,
332
+ minToolsToInclude: this.config.minToolsToInclude,
333
+ });
334
+ }
335
+ // ==========================================================================
336
+ // Private Methods
337
+ // ==========================================================================
338
+ /**
339
+ * Sort tools by priority for inclusion decisions.
340
+ *
341
+ * Priority order:
342
+ * 1. Tools in alwaysInclude
343
+ * 2. Tools explicitly requested for this call
344
+ * 3. Tools that were force-included by user
345
+ * 4. Recently used tools
346
+ * 5. Tools with higher priority scores
347
+ * 6. Other tools
348
+ * 7. Tools in alwaysDefer (lowest priority)
349
+ */
350
+ getSortedTools(requestedTools) {
351
+ const tools = Array.from(this.toolRegistry.values());
352
+ const requestedSet = new Set(requestedTools ?? []);
353
+ const alwaysIncludeSet = new Set(this.config.alwaysInclude ?? []);
354
+ const alwaysDeferSet = new Set(this.config.alwaysDefer ?? []);
355
+ const now = Date.now();
356
+ return tools.sort((a, b) => {
357
+ // 1. alwaysInclude tools first
358
+ const aAlwaysInclude = alwaysIncludeSet.has(a.name) ? 1 : 0;
359
+ const bAlwaysInclude = alwaysIncludeSet.has(b.name) ? 1 : 0;
360
+ if (aAlwaysInclude !== bAlwaysInclude) {
361
+ return bAlwaysInclude - aAlwaysInclude;
362
+ }
363
+ // 2. Explicitly requested tools
364
+ const aRequested = requestedSet.has(a.name) ? 1 : 0;
365
+ const bRequested = requestedSet.has(b.name) ? 1 : 0;
366
+ if (aRequested !== bRequested) {
367
+ return bRequested - aRequested;
368
+ }
369
+ // 3. Force-included tools
370
+ const aForced = this.forcedIncludes.has(a.name) ? 1 : 0;
371
+ const bForced = this.forcedIncludes.has(b.name) ? 1 : 0;
372
+ if (aForced !== bForced) {
373
+ return bForced - aForced;
374
+ }
375
+ // 4. Recently used tools (within last 5 minutes)
376
+ const recentThreshold = 5 * 60 * 1000; // 5 minutes
377
+ const aRecent = a.lastUsedAt && (now - a.lastUsedAt) < recentThreshold ? 1 : 0;
378
+ const bRecent = b.lastUsedAt && (now - b.lastUsedAt) < recentThreshold ? 1 : 0;
379
+ if (aRecent !== bRecent) {
380
+ return bRecent - aRecent;
381
+ }
382
+ // 5. Priority score (higher = more important)
383
+ const priorityDiff = (b.priority ?? 0) - (a.priority ?? 0);
384
+ if (priorityDiff !== 0) {
385
+ return priorityDiff;
386
+ }
387
+ // 6. alwaysDefer tools last
388
+ const aAlwaysDefer = alwaysDeferSet.has(a.name) ? 1 : 0;
389
+ const bAlwaysDefer = alwaysDeferSet.has(b.name) ? 1 : 0;
390
+ if (aAlwaysDefer !== bAlwaysDefer) {
391
+ return aAlwaysDefer - bAlwaysDefer;
392
+ }
393
+ // 7. Alphabetical as tie-breaker for consistency
394
+ return a.name.localeCompare(b.name);
395
+ });
396
+ }
397
+ /**
398
+ * Calculate total tokens saved by deferring tools.
399
+ */
400
+ calculateTokensSaved(deferredTools) {
401
+ let total = 0;
402
+ for (const name of deferredTools) {
403
+ const tool = this.toolRegistry.get(name);
404
+ if (tool) {
405
+ total += tool.estimatedTokens;
406
+ }
407
+ }
408
+ return total;
409
+ }
410
+ /**
411
+ * Estimate token count for a tool based on its description.
412
+ * Uses the context manager's estimation logic.
413
+ */
414
+ estimateToolTokens(tool) {
415
+ // Base estimate from description
416
+ const descriptionTokens = this.contextManager.estimateTokens(tool.description);
417
+ // Add overhead for tool schema (name, parameters structure)
418
+ const schemaOverhead = 20;
419
+ return descriptionTokens + schemaOverhead;
420
+ }
421
+ }
422
+ // ============================================================================
423
+ // Factory Function
424
+ // ============================================================================
425
+ /**
426
+ * Create an MCPAutoMode instance.
427
+ *
428
+ * @param config - Partial configuration (merged with defaults)
429
+ * @param contextManager - ContextManager instance
430
+ * @param logger - Logger instance
431
+ * @returns Configured MCPAutoMode instance
432
+ */
433
+ export function createMCPAutoMode(config, contextManager, logger) {
434
+ return new MCPAutoMode(config, contextManager, logger);
435
+ }
436
+ //# sourceMappingURL=auto-mode.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"auto-mode.js","sourceRoot":"","sources":["../../src/mcp/auto-mode.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,14 @@
1
+ /**
2
+ * MCP Module Index
3
+ *
4
+ * Exports MCP-related functionality including:
5
+ * - Auto Mode for intelligent tool description management
6
+ * - Tool registration utilities
7
+ * - Transport implementations
8
+ */
9
+ export { MCPAutoMode, createMCPAutoMode, } from './auto-mode.js';
10
+ export type { MCPAutoModeConfig, ToolDescriptor, AutoModeResult, } from './auto-mode.js';
11
+ export { registerTools } from './tools/index.js';
12
+ export { registerInvokeAgentTool, registerCompareAgentsTool, registerCritiquePlanTool, registerDesignFeedbackTool, registerReviewCodeTool, registerWorktreeTools, registerWorktreeManagementTools, registerResolveConflictsTool, registerListWorktreesTool, registerCleanupWorktreesTool, registerGetWorktreeStatusTool, } from './tools/index.js';
13
+ export { createStdioTransport } from './transport/stdio.js';
14
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/mcp/index.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAMH,OAAO,EACL,WAAW,EACX,iBAAiB,GAClB,MAAM,gBAAgB,CAAC;AAExB,YAAY,EACV,iBAAiB,EACjB,cAAc,EACd,cAAc,GACf,MAAM,gBAAgB,CAAC;AAMxB,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AAEjD,OAAO,EACL,uBAAuB,EACvB,yBAAyB,EACzB,wBAAwB,EACxB,0BAA0B,EAC1B,sBAAsB,EACtB,qBAAqB,EACrB,+BAA+B,EAC/B,4BAA4B,EAC5B,yBAAyB,EACzB,4BAA4B,EAC5B,6BAA6B,GAC9B,MAAM,kBAAkB,CAAC;AAM1B,OAAO,EAAE,oBAAoB,EAAE,MAAM,sBAAsB,CAAC"}
@@ -0,0 +1,22 @@
1
+ /**
2
+ * MCP Module Index
3
+ *
4
+ * Exports MCP-related functionality including:
5
+ * - Auto Mode for intelligent tool description management
6
+ * - Tool registration utilities
7
+ * - Transport implementations
8
+ */
9
+ // ============================================================================
10
+ // Auto Mode
11
+ // ============================================================================
12
+ export { MCPAutoMode, createMCPAutoMode, } from './auto-mode.js';
13
+ // ============================================================================
14
+ // Tools
15
+ // ============================================================================
16
+ export { registerTools } from './tools/index.js';
17
+ export { registerInvokeAgentTool, registerCompareAgentsTool, registerCritiquePlanTool, registerDesignFeedbackTool, registerReviewCodeTool, registerWorktreeTools, registerWorktreeManagementTools, registerResolveConflictsTool, registerListWorktreesTool, registerCleanupWorktreesTool, registerGetWorktreeStatusTool, } from './tools/index.js';
18
+ // ============================================================================
19
+ // Transport
20
+ // ============================================================================
21
+ export { createStdioTransport } from './transport/stdio.js';
22
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/mcp/index.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,+EAA+E;AAC/E,YAAY;AACZ,+EAA+E;AAE/E,OAAO,EACL,WAAW,EACX,iBAAiB,GAClB,MAAM,gBAAgB,CAAC;AAQxB,+EAA+E;AAC/E,QAAQ;AACR,+EAA+E;AAE/E,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AAEjD,OAAO,EACL,uBAAuB,EACvB,yBAAyB,EACzB,wBAAwB,EACxB,0BAA0B,EAC1B,sBAAsB,EACtB,qBAAqB,EACrB,+BAA+B,EAC/B,4BAA4B,EAC5B,yBAAyB,EACzB,4BAA4B,EAC5B,6BAA6B,GAC9B,MAAM,kBAAkB,CAAC;AAE1B,+EAA+E;AAC/E,YAAY;AACZ,+EAA+E;AAE/E,OAAO,EAAE,oBAAoB,EAAE,MAAM,sBAAsB,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"critique-plan.d.ts","sourceRoot":"","sources":["../../../src/mcp/tools/critique-plan.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,EAAE,KAAK,SAAS,EAAE,MAAM,yCAAyC,CAAC;AAGzE,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,+BAA+B,CAAC;AAC5D,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAC;AA+F3D;;;;;;;;;;;;;GAaG;AACH,wBAAgB,wBAAwB,CACtC,MAAM,EAAE,SAAS,EACjB,MAAM,EAAE,YAAY,EACpB,MAAM,EAAE,MAAM,GACb,IAAI,CAkFN"}
1
+ {"version":3,"file":"critique-plan.d.ts","sourceRoot":"","sources":["../../../src/mcp/tools/critique-plan.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,EAAE,KAAK,SAAS,EAAE,MAAM,yCAAyC,CAAC;AAGzE,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,+BAA+B,CAAC;AAC5D,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAC;AAkI3D;;;;;;;;;;;;;GAaG;AACH,wBAAgB,wBAAwB,CACtC,MAAM,EAAE,SAAS,EACjB,MAAM,EAAE,YAAY,EACpB,MAAM,EAAE,MAAM,GACb,IAAI,CAwGN"}
@@ -6,6 +6,7 @@
6
6
  * critic agent with a structured task.
7
7
  */
8
8
  import { z } from "zod";
9
+ import { isSessionDelegation } from "../../types.js";
9
10
  // ============================================================================
10
11
  // Constants
11
12
  // ============================================================================
@@ -49,6 +50,39 @@ function formatCritiqueResponse(response) {
49
50
  .join("\n");
50
51
  return header + meta + content;
51
52
  }
53
+ /**
54
+ * Format a session delegation response for MCP output.
55
+ *
56
+ * @param delegation - The session delegation response from the provider
57
+ * @returns Formatted string with delegation instructions
58
+ */
59
+ function formatDelegationResponse(delegation) {
60
+ return `## Session Delegation
61
+
62
+ This request is being delegated to the current Claude session.
63
+
64
+ **Role**: ${delegation.role}
65
+ **Model Requested**: ${delegation.model || "default"}
66
+
67
+ ---
68
+
69
+ ### Instructions
70
+
71
+ ${delegation.instructions}
72
+
73
+ ---
74
+
75
+ ### System Prompt to Apply
76
+
77
+ \`\`\`
78
+ ${delegation.system_prompt}
79
+ \`\`\`
80
+
81
+ ### Task to Execute
82
+
83
+ ${delegation.task}
84
+ `.trim();
85
+ }
52
86
  /**
53
87
  * Builds the task string for the critic agent
54
88
  *
@@ -117,17 +151,36 @@ export function registerCritiquePlanTool(server, router, logger) {
117
151
  task,
118
152
  });
119
153
  const durationMs = Date.now() - startTime;
154
+ // Handle session delegation responses
155
+ if (isSessionDelegation(response)) {
156
+ logger.info("critique_plan delegated to session", {
157
+ model: response.model,
158
+ durationMs,
159
+ });
160
+ return {
161
+ content: [
162
+ {
163
+ type: "text",
164
+ text: formatDelegationResponse(response),
165
+ },
166
+ ],
167
+ isError: false,
168
+ };
169
+ }
170
+ // After session delegation check, response is AgentResponse
171
+ const agentResponse = response;
172
+ // Handle normal completion responses
120
173
  logger.info("critique_plan completed", {
121
- provider: response.provider,
122
- model: response.model,
174
+ provider: agentResponse.provider,
175
+ model: agentResponse.model,
123
176
  durationMs,
124
- traceId: response.metadata.traceId,
177
+ traceId: agentResponse.metadata.traceId,
125
178
  });
126
179
  return {
127
180
  content: [
128
181
  {
129
182
  type: "text",
130
- text: formatCritiqueResponse(response),
183
+ text: formatCritiqueResponse(agentResponse),
131
184
  },
132
185
  ],
133
186
  };
@@ -1 +1 @@
1
- {"version":3,"file":"critique-plan.js","sourceRoot":"","sources":["../../../src/mcp/tools/critique-plan.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"critique-plan.js","sourceRoot":"","sources":["../../../src/mcp/tools/critique-plan.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"design-feedback.d.ts","sourceRoot":"","sources":["../../../src/mcp/tools/design-feedback.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,EAAE,KAAK,SAAS,EAAE,MAAM,yCAAyC,CAAC;AAGzE,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,+BAA+B,CAAC;AAC5D,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAC;AA6I3D;;;;;;;;;;;;;GAaG;AACH,wBAAgB,0BAA0B,CACxC,MAAM,EAAE,SAAS,EACjB,MAAM,EAAE,YAAY,EACpB,MAAM,EAAE,MAAM,GACb,IAAI,CA+FN"}
1
+ {"version":3,"file":"design-feedback.d.ts","sourceRoot":"","sources":["../../../src/mcp/tools/design-feedback.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,EAAE,KAAK,SAAS,EAAE,MAAM,yCAAyC,CAAC;AAGzE,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,+BAA+B,CAAC;AAC5D,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAC;AAgL3D;;;;;;;;;;;;;GAaG;AACH,wBAAgB,0BAA0B,CACxC,MAAM,EAAE,SAAS,EACjB,MAAM,EAAE,YAAY,EACpB,MAAM,EAAE,MAAM,GACb,IAAI,CAsHN"}