mcp-agent-foundry 1.3.0 → 2.0.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 (104) hide show
  1. package/README.md +350 -52
  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/failover/health-tracker.d.ts +81 -1
  15. package/dist/failover/health-tracker.d.ts.map +1 -1
  16. package/dist/failover/health-tracker.js +229 -1
  17. package/dist/failover/health-tracker.js.map +1 -1
  18. package/dist/hooks/hook-executor.d.ts +77 -0
  19. package/dist/hooks/hook-executor.d.ts.map +1 -0
  20. package/dist/hooks/hook-executor.js +308 -0
  21. package/dist/hooks/hook-executor.js.map +1 -0
  22. package/dist/hooks/hook-manager.d.ts +140 -0
  23. package/dist/hooks/hook-manager.d.ts.map +1 -0
  24. package/dist/hooks/hook-manager.js +520 -0
  25. package/dist/hooks/hook-manager.js.map +1 -0
  26. package/dist/hooks/index.d.ts +10 -0
  27. package/dist/hooks/index.d.ts.map +1 -0
  28. package/dist/hooks/index.js +10 -0
  29. package/dist/hooks/index.js.map +1 -0
  30. package/dist/hooks/types.d.ts +221 -0
  31. package/dist/hooks/types.d.ts.map +1 -0
  32. package/dist/hooks/types.js +31 -0
  33. package/dist/hooks/types.js.map +1 -0
  34. package/dist/index.d.ts +1 -1
  35. package/dist/index.js +1 -1
  36. package/dist/mcp/auto-mode.d.ts +221 -0
  37. package/dist/mcp/auto-mode.d.ts.map +1 -0
  38. package/dist/mcp/auto-mode.js +436 -0
  39. package/dist/mcp/auto-mode.js.map +1 -0
  40. package/dist/mcp/index.d.ts +14 -0
  41. package/dist/mcp/index.d.ts.map +1 -0
  42. package/dist/mcp/index.js +22 -0
  43. package/dist/mcp/index.js.map +1 -0
  44. package/dist/mcp/tools/tasks/delete-task.d.ts +25 -0
  45. package/dist/mcp/tools/tasks/delete-task.d.ts.map +1 -0
  46. package/dist/mcp/tools/tasks/delete-task.js +148 -0
  47. package/dist/mcp/tools/tasks/delete-task.js.map +1 -0
  48. package/dist/mcp/tools/tasks/index.d.ts +2 -0
  49. package/dist/mcp/tools/tasks/index.d.ts.map +1 -1
  50. package/dist/mcp/tools/tasks/index.js +6 -0
  51. package/dist/mcp/tools/tasks/index.js.map +1 -1
  52. package/dist/observability/debug-logger.d.ts +209 -0
  53. package/dist/observability/debug-logger.d.ts.map +1 -0
  54. package/dist/observability/debug-logger.js +430 -0
  55. package/dist/observability/debug-logger.js.map +1 -0
  56. package/dist/observability/index.d.ts +12 -0
  57. package/dist/observability/index.d.ts.map +1 -0
  58. package/dist/observability/index.js +12 -0
  59. package/dist/observability/index.js.map +1 -0
  60. package/dist/observability/logger.d.ts +180 -0
  61. package/dist/observability/logger.d.ts.map +1 -1
  62. package/dist/observability/logger.js +158 -0
  63. package/dist/observability/logger.js.map +1 -1
  64. package/dist/router/context-manager.d.ts +214 -1
  65. package/dist/router/context-manager.d.ts.map +1 -1
  66. package/dist/router/context-manager.js +759 -2
  67. package/dist/router/context-manager.js.map +1 -1
  68. package/dist/router/context-types.d.ts +182 -0
  69. package/dist/router/context-types.d.ts.map +1 -0
  70. package/dist/router/context-types.js +8 -0
  71. package/dist/router/context-types.js.map +1 -0
  72. package/dist/server.d.ts +41 -0
  73. package/dist/server.d.ts.map +1 -1
  74. package/dist/server.js +165 -0
  75. package/dist/server.js.map +1 -1
  76. package/dist/skills/hot-reloader.d.ts +104 -0
  77. package/dist/skills/hot-reloader.d.ts.map +1 -0
  78. package/dist/skills/hot-reloader.js +314 -0
  79. package/dist/skills/hot-reloader.js.map +1 -0
  80. package/dist/skills/index.d.ts +14 -0
  81. package/dist/skills/index.d.ts.map +1 -0
  82. package/dist/skills/index.js +16 -0
  83. package/dist/skills/index.js.map +1 -0
  84. package/dist/skills/skill-executor.d.ts +96 -0
  85. package/dist/skills/skill-executor.d.ts.map +1 -0
  86. package/dist/skills/skill-executor.js +289 -0
  87. package/dist/skills/skill-executor.js.map +1 -0
  88. package/dist/skills/skill-loader.d.ts +147 -0
  89. package/dist/skills/skill-loader.d.ts.map +1 -0
  90. package/dist/skills/skill-loader.js +579 -0
  91. package/dist/skills/skill-loader.js.map +1 -0
  92. package/dist/skills/types.d.ts +198 -0
  93. package/dist/skills/types.d.ts.map +1 -0
  94. package/dist/skills/types.js +21 -0
  95. package/dist/skills/types.js.map +1 -0
  96. package/dist/tasks/coordinator.d.ts +22 -1
  97. package/dist/tasks/coordinator.d.ts.map +1 -1
  98. package/dist/tasks/coordinator.js +83 -0
  99. package/dist/tasks/coordinator.js.map +1 -1
  100. package/dist/tasks/state-coordinator.d.ts +19 -0
  101. package/dist/tasks/state-coordinator.d.ts.map +1 -1
  102. package/dist/tasks/state-coordinator.js +40 -0
  103. package/dist/tasks/state-coordinator.js.map +1 -1
  104. package/package.json +1 -1
