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,430 @@
1
+ /**
2
+ * Debug Logger Module
3
+ *
4
+ * A specialized debug logger for Agent Foundry that can be enabled/disabled
5
+ * and configured to log specific types of events. Supports file output for
6
+ * persistent debug logs.
7
+ */
8
+ import * as fs from 'fs';
9
+ // ============================================================================
10
+ // Constants
11
+ // ============================================================================
12
+ /**
13
+ * Default debug logger configuration.
14
+ * Reads from environment variables for easy override.
15
+ */
16
+ const DEFAULT_DEBUG_CONFIG = {
17
+ enabled: process.env['AGENT_FOUNDRY_DEBUG'] === '1',
18
+ logToolCalls: true,
19
+ logToolOutputs: process.env['AGENT_FOUNDRY_DEBUG_VERBOSE'] === '1',
20
+ logProviderRequests: process.env['AGENT_FOUNDRY_DEBUG_VERBOSE'] === '1',
21
+ logProviderResponses: process.env['AGENT_FOUNDRY_DEBUG_VERBOSE'] === '1',
22
+ logFailovers: true,
23
+ logHooks: true,
24
+ maxOutputSize: 10000,
25
+ outputFile: process.env['AGENT_FOUNDRY_DEBUG_FILE'],
26
+ };
27
+ // ============================================================================
28
+ // DebugLogger Class
29
+ // ============================================================================
30
+ /**
31
+ * Specialized debug logger for Agent Foundry.
32
+ *
33
+ * Provides granular control over what events are logged and supports
34
+ * writing debug logs to a file for later analysis.
35
+ *
36
+ * @example
37
+ * ```typescript
38
+ * const debugLogger = new DebugLogger({ enabled: true }, logger);
39
+ *
40
+ * // Log a tool call
41
+ * debugLogger.toolCall('invoke_agent', { role: 'coder', task: '...' });
42
+ *
43
+ * // Log a failover event
44
+ * debugLogger.failover('openai', 'anthropic', 'Rate limited (429)');
45
+ *
46
+ * // Clean up
47
+ * await debugLogger.close();
48
+ * ```
49
+ */
50
+ export class DebugLogger {
51
+ config;
52
+ logger;
53
+ fileStream = null;
54
+ initialized = false;
55
+ /**
56
+ * Create a new DebugLogger instance.
57
+ *
58
+ * @param config - Partial configuration (merged with defaults)
59
+ * @param logger - Base logger for fallback logging
60
+ */
61
+ constructor(config, logger) {
62
+ this.config = { ...DEFAULT_DEBUG_CONFIG, ...config };
63
+ this.logger = logger;
64
+ // Initialize file stream if configured
65
+ if (this.config.enabled && this.config.outputFile) {
66
+ this.initFileStream();
67
+ }
68
+ }
69
+ /**
70
+ * Check if debug logging is enabled.
71
+ */
72
+ isEnabled() {
73
+ return this.config.enabled;
74
+ }
75
+ /**
76
+ * Log a tool call (if enabled).
77
+ *
78
+ * @param tool - Tool name
79
+ * @param input - Tool input parameters
80
+ */
81
+ toolCall(tool, input) {
82
+ if (!this.config.enabled || !this.config.logToolCalls) {
83
+ return;
84
+ }
85
+ this.writeEntry({
86
+ timestamp: this.formatTimestamp(),
87
+ type: 'tool_call',
88
+ data: {
89
+ tool,
90
+ input: this.truncate(input),
91
+ },
92
+ });
93
+ }
94
+ /**
95
+ * Log a tool result (if enabled).
96
+ *
97
+ * @param tool - Tool name
98
+ * @param output - Tool output
99
+ * @param durationMs - Execution duration in milliseconds
100
+ */
101
+ toolResult(tool, output, durationMs) {
102
+ if (!this.config.enabled || !this.config.logToolOutputs) {
103
+ return;
104
+ }
105
+ this.writeEntry({
106
+ timestamp: this.formatTimestamp(),
107
+ type: 'tool_result',
108
+ data: {
109
+ tool,
110
+ output: this.truncate(output),
111
+ durationMs,
112
+ },
113
+ });
114
+ }
115
+ /**
116
+ * Log a tool error (always logged if debug enabled).
117
+ *
118
+ * @param tool - Tool name
119
+ * @param error - Error that occurred
120
+ */
121
+ toolError(tool, error) {
122
+ if (!this.config.enabled) {
123
+ return;
124
+ }
125
+ this.writeEntry({
126
+ timestamp: this.formatTimestamp(),
127
+ type: 'tool_error',
128
+ data: {
129
+ tool,
130
+ error: {
131
+ name: error.name,
132
+ message: error.message,
133
+ stack: error.stack,
134
+ },
135
+ },
136
+ });
137
+ }
138
+ /**
139
+ * Log a tool denial (always logged if debug enabled).
140
+ *
141
+ * @param tool - Tool name
142
+ * @param reason - Denial reason
143
+ */
144
+ toolDenial(tool, reason) {
145
+ if (!this.config.enabled) {
146
+ return;
147
+ }
148
+ this.writeEntry({
149
+ timestamp: this.formatTimestamp(),
150
+ type: 'tool_denial',
151
+ data: {
152
+ tool,
153
+ reason,
154
+ },
155
+ });
156
+ }
157
+ /**
158
+ * Log a provider request (if enabled).
159
+ *
160
+ * @param provider - Provider name
161
+ * @param model - Model name
162
+ * @param messages - Request messages
163
+ */
164
+ providerRequest(provider, model, messages) {
165
+ if (!this.config.enabled || !this.config.logProviderRequests) {
166
+ return;
167
+ }
168
+ this.writeEntry({
169
+ timestamp: this.formatTimestamp(),
170
+ type: 'provider_request',
171
+ data: {
172
+ provider,
173
+ model,
174
+ messages: this.truncate(messages),
175
+ },
176
+ });
177
+ }
178
+ /**
179
+ * Log a provider response (if enabled).
180
+ *
181
+ * @param provider - Provider name
182
+ * @param model - Model name
183
+ * @param response - Provider response
184
+ * @param durationMs - Request duration in milliseconds
185
+ */
186
+ providerResponse(provider, model, response, durationMs) {
187
+ if (!this.config.enabled || !this.config.logProviderResponses) {
188
+ return;
189
+ }
190
+ this.writeEntry({
191
+ timestamp: this.formatTimestamp(),
192
+ type: 'provider_response',
193
+ data: {
194
+ provider,
195
+ model,
196
+ response: this.truncate(response),
197
+ durationMs,
198
+ },
199
+ });
200
+ }
201
+ /**
202
+ * Log a failover event (always logged if debug enabled).
203
+ *
204
+ * @param from - Provider being switched from
205
+ * @param to - Provider being switched to
206
+ * @param reason - Reason for failover
207
+ */
208
+ failover(from, to, reason) {
209
+ if (!this.config.enabled || !this.config.logFailovers) {
210
+ return;
211
+ }
212
+ this.writeEntry({
213
+ timestamp: this.formatTimestamp(),
214
+ type: 'failover',
215
+ data: {
216
+ fromProvider: from,
217
+ toProvider: to,
218
+ reason,
219
+ },
220
+ });
221
+ }
222
+ /**
223
+ * Log a provider health change.
224
+ *
225
+ * @param provider - Provider name
226
+ * @param previousStatus - Previous health status
227
+ * @param newStatus - New health status
228
+ * @param reason - Reason for change
229
+ */
230
+ healthChange(provider, previousStatus, newStatus, reason) {
231
+ if (!this.config.enabled) {
232
+ return;
233
+ }
234
+ this.writeEntry({
235
+ timestamp: this.formatTimestamp(),
236
+ type: 'health_change',
237
+ data: {
238
+ provider,
239
+ previousStatus,
240
+ newStatus,
241
+ reason,
242
+ },
243
+ });
244
+ }
245
+ /**
246
+ * Log a rate limit warning.
247
+ *
248
+ * @param provider - Provider name
249
+ * @param remaining - Remaining requests
250
+ * @param limit - Total limit
251
+ * @param usedPercentage - Percentage of limit used
252
+ * @param resetsAt - When the rate limit resets
253
+ */
254
+ rateLimitWarning(provider, remaining, limit, usedPercentage, resetsAt) {
255
+ if (!this.config.enabled) {
256
+ return;
257
+ }
258
+ this.writeEntry({
259
+ timestamp: this.formatTimestamp(),
260
+ type: 'rate_limit_warning',
261
+ data: {
262
+ provider,
263
+ remaining,
264
+ limit,
265
+ usedPercentage,
266
+ resetsAt: resetsAt.toISOString(),
267
+ },
268
+ });
269
+ }
270
+ /**
271
+ * Log a hook execution (if enabled).
272
+ *
273
+ * @param hookName - Name of the hook
274
+ * @param event - Event that triggered the hook
275
+ * @param output - Hook output
276
+ */
277
+ hookExecution(hookName, event, output) {
278
+ if (!this.config.enabled || !this.config.logHooks) {
279
+ return;
280
+ }
281
+ this.writeEntry({
282
+ timestamp: this.formatTimestamp(),
283
+ type: 'hook_execution',
284
+ data: {
285
+ hookName,
286
+ event,
287
+ output: this.truncate(output),
288
+ },
289
+ });
290
+ }
291
+ /**
292
+ * Log a circuit breaker state change.
293
+ *
294
+ * @param provider - Provider name
295
+ * @param previousState - Previous circuit state
296
+ * @param newState - New circuit state
297
+ * @param failureCount - Number of failures
298
+ */
299
+ circuitBreakerChange(provider, previousState, newState, failureCount) {
300
+ if (!this.config.enabled) {
301
+ return;
302
+ }
303
+ this.writeEntry({
304
+ timestamp: this.formatTimestamp(),
305
+ type: 'circuit_breaker_change',
306
+ data: {
307
+ provider,
308
+ previousState,
309
+ newState,
310
+ failureCount,
311
+ },
312
+ });
313
+ }
314
+ /**
315
+ * Log a custom debug event.
316
+ *
317
+ * @param type - Event type
318
+ * @param data - Event data
319
+ */
320
+ custom(type, data) {
321
+ if (!this.config.enabled) {
322
+ return;
323
+ }
324
+ this.writeEntry({
325
+ timestamp: this.formatTimestamp(),
326
+ type,
327
+ data: this.truncate(data),
328
+ });
329
+ }
330
+ /**
331
+ * Flush and close the file handle.
332
+ */
333
+ async close() {
334
+ if (this.fileStream) {
335
+ return new Promise((resolve, reject) => {
336
+ this.fileStream.end((err) => {
337
+ if (err) {
338
+ reject(err);
339
+ }
340
+ else {
341
+ this.fileStream = null;
342
+ resolve();
343
+ }
344
+ });
345
+ });
346
+ }
347
+ }
348
+ // ==========================================================================
349
+ // Private Methods
350
+ // ==========================================================================
351
+ /**
352
+ * Initialize the file stream for debug output.
353
+ */
354
+ initFileStream() {
355
+ if (this.initialized || !this.config.outputFile) {
356
+ return;
357
+ }
358
+ try {
359
+ this.fileStream = fs.createWriteStream(this.config.outputFile, {
360
+ flags: 'a', // Append mode
361
+ encoding: 'utf-8',
362
+ });
363
+ this.fileStream.on('error', (err) => {
364
+ this.logger.error('Debug log file write error', { error: err });
365
+ this.fileStream = null;
366
+ });
367
+ this.initialized = true;
368
+ this.logger.debug('Debug logger file output initialized', {
369
+ outputFile: this.config.outputFile,
370
+ });
371
+ }
372
+ catch (error) {
373
+ this.logger.error('Failed to initialize debug log file', {
374
+ errorMessage: error instanceof Error ? error.message : String(error),
375
+ outputFile: this.config.outputFile,
376
+ });
377
+ }
378
+ }
379
+ /**
380
+ * Write a debug log entry.
381
+ */
382
+ writeEntry(entry) {
383
+ const json = JSON.stringify(entry);
384
+ // Write to file if configured
385
+ if (this.fileStream) {
386
+ this.fileStream.write(json + '\n');
387
+ }
388
+ // Also log at trace level
389
+ this.logger.trace(`[DEBUG] ${entry.type}`, entry.data);
390
+ }
391
+ /**
392
+ * Truncate data to max output size.
393
+ */
394
+ truncate(data) {
395
+ if (data === null || data === undefined) {
396
+ return data;
397
+ }
398
+ const json = JSON.stringify(data);
399
+ if (json.length <= this.config.maxOutputSize) {
400
+ return data;
401
+ }
402
+ // For strings, truncate directly
403
+ if (typeof data === 'string') {
404
+ return data.substring(0, this.config.maxOutputSize) + '... [TRUNCATED]';
405
+ }
406
+ // For objects/arrays, truncate the JSON representation
407
+ const truncated = json.substring(0, this.config.maxOutputSize);
408
+ return `${truncated}... [TRUNCATED - original size: ${json.length}]`;
409
+ }
410
+ /**
411
+ * Format current timestamp for log entries.
412
+ */
413
+ formatTimestamp() {
414
+ return new Date().toISOString();
415
+ }
416
+ }
417
+ // ============================================================================
418
+ // Factory Function
419
+ // ============================================================================
420
+ /**
421
+ * Create a DebugLogger instance with the given configuration.
422
+ *
423
+ * @param config - Partial configuration (merged with defaults)
424
+ * @param logger - Base logger for fallback logging
425
+ * @returns DebugLogger instance
426
+ */
427
+ export function createDebugLogger(config, logger) {
428
+ return new DebugLogger(config, logger);
429
+ }
430
+ //# sourceMappingURL=debug-logger.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"debug-logger.js","sourceRoot":"","sources":["../../src/observability/debug-logger.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,12 @@
1
+ /**
2
+ * Observability Module
3
+ *
4
+ * Exports logging and metrics utilities for Agent Foundry.
5
+ */
6
+ export { Logger, ExtendedLogger, createLogger, createExtendedLogger, logger, extendedLogger, generateTraceId, createTracedContext, } from './logger.js';
7
+ export type { LoggerOptions, LogLevel, LogContext, ToolCallData, ToolSuccessData, ToolFailureData, ToolDenialData, FailoverData, HealthChangeData, RateLimitWarningData, ErrorCategory, StructuredErrorData, } from './logger.js';
8
+ export { DebugLogger, createDebugLogger, } from './debug-logger.js';
9
+ export type { DebugLoggerConfig, DebugLogEntry, } from './debug-logger.js';
10
+ export { MetricsCollector, metrics, } from './metrics.js';
11
+ export type { Metrics, MetricsJSON, TokenStats, LatencyStats, CircuitBreakerState, CircuitBreakerEvent, RequestStatus, RequestRecord, } from './metrics.js';
12
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/observability/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAGH,OAAO,EACL,MAAM,EACN,cAAc,EACd,YAAY,EACZ,oBAAoB,EACpB,MAAM,EACN,cAAc,EACd,eAAe,EACf,mBAAmB,GACpB,MAAM,aAAa,CAAC;AAErB,YAAY,EACV,aAAa,EACb,QAAQ,EACR,UAAU,EACV,YAAY,EACZ,eAAe,EACf,eAAe,EACf,cAAc,EACd,YAAY,EACZ,gBAAgB,EAChB,oBAAoB,EACpB,aAAa,EACb,mBAAmB,GACpB,MAAM,aAAa,CAAC;AAGrB,OAAO,EACL,WAAW,EACX,iBAAiB,GAClB,MAAM,mBAAmB,CAAC;AAE3B,YAAY,EACV,iBAAiB,EACjB,aAAa,GACd,MAAM,mBAAmB,CAAC;AAG3B,OAAO,EACL,gBAAgB,EAChB,OAAO,GACR,MAAM,cAAc,CAAC;AAEtB,YAAY,EACV,OAAO,EACP,WAAW,EACX,UAAU,EACV,YAAY,EACZ,mBAAmB,EACnB,mBAAmB,EACnB,aAAa,EACb,aAAa,GACd,MAAM,cAAc,CAAC"}
@@ -0,0 +1,12 @@
1
+ /**
2
+ * Observability Module
3
+ *
4
+ * Exports logging and metrics utilities for Agent Foundry.
5
+ */
6
+ // Logger exports
7
+ export { Logger, ExtendedLogger, createLogger, createExtendedLogger, logger, extendedLogger, generateTraceId, createTracedContext, } from './logger.js';
8
+ // Debug logger exports
9
+ export { DebugLogger, createDebugLogger, } from './debug-logger.js';
10
+ // Metrics exports
11
+ export { MetricsCollector, metrics, } from './metrics.js';
12
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/observability/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,iBAAiB;AACjB,OAAO,EACL,MAAM,EACN,cAAc,EACd,YAAY,EACZ,oBAAoB,EACpB,MAAM,EACN,cAAc,EACd,eAAe,EACf,mBAAmB,GACpB,MAAM,aAAa,CAAC;AAiBrB,uBAAuB;AACvB,OAAO,EACL,WAAW,EACX,iBAAiB,GAClB,MAAM,mBAAmB,CAAC;AAO3B,kBAAkB;AAClB,OAAO,EACL,gBAAgB,EAChB,OAAO,GACR,MAAM,cAAc,CAAC"}
@@ -130,6 +130,186 @@ export declare const logger: Logger;
130
130
  * Convenience wrapper around new Logger().
