@kadi.build/core 0.0.1-alpha.1 → 0.0.1-alpha.10

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 (179) hide show
  1. package/README.md +1387 -214
  2. package/dist/abilities/AbilityCache.d.ts +242 -0
  3. package/dist/abilities/AbilityCache.d.ts.map +1 -0
  4. package/dist/abilities/AbilityCache.js +285 -0
  5. package/dist/abilities/AbilityCache.js.map +1 -0
  6. package/dist/abilities/AbilityContext.d.ts +215 -0
  7. package/dist/abilities/AbilityContext.d.ts.map +1 -0
  8. package/dist/abilities/AbilityContext.js +36 -0
  9. package/dist/abilities/AbilityContext.js.map +1 -0
  10. package/dist/abilities/AbilityLoader.d.ts +177 -0
  11. package/dist/abilities/AbilityLoader.d.ts.map +1 -0
  12. package/dist/abilities/AbilityLoader.js +277 -0
  13. package/dist/abilities/AbilityLoader.js.map +1 -0
  14. package/dist/abilities/AbilityProxy.d.ts +463 -0
  15. package/dist/abilities/AbilityProxy.d.ts.map +1 -0
  16. package/dist/abilities/AbilityProxy.js +511 -0
  17. package/dist/abilities/AbilityProxy.js.map +1 -0
  18. package/dist/abilities/AbilityValidator.d.ts +172 -0
  19. package/dist/abilities/AbilityValidator.d.ts.map +1 -0
  20. package/dist/abilities/AbilityValidator.js +253 -0
  21. package/dist/abilities/AbilityValidator.js.map +1 -0
  22. package/dist/abilities/index.d.ts +26 -0
  23. package/dist/abilities/index.d.ts.map +1 -0
  24. package/dist/abilities/index.js +23 -0
  25. package/dist/abilities/index.js.map +1 -0
  26. package/dist/abilities/types.d.ts +156 -0
  27. package/dist/abilities/types.d.ts.map +1 -0
  28. package/dist/abilities/types.js +10 -0
  29. package/dist/abilities/types.js.map +1 -0
  30. package/dist/api/index.d.ts +92 -0
  31. package/dist/api/index.d.ts.map +1 -0
  32. package/dist/api/index.js +124 -0
  33. package/dist/api/index.js.map +1 -0
  34. package/dist/broker/BrokerConnection.d.ts +253 -0
  35. package/dist/broker/BrokerConnection.d.ts.map +1 -0
  36. package/dist/broker/BrokerConnection.js +434 -0
  37. package/dist/broker/BrokerConnection.js.map +1 -0
  38. package/dist/broker/BrokerConnectionManager.d.ts +216 -0
  39. package/dist/broker/BrokerConnectionManager.d.ts.map +1 -0
  40. package/dist/broker/BrokerConnectionManager.js +305 -0
  41. package/dist/broker/BrokerConnectionManager.js.map +1 -0
  42. package/dist/broker/BrokerProtocol.d.ts +280 -0
  43. package/dist/broker/BrokerProtocol.d.ts.map +1 -0
  44. package/dist/broker/BrokerProtocol.js +466 -0
  45. package/dist/broker/BrokerProtocol.js.map +1 -0
  46. package/dist/broker/index.d.ts +9 -0
  47. package/dist/broker/index.d.ts.map +1 -0
  48. package/dist/broker/index.js +9 -0
  49. package/dist/broker/index.js.map +1 -0
  50. package/dist/client/KadiClient.d.ts +270 -0
  51. package/dist/client/KadiClient.d.ts.map +1 -0
  52. package/dist/client/KadiClient.js +492 -0
  53. package/dist/client/KadiClient.js.map +1 -0
  54. package/dist/client/index.d.ts +7 -0
  55. package/dist/client/index.d.ts.map +1 -0
  56. package/dist/client/index.js +7 -0
  57. package/dist/client/index.js.map +1 -0
  58. package/dist/config/ConfigLoader.d.ts +138 -0
  59. package/dist/config/ConfigLoader.d.ts.map +1 -0
  60. package/dist/config/ConfigLoader.js +226 -0
  61. package/dist/config/ConfigLoader.js.map +1 -0
  62. package/dist/config/ConfigResolver.d.ts +135 -0
  63. package/dist/config/ConfigResolver.d.ts.map +1 -0
  64. package/dist/config/ConfigResolver.js +282 -0
  65. package/dist/config/ConfigResolver.js.map +1 -0
  66. package/dist/config/index.d.ts +8 -0
  67. package/dist/config/index.d.ts.map +1 -0
  68. package/dist/config/index.js +8 -0
  69. package/dist/config/index.js.map +1 -0
  70. package/dist/errors/index.d.ts +9 -0
  71. package/dist/errors/index.d.ts.map +1 -0
  72. package/dist/errors/index.js +8 -0
  73. package/dist/errors/index.js.map +1 -0
  74. package/dist/events/EventHub.d.ts +172 -0
  75. package/dist/events/EventHub.d.ts.map +1 -0
  76. package/dist/events/EventHub.js +333 -0
  77. package/dist/events/EventHub.js.map +1 -0
  78. package/dist/events/index.d.ts +7 -0
  79. package/dist/events/index.d.ts.map +1 -0
  80. package/dist/events/index.js +7 -0
  81. package/dist/events/index.js.map +1 -0
  82. package/dist/index.d.ts +49 -0
  83. package/dist/index.d.ts.map +1 -0
  84. package/dist/index.js +63 -0
  85. package/dist/index.js.map +1 -0
  86. package/dist/messages/index.d.ts +33 -0
  87. package/dist/messages/index.d.ts.map +1 -0
  88. package/dist/messages/index.js +33 -0
  89. package/dist/messages/index.js.map +1 -0
  90. package/dist/schemas/index.d.ts +19 -0
  91. package/dist/schemas/index.d.ts.map +1 -0
  92. package/dist/schemas/index.js +25 -0
  93. package/dist/schemas/index.js.map +1 -0
  94. package/dist/schemas/kadi-extensions.d.ts +231 -0
  95. package/dist/schemas/kadi-extensions.d.ts.map +1 -0
  96. package/dist/schemas/kadi-extensions.js +14 -0
  97. package/dist/schemas/kadi-extensions.js.map +1 -0
  98. package/dist/schemas/mcp/schema.d.ts +1399 -0
  99. package/dist/schemas/mcp/schema.d.ts.map +1 -0
  100. package/dist/schemas/mcp/schema.js +53 -0
  101. package/dist/schemas/mcp/schema.js.map +1 -0
  102. package/dist/schemas/mcp/version.d.ts +37 -0
  103. package/dist/schemas/mcp/version.d.ts.map +1 -0
  104. package/dist/schemas/mcp/version.js +39 -0
  105. package/dist/schemas/mcp/version.js.map +1 -0
  106. package/dist/schemas/schema-builders.d.ts +178 -0
  107. package/dist/schemas/schema-builders.d.ts.map +1 -0
  108. package/dist/schemas/schema-builders.js +258 -0
  109. package/dist/schemas/schema-builders.js.map +1 -0
  110. package/dist/tools/ToolRegistry.d.ts +256 -0
  111. package/dist/tools/ToolRegistry.d.ts.map +1 -0
  112. package/dist/tools/ToolRegistry.js +340 -0
  113. package/dist/tools/ToolRegistry.js.map +1 -0
  114. package/dist/tools/index.d.ts +7 -0
  115. package/dist/tools/index.d.ts.map +1 -0
  116. package/dist/tools/index.js +7 -0
  117. package/dist/tools/index.js.map +1 -0
  118. package/dist/transports/BrokerTransport.d.ts +151 -0
  119. package/dist/transports/BrokerTransport.d.ts.map +1 -0
  120. package/dist/transports/BrokerTransport.js +261 -0
  121. package/dist/transports/BrokerTransport.js.map +1 -0
  122. package/dist/transports/NativeTransport.d.ts +149 -0
  123. package/dist/transports/NativeTransport.d.ts.map +1 -0
  124. package/dist/transports/NativeTransport.js +302 -0
  125. package/dist/transports/NativeTransport.js.map +1 -0
  126. package/dist/transports/StdioTransport.d.ts +172 -0
  127. package/dist/transports/StdioTransport.d.ts.map +1 -0
  128. package/dist/transports/StdioTransport.js +410 -0
  129. package/dist/transports/StdioTransport.js.map +1 -0
  130. package/dist/transports/index.d.ts +10 -0
  131. package/dist/transports/index.d.ts.map +1 -0
  132. package/dist/transports/index.js +9 -0
  133. package/dist/transports/index.js.map +1 -0
  134. package/dist/types/broker.d.ts +301 -0
  135. package/dist/types/broker.d.ts.map +1 -0
  136. package/dist/types/broker.js +46 -0
  137. package/dist/types/broker.js.map +1 -0
  138. package/dist/types/config.d.ts +325 -0
  139. package/dist/types/config.d.ts.map +1 -0
  140. package/dist/types/config.js +17 -0
  141. package/dist/types/config.js.map +1 -0
  142. package/dist/types/errors.d.ts +178 -0
  143. package/dist/types/errors.d.ts.map +1 -0
  144. package/dist/types/errors.js +165 -0
  145. package/dist/types/errors.js.map +1 -0
  146. package/dist/types/events.d.ts +210 -0
  147. package/dist/types/events.d.ts.map +1 -0
  148. package/dist/types/events.js +8 -0
  149. package/dist/types/events.js.map +1 -0
  150. package/dist/types/index.d.ts +32 -0
  151. package/dist/types/index.d.ts.map +1 -0
  152. package/dist/types/index.js +21 -0
  153. package/dist/types/index.js.map +1 -0
  154. package/dist/types/protocol.d.ts +48 -0
  155. package/dist/types/protocol.d.ts.map +1 -0
  156. package/dist/types/protocol.js +11 -0
  157. package/dist/types/protocol.js.map +1 -0
  158. package/dist/types/tools.d.ts +67 -0
  159. package/dist/types/tools.d.ts.map +1 -0
  160. package/dist/types/tools.js +16 -0
  161. package/dist/types/tools.js.map +1 -0
  162. package/dist/types/transport.d.ts +250 -0
  163. package/dist/types/transport.d.ts.map +1 -0
  164. package/dist/types/transport.js +18 -0
  165. package/dist/types/transport.js.map +1 -0
  166. package/dist/validation/SchemaValidator.d.ts +208 -0
  167. package/dist/validation/SchemaValidator.d.ts.map +1 -0
  168. package/dist/validation/SchemaValidator.js +411 -0
  169. package/dist/validation/SchemaValidator.js.map +1 -0
  170. package/dist/validation/index.d.ts +11 -0
  171. package/dist/validation/index.d.ts.map +1 -0
  172. package/dist/validation/index.js +10 -0
  173. package/dist/validation/index.js.map +1 -0
  174. package/package.json +69 -5
  175. package/agent.json +0 -18
  176. package/broker.js +0 -214
  177. package/index.js +0 -370
  178. package/ipc.js +0 -220
  179. package/ipcInterfaces/pythonAbilityIPC.py +0 -177