@@ -228,6 +228,164 @@ export const logger = new Logger({ name: 'agent-router' });
228
228
  export function createLogger(options = {}) {
229
229
  return new Logger(options);
230
230
  }
231
+ // ============================================================================
232
+ // Extended Logger Class Methods
233
+ // ============================================================================
234
+ /**
235
+ * Extended Logger class with specialized logging methods for Agent Foundry.
236
+ */
237
+ export class ExtendedLogger extends Logger {
238
+ /**
239
+ * Log a tool call attempt.
240
+ */
241
+ logToolCall(data) {
242
+ this.debug('Tool call initiated', {
243
+ tool: data.tool,
244
+ input: data.input,
245
+ taskId: data.taskId,
246
+ worktreeId: data.worktreeId,
247
+ });
248
+ }
249
+ /**
250
+ * Log a tool call success.
251
+ */
252
+ logToolSuccess(data) {
253
+ this.info('Tool call succeeded', {
254
+ tool: data.tool,
255
+ durationMs: data.durationMs,
256
+ outputSize: data.outputSize,
257
+ taskId: data.taskId,
258
+ });
259
+ }
260
+ /**
261
+ * Log a tool call failure.
262
+ */
263
+ logToolFailure(data) {
264
+ this.error('Tool call failed', {
265
+ tool: data.tool,
266
+ error: data.error,
267
+ durationMs: data.durationMs,
268
+ taskId: data.taskId,
269
+ denied: data.denied,
270
+ denyReason: data.denyReason,
271
+ });
272
+ }
273
+ /**
274
+ * Log a tool call denial by hook or policy.
275
+ */
276
+ logToolDenial(data) {
277
+ this.warn('Tool call denied', {
278
+ tool: data.tool,
279
+ reason: data.reason,
280
+ hookName: data.hookName,
281
+ taskId: data.taskId,
282
+ });
283
+ }
284
+ /**
285
+ * Log a provider failover event.
286
+ */
287
+ logFailover(data) {
288
+ this.warn('Provider failover triggered', {
289
+ fromProvider: data.fromProvider,
290
+ toProvider: data.toProvider,
291
+ reason: data.reason,
292
+ errorCode: data.errorCode,
293
+ errorMessage: data.errorMessage,
294
+ role: data.role,
295
+ attemptNumber: data.attemptNumber,
296
+ totalAttempts: data.totalAttempts,
297
+ });
298
+ }
299
+ /**
300
+ * Log a provider health change.
301
+ */
302
+ logHealthChange(data) {
303
+ const level = data.newStatus === 'unhealthy' ? 'error' :
304
+ data.newStatus === 'degraded' ? 'warn' : 'info';
305
+ const message = `Provider health changed: ${data.previousStatus} -> ${data.newStatus}`;
306
+ if (level === 'error') {
307
+ this.error(message, {
308
+ provider: data.provider,
309
+ previousStatus: data.previousStatus,
310
+ newStatus: data.newStatus,
311
+ reason: data.reason,
312
+ cooldownUntil: data.cooldownUntil?.toISOString(),
313
+ });
314
+ }
315
+ else if (level === 'warn') {
316
+ this.warn(message, {
317
+ provider: data.provider,
318
+ previousStatus: data.previousStatus,
319
+ newStatus: data.newStatus,
320
+ reason: data.reason,
321
+ cooldownUntil: data.cooldownUntil?.toISOString(),
322
+ });
323
+ }
324
+ else {
325
+ this.info(message, {
326
+ provider: data.provider,
327
+ previousStatus: data.previousStatus,
328
+ newStatus: data.newStatus,
329
+ reason: data.reason,
330
+ });
331
+ }
332
+ }
333
+ /**
334
+ * Log a rate limit warning.
335
+ */
336
+ logRateLimitWarning(data) {
337
+ this.warn('Rate limit warning', {
338
+ provider: data.provider,
339
+ remaining: data.remaining,
340
+ limit: data.limit,
341
+ usedPercentage: data.usedPercentage,
342
+ resetsAt: data.resetsAt.toISOString(),
343
+ });
344
+ }
345
+ /**
346
+ * Log a structured error with full context.
347
+ */
348
+ logStructuredError(data) {
349
+ const logData = {
350
+ category: data.category,
351
+ code: data.code,
352
+ context: data.context,
353
+ stack: data.stack,
354
+ recoverable: data.recoverable,
355
+ suggestedAction: data.suggestedAction,
356
+ };
357
+ if (data.recoverable) {
358
+ this.warn(`[${data.category.toUpperCase()}] ${data.code}: ${data.message}`, logData);
359
+ }
360
+ else {
361
+ this.error(`[${data.category.toUpperCase()}] ${data.code}: ${data.message}`, logData);
362
+ }
363
+ }
364
+ /**
365
+ * Create a child logger with additional bound context.
366
+ * Returns an ExtendedLogger instead of Logger.
367
+ */
368
+ child(context) {
369
+ const pinoChild = this.pinoInstance;
370
+ const childLogger = new ExtendedLogger({
371
+ level: pinoChild.level,
372
+ });
373
+ const mergedContext = { ...context };
374
+ childLogger.pino = pinoChild.child(mergedContext);
375
+ childLogger.boundContext = mergedContext;
376
+ return childLogger;
377
+ }
378
+ }
379
+ /**
380
+ * Factory function to create an ExtendedLogger instance.
381
+ */
382
+ export function createExtendedLogger(options = {}) {
383
+ return new ExtendedLogger(options);
384
+ }
385
+ /**
386
+ * Default extended logger instance for the agent-foundry package.
387
+ */
388
+ export const extendedLogger = new ExtendedLogger({ name: 'agent-foundry' });
231
389
  /**
232
390
  * Re-export for convenience.
233
391
  */