131
131
  */
132
132
  export declare function createLogger(options?: LoggerOptions): Logger;
133
+ /**
134
+ * Data for logging a tool call attempt.
135
+ */
136
+ export interface ToolCallData {
137
+ /** Tool name being called */
138
+ tool: string;
139
+ /** Tool input parameters */
140
+ input: Record<string, unknown>;
141
+ /** Task ID if applicable */
142
+ taskId?: string;
143
+ /** Worktree ID if applicable */
144
+ worktreeId?: string;
145
+ }
146
+ /**
147
+ * Data for logging a tool call success.
148
+ */
149
+ export interface ToolSuccessData {
150
+ /** Tool name */
151
+ tool: string;
152
+ /** Duration in milliseconds */
153
+ durationMs: number;
154
+ /** Size of output in bytes */
155
+ outputSize?: number;
156
+ /** Task ID if applicable */
157
+ taskId?: string;
158
+ }
159
+ /**
160
+ * Data for logging a tool call failure.
161
+ */
162
+ export interface ToolFailureData {
163
+ /** Tool name */
164
+ tool: string;
165
+ /** Error that occurred */
166
+ error: Error;
167
+ /** Duration in milliseconds */
168
+ durationMs: number;
169
+ /** Task ID if applicable */
170
+ taskId?: string;
171
+ /** Whether the tool was denied by a hook */
172
+ denied?: boolean;
173
+ /** Reason for denial if denied */
174
+ denyReason?: string;
175
+ }
176
+ /**
177
+ * Data for logging a tool call denial.
178
+ */
179
+ export interface ToolDenialData {
180
+ /** Tool name */
181
+ tool: string;
182
+ /** Reason for denial */
183
+ reason: string;
184
+ /** Hook name that denied if applicable */
185
+ hookName?: string;
186
+ /** Task ID if applicable */
187
+ taskId?: string;
188
+ }
189
+ /**
190
+ * Data for logging a provider failover event.
191
+ */
192
+ export interface FailoverData {
193
+ /** Provider being switched from */
194
+ fromProvider: string;
195
+ /** Provider being switched to */
196
+ toProvider: string;
197
+ /** Reason for failover */
198
+ reason: string;
199
+ /** Error code if applicable */
200
+ errorCode?: number;
201
+ /** Error message if applicable */
202
+ errorMessage?: string;
203
+ /** Role being invoked */
204
+ role?: string;
205
+ /** Current attempt number */
206
+ attemptNumber: number;
207
+ /** Total allowed attempts */
208
+ totalAttempts: number;
209
+ }
210
+ /**
211
+ * Data for logging provider health changes.
212
+ */
213
+ export interface HealthChangeData {
214
+ /** Provider name */
215
+ provider: string;
216
+ /** Previous health status */
217
+ previousStatus: string;
218
+ /** New health status */
219
+ newStatus: string;
220
+ /** Reason for status change */
221
+ reason: string;
222
+ /** Cooldown end time if applicable */
223
+ cooldownUntil?: Date;
224
+ }
225
+ /**
226
+ * Data for logging rate limit warnings.
227
+ */
228
+ export interface RateLimitWarningData {
229
+ /** Provider name */
230
+ provider: string;
231
+ /** Remaining requests */
232
+ remaining: number;
233
+ /** Request limit */
234
+ limit: number;
235
+ /** Percentage of limit used */
236
+ usedPercentage: number;
237
+ /** When the rate limit resets */
238
+ resetsAt: Date;
239
+ }
240
+ /**
241
+ * Category for structured errors.
242
+ */
243
+ export type ErrorCategory = 'provider' | 'tool' | 'worktree' | 'pipeline' | 'config' | 'system';
244
+ /**
245
+ * Data for logging a structured error.
246
+ */
247
+ export interface StructuredErrorData {
248
+ /** Error category */
249
+ category: ErrorCategory;
250
+ /** Error code (e.g., 'PROVIDER_TIMEOUT', 'TOOL_DENIED') */
251
+ code: string;
252
+ /** Human-readable error message */
253
+ message: string;
254
+ /** Additional context */
255
+ context: Record<string, unknown>;
256
+ /** Stack trace if available */
257
+ stack?: string;
258
+ /** Whether the error is recoverable */
259
+ recoverable: boolean;
260
+ /** Suggested action for recovery */
261
+ suggestedAction?: string;
262
+ }
263
+ /**
264
+ * Extended Logger class with specialized logging methods for Agent Foundry.
265
+ */
266
+ export declare class ExtendedLogger extends Logger {
267
+ /**
268
+ * Log a tool call attempt.
269
+ */
270
+ logToolCall(data: ToolCallData): void;
271
+ /**
272
+ * Log a tool call success.
273
+ */
274
+ logToolSuccess(data: ToolSuccessData): void;
275
+ /**
276
+ * Log a tool call failure.
277
+ */
278
+ logToolFailure(data: ToolFailureData): void;
279
+ /**
280
+ * Log a tool call denial by hook or policy.
281
+ */
282
+ logToolDenial(data: ToolDenialData): void;
283
+ /**
284
+ * Log a provider failover event.
285
+ */
286
+ logFailover(data: FailoverData): void;
287
+ /**
288
+ * Log a provider health change.
289
+ */
290
+ logHealthChange(data: HealthChangeData): void;
291
+ /**
292
+ * Log a rate limit warning.
293
+ */
294
+ logRateLimitWarning(data: RateLimitWarningData): void;
295
+ /**
296
+ * Log a structured error with full context.
297
+ */
298
+ logStructuredError(data: StructuredErrorData): void;
299
+ /**
300
+ * Create a child logger with additional bound context.
301
+ * Returns an ExtendedLogger instead of Logger.
302
+ */
303
+ child(context: LogContext): ExtendedLogger;
304
+ }
305
+ /**
306
+ * Factory function to create an ExtendedLogger instance.
307
+ */
308
+ export declare function createExtendedLogger(options?: LoggerOptions): ExtendedLogger;
309
+ /**
310
+ * Default extended logger instance for the agent-foundry package.
311
+ */
312
+ export declare const extendedLogger: ExtendedLogger;
133
313
  /**
134
314
  * Re-export for convenience.
135
315
  */
