@adcp/client 2.4.1 → 2.5.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (54) hide show
  1. package/README.md +66 -11
  2. package/bin/adcp-config.js +233 -0
  3. package/bin/adcp.js +321 -45
  4. package/dist/lib/core/ADCPClient.d.ts +33 -3
  5. package/dist/lib/core/ADCPClient.d.ts.map +1 -1
  6. package/dist/lib/core/ADCPClient.js +93 -16
  7. package/dist/lib/core/ADCPClient.js.map +1 -1
  8. package/dist/lib/core/ADCPMultiAgentClient.d.ts +8 -0
  9. package/dist/lib/core/ADCPMultiAgentClient.d.ts.map +1 -1
  10. package/dist/lib/core/ADCPMultiAgentClient.js +14 -0
  11. package/dist/lib/core/ADCPMultiAgentClient.js.map +1 -1
  12. package/dist/lib/core/AgentClient.d.ts +18 -2
  13. package/dist/lib/core/AgentClient.d.ts.map +1 -1
  14. package/dist/lib/core/AgentClient.js +10 -3
  15. package/dist/lib/core/AgentClient.js.map +1 -1
  16. package/dist/lib/core/ResponseValidator.d.ts +13 -9
  17. package/dist/lib/core/ResponseValidator.d.ts.map +1 -1
  18. package/dist/lib/core/ResponseValidator.js +93 -33
  19. package/dist/lib/core/ResponseValidator.js.map +1 -1
  20. package/dist/lib/core/TaskExecutor.d.ts +12 -0
  21. package/dist/lib/core/TaskExecutor.d.ts.map +1 -1
  22. package/dist/lib/core/TaskExecutor.js +88 -6
  23. package/dist/lib/core/TaskExecutor.js.map +1 -1
  24. package/dist/lib/index.d.ts +1 -0
  25. package/dist/lib/index.d.ts.map +1 -1
  26. package/dist/lib/index.js +4 -1
  27. package/dist/lib/index.js.map +1 -1
  28. package/dist/lib/protocols/mcp.d.ts.map +1 -1
  29. package/dist/lib/protocols/mcp.js +9 -0
  30. package/dist/lib/protocols/mcp.js.map +1 -1
  31. package/dist/lib/types/adcp.d.ts +2 -6
  32. package/dist/lib/types/adcp.d.ts.map +1 -1
  33. package/dist/lib/types/schemas.generated.d.ts +0 -2
  34. package/dist/lib/types/schemas.generated.d.ts.map +1 -1
  35. package/dist/lib/types/schemas.generated.js +1 -2
  36. package/dist/lib/types/schemas.generated.js.map +1 -1
  37. package/dist/lib/types/tools.generated.d.ts +0 -8
  38. package/dist/lib/types/tools.generated.d.ts.map +1 -1
  39. package/dist/lib/types/tools.generated.js.map +1 -1
  40. package/dist/lib/utils/index.d.ts +1 -0
  41. package/dist/lib/utils/index.d.ts.map +1 -1
  42. package/dist/lib/utils/index.js +9 -4
  43. package/dist/lib/utils/index.js.map +1 -1
  44. package/dist/lib/utils/logger.d.ts +55 -0
  45. package/dist/lib/utils/logger.d.ts.map +1 -0
  46. package/dist/lib/utils/logger.js +100 -0
  47. package/dist/lib/utils/logger.js.map +1 -0
  48. package/dist/lib/utils/protocol-detection.d.ts +26 -0
  49. package/dist/lib/utils/protocol-detection.d.ts.map +1 -0
  50. package/dist/lib/utils/protocol-detection.js +84 -0
  51. package/dist/lib/utils/protocol-detection.js.map +1 -0
  52. package/dist/lib/version.d.ts +3 -3
  53. package/dist/lib/version.js +3 -3
  54. package/package.json +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/lib/utils/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/lib/utils/index.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,55 @@