@@ -1 +1 @@
1
- {"version":3,"file":"logger.js","sourceRoot":"","sources":["../../src/observability/logger.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"logger.js","sourceRoot":"","sources":["../../src/observability/logger.ts"],"names":[],"mappings":"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"}
@@ -1,2 +1,215 @@
1
- export {};
1
+ /**
2
+ * Context Manager
3
+ *
4
+ * Manages context window tracking, auto-compaction, and truncation
5
+ * for multi-provider agent orchestration. Tracks token usage across
6
+ * different providers and models with varying context limits.
7
+ *
8
+ * Key features:
9
+ * - Per-provider/model context limit tracking
10
+ * - Automatic compaction when approaching limits
11
+ * - Smart truncation that preserves important content
12
+ * - Context visualization for debugging
13
+ * - Event emission for monitoring
14
+ */
15
+ import type { Logger } from '../observability/logger.js';
16
+ import type { Message, ContentBlock } from '../types.js';
17
+ import type { ContextManagerConfig, ContextState, ContextBreakdown, ContextMessage, ContextContentBlock, ContextEventListener, TruncationOptions, TruncationResult } from './context-types.js';
18
+ /**
19
+ * Manages context window tracking and optimization for multi-provider
20
+ * agent orchestration.
21
+ *
22
+ * @example
23
+ * ```typescript
24
+ * const contextManager = new ContextManager({ autoCompactThreshold: 0.85 }, logger);
25
+ *
26
+ * // Check context state before making a request
27
+ * const state = contextManager.getState('openai', 'gpt-4o', messages);
28
+ * if (state.isBlocked) {
29
+ * // Context too full, need to compact
30
+ * messages = contextManager.compact(messages);
31
+ * }
32
+ *
33
+ * // Get detailed breakdown for debugging
34
+ * const breakdown = contextManager.getBreakdown(messages);
35
+ * console.log(contextManager.visualize(state, breakdown));
36
+ * ```
37
+ */
38
+ export declare class ContextManager {
39
+ private readonly config;
40
+ private readonly logger;
41
+ private readonly listeners;
42
+ /**
43
+ * Create a new ContextManager instance.
44
+ *
45
+ * @param config - Partial configuration (merged with defaults)
46
+ * @param logger - Logger instance for observability
47
+ */
48
+ constructor(config: Partial<ContextManagerConfig>, logger: Logger);
49
+ /**
50
+ * Get the current context state for a provider/model combination.
51
+ *
52
+ * @param provider - Provider name (e.g., 'openai', 'anthropic')
53
+ * @param model - Model name (e.g., 'gpt-4o', 'claude-3-opus')
54
+ * @param messages - Current conversation messages
55
+ * @returns Current context state with usage metrics
56
+ */
57
+ getState(provider: string, model: string, messages: Message[]): ContextState;
58
+ /**
59
+ * Check if the context should be auto-compacted.
60
+ *
61
+ * @param state - Current context state
62
+ * @returns True if compaction should be triggered
63
+ */
64
+ shouldCompact(state: ContextState): boolean;
65
+ /**
66
+ * Check if the context is blocked (too full for new messages).
67
+ *
68
+ * @param state - Current context state
69
+ * @returns True if context is blocked
70
+ */
71
+ isBlocked(state: ContextState): boolean;
72
+ /**
73
+ * Estimate the number of tokens in a string.
74
+ *
75
+ * Uses a simple character-based approximation. For more accurate counting,
76
+ * consider integrating tiktoken or a provider-specific tokenizer.
77
+ *
78
+ * @param text - Text to estimate tokens for
79
+ * @param provider - Provider name for provider-specific ratios
80
+ * @returns Estimated token count
81
+ */
82
+ estimateTokens(text: string, provider?: string): number;
83
+ /**
84
+ * Estimate tokens for a content block.
85
+ *
86
+ * @param block - Content block to analyze
87
+ * @param provider - Provider name for estimation
88
+ * @returns Estimated token count
89
+ */
90
+ estimateContentBlockTokens(block: ContentBlock | ContextContentBlock, provider?: string): number;
91
+ /**
92
+ * Estimate tokens for a message.
93
+ *
94
+ * @param message - Message to analyze
95
+ * @param provider - Provider name for estimation
96
+ * @returns Estimated token count
97
+ */
98
+ estimateMessageTokens(message: Message | ContextMessage, provider?: string): number;
99
+ /**
100
+ * Estimate total tokens for an array of messages.
101
+ *
102
+ * @param messages - Messages to analyze
103
+ * @param provider - Provider name for estimation
104
+ * @returns Total estimated token count
105
+ */
106
+ estimateMessagesTokens(messages: (Message | ContextMessage)[], provider?: string): number;
107
+ /**
108
+ * Get the context limit for a specific model.
109
+ *
110
+ * Looks up the model in the configured limits, falling back to
111
+ * DEFAULT_MODEL_LIMITS, then to the default context limit.
112
+ *
113
+ * @param provider - Provider name
114
+ * @param model - Model name
115
+ * @returns Context limit in tokens
116
+ */
117
+ getModelLimit(provider: string, model: string): number;
118
+ /**
119
+ * Truncate content to fit within a token limit.
120
+ *
121
+ * @param content - Content to truncate
122
+ * @param maxTokens - Maximum tokens allowed
123
+ * @param options - Truncation options
124
+ * @returns Truncated content
125
+ */
126
+ truncate(content: string, maxTokens: number, options?: Partial<TruncationOptions>): string;
127
+ /**
128
+ * Truncate content with detailed result information.
129
+ *
130
+ * @param content - Content to truncate
131
+ * @param maxTokens - Maximum tokens allowed
132
+ * @param options - Truncation options
133
+ * @returns Truncation result with metadata
134
+ */
135
+ truncateWithResult(content: string, maxTokens: number, options?: Partial<TruncationOptions>): TruncationResult;
136
+ /**
137
+ * Compact messages to reduce context usage.
138
+ *
139
+ * Strategy:
140
+ * 1. Truncate long tool results
141
+ * 2. Truncate long individual messages
142
+ * 3. Summarize/drop older messages if still over limit
143
+ *
144
+ * @param messages - Messages to compact
145
+ * @param targetReduction - Target reduction percentage (0-1, default 0.3)
146
+ * @returns Compacted messages array
147
+ */
148
+ compact(messages: Message[], targetReduction?: number): Message[];
149
+ /**
150
+ * Get a detailed breakdown of context usage by category.
151
+ *
152
+ * @param messages - Messages to analyze
153
+ * @param provider - Provider name for estimation
154
+ * @returns Context breakdown by category
155
+ */
156
+ getBreakdown(messages: (Message | ContextMessage)[], provider?: string): ContextBreakdown;
157
+ /**
158
+ * Generate a human-readable visualization of context usage.
159
+ *
160
+ * @param state - Current context state
161
+ * @param breakdown - Context breakdown by category
162
+ * @returns Formatted visualization string
163
+ */
164
+ visualize(state: ContextState, breakdown: ContextBreakdown): string;
165
+ /**
166
+ * Add an event listener for context events.
167
+ *
168
+ * @param listener - Event listener function
169
+ */
170
+ addEventListener(listener: ContextEventListener): void;
171
+ /**
172
+ * Remove an event listener.
173
+ *
174
+ * @param listener - Event listener to remove
175
+ */
176
+ removeEventListener(listener: ContextEventListener): void;
177
+ /**
178
+ * Emit a context event to all listeners.
179
+ */
180
+ private emit;
181
+ /**
182
+ * Truncate tool results that exceed the configured limit.
183
+ */
184
+ private truncateToolResults;
185
+ /**
186
+ * Truncate individual messages that exceed the configured limit.
187
+ */
188
+ private truncateLongMessages;
189
+ /**
190
+ * Check if a message is a system prompt.
191
+ */
192
+ private isSystemPromptMessage;
193
+ /**
194
+ * Emit a compaction result event.
195
+ */
196
+ private emitCompactionResult;
197
+ /**
198
+ * Format a percentage for display.
199
+ */
200
+ private formatPercentage;
201
+ /**
202
+ * Generate a visual progress bar for context usage.
203
+ */
204
+ private generateUsageBar;
205
+ }
206
+ /**
207
+ * Create a ContextManager instance.
208
+ *
209
+ * @param config - Partial configuration (merged with defaults)
210
+ * @param logger - Logger instance
211
+ * @returns Configured ContextManager instance
212
+ */
213
+ export declare function createContextManager(config: Partial<ContextManagerConfig>, logger: Logger): ContextManager;
214
+ export type { ContextManagerConfig, ContextState, ContextBreakdown, ContextMessage, ContextContentBlock, CompactionResult, CompactionStrategy, ContextEvent, ContextEventListener, TruncationOptions, TruncationResult, } from './context-types.js';
2
215
  //# sourceMappingURL=context-manager.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"context-manager.d.ts","sourceRoot":"","sources":["../../src/router/context-manager.ts"],"names":[],"mappings":""}
1
+ {"version":3,"file":"context-manager.d.ts","sourceRoot":"","sources":["../../src/router/context-manager.ts"],"names":[],"mappings":"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"}