@@ -1 +1 @@
1
- {"version":3,"file":"logger.d.ts","sourceRoot":"","sources":["../../src/observability/logger.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAIH,OAAa,EAAE,KAAK,MAAM,IAAI,UAAU,EAAE,MAAM,MAAM,CAAC;AAMvD;;GAEG;AACH,MAAM,WAAW,UAAU;IACzB,uCAAuC;IACvC,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,+BAA+B;IAC/B,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,oCAAoC;IACpC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,uBAAuB;IACvB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,+BAA+B;IAC/B,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,mCAAmC;IACnC,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;CACxB;AAED;;GAEG;AACH,MAAM,WAAW,aAAa;IAC5B,oCAAoC;IACpC,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,yDAAyD;IACzD,KAAK,CAAC,EAAE,QAAQ,CAAC;IACjB,yCAAyC;IACzC,OAAO,CAAC,EAAE,UAAU,CAAC;IACrB,6EAA6E;IAC7E,MAAM,CAAC,EAAE,OAAO,CAAC;CAClB;AAED;;GAEG;AACH,MAAM,MAAM,QAAQ,GAAG,OAAO,GAAG,OAAO,GAAG,MAAM,GAAG,MAAM,GAAG,OAAO,GAAG,OAAO,CAAC;AAM/E;;;;;;;;;;;GAWG;AACH,qBAAa,MAAM;IACjB,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAa;IAClC,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAa;gBAE9B,OAAO,GAAE,aAAkB;IAsDvC;;;OAGG;IACH,KAAK,CAAC,OAAO,EAAE,UAAU,GAAG,MAAM;IAWlC;;OAEG;IACH,KAAK,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,UAAU,GAAG,IAAI;IAQlD;;OAEG;IACH,KAAK,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,UAAU,GAAG,IAAI;IAQlD;;OAEG;IACH,IAAI,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,UAAU,GAAG,IAAI;IAQjD;;OAEG;IACH,IAAI,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,UAAU,GAAG,IAAI;IAQjD;;OAEG;IACH,KAAK,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,UAAU,GAAG;QAAE,KAAK,CAAC,EAAE,KAAK,CAAA;KAAE,GAAG,IAAI;IActE;;OAEG;IACH,KAAK,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,UAAU,GAAG;QAAE,KAAK,CAAC,EAAE,KAAK,CAAA;KAAE,GAAG,IAAI;IAatE;;OAEG;IACH,IAAI,KAAK,IAAI,QAAQ,CAEpB;IAED;;OAEG;IACH,IAAI,KAAK,CAAC,KAAK,EAAE,QAAQ,EAExB;IAED;;OAEG;IACH,cAAc,CAAC,KAAK,EAAE,QAAQ,GAAG,OAAO;IAIxC;;OAEG;IACH,IAAI,YAAY,IAAI,UAAU,CAE7B;CACF;AAMD;;;GAGG;AACH,wBAAgB,eAAe,IAAI,MAAM,CAExC;AAED;;;GAGG;AACH,wBAAgB,mBAAmB,CAAC,iBAAiB,CAAC,EAAE,UAAU,GAAG,UAAU,CAK9E;AAMD;;;GAGG;AACH,eAAO,MAAM,MAAM,QAAuC,CAAC;AAE3D;;;GAGG;AACH,wBAAgB,YAAY,CAAC,OAAO,GAAE,aAAkB,GAAG,MAAM,CAEhE;AAED;;GAEG;AACH,eAAe,MAAM,CAAC"}
1
+ {"version":3,"file":"logger.d.ts","sourceRoot":"","sources":["../../src/observability/logger.ts"],"names":[],"mappings":"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"}