1
+ /**
2
+ * Logger utility for AdCP Client
3
+ *
4
+ * Provides structured logging with levels and contextual metadata.
5
+ */
6
+ export type LogLevel = 'debug' | 'info' | 'warn' | 'error';
7
+ export interface LoggerConfig {
8
+ /** Minimum log level to output (default: 'info') */
9
+ level?: LogLevel;
10
+ /** Enable/disable logging globally (default: true) */
11
+ enabled?: boolean;
12
+ /** Custom log handler (default: console) */
13
+ handler?: {
14
+ debug: (message: string, meta?: any) => void;
15
+ info: (message: string, meta?: any) => void;
16
+ warn: (message: string, meta?: any) => void;
17
+ error: (message: string, meta?: any) => void;
18
+ };
19
+ }
20
+ declare class Logger {
21
+ private config;
22
+ constructor(config?: LoggerConfig);
23
+ private shouldLog;
24
+ /**
25
+ * Log debug message (development/troubleshooting)
26
+ */
27
+ debug(message: string, meta?: any): void;
28
+ /**
29
+ * Log info message (general information)
30
+ */
31
+ info(message: string, meta?: any): void;
32
+ /**
33
+ * Log warning message (non-critical issues)
34
+ */
35
+ warn(message: string, meta?: any): void;
36
+ /**
37
+ * Log error message (critical issues)
38
+ */
39
+ error(message: string, meta?: any): void;
40
+ /**
41
+ * Create a child logger with contextual prefix
42
+ */
43
+ child(context: string): Logger;
44
+ /**
45
+ * Update logger configuration
46
+ */
47
+ configure(config: Partial<LoggerConfig>): void;
48
+ }
49
+ export declare const logger: Logger;
50
+ /**
51
+ * Create a new logger instance with custom configuration
52
+ */
53
+ export declare function createLogger(config?: LoggerConfig): Logger;
54
+ export {};
55
+ //# sourceMappingURL=logger.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"logger.d.ts","sourceRoot":"","sources":["../../../src/lib/utils/logger.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,MAAM,MAAM,QAAQ,GAAG,OAAO,GAAG,MAAM,GAAG,MAAM,GAAG,OAAO,CAAC;AAE3D,MAAM,WAAW,YAAY;IAC3B,oDAAoD;IACpD,KAAK,CAAC,EAAE,QAAQ,CAAC;IACjB,sDAAsD;IACtD,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,4CAA4C;IAC5C,OAAO,CAAC,EAAE;QACR,KAAK,EAAE,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,GAAG,KAAK,IAAI,CAAC;QAC7C,IAAI,EAAE,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,GAAG,KAAK,IAAI,CAAC;QAC5C,IAAI,EAAE,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,GAAG,KAAK,IAAI,CAAC;QAC5C,KAAK,EAAE,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,GAAG,KAAK,IAAI,CAAC;KAC9C,CAAC;CACH;AASD,cAAM,MAAM;IACV,OAAO,CAAC,MAAM,CAAyB;gBAE3B,MAAM,GAAE,YAAiB;IAarC,OAAO,CAAC,SAAS;IAKjB;;OAEG;IACH,KAAK,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,GAAG,GAAG,IAAI;IAMxC;;OAEG;IACH,IAAI,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,GAAG,GAAG,IAAI;IAMvC;;OAEG;IACH,IAAI,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,GAAG,GAAG,IAAI;IAMvC;;OAEG;IACH,KAAK,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,GAAG,GAAG,IAAI;IAMxC;;OAEG;IACH,KAAK,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM;IAa9B;;OAEG;IACH,SAAS,CAAC,MAAM,EAAE,OAAO,CAAC,YAAY,CAAC,GAAG,IAAI;CAG/C;AAGD,eAAO,MAAM,MAAM,QAGjB,CAAC;AAEH;;GAEG;AACH,wBAAgB,YAAY,CAAC,MAAM,CAAC,EAAE,YAAY,GAAG,MAAM,CAE1D"}
@@ -0,0 +1,100 @@
1
+ "use strict";
2
+ /**
3
+ * Logger utility for AdCP Client
4
+ *
5
+ * Provides structured logging with levels and contextual metadata.
6
+ */
7
+ Object.defineProperty(exports, "__esModule", { value: true });
8
+ exports.logger = void 0;
9
+ exports.createLogger = createLogger;
10
+ const LOG_LEVELS = {
11
+ debug: 0,
12
+ info: 1,
13
+ warn: 2,
14
+ error: 3
15
+ };
16
+ class Logger {
17
+ config;
18
+ constructor(config = {}) {
19
+ this.config = {
20
+ level: config.level || 'info',
21
+ enabled: config.enabled !== false,
22
+ handler: config.handler || {
23
+ debug: (msg, meta) => console.log(msg, meta ? meta : ''),
24
+ info: (msg, meta) => console.log(msg, meta ? meta : ''),
25
+ warn: (msg, meta) => console.warn(msg, meta ? meta : ''),
26
+ error: (msg, meta) => console.error(msg, meta ? meta : '')
27
+ }
28
+ };
29
+ }
30
+ shouldLog(level) {
31
+ if (!this.config.enabled)
32
+ return false;
33
+ return LOG_LEVELS[level] >= LOG_LEVELS[this.config.level];
34
+ }
35
+ /**
36
+ * Log debug message (development/troubleshooting)
37
+ */
38
+ debug(message, meta) {
39
+ if (this.shouldLog('debug')) {
40
+ this.config.handler.debug(message, meta);
41
+ }
42
+ }
43
+ /**
44
+ * Log info message (general information)
45
+ */
46
+ info(message, meta) {
47
+ if (this.shouldLog('info')) {
48
+ this.config.handler.info(message, meta);
49
+ }
50
+ }
51
+ /**
52
+ * Log warning message (non-critical issues)
53
+ */
54
+ warn(message, meta) {
55
+ if (this.shouldLog('warn')) {
56
+ this.config.handler.warn(message, meta);
57
+ }
58
+ }
59
+ /**
60
+ * Log error message (critical issues)
61
+ */
62
+ error(message, meta) {
63
+ if (this.shouldLog('error')) {
64
+ this.config.handler.error(message, meta);
65
+ }
66
+ }
67
+ /**
68
+ * Create a child logger with contextual prefix
69
+ */
70
+ child(context) {
71
+ const parentHandler = this.config.handler;
72
+ return new Logger({
73
+ ...this.config,
74
+ handler: {
75
+ debug: (msg, meta) => parentHandler.debug(`[${context}] ${msg}`, meta),
76
+ info: (msg, meta) => parentHandler.info(`[${context}] ${msg}`, meta),
77
+ warn: (msg, meta) => parentHandler.warn(`[${context}] ${msg}`, meta),
78
+ error: (msg, meta) => parentHandler.error(`[${context}] ${msg}`, meta)
79
+ }
80
+ });
81
+ }
82
+ /**
83
+ * Update logger configuration
84
+ */
85
+ configure(config) {
86
+ Object.assign(this.config, config);
87
+ }
88
+ }
89
+ // Default global logger instance
90
+ exports.logger = new Logger({
91
+ level: process.env.LOG_LEVEL || 'info',
92
+ enabled: process.env.LOG_ENABLED !== 'false'
93
+ });
94
+ /**
95
+ * Create a new logger instance with custom configuration
96
+ */
97
+ function createLogger(config) {
98
+ return new Logger(config);
99
+ }
100
+ //# sourceMappingURL=logger.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"logger.js","sourceRoot":"","sources":["../../../src/lib/utils/logger.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,26 @@
1
+ /**
2
+ * Protocol Detection Utilities
3
+ *
4
+ * Auto-detects whether an agent endpoint uses MCP or A2A protocol
5
+ */
6
+ /**
7
+ * Detect protocol for a given agent URL
8
+ *
9
+ * Uses a hybrid approach:
10
+ * 1. Check URL patterns (fast heuristic)
11
+ * 2. Try A2A discovery endpoint (authoritative)
12
+ * 3. Default to MCP if A2A discovery fails
13
+ *
14
+ * @param url Agent URL to check
15
+ * @returns Promise resolving to 'a2a' or 'mcp'
16
+ */
17
+ export declare function detectProtocol(url: string): Promise<'a2a' | 'mcp'>;
18
+ /**
19
+ * Detect protocol with custom timeout
20
+ *
21
+ * @param url Agent URL to check
22
+ * @param timeoutMs Timeout in milliseconds (default: 5000)
23
+ * @returns Promise resolving to 'a2a' or 'mcp'
24
+ */
25
+ export declare function detectProtocolWithTimeout(url: string, timeoutMs?: number): Promise<'a2a' | 'mcp'>;
26
+ //# sourceMappingURL=protocol-detection.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"protocol-detection.d.ts","sourceRoot":"","sources":["../../../src/lib/utils/protocol-detection.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH;;;;;;;;;;GAUG;AACH,wBAAsB,cAAc,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,KAAK,GAAG,KAAK,CAAC,CA+BxE;AAED;;;;;;GAMG;AACH,wBAAsB,yBAAyB,CAC7C,GAAG,EAAE,MAAM,EACX,SAAS,GAAE,MAAa,GACvB,OAAO,CAAC,KAAK,GAAG,KAAK,CAAC,CA+BxB"}
@@ -0,0 +1,84 @@
1
+ "use strict";
2
+ /**
3
+ * Protocol Detection Utilities
4
+ *
5
+ * Auto-detects whether an agent endpoint uses MCP or A2A protocol
6
+ */
7
+ Object.defineProperty(exports, "__esModule", { value: true });
8
+ exports.detectProtocol = detectProtocol;
9
+ exports.detectProtocolWithTimeout = detectProtocolWithTimeout;
10
+ /**
11
+ * Detect protocol for a given agent URL
12
+ *
13
+ * Uses a hybrid approach:
14
+ * 1. Check URL patterns (fast heuristic)
15
+ * 2. Try A2A discovery endpoint (authoritative)
16
+ * 3. Default to MCP if A2A discovery fails
17
+ *
18
+ * @param url Agent URL to check
19
+ * @returns Promise resolving to 'a2a' or 'mcp'
20
+ */
21
+ async function detectProtocol(url) {
22
+ // Step 1: Quick heuristic check
23
+ if (url.endsWith('/mcp/') || url.endsWith('/mcp')) {
24
+ return 'mcp';
25
+ }
26
+ // Step 2: Try A2A discovery
27
+ try {
28
+ const discoveryUrl = new URL('/.well-known/a2a-server', url);
29
+ const controller = new AbortController();
30
+ const timeoutId = setTimeout(() => controller.abort(), 5000); // 5s timeout
31
+ const response = await fetch(discoveryUrl.toString(), {
32
+ method: 'GET',
33
+ signal: controller.signal,
34
+ headers: {
35
+ 'Accept': 'application/json'
36
+ }
37
+ });
38
+ clearTimeout(timeoutId);
39
+ if (response.ok) {
40
+ return 'a2a';
41
+ }
42
+ }
43
+ catch (error) {
44
+ // Fetch failed - likely not A2A
45
+ }
46
+ // Step 3: Default to MCP
47
+ return 'mcp';
48
+ }
49
+ /**
50
+ * Detect protocol with custom timeout
51
+ *
52
+ * @param url Agent URL to check
53
+ * @param timeoutMs Timeout in milliseconds (default: 5000)
54
+ * @returns Promise resolving to 'a2a' or 'mcp'
55
+ */
56
+ async function detectProtocolWithTimeout(url, timeoutMs = 5000) {
57
+ // Quick heuristic check
58
+ if (url.endsWith('/mcp/') || url.endsWith('/mcp')) {
59
+ return 'mcp';
60
+ }
61
+ // Try A2A discovery with custom timeout
62
+ try {
63
+ const discoveryUrl = new URL('/.well-known/a2a-server', url);
64
+ const controller = new AbortController();
65
+ const timeoutId = setTimeout(() => controller.abort(), timeoutMs);
66
+ const response = await fetch(discoveryUrl.toString(), {
67
+ method: 'GET',
68
+ signal: controller.signal,
69
+ headers: {
70
+ 'Accept': 'application/json'
71
+ }
72
+ });
73
+ clearTimeout(timeoutId);
74
+ if (response.ok) {
75
+ return 'a2a';
76
+ }
77
+ }
78
+ catch (error) {
79
+ // Fetch failed - likely not A2A
80
+ }
81
+ // Default to MCP
82
+ return 'mcp';
83
+ }
84
+ //# sourceMappingURL=protocol-detection.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"protocol-detection.js","sourceRoot":"","sources":["../../../src/lib/utils/protocol-detection.ts"],"names":[],"mappings":";AAAA;;;;GAIG;;AAaH,wCA+BC;AASD,8DAkCC;AArFD;;;;;;;;;;GAUG;AACI,KAAK,UAAU,cAAc,CAAC,GAAW;IAC9C,gCAAgC;IAChC,IAAI,GAAG,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,GAAG,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,CAAC;QAClD,OAAO,KAAK,CAAC;IACf,CAAC;IAED,4BAA4B;IAC5B,IAAI,CAAC;QACH,MAAM,YAAY,GAAG,IAAI,GAAG,CAAC,yBAAyB,EAAE,GAAG,CAAC,CAAC;QAC7D,MAAM,UAAU,GAAG,IAAI,eAAe,EAAE,CAAC;QACzC,MAAM,SAAS,GAAG,UAAU,CAAC,GAAG,EAAE,CAAC,UAAU,CAAC,KAAK,EAAE,EAAE,IAAI,CAAC,CAAC,CAAC,aAAa;QAE3E,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,YAAY,CAAC,QAAQ,EAAE,EAAE;YACpD,MAAM,EAAE,KAAK;YACb,MAAM,EAAE,UAAU,CAAC,MAAM;YACzB,OAAO,EAAE;gBACP,QAAQ,EAAE,kBAAkB;aAC7B;SACF,CAAC,CAAC;QAEH,YAAY,CAAC,SAAS,CAAC,CAAC;QAExB,IAAI,QAAQ,CAAC,EAAE,EAAE,CAAC;YAChB,OAAO,KAAK,CAAC;QACf,CAAC;IACH,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,gCAAgC;IAClC,CAAC;IAED,yBAAyB;IACzB,OAAO,KAAK,CAAC;AACf,CAAC;AAED;;;;;;GAMG;AACI,KAAK,UAAU,yBAAyB,CAC7C,GAAW,EACX,YAAoB,IAAI;IAExB,wBAAwB;IACxB,IAAI,GAAG,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,GAAG,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,CAAC;QAClD,OAAO,KAAK,CAAC;IACf,CAAC;IAED,wCAAwC;IACxC,IAAI,CAAC;QACH,MAAM,YAAY,GAAG,IAAI,GAAG,CAAC,yBAAyB,EAAE,GAAG,CAAC,CAAC;QAC7D,MAAM,UAAU,GAAG,IAAI,eAAe,EAAE,CAAC;QACzC,MAAM,SAAS,GAAG,UAAU,CAAC,GAAG,EAAE,CAAC,UAAU,CAAC,KAAK,EAAE,EAAE,SAAS,CAAC,CAAC;QAElE,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,YAAY,CAAC,QAAQ,EAAE,EAAE;YACpD,MAAM,EAAE,KAAK;YACb,MAAM,EAAE,UAAU,CAAC,MAAM;YACzB,OAAO,EAAE;gBACP,QAAQ,EAAE,kBAAkB;aAC7B;SACF,CAAC,CAAC;QAEH,YAAY,CAAC,SAAS,CAAC,CAAC;QAExB,IAAI,QAAQ,CAAC,EAAE,EAAE,CAAC;YAChB,OAAO,KAAK,CAAC;QACf,CAAC;IACH,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,gCAAgC;IAClC,CAAC;IAED,iBAAiB;IACjB,OAAO,KAAK,CAAC;AACf,CAAC"}
@@ -1,7 +1,7 @@
1
1
  /**
2
2
  * AdCP client library version
3
3
  */