@@ -0,0 +1,178 @@
1
+ /**
2
+ * Error Types
3
+ *
4
+ * Type definitions for KADI error handling.
5
+ * Errors preserve context without wrapping, enabling proper debugging.
6
+ */
7
+ /**
8
+ * KADI Error class
9
+ *
10
+ * Custom error class with structured error codes and context.
11
+ * Preserves stack traces and adds contextual information.
12
+ *
13
+ * @example
14
+ * ```typescript
15
+ * throw new KadiError(
16
+ * 'Tool not found',
17
+ * ErrorCode.TOOL_NOT_FOUND,
18
+ * 404,
19
+ * { toolName: 'calculate', agent: 'calculator' }
20
+ * );
21
+ * ```
22
+ */
23
+ export declare class KadiError extends Error {
24
+ /**
25
+ * Structured error code
26
+ */
27
+ readonly code: ErrorCode;
28
+ /**
29
+ * HTTP-style status code
30
+ */
31
+ readonly statusCode: number;
32
+ /**
33
+ * Additional contextual information
34
+ */
35
+ readonly context?: ErrorContext;
36
+ /**
37
+ * Timestamp when error was created
38
+ */
39
+ readonly timestamp: number;
40
+ /**
41
+ * Unique error ID for tracking
42
+ */
43
+ readonly errorId: string;
44
+ constructor(message: string, code: ErrorCode, statusCode?: number, context?: ErrorContext);
45
+ /**
46
+ * Convert error to JSON for serialization
47
+ */
48
+ toJSON(): ErrorJSON;
49
+ /**
50
+ * Create KadiError from unknown error
51
+ */
52
+ static from(error: unknown, code?: ErrorCode): KadiError;
53
+ }
54
+ /**
55
+ * Structured error codes
56
+ */
57
+ export declare enum ErrorCode {
58
+ UNKNOWN_ERROR = "UNKNOWN_ERROR",
59
+ INTERNAL_ERROR = "INTERNAL_ERROR",
60
+ INVALID_INPUT = "INVALID_INPUT",
61
+ INVALID_CONFIG = "INVALID_CONFIG",
62
+ NOT_IMPLEMENTED = "NOT_IMPLEMENTED",
63
+ CONNECTION_FAILED = "CONNECTION_FAILED",
64
+ CONNECTION_TIMEOUT = "CONNECTION_TIMEOUT",
65
+ CONNECTION_CLOSED = "CONNECTION_CLOSED",
66
+ AUTHENTICATION_FAILED = "AUTHENTICATION_FAILED",
67
+ BROKER_NOT_CONNECTED = "BROKER_NOT_CONNECTED",
68
+ BROKER_CONNECTION_FAILED = "BROKER_CONNECTION_FAILED",
69
+ BROKER_RESPONSE_ERROR = "BROKER_RESPONSE_ERROR",
70
+ BROKER_TIMEOUT = "BROKER_TIMEOUT",
71
+ TOOL_NOT_FOUND = "TOOL_NOT_FOUND",
72
+ TOOL_ALREADY_REGISTERED = "TOOL_ALREADY_REGISTERED",
73
+ TOOL_INVOCATION_FAILED = "TOOL_INVOCATION_FAILED",
74
+ TOOL_VALIDATION_FAILED = "TOOL_VALIDATION_FAILED",
75
+ TOOL_TIMEOUT = "TOOL_TIMEOUT",
76
+ ABILITY_NOT_FOUND = "ABILITY_NOT_FOUND",
77
+ ABILITY_LOAD_FAILED = "ABILITY_LOAD_FAILED",
78
+ ABILITY_NOT_LOADED = "ABILITY_NOT_LOADED",
79
+ ABILITY_ALREADY_LOADED = "ABILITY_ALREADY_LOADED",
80
+ ABILITY_METHOD_NOT_FOUND = "ABILITY_METHOD_NOT_FOUND",
81
+ ABILITY_INVALID = "ABILITY_INVALID",
82
+ ABILITY_NOT_CONNECTED = "ABILITY_NOT_CONNECTED",
83
+ EVENT_SUBSCRIPTION_FAILED = "EVENT_SUBSCRIPTION_FAILED",
84
+ EVENT_PUBLISH_FAILED = "EVENT_PUBLISH_FAILED",
85
+ EVENT_PATTERN_INVALID = "EVENT_PATTERN_INVALID",
86
+ TRANSPORT_NOT_CONNECTED = "TRANSPORT_NOT_CONNECTED",
87
+ TRANSPORT_CONNECTION_FAILED = "TRANSPORT_CONNECTION_FAILED",
88
+ TRANSPORT_SEND_FAILED = "TRANSPORT_SEND_FAILED",
89
+ STDIO_PROCESS_FAILED = "STDIO_PROCESS_FAILED",
90
+ STDIO_PROCESS_EXITED = "STDIO_PROCESS_EXITED",
91
+ STDIO_FRAMING_ERROR = "STDIO_FRAMING_ERROR",
92
+ SCHEMA_VALIDATION_FAILED = "SCHEMA_VALIDATION_FAILED",
93
+ BROKER_SCHEMA_COMPILATION_ERROR = "BROKER_SCHEMA_COMPILATION_ERROR",
94
+ INVALID_MESSAGE_FORMAT = "INVALID_MESSAGE_FORMAT",
95
+ INVALID_PROTOCOL_VERSION = "INVALID_PROTOCOL_VERSION"
96
+ }
97
+ /**
98
+ * Error context information
99
+ */
100
+ export interface ErrorContext {
101
+ /**
102
+ * Component/module where error occurred
103
+ */
104
+ component?: string;
105
+ /**
106
+ * Operation being performed
107
+ */
108
+ operation?: string;
109
+ /**
110
+ * Agent name
111
+ */
112
+ agent?: string;
113
+ /**
114
+ * Tool/method name
115
+ */
116
+ tool?: string;
117
+ /**
118
+ * Ability name
119
+ */
120
+ ability?: string;
121
+ /**
122
+ * Broker URL
123
+ */
124
+ broker?: string;
125
+ /**
126
+ * Network
127
+ */
128
+ network?: string;
129
+ /**
130
+ * Additional details
131
+ */
132
+ details?: Record<string, unknown>;
133
+ /**
134
+ * Original error name (for wrapped errors)
135
+ */
136
+ originalError?: string;
137
+ [key: string]: unknown;
138
+ }
139
+ /**
140
+ * JSON representation of error
141
+ */
142
+ export interface ErrorJSON {
143
+ name: string;
144
+ message: string;
145
+ code: ErrorCode;
146
+ statusCode: number;
147
+ context?: ErrorContext;
148
+ errorId: string;
149
+ timestamp: number;
150
+ stack?: string;
151
+ }
152
+ /**
153
+ * Type guard for KadiError
154
+ */
155
+ export declare function isKadiError(error: unknown): error is KadiError;
156
+ /**
157
+ * Type guard for Error
158
+ */
159
+ export declare function isError(error: unknown): error is Error;
160
+ /**
161
+ * Error result wrapper for operations that may fail
162
+ */
163
+ export type Result<T, E = KadiError> = {
164
+ success: true;
165
+ data: T;
166
+ } | {
167
+ success: false;
168
+ error: E;
169
+ };
170
+ /**
171
+ * Create success result
172
+ */
173
+ export declare function success<T>(data: T): Result<T, never>;
174
+ /**
175
+ * Create error result
176
+ */
177
+ export declare function failure<E = KadiError>(error: E): Result<never, E>;
178
+ //# sourceMappingURL=errors.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"errors.d.ts","sourceRoot":"","sources":["../../src/types/errors.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,165 @@
1
+ /**
2
+ * Error Types
3
+ *
4
+ * Type definitions for KADI error handling.
5
+ * Errors preserve context without wrapping, enabling proper debugging.
6
+ */
7
+ /**
8
+ * KADI Error class
9
+ *
10
+ * Custom error class with structured error codes and context.
11
+ * Preserves stack traces and adds contextual information.
12
+ *
13
+ * @example
14
+ * ```typescript
15
+ * throw new KadiError(
16
+ * 'Tool not found',
17
+ * ErrorCode.TOOL_NOT_FOUND,
18
+ * 404,
19
+ * { toolName: 'calculate', agent: 'calculator' }
20
+ * );
21
+ * ```
22
+ */
23
+ export class KadiError extends Error {
24
+ /**
25
+ * Structured error code
26
+ */
27
+ code;
28
+ /**
29
+ * HTTP-style status code
30
+ */
31
+ statusCode;
32
+ /**
33
+ * Additional contextual information
34
+ */
35
+ context;
36
+ /**
37
+ * Timestamp when error was created
38
+ */
39
+ timestamp;
40
+ /**
41
+ * Unique error ID for tracking
42
+ */
43
+ errorId;
44
+ constructor(message, code, statusCode = 500, context) {
45
+ super(message);
46
+ this.name = 'KadiError';
47
+ this.code = code;
48
+ this.statusCode = statusCode;
49
+ this.context = context;
50
+ this.timestamp = Date.now();
51
+ this.errorId = `${code}_${this.timestamp}_${Math.random().toString(36).substring(2, 9)}`;
52
+ // Capture stack trace
53
+ if (Error.captureStackTrace) {
54
+ Error.captureStackTrace(this, KadiError);
55
+ }
56
+ }
57
+ /**
58
+ * Convert error to JSON for serialization
59
+ */
60
+ toJSON() {
61
+ return {
62
+ name: this.name,
63
+ message: this.message,
64
+ code: this.code,
65
+ statusCode: this.statusCode,
66
+ context: this.context,
67
+ errorId: this.errorId,
68
+ timestamp: this.timestamp,
69
+ stack: this.stack
70
+ };
71
+ }
72
+ /**
73
+ * Create KadiError from unknown error
74
+ */
75
+ static from(error, code = ErrorCode.UNKNOWN_ERROR) {
76
+ if (error instanceof KadiError) {
77
+ return error;
78
+ }
79
+ if (error instanceof Error) {
80
+ const kadiError = new KadiError(error.message, code, 500, { originalError: error.name });
81
+ // Preserve original stack
82
+ kadiError.stack = error.stack;
83
+ return kadiError;
84
+ }
85
+ return new KadiError(String(error), code, 500);
86
+ }
87
+ }
88
+ /**
89
+ * Structured error codes
90
+ */
91
+ export var ErrorCode;
92
+ (function (ErrorCode) {
93
+ // Generic errors
94
+ ErrorCode["UNKNOWN_ERROR"] = "UNKNOWN_ERROR";
95
+ ErrorCode["INTERNAL_ERROR"] = "INTERNAL_ERROR";
96
+ ErrorCode["INVALID_INPUT"] = "INVALID_INPUT";
97
+ ErrorCode["INVALID_CONFIG"] = "INVALID_CONFIG";
98
+ ErrorCode["NOT_IMPLEMENTED"] = "NOT_IMPLEMENTED";
99
+ // Connection errors
100
+ ErrorCode["CONNECTION_FAILED"] = "CONNECTION_FAILED";
101
+ ErrorCode["CONNECTION_TIMEOUT"] = "CONNECTION_TIMEOUT";
102
+ ErrorCode["CONNECTION_CLOSED"] = "CONNECTION_CLOSED";
103
+ ErrorCode["AUTHENTICATION_FAILED"] = "AUTHENTICATION_FAILED";
104
+ // Broker errors
105
+ ErrorCode["BROKER_NOT_CONNECTED"] = "BROKER_NOT_CONNECTED";
106
+ ErrorCode["BROKER_CONNECTION_FAILED"] = "BROKER_CONNECTION_FAILED";
107
+ ErrorCode["BROKER_RESPONSE_ERROR"] = "BROKER_RESPONSE_ERROR";
108
+ ErrorCode["BROKER_TIMEOUT"] = "BROKER_TIMEOUT";
109
+ // Tool errors
110
+ ErrorCode["TOOL_NOT_FOUND"] = "TOOL_NOT_FOUND";
111
+ ErrorCode["TOOL_ALREADY_REGISTERED"] = "TOOL_ALREADY_REGISTERED";
112
+ ErrorCode["TOOL_INVOCATION_FAILED"] = "TOOL_INVOCATION_FAILED";
113
+ ErrorCode["TOOL_VALIDATION_FAILED"] = "TOOL_VALIDATION_FAILED";
114
+ ErrorCode["TOOL_TIMEOUT"] = "TOOL_TIMEOUT";
115
+ // Ability errors
116
+ ErrorCode["ABILITY_NOT_FOUND"] = "ABILITY_NOT_FOUND";
117
+ ErrorCode["ABILITY_LOAD_FAILED"] = "ABILITY_LOAD_FAILED";
118
+ ErrorCode["ABILITY_NOT_LOADED"] = "ABILITY_NOT_LOADED";
119
+ ErrorCode["ABILITY_ALREADY_LOADED"] = "ABILITY_ALREADY_LOADED";
120
+ ErrorCode["ABILITY_METHOD_NOT_FOUND"] = "ABILITY_METHOD_NOT_FOUND";
121
+ ErrorCode["ABILITY_INVALID"] = "ABILITY_INVALID";
122
+ ErrorCode["ABILITY_NOT_CONNECTED"] = "ABILITY_NOT_CONNECTED";
123
+ // Event errors
124
+ ErrorCode["EVENT_SUBSCRIPTION_FAILED"] = "EVENT_SUBSCRIPTION_FAILED";
125
+ ErrorCode["EVENT_PUBLISH_FAILED"] = "EVENT_PUBLISH_FAILED";
126
+ ErrorCode["EVENT_PATTERN_INVALID"] = "EVENT_PATTERN_INVALID";
127
+ // Transport errors
128
+ ErrorCode["TRANSPORT_NOT_CONNECTED"] = "TRANSPORT_NOT_CONNECTED";
129
+ ErrorCode["TRANSPORT_CONNECTION_FAILED"] = "TRANSPORT_CONNECTION_FAILED";
130
+ ErrorCode["TRANSPORT_SEND_FAILED"] = "TRANSPORT_SEND_FAILED";
131
+ // Stdio errors
132
+ ErrorCode["STDIO_PROCESS_FAILED"] = "STDIO_PROCESS_FAILED";
133
+ ErrorCode["STDIO_PROCESS_EXITED"] = "STDIO_PROCESS_EXITED";
134
+ ErrorCode["STDIO_FRAMING_ERROR"] = "STDIO_FRAMING_ERROR";
135
+ // Validation errors
136
+ ErrorCode["SCHEMA_VALIDATION_FAILED"] = "SCHEMA_VALIDATION_FAILED";
137
+ ErrorCode["BROKER_SCHEMA_COMPILATION_ERROR"] = "BROKER_SCHEMA_COMPILATION_ERROR";
138
+ ErrorCode["INVALID_MESSAGE_FORMAT"] = "INVALID_MESSAGE_FORMAT";
139
+ ErrorCode["INVALID_PROTOCOL_VERSION"] = "INVALID_PROTOCOL_VERSION";
140
+ })(ErrorCode || (ErrorCode = {}));
141
+ /**
142
+ * Type guard for KadiError
143
+ */
144
+ export function isKadiError(error) {
145
+ return error instanceof KadiError;
146
+ }
147
+ /**
148
+ * Type guard for Error
149
+ */
150
+ export function isError(error) {
151
+ return error instanceof Error;
152
+ }
153
+ /**
154
+ * Create success result
155
+ */
156
+ export function success(data) {
157
+ return { success: true, data };
158
+ }
159
+ /**
160
+ * Create error result
161
+ */
162
+ export function failure(error) {
163
+ return { success: false, error };
164
+ }
165
+ //# sourceMappingURL=errors.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"errors.js","sourceRoot":"","sources":["../../src/types/errors.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,210 @@
1
+ /**
2
+ * Event Types
3
+ *
4
+ * Type definitions for the KADI event system.
5
+ * Events enable pub/sub communication between agents and abilities.
6
+ */
7
+ /**
8
+ * Event pattern string for subscription matching.
9
+ *
10
+ * Supports wildcards:
11
+ * - `user.login` - exact match
12
+ * - `user.*` - all events starting with "user."
13
+ * - `*.error` - all error events
14
+ * - `*` - all events
15
+ *
16
+ * @example
17
+ * ```typescript
18
+ * const pattern: EventPattern = 'user.*';
19
+ * ```
20
+ */
21
+ export type EventPattern = string;
22
+ /**
23
+ * Event name/channel identifier
24
+ *
25
+ * @example
26
+ * ```typescript
27
+ * const eventName: EventName = 'user.login';
28
+ * ```
29
+ */
30
+ export type EventName = string;
31
+ /**
32
+ * Event callback function type.
33
+ *
34
+ * @template TData - The type of data the event carries
35
+ *
36
+ * @param data - The event data payload
37
+ * @returns void or Promise<void>
38
+ *
39
+ * @example
40
+ * ```typescript
41
+ * const handler: EventCallback<{ userId: string }> =
42
+ * async (data) => {
43
+ * console.log('User logged in:', data.userId);
44
+ * };
45
+ * ```
46
+ */
47
+ export type EventCallback<TData = unknown> = (data: TData) => void | Promise<void>;
48
+ /**
49
+ * Event payload structure.
50
+ *
51
+ * This is the complete event object that flows through the system.
52
+ */
53
+ export interface EventPayload<TData = unknown> {
54
+ /**
55
+ * Event name/channel
56
+ */
57
+ eventName: EventName;
58
+ /**
59
+ * Event data
60
+ */
61
+ data: TData;
62
+ /**
63
+ * When the event was emitted (Unix timestamp in ms)
64
+ */
65
+ timestamp: number;
66
+ /**
67
+ * Source agent/ability that emitted the event
68
+ */
69
+ source: string;
70
+ /**
71
+ * Optional metadata
72
+ */
73
+ metadata?: EventMetadata;
74
+ }
75
+ /**
76
+ * Additional event metadata
77
+ */
78
+ export interface EventMetadata {
79
+ /**
80
+ * Event correlation ID for tracking related events
81
+ */
82
+ correlationId?: string;
83
+ /**
84
+ * Event sequence number (for ordered processing)
85
+ */
86
+ sequenceNumber?: number;
87
+ /**
88
+ * Time-to-live in milliseconds (for ephemeral events)
89
+ */
90
+ ttl?: number;
91
+ /**
92
+ * Priority level (higher = more important)
93
+ */
94
+ priority?: number;
95
+ /**
96
+ * Custom metadata
97
+ */
98
+ [key: string]: unknown;
99
+ }
100
+ /**
101
+ * Event subscription record.
102
+ *
103
+ * Internal representation of an active subscription.
104
+ */
105
+ export interface EventSubscription<TData = unknown> {
106
+ /**
107
+ * Unique subscription ID
108
+ */
109
+ id: string;
110
+ /**
111
+ * Pattern this subscription matches
112
+ */
113
+ pattern: EventPattern;
114
+ /**
115
+ * Callback function
116
+ */
117
+ callback: EventCallback<TData>;
118
+ /**
119
+ * When the subscription was created
120
+ */
121
+ createdAt: number;
122
+ /**
123
+ * Subscription options
124
+ */
125
+ options?: SubscriptionOptions;
126
+ /**
127
+ * Internal counter for maxEvents tracking
128
+ * Incremented each time the callback is invoked
129
+ */
130
+ _eventCount?: number;
131
+ }
132
+ /**
133
+ * Options for event subscriptions
134
+ */
135
+ export interface SubscriptionOptions {
136
+ /**
137
+ * Only receive the latest event if multiple match (coalescence)
138
+ */
139
+ latestOnly?: boolean;
140
+ /**
141
+ * Filter function to selectively receive events
142
+ */
143
+ filter?: (payload: EventPayload) => boolean;
144
+ /**
145
+ * Maximum number of events to receive before auto-unsubscribing
146
+ */
147
+ maxEvents?: number;
148
+ /**
149
+ * Auto-unsubscribe after this many milliseconds
150
+ */
151
+ timeout?: number;
152
+ }
153
+ /**
154
+ * Unsubscribe function returned from subscriptions
155
+ *
156
+ * @example
157
+ * ```typescript
158
+ * const unsubscribe = eventHub.subscribe('user.*', handler);
159
+ * // Later...
160
+ * unsubscribe();
161
+ * ```
162
+ */
163
+ export type UnsubscribeFunction = () => void;
164
+ /**
165
+ * Event publishing options/hints
166
+ */
167
+ export interface PublishOptions {
168
+ /**
169
+ * Only keep the latest event in queue (for high-frequency events)
170
+ */
171
+ latestOnly?: boolean;
172
+ /**
173
+ * Coalescing key - events with same key replace each other
174
+ */
175
+ coalescingKey?: string;
176
+ /**
177
+ * Time-to-live in milliseconds
178
+ */
179
+ ttl?: number;
180
+ /**
181
+ * Priority (higher = delivered first)
182
+ */
183
+ priority?: number;
184
+ /**
185
+ * Correlation ID for tracking related events
186
+ */
187
+ correlationId?: string;
188
+ }
189
+ /**
190
+ * Event delivery status
191
+ */
192
+ export interface EventDeliveryStatus {
193
+ /**
194
+ * Event that was delivered
195
+ */
196
+ event: EventPayload;
197
+ /**
198
+ * Number of subscribers that received it
199
+ */
200
+ delivered: number;
201
+ /**
202
+ * Number of delivery failures
203
+ */
204
+ failed: number;
205
+ /**
206
+ * Delivery timestamp
207
+ */
208
+ timestamp: number;
209
+ }
210
+ //# sourceMappingURL=events.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"events.d.ts","sourceRoot":"","sources":["../../src/types/events.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH;;;;;;;;;;;;;GAaG;AACH,MAAM,MAAM,YAAY,GAAG,MAAM,CAAC;AAElC;;;;;;;GAOG;AACH,MAAM,MAAM,SAAS,GAAG,MAAM,CAAC;AAE/B;;;;;;;;;;;;;;;GAeG;AACH,MAAM,MAAM,aAAa,CAAC,KAAK,GAAG,OAAO,IAAI,CAC3C,IAAI,EAAE,KAAK,KACR,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;AAE1B;;;;GAIG;AACH,MAAM,WAAW,YAAY,CAAC,KAAK,GAAG,OAAO;IAC3C;;OAEG;IACH,SAAS,EAAE,SAAS,CAAC;IAErB;;OAEG;IACH,IAAI,EAAE,KAAK,CAAC;IAEZ;;OAEG;IACH,SAAS,EAAE,MAAM,CAAC;IAElB;;OAEG;IACH,MAAM,EAAE,MAAM,CAAC;IAEf;;OAEG;IACH,QAAQ,CAAC,EAAE,aAAa,CAAC;CAC1B;AAED;;GAEG;AACH,MAAM,WAAW,aAAa;IAC5B;;OAEG;IACH,aAAa,CAAC,EAAE,MAAM,CAAC;IAEvB;;OAEG;IACH,cAAc,CAAC,EAAE,MAAM,CAAC;IAExB;;OAEG;IACH,GAAG,CAAC,EAAE,MAAM,CAAC;IAEb;;OAEG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAC;IAElB;;OAEG;IACH,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;CACxB;AAED;;;;GAIG;AACH,MAAM,WAAW,iBAAiB,CAAC,KAAK,GAAG,OAAO;IAChD;;OAEG;IACH,EAAE,EAAE,MAAM,CAAC;IAEX;;OAEG;IACH,OAAO,EAAE,YAAY,CAAC;IAEtB;;OAEG;IACH,QAAQ,EAAE,aAAa,CAAC,KAAK,CAAC,CAAC;IAE/B;;OAEG;IACH,SAAS,EAAE,MAAM,CAAC;IAElB;;OAEG;IACH,OAAO,CAAC,EAAE,mBAAmB,CAAC;IAE9B;;;OAGG;IACH,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AAED;;GAEG;AACH,MAAM,WAAW,mBAAmB;IAClC;;OAEG;IACH,UAAU,CAAC,EAAE,OAAO,CAAC;IAErB;;OAEG;IACH,MAAM,CAAC,EAAE,CAAC,OAAO,EAAE,YAAY,KAAK,OAAO,CAAC;IAE5C;;OAEG;IACH,SAAS,CAAC,EAAE,MAAM,CAAC;IAEnB;;OAEG;IACH,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAED;;;;;;;;;GASG;AACH,MAAM,MAAM,mBAAmB,GAAG,MAAM,IAAI,CAAC;AAE7C;;GAEG;AACH,MAAM,WAAW,cAAc;IAC7B;;OAEG;IACH,UAAU,CAAC,EAAE,OAAO,CAAC;IAErB;;OAEG;IACH,aAAa,CAAC,EAAE,MAAM,CAAC;IAEvB;;OAEG;IACH,GAAG,CAAC,EAAE,MAAM,CAAC;IAEb;;OAEG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAC;IAElB;;OAEG;IACH,aAAa,CAAC,EAAE,MAAM,CAAC;CACxB;AAED;;GAEG;AACH,MAAM,WAAW,mBAAmB;IAClC;;OAEG;IACH,KAAK,EAAE,YAAY,CAAC;IAEpB;;OAEG;IACH,SAAS,EAAE,MAAM,CAAC;IAElB;;OAEG;IACH,MAAM,EAAE,MAAM,CAAC;IAEf;;OAEG;IACH,SAAS,EAAE,MAAM,CAAC;CACnB"}
@@ -0,0 +1,8 @@
1
+ /**
2
+ * Event Types
3
+ *
4
+ * Type definitions for the KADI event system.
5
+ * Events enable pub/sub communication between agents and abilities.
6
+ */
7
+ export {};
8
+ //# sourceMappingURL=events.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"events.js","sourceRoot":"","sources":["../../src/types/events.ts"],"names":[],"mappings":"AAAA;;;;;GAKG"}
@@ -0,0 +1,32 @@
1
+ /**
2
+ * KADI Core Types
3
+ *
4
+ * Central export point for all type definitions.
5
+ * This file provides a single import location for all KADI types.
6
+ *
7
+ * @example
8
+ * ```typescript
9
+ * import type {
10
+ * KadiClientConfig,
11
+ * ToolHandler,
12
+ * EventCallback
13
+ * } from '@kadi.build/core/types';
14
+ * ```
15
+ */
16
+ /**
17
+ * JSON Schema type (generic object representation)
18
+ *
19
+ * Represents a JSON Schema object. Use this for generic schema handling.
20
+ */
21
+ export type JSONSchema = Record<string, unknown>;
22
+ export type { KadiTool, KadiToolResult, ToolDefinition, ToolHandler, RegisteredTool, ToolTag, NetworkId, ToolDiscoveryQuery, ToolDiscoveryResult, ToolInvocationResult, McpTool, McpCallToolResult, ToolAnnotations, ListToolsRequest, ListToolsResult, CallToolRequest, ToolListChangedNotification } from './tools.js';
23
+ export type { EventPattern, EventName, EventCallback, EventPayload, EventMetadata, EventSubscription, UnsubscribeFunction, PublishOptions, EventDeliveryStatus, SubscriptionOptions } from './events.js';
24
+ export type { BrokerConnection, BrokerConfig, JsonRpcRequest, JsonRpcResponse, JsonRpcError, JsonRpcNotification, HandshakeParams, HandshakeResult, RegisterCapabilitiesParams, ToolInvokeParams, EventSubscribeParams, EventPublishParams, PendingRequest } from './broker.js';
25
+ export { ConnectionState, KadiProtocolMethod } from './broker.js';
26
+ export type { TransportKind, AgentRole, KadiClientConfig, AdvancedConfig, KadiConfig, ServiceConfig, LoadAbilityOptions, AgentJsonConfig, EnvConfig, ResolvedConfig } from './config.js';
27
+ export { ConfigSource } from './config.js';
28
+ export type { AbilityTransport, MethodSchema, TransportOptions, NativeTransportOptions, StdioTransportOptions, BrokerTransportOptions, MessageTransport, TransportDiscoveryResult, StdioFrame } from './transport.js';
29
+ export { StdioMessageType } from './transport.js';
30
+ export { KadiError, ErrorCode, isKadiError, isError, success, failure } from './errors.js';
31
+ export type { ErrorContext, ErrorJSON, Result } from './errors.js';
32
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/types/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH;;;;GAIG;AACH,MAAM,MAAM,UAAU,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;AAGjD,YAAY,EAEV,QAAQ,EACR,cAAc,EACd,cAAc,EACd,WAAW,EACX,cAAc,EACd,OAAO,EACP,SAAS,EACT,kBAAkB,EAClB,mBAAmB,EACnB,oBAAoB,EAGpB,OAAO,EACP,iBAAiB,EACjB,eAAe,EACf,gBAAgB,EAChB,eAAe,EACf,eAAe,EACf,2BAA2B,EAC5B,MAAM,YAAY,CAAC;AAGpB,YAAY,EACV,YAAY,EACZ,SAAS,EACT,aAAa,EACb,YAAY,EACZ,aAAa,EACb,iBAAiB,EACjB,mBAAmB,EACnB,cAAc,EACd,mBAAmB,EACnB,mBAAmB,EACpB,MAAM,aAAa,CAAC;AAGrB,YAAY,EACV,gBAAgB,EAChB,YAAY,EACZ,cAAc,EACd,eAAe,EACf,YAAY,EACZ,mBAAmB,EACnB,eAAe,EACf,eAAe,EACf,0BAA0B,EAC1B,gBAAgB,EAChB,oBAAoB,EACpB,kBAAkB,EAClB,cAAc,EACf,MAAM,aAAa,CAAC;AAErB,OAAO,EAAE,eAAe,EAAE,kBAAkB,EAAE,MAAM,aAAa,CAAC;AAGlE,YAAY,EACV,aAAa,EACb,SAAS,EACT,gBAAgB,EAChB,cAAc,EACd,UAAU,EACV,aAAa,EACb,kBAAkB,EAClB,eAAe,EACf,SAAS,EACT,cAAc,EACf,MAAM,aAAa,CAAC;AAErB,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAG3C,YAAY,EACV,gBAAgB,EAChB,YAAY,EACZ,gBAAgB,EAChB,sBAAsB,EACtB,qBAAqB,EACrB,sBAAsB,EACtB,gBAAgB,EAChB,wBAAwB,EACxB,UAAU,EACX,MAAM,gBAAgB,CAAC;AAExB,OAAO,EAAE,gBAAgB,EAAE,MAAM,gBAAgB,CAAC;AAGlD,OAAO,EACL,SAAS,EACT,SAAS,EACT,WAAW,EACX,OAAO,EACP,OAAO,EACP,OAAO,EACR,MAAM,aAAa,CAAC;AAErB,YAAY,EACV,YAAY,EACZ,SAAS,EACT,MAAM,EACP,MAAM,aAAa,CAAC"}
@@ -0,0 +1,21 @@
1
+ /**
2
+ * KADI Core Types
3
+ *
4
+ * Central export point for all type definitions.
5
+ * This file provides a single import location for all KADI types.
6
+ *
7
+ * @example
8
+ * ```typescript
9
+ * import type {
10
+ * KadiClientConfig,
11
+ * ToolHandler,
12
+ * EventCallback
13
+ * } from '@kadi.build/core/types';
14
+ * ```
15
+ */
16
+ export { ConnectionState, KadiProtocolMethod } from './broker.js';
17
+ export { ConfigSource } from './config.js';
18
+ export { StdioMessageType } from './transport.js';
19
+ // Error types
20
+ export { KadiError, ErrorCode, isKadiError, isError, success, failure } from './errors.js';
21
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/types/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAgEH,OAAO,EAAE,eAAe,EAAE,kBAAkB,EAAE,MAAM,aAAa,CAAC;AAgBlE,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAe3C,OAAO,EAAE,gBAAgB,EAAE,MAAM,gBAAgB,CAAC;AAElD,cAAc;AACd,OAAO,EACL,SAAS,EACT,SAAS,EACT,WAAW,EACX,OAAO,EACP,OAAO,EACP,OAAO,EACR,MAAM,aAAa,CAAC"}