4
- export declare const LIBRARY_VERSION = "2.3.1";
4
+ export declare const LIBRARY_VERSION = "2.4.1";
5
5
  /**
6
6
  * AdCP specification version this library is compatible with
7
7
  */
@@ -10,10 +10,10 @@ export declare const ADCP_VERSION = "2.2.0";
10
10
  * Full version information
11
11
  */
12
12
  export declare const VERSION_INFO: {
13
- readonly library: "2.3.1";
13
+ readonly library: "2.4.1";
14
14
  readonly adcp: "2.2.0";
15
15
  readonly compatible: true;
16
- readonly generatedAt: "2025-10-22T20:58:31.093Z";
16
+ readonly generatedAt: "2025-10-24T15:01:49.323Z";
17
17
  };
18
18
  /**
19
19
  * Check if this library version is compatible with a given AdCP version
@@ -7,7 +7,7 @@ exports.isCompatibleWith = isCompatibleWith;
7
7
  /**
8
8
  * AdCP client library version
9
9
  */
10
- exports.LIBRARY_VERSION = '2.3.1';
10
+ exports.LIBRARY_VERSION = '2.4.1';
11
11
  /**
12
12
  * AdCP specification version this library is compatible with
13
13
  */
@@ -16,10 +16,10 @@ exports.ADCP_VERSION = '2.2.0';
16
16
  * Full version information
17
17
  */
18
18
  exports.VERSION_INFO = {
19
- library: '2.3.1',
19
+ library: '2.4.1',
20
20
  adcp: '2.2.0',
21
21
  compatible: true,
22
- generatedAt: '2025-10-22T20:58:31.093Z'
22
+ generatedAt: '2025-10-24T15:01:49.323Z'
23
23
  };
24
24
  /**
25
25
  * Check if this library version is compatible with a given AdCP version
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@adcp/client",
3
- "version": "2.4.1",
3
+ "version": "2.5.1",
4
4
  "description": "AdCP client library with protocol support for MCP and A2A, includes testing framework",
5
5
  "main": "dist/lib/index.js",
6
6
  "types": "dist/lib/index.d.ts",