@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.
- package/README.md +1387 -214
- package/dist/abilities/AbilityCache.d.ts +242 -0
- package/dist/abilities/AbilityCache.d.ts.map +1 -0
- package/dist/abilities/AbilityCache.js +285 -0
- package/dist/abilities/AbilityCache.js.map +1 -0
- package/dist/abilities/AbilityContext.d.ts +215 -0
- package/dist/abilities/AbilityContext.d.ts.map +1 -0
- package/dist/abilities/AbilityContext.js +36 -0
- package/dist/abilities/AbilityContext.js.map +1 -0
- package/dist/abilities/AbilityLoader.d.ts +177 -0
- package/dist/abilities/AbilityLoader.d.ts.map +1 -0
- package/dist/abilities/AbilityLoader.js +277 -0
- package/dist/abilities/AbilityLoader.js.map +1 -0
- package/dist/abilities/AbilityProxy.d.ts +463 -0
- package/dist/abilities/AbilityProxy.d.ts.map +1 -0
- package/dist/abilities/AbilityProxy.js +511 -0
- package/dist/abilities/AbilityProxy.js.map +1 -0
- package/dist/abilities/AbilityValidator.d.ts +172 -0
- package/dist/abilities/AbilityValidator.d.ts.map +1 -0
- package/dist/abilities/AbilityValidator.js +253 -0
- package/dist/abilities/AbilityValidator.js.map +1 -0
- package/dist/abilities/index.d.ts +26 -0
- package/dist/abilities/index.d.ts.map +1 -0
- package/dist/abilities/index.js +23 -0
- package/dist/abilities/index.js.map +1 -0
- package/dist/abilities/types.d.ts +156 -0
- package/dist/abilities/types.d.ts.map +1 -0
- package/dist/abilities/types.js +10 -0
- package/dist/abilities/types.js.map +1 -0
- package/dist/api/index.d.ts +92 -0
- package/dist/api/index.d.ts.map +1 -0
- package/dist/api/index.js +124 -0
- package/dist/api/index.js.map +1 -0
- package/dist/broker/BrokerConnection.d.ts +253 -0
- package/dist/broker/BrokerConnection.d.ts.map +1 -0
- package/dist/broker/BrokerConnection.js +434 -0
- package/dist/broker/BrokerConnection.js.map +1 -0
- package/dist/broker/BrokerConnectionManager.d.ts +216 -0
- package/dist/broker/BrokerConnectionManager.d.ts.map +1 -0
- package/dist/broker/BrokerConnectionManager.js +305 -0
- package/dist/broker/BrokerConnectionManager.js.map +1 -0
- package/dist/broker/BrokerProtocol.d.ts +280 -0
- package/dist/broker/BrokerProtocol.d.ts.map +1 -0
- package/dist/broker/BrokerProtocol.js +466 -0
- package/dist/broker/BrokerProtocol.js.map +1 -0
- package/dist/broker/index.d.ts +9 -0
- package/dist/broker/index.d.ts.map +1 -0
- package/dist/broker/index.js +9 -0
- package/dist/broker/index.js.map +1 -0
- package/dist/client/KadiClient.d.ts +270 -0
- package/dist/client/KadiClient.d.ts.map +1 -0
- package/dist/client/KadiClient.js +492 -0
- package/dist/client/KadiClient.js.map +1 -0
- package/dist/client/index.d.ts +7 -0
- package/dist/client/index.d.ts.map +1 -0
- package/dist/client/index.js +7 -0
- package/dist/client/index.js.map +1 -0
- package/dist/config/ConfigLoader.d.ts +138 -0
- package/dist/config/ConfigLoader.d.ts.map +1 -0
- package/dist/config/ConfigLoader.js +226 -0
- package/dist/config/ConfigLoader.js.map +1 -0
- package/dist/config/ConfigResolver.d.ts +135 -0
- package/dist/config/ConfigResolver.d.ts.map +1 -0
- package/dist/config/ConfigResolver.js +282 -0
- package/dist/config/ConfigResolver.js.map +1 -0
- package/dist/config/index.d.ts +8 -0
- package/dist/config/index.d.ts.map +1 -0
- package/dist/config/index.js +8 -0
- package/dist/config/index.js.map +1 -0
- package/dist/errors/index.d.ts +9 -0
- package/dist/errors/index.d.ts.map +1 -0
- package/dist/errors/index.js +8 -0
- package/dist/errors/index.js.map +1 -0
- package/dist/events/EventHub.d.ts +172 -0
- package/dist/events/EventHub.d.ts.map +1 -0
- package/dist/events/EventHub.js +333 -0
- package/dist/events/EventHub.js.map +1 -0
- package/dist/events/index.d.ts +7 -0
- package/dist/events/index.d.ts.map +1 -0
- package/dist/events/index.js +7 -0
- package/dist/events/index.js.map +1 -0
- package/dist/index.d.ts +49 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +63 -0
- package/dist/index.js.map +1 -0
- package/dist/messages/index.d.ts +33 -0
- package/dist/messages/index.d.ts.map +1 -0
- package/dist/messages/index.js +33 -0
- package/dist/messages/index.js.map +1 -0
- package/dist/schemas/index.d.ts +19 -0
- package/dist/schemas/index.d.ts.map +1 -0
- package/dist/schemas/index.js +25 -0
- package/dist/schemas/index.js.map +1 -0
- package/dist/schemas/kadi-extensions.d.ts +231 -0
- package/dist/schemas/kadi-extensions.d.ts.map +1 -0
- package/dist/schemas/kadi-extensions.js +14 -0
- package/dist/schemas/kadi-extensions.js.map +1 -0
- package/dist/schemas/mcp/schema.d.ts +1399 -0
- package/dist/schemas/mcp/schema.d.ts.map +1 -0
- package/dist/schemas/mcp/schema.js +53 -0
- package/dist/schemas/mcp/schema.js.map +1 -0
- package/dist/schemas/mcp/version.d.ts +37 -0
- package/dist/schemas/mcp/version.d.ts.map +1 -0
- package/dist/schemas/mcp/version.js +39 -0
- package/dist/schemas/mcp/version.js.map +1 -0
- package/dist/schemas/schema-builders.d.ts +178 -0
- package/dist/schemas/schema-builders.d.ts.map +1 -0
- package/dist/schemas/schema-builders.js +258 -0
- package/dist/schemas/schema-builders.js.map +1 -0
- package/dist/tools/ToolRegistry.d.ts +256 -0
- package/dist/tools/ToolRegistry.d.ts.map +1 -0
- package/dist/tools/ToolRegistry.js +340 -0
- package/dist/tools/ToolRegistry.js.map +1 -0
- package/dist/tools/index.d.ts +7 -0
- package/dist/tools/index.d.ts.map +1 -0
- package/dist/tools/index.js +7 -0
- package/dist/tools/index.js.map +1 -0
- package/dist/transports/BrokerTransport.d.ts +151 -0
- package/dist/transports/BrokerTransport.d.ts.map +1 -0
- package/dist/transports/BrokerTransport.js +261 -0
- package/dist/transports/BrokerTransport.js.map +1 -0
- package/dist/transports/NativeTransport.d.ts +149 -0
- package/dist/transports/NativeTransport.d.ts.map +1 -0
- package/dist/transports/NativeTransport.js +302 -0
- package/dist/transports/NativeTransport.js.map +1 -0
- package/dist/transports/StdioTransport.d.ts +172 -0
- package/dist/transports/StdioTransport.d.ts.map +1 -0
- package/dist/transports/StdioTransport.js +410 -0
- package/dist/transports/StdioTransport.js.map +1 -0
- package/dist/transports/index.d.ts +10 -0
- package/dist/transports/index.d.ts.map +1 -0
- package/dist/transports/index.js +9 -0
- package/dist/transports/index.js.map +1 -0
- package/dist/types/broker.d.ts +301 -0
- package/dist/types/broker.d.ts.map +1 -0
- package/dist/types/broker.js +46 -0
- package/dist/types/broker.js.map +1 -0
- package/dist/types/config.d.ts +325 -0
- package/dist/types/config.d.ts.map +1 -0
- package/dist/types/config.js +17 -0
- package/dist/types/config.js.map +1 -0
- package/dist/types/errors.d.ts +178 -0
- package/dist/types/errors.d.ts.map +1 -0
- package/dist/types/errors.js +165 -0
- package/dist/types/errors.js.map +1 -0
- package/dist/types/events.d.ts +210 -0
- package/dist/types/events.d.ts.map +1 -0
- package/dist/types/events.js +8 -0
- package/dist/types/events.js.map +1 -0
- package/dist/types/index.d.ts +32 -0
- package/dist/types/index.d.ts.map +1 -0
- package/dist/types/index.js +21 -0
- package/dist/types/index.js.map +1 -0
- package/dist/types/protocol.d.ts +48 -0
- package/dist/types/protocol.d.ts.map +1 -0
- package/dist/types/protocol.js +11 -0
- package/dist/types/protocol.js.map +1 -0
- package/dist/types/tools.d.ts +67 -0
- package/dist/types/tools.d.ts.map +1 -0
- package/dist/types/tools.js +16 -0
- package/dist/types/tools.js.map +1 -0
- package/dist/types/transport.d.ts +250 -0
- package/dist/types/transport.d.ts.map +1 -0
- package/dist/types/transport.js +18 -0
- package/dist/types/transport.js.map +1 -0
- package/dist/validation/SchemaValidator.d.ts +208 -0
- package/dist/validation/SchemaValidator.d.ts.map +1 -0
- package/dist/validation/SchemaValidator.js +411 -0
- package/dist/validation/SchemaValidator.js.map +1 -0
- package/dist/validation/index.d.ts +11 -0
- package/dist/validation/index.d.ts.map +1 -0
- package/dist/validation/index.js +10 -0
- package/dist/validation/index.js.map +1 -0
- package/package.json +69 -5
- package/agent.json +0 -18
- package/broker.js +0 -214
- package/index.js +0 -370
- package/ipc.js +0 -220
- package/ipcInterfaces/pythonAbilityIPC.py +0 -177
|
@@ -0,0 +1,301 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Broker Types
|
|
3
|
+
*
|
|
4
|
+
* Type definitions for broker connections, protocol, and communication.
|
|
5
|
+
* Brokers enable service discovery and remote communication between agents.
|
|
6
|
+
*/
|
|
7
|
+
import type { WebSocket } from 'ws';
|
|
8
|
+
import type { ToolDefinition } from './tools.js';
|
|
9
|
+
/**
|
|
10
|
+
* Broker connection state
|
|
11
|
+
*/
|
|
12
|
+
export interface BrokerConnection {
|
|
13
|
+
/**
|
|
14
|
+
* WebSocket instance
|
|
15
|
+
*/
|
|
16
|
+
ws: WebSocket;
|
|
17
|
+
/**
|
|
18
|
+
* Broker URL (e.g., ws://localhost:8080)
|
|
19
|
+
*/
|
|
20
|
+
url: string;
|
|
21
|
+
/**
|
|
22
|
+
* Named identifier for this broker (e.g., 'local', 'production')
|
|
23
|
+
*/
|
|
24
|
+
brokerName: string;
|
|
25
|
+
/**
|
|
26
|
+
* Unique agent/session ID assigned by broker
|
|
27
|
+
*/
|
|
28
|
+
agentId: string;
|
|
29
|
+
/**
|
|
30
|
+
* Whether authentication has completed successfully
|
|
31
|
+
*/
|
|
32
|
+
isAuthenticated: boolean;
|
|
33
|
+
/**
|
|
34
|
+
* Connection state
|
|
35
|
+
*/
|
|
36
|
+
state: ConnectionState;
|
|
37
|
+
/**
|
|
38
|
+
* Heartbeat timer (for keeping connection alive)
|
|
39
|
+
*/
|
|
40
|
+
heartbeatTimer?: NodeJS.Timeout;
|
|
41
|
+
/**
|
|
42
|
+
* When the connection was established
|
|
43
|
+
*/
|
|
44
|
+
connectedAt?: number;
|
|
45
|
+
/**
|
|
46
|
+
* Last heartbeat timestamp
|
|
47
|
+
*/
|
|
48
|
+
lastHeartbeat?: number;
|
|
49
|
+
}
|
|
50
|
+
/**
|
|
51
|
+
* Connection state enum
|
|
52
|
+
*/
|
|
53
|
+
export declare enum ConnectionState {
|
|
54
|
+
DISCONNECTED = "disconnected",
|
|
55
|
+
CONNECTING = "connecting",
|
|
56
|
+
CONNECTED = "connected",
|
|
57
|
+
AUTHENTICATING = "authenticating",
|
|
58
|
+
AUTHENTICATED = "authenticated",
|
|
59
|
+
ERROR = "error"
|
|
60
|
+
}
|
|
61
|
+
/**
|
|
62
|
+
* Broker configuration
|
|
63
|
+
*/
|
|
64
|
+
export interface BrokerConfig {
|
|
65
|
+
/**
|
|
66
|
+
* Broker URL
|
|
67
|
+
*/
|
|
68
|
+
url: string;
|
|
69
|
+
/**
|
|
70
|
+
* Named identifier for this broker
|
|
71
|
+
*/
|
|
72
|
+
name: string;
|
|
73
|
+
/**
|
|
74
|
+
* Authentication token (if required)
|
|
75
|
+
*/
|
|
76
|
+
authToken?: string;
|
|
77
|
+
/**
|
|
78
|
+
* Heartbeat interval in milliseconds
|
|
79
|
+
*/
|
|
80
|
+
heartbeatInterval?: number;
|
|
81
|
+
/**
|
|
82
|
+
* Connection timeout in milliseconds
|
|
83
|
+
*/
|
|
84
|
+
connectionTimeout?: number;
|
|
85
|
+
/**
|
|
86
|
+
* Request timeout in milliseconds
|
|
87
|
+
*/
|
|
88
|
+
requestTimeout?: number;
|
|
89
|
+
/**
|
|
90
|
+
* Whether to automatically reconnect on disconnect
|
|
91
|
+
*/
|
|
92
|
+
autoReconnect?: boolean;
|
|
93
|
+
/**
|
|
94
|
+
* Max reconnection attempts
|
|
95
|
+
*/
|
|
96
|
+
maxReconnectAttempts?: number;
|
|
97
|
+
}
|
|
98
|
+
/**
|
|
99
|
+
* JSON-RPC 2.0 request
|
|
100
|
+
*/
|
|
101
|
+
export interface JsonRpcRequest<TParams = unknown> {
|
|
102
|
+
jsonrpc: '2.0';
|
|
103
|
+
method: string;
|
|
104
|
+
params?: TParams;
|
|
105
|
+
id?: string | number;
|
|
106
|
+
}
|
|
107
|
+
/**
|
|
108
|
+
* JSON-RPC 2.0 response
|
|
109
|
+
*/
|
|
110
|
+
export interface JsonRpcResponse<TResult = unknown> {
|
|
111
|
+
jsonrpc: '2.0';
|
|
112
|
+
result?: TResult;
|
|
113
|
+
error?: JsonRpcError;
|
|
114
|
+
id: string | number;
|
|
115
|
+
}
|
|
116
|
+
/**
|
|
117
|
+
* JSON-RPC 2.0 error
|
|
118
|
+
*/
|
|
119
|
+
export interface JsonRpcError {
|
|
120
|
+
code: number;
|
|
121
|
+
message: string;
|
|
122
|
+
data?: unknown;
|
|
123
|
+
}
|
|
124
|
+
/**
|
|
125
|
+
* JSON-RPC 2.0 notification (request without ID)
|
|
126
|
+
*/
|
|
127
|
+
export interface JsonRpcNotification<TParams = unknown> {
|
|
128
|
+
jsonrpc: '2.0';
|
|
129
|
+
method: string;
|
|
130
|
+
params?: TParams;
|
|
131
|
+
}
|
|
132
|
+
/**
|
|
133
|
+
* KADI broker protocol methods
|
|
134
|
+
*
|
|
135
|
+
* IMPORTANT: These must match KadiMessages in src/messages/index.ts!
|
|
136
|
+
*
|
|
137
|
+
* @deprecated Use KadiMessages directly from '@kadi.build/core/messages' instead
|
|
138
|
+
*/
|
|
139
|
+
export declare enum KadiProtocolMethod {
|
|
140
|
+
HANDSHAKE = "kadi.session.hello",
|
|
141
|
+
AUTHENTICATE = "kadi.session.authenticate",
|
|
142
|
+
HEARTBEAT = "kadi.session.ping",
|
|
143
|
+
GOODBYE = "kadi.session.goodbye",
|
|
144
|
+
REGISTER_CAPABILITIES = "kadi.agent.register",
|
|
145
|
+
LIST_TOOLS = "kadi.ability.list",
|
|
146
|
+
TOOL_INVOKE = "kadi.ability.request",
|
|
147
|
+
TOOL_RESULT = "kadi.ability.result",
|
|
148
|
+
TOOL_PENDING = "kadi.ability.pending",
|
|
149
|
+
EVENT_SUBSCRIBE = "kadi.event.subscribe",
|
|
150
|
+
EVENT_UNSUBSCRIBE = "kadi.event.unsubscribe",
|
|
151
|
+
EVENT_PUBLISH = "kadi.event.publish",
|
|
152
|
+
EVENT_DELIVERY = "kadi.event.delivery"
|
|
153
|
+
}
|
|
154
|
+
/**
|
|
155
|
+
* Handshake request parameters
|
|
156
|
+
*/
|
|
157
|
+
export interface HandshakeParams {
|
|
158
|
+
/**
|
|
159
|
+
* Agent/client role
|
|
160
|
+
*
|
|
161
|
+
* Must be one of: 'agent', 'client', 'observer', 'ability'
|
|
162
|
+
*/
|
|
163
|
+
role: 'agent' | 'client' | 'observer' | 'ability';
|
|
164
|
+
/**
|
|
165
|
+
* Agent name
|
|
166
|
+
*/
|
|
167
|
+
name?: string;
|
|
168
|
+
/**
|
|
169
|
+
* Agent version
|
|
170
|
+
*/
|
|
171
|
+
version?: string;
|
|
172
|
+
/**
|
|
173
|
+
* Protocol version
|
|
174
|
+
*/
|
|
175
|
+
protocolVersion?: string;
|
|
176
|
+
/**
|
|
177
|
+
* Networks this agent wants to join
|
|
178
|
+
*/
|
|
179
|
+
networks?: string[];
|
|
180
|
+
}
|
|
181
|
+
/**
|
|
182
|
+
* Handshake response result
|
|
183
|
+
*/
|
|
184
|
+
export interface HandshakeResult {
|
|
185
|
+
/**
|
|
186
|
+
* Assigned agent ID
|
|
187
|
+
* Empty string for unauthenticated connections (observers, clients)
|
|
188
|
+
*/
|
|
189
|
+
agentId: string;
|
|
190
|
+
/**
|
|
191
|
+
* Whether this connection requires capability registration
|
|
192
|
+
* True for agent/ability roles, false for client/observer roles
|
|
193
|
+
*/
|
|
194
|
+
requiresRegistration: boolean;
|
|
195
|
+
}
|
|
196
|
+
/**
|
|
197
|
+
* Capability registration parameters
|
|
198
|
+
*/
|
|
199
|
+
export interface RegisterCapabilitiesParams {
|
|
200
|
+
/**
|
|
201
|
+
* Tools this agent provides
|
|
202
|
+
*/
|
|
203
|
+
tools: ToolDefinition[];
|
|
204
|
+
/**
|
|
205
|
+
* Networks to register in
|
|
206
|
+
*/
|
|
207
|
+
networks?: string[];
|
|
208
|
+
/**
|
|
209
|
+
* Display name for this agent
|
|
210
|
+
*/
|
|
211
|
+
displayName?: string;
|
|
212
|
+
}
|
|
213
|
+
/**
|
|
214
|
+
* Tool invocation parameters
|
|
215
|
+
*/
|
|
216
|
+
export interface ToolInvokeParams {
|
|
217
|
+
/**
|
|
218
|
+
* Target agent name
|
|
219
|
+
*/
|
|
220
|
+
targetAgent: string;
|
|
221
|
+
/**
|
|
222
|
+
* Tool name to invoke
|
|
223
|
+
*/
|
|
224
|
+
toolName: string;
|
|
225
|
+
/**
|
|
226
|
+
* Input parameters
|
|
227
|
+
*/
|
|
228
|
+
toolInput?: unknown;
|
|
229
|
+
/**
|
|
230
|
+
* Request ID for tracking
|
|
231
|
+
*/
|
|
232
|
+
requestId?: string;
|
|
233
|
+
/**
|
|
234
|
+
* Timeout in milliseconds
|
|
235
|
+
*/
|
|
236
|
+
timeout?: number;
|
|
237
|
+
}
|
|
238
|
+
/**
|
|
239
|
+
* Event subscription parameters
|
|
240
|
+
*/
|
|
241
|
+
export interface EventSubscribeParams {
|
|
242
|
+
/**
|
|
243
|
+
* Event patterns to subscribe to
|
|
244
|
+
*/
|
|
245
|
+
channels: string[];
|
|
246
|
+
/**
|
|
247
|
+
* Network to subscribe within
|
|
248
|
+
*/
|
|
249
|
+
networkId?: string;
|
|
250
|
+
}
|
|
251
|
+
/**
|
|
252
|
+
* Event publish parameters
|
|
253
|
+
*/
|
|
254
|
+
export interface EventPublishParams {
|
|
255
|
+
/**
|
|
256
|
+
* Event channel/name
|
|
257
|
+
*/
|
|
258
|
+
channel: string;
|
|
259
|
+
/**
|
|
260
|
+
* Event data
|
|
261
|
+
*/
|
|
262
|
+
data: unknown;
|
|
263
|
+
/**
|
|
264
|
+
* Optional hints for delivery
|
|
265
|
+
*/
|
|
266
|
+
hints?: {
|
|
267
|
+
latestOnly?: boolean;
|
|
268
|
+
coalescingKey?: string;
|
|
269
|
+
ttl?: number;
|
|
270
|
+
};
|
|
271
|
+
/**
|
|
272
|
+
* Network to publish to
|
|
273
|
+
*/
|
|
274
|
+
networkId?: string;
|
|
275
|
+
}
|
|
276
|
+
/**
|
|
277
|
+
* Pending request tracker
|
|
278
|
+
*/
|
|
279
|
+
export interface PendingRequest<T = unknown> {
|
|
280
|
+
/**
|
|
281
|
+
* Request ID
|
|
282
|
+
*/
|
|
283
|
+
id: string | number;
|
|
284
|
+
/**
|
|
285
|
+
* Promise resolve function
|
|
286
|
+
*/
|
|
287
|
+
resolve: (value: T) => void;
|
|
288
|
+
/**
|
|
289
|
+
* Promise reject function
|
|
290
|
+
*/
|
|
291
|
+
reject: (reason: unknown) => void;
|
|
292
|
+
/**
|
|
293
|
+
* Timeout timer
|
|
294
|
+
*/
|
|
295
|
+
timeout?: NodeJS.Timeout;
|
|
296
|
+
/**
|
|
297
|
+
* When the request was sent
|
|
298
|
+
*/
|
|
299
|
+
timestamp: number;
|
|
300
|
+
}
|
|
301
|
+
//# sourceMappingURL=broker.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"broker.d.ts","sourceRoot":"","sources":["../../src/types/broker.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,IAAI,CAAC;AACpC,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,YAAY,CAAC;AAEjD;;GAEG;AACH,MAAM,WAAW,gBAAgB;IAC/B;;OAEG;IACH,EAAE,EAAE,SAAS,CAAC;IAEd;;OAEG;IACH,GAAG,EAAE,MAAM,CAAC;IAEZ;;OAEG;IACH,UAAU,EAAE,MAAM,CAAC;IAEnB;;OAEG;IACH,OAAO,EAAE,MAAM,CAAC;IAEhB;;OAEG;IACH,eAAe,EAAE,OAAO,CAAC;IAEzB;;OAEG;IACH,KAAK,EAAE,eAAe,CAAC;IAEvB;;OAEG;IACH,cAAc,CAAC,EAAE,MAAM,CAAC,OAAO,CAAC;IAEhC;;OAEG;IACH,WAAW,CAAC,EAAE,MAAM,CAAC;IAErB;;OAEG;IACH,aAAa,CAAC,EAAE,MAAM,CAAC;CACxB;AAED;;GAEG;AACH,oBAAY,eAAe;IACzB,YAAY,iBAAiB;IAC7B,UAAU,eAAe;IACzB,SAAS,cAAc;IACvB,cAAc,mBAAmB;IACjC,aAAa,kBAAkB;IAC/B,KAAK,UAAU;CAChB;AAED;;GAEG;AACH,MAAM,WAAW,YAAY;IAC3B;;OAEG;IACH,GAAG,EAAE,MAAM,CAAC;IAEZ;;OAEG;IACH,IAAI,EAAE,MAAM,CAAC;IAEb;;OAEG;IACH,SAAS,CAAC,EAAE,MAAM,CAAC;IAEnB;;OAEG;IACH,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAE3B;;OAEG;IACH,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAE3B;;OAEG;IACH,cAAc,CAAC,EAAE,MAAM,CAAC;IAExB;;OAEG;IACH,aAAa,CAAC,EAAE,OAAO,CAAC;IAExB;;OAEG;IACH,oBAAoB,CAAC,EAAE,MAAM,CAAC;CAC/B;AAED;;GAEG;AACH,MAAM,WAAW,cAAc,CAAC,OAAO,GAAG,OAAO;IAC/C,OAAO,EAAE,KAAK,CAAC;IACf,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,EAAE,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;CACtB;AAED;;GAEG;AACH,MAAM,WAAW,eAAe,CAAC,OAAO,GAAG,OAAO;IAChD,OAAO,EAAE,KAAK,CAAC;IACf,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,KAAK,CAAC,EAAE,YAAY,CAAC;IACrB,EAAE,EAAE,MAAM,GAAG,MAAM,CAAC;CACrB;AAED;;GAEG;AACH,MAAM,WAAW,YAAY;IAC3B,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,CAAC,EAAE,OAAO,CAAC;CAChB;AAED;;GAEG;AACH,MAAM,WAAW,mBAAmB,CAAC,OAAO,GAAG,OAAO;IACpD,OAAO,EAAE,KAAK,CAAC;IACf,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,OAAO,CAAC;CAClB;AAED;;;;;;GAMG;AACH,oBAAY,kBAAkB;IAE5B,SAAS,uBAAuB;IAChC,YAAY,8BAA8B;IAC1C,SAAS,sBAAsB;IAC/B,OAAO,yBAAyB;IAGhC,qBAAqB,wBAAwB;IAG7C,UAAU,sBAAsB;IAChC,WAAW,yBAAyB;IACpC,WAAW,wBAAwB;IACnC,YAAY,yBAAyB;IAGrC,eAAe,yBAAyB;IACxC,iBAAiB,2BAA2B;IAC5C,aAAa,uBAAuB;IACpC,cAAc,wBAAwB;CACvC;AAED;;GAEG;AACH,MAAM,WAAW,eAAe;IAC9B;;;;OAIG;IACH,IAAI,EAAE,OAAO,GAAG,QAAQ,GAAG,UAAU,GAAG,SAAS,CAAC;IAElD;;OAEG;IACH,IAAI,CAAC,EAAE,MAAM,CAAC;IAEd;;OAEG;IACH,OAAO,CAAC,EAAE,MAAM,CAAC;IAEjB;;OAEG;IACH,eAAe,CAAC,EAAE,MAAM,CAAC;IAEzB;;OAEG;IACH,QAAQ,CAAC,EAAE,MAAM,EAAE,CAAC;CACrB;AAED;;GAEG;AACH,MAAM,WAAW,eAAe;IAC9B;;;OAGG;IACH,OAAO,EAAE,MAAM,CAAC;IAEhB;;;OAGG;IACH,oBAAoB,EAAE,OAAO,CAAC;CAC/B;AAED;;GAEG;AACH,MAAM,WAAW,0BAA0B;IACzC;;OAEG;IACH,KAAK,EAAE,cAAc,EAAE,CAAC;IAExB;;OAEG;IACH,QAAQ,CAAC,EAAE,MAAM,EAAE,CAAC;IAEpB;;OAEG;IACH,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AAED;;GAEG;AACH,MAAM,WAAW,gBAAgB;IAC/B;;OAEG;IACH,WAAW,EAAE,MAAM,CAAC;IAEpB;;OAEG;IACH,QAAQ,EAAE,MAAM,CAAC;IAEjB;;OAEG;IACH,SAAS,CAAC,EAAE,OAAO,CAAC;IAEpB;;OAEG;IACH,SAAS,CAAC,EAAE,MAAM,CAAC;IAEnB;;OAEG;IACH,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAED;;GAEG;AACH,MAAM,WAAW,oBAAoB;IACnC;;OAEG;IACH,QAAQ,EAAE,MAAM,EAAE,CAAC;IAEnB;;OAEG;IACH,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED;;GAEG;AACH,MAAM,WAAW,kBAAkB;IACjC;;OAEG;IACH,OAAO,EAAE,MAAM,CAAC;IAEhB;;OAEG;IACH,IAAI,EAAE,OAAO,CAAC;IAEd;;OAEG;IACH,KAAK,CAAC,EAAE;QACN,UAAU,CAAC,EAAE,OAAO,CAAC;QACrB,aAAa,CAAC,EAAE,MAAM,CAAC;QACvB,GAAG,CAAC,EAAE,MAAM,CAAC;KACd,CAAC;IAEF;;OAEG;IACH,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED;;GAEG;AACH,MAAM,WAAW,cAAc,CAAC,CAAC,GAAG,OAAO;IACzC;;OAEG;IACH,EAAE,EAAE,MAAM,GAAG,MAAM,CAAC;IAEpB;;OAEG;IACH,OAAO,EAAE,CAAC,KAAK,EAAE,CAAC,KAAK,IAAI,CAAC;IAE5B;;OAEG;IACH,MAAM,EAAE,CAAC,MAAM,EAAE,OAAO,KAAK,IAAI,CAAC;IAElC;;OAEG;IACH,OAAO,CAAC,EAAE,MAAM,CAAC,OAAO,CAAC;IAEzB;;OAEG;IACH,SAAS,EAAE,MAAM,CAAC;CACnB"}
|
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Broker Types
|
|
3
|
+
*
|
|
4
|
+
* Type definitions for broker connections, protocol, and communication.
|
|
5
|
+
* Brokers enable service discovery and remote communication between agents.
|
|
6
|
+
*/
|
|
7
|
+
/**
|
|
8
|
+
* Connection state enum
|
|
9
|
+
*/
|
|
10
|
+
export var ConnectionState;
|
|
11
|
+
(function (ConnectionState) {
|
|
12
|
+
ConnectionState["DISCONNECTED"] = "disconnected";
|
|
13
|
+
ConnectionState["CONNECTING"] = "connecting";
|
|
14
|
+
ConnectionState["CONNECTED"] = "connected";
|
|
15
|
+
ConnectionState["AUTHENTICATING"] = "authenticating";
|
|
16
|
+
ConnectionState["AUTHENTICATED"] = "authenticated";
|
|
17
|
+
ConnectionState["ERROR"] = "error";
|
|
18
|
+
})(ConnectionState || (ConnectionState = {}));
|
|
19
|
+
/**
|
|
20
|
+
* KADI broker protocol methods
|
|
21
|
+
*
|
|
22
|
+
* IMPORTANT: These must match KadiMessages in src/messages/index.ts!
|
|
23
|
+
*
|
|
24
|
+
* @deprecated Use KadiMessages directly from '@kadi.build/core/messages' instead
|
|
25
|
+
*/
|
|
26
|
+
export var KadiProtocolMethod;
|
|
27
|
+
(function (KadiProtocolMethod) {
|
|
28
|
+
// Session lifecycle
|
|
29
|
+
KadiProtocolMethod["HANDSHAKE"] = "kadi.session.hello";
|
|
30
|
+
KadiProtocolMethod["AUTHENTICATE"] = "kadi.session.authenticate";
|
|
31
|
+
KadiProtocolMethod["HEARTBEAT"] = "kadi.session.ping";
|
|
32
|
+
KadiProtocolMethod["GOODBYE"] = "kadi.session.goodbye";
|
|
33
|
+
// Agent registration
|
|
34
|
+
KadiProtocolMethod["REGISTER_CAPABILITIES"] = "kadi.agent.register";
|
|
35
|
+
// Tool operations
|
|
36
|
+
KadiProtocolMethod["LIST_TOOLS"] = "kadi.ability.list";
|
|
37
|
+
KadiProtocolMethod["TOOL_INVOKE"] = "kadi.ability.request";
|
|
38
|
+
KadiProtocolMethod["TOOL_RESULT"] = "kadi.ability.result";
|
|
39
|
+
KadiProtocolMethod["TOOL_PENDING"] = "kadi.ability.pending";
|
|
40
|
+
// Events
|
|
41
|
+
KadiProtocolMethod["EVENT_SUBSCRIBE"] = "kadi.event.subscribe";
|
|
42
|
+
KadiProtocolMethod["EVENT_UNSUBSCRIBE"] = "kadi.event.unsubscribe";
|
|
43
|
+
KadiProtocolMethod["EVENT_PUBLISH"] = "kadi.event.publish";
|
|
44
|
+
KadiProtocolMethod["EVENT_DELIVERY"] = "kadi.event.delivery";
|
|
45
|
+
})(KadiProtocolMethod || (KadiProtocolMethod = {}));
|
|
46
|
+
//# sourceMappingURL=broker.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"broker.js","sourceRoot":"","sources":["../../src/types/broker.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAuDH;;GAEG;AACH,MAAM,CAAN,IAAY,eAOX;AAPD,WAAY,eAAe;IACzB,gDAA6B,CAAA;IAC7B,4CAAyB,CAAA;IACzB,0CAAuB,CAAA;IACvB,oDAAiC,CAAA;IACjC,kDAA+B,CAAA;IAC/B,kCAAe,CAAA;AACjB,CAAC,EAPW,eAAe,KAAf,eAAe,QAO1B;AAqFD;;;;;;GAMG;AACH,MAAM,CAAN,IAAY,kBAqBX;AArBD,WAAY,kBAAkB;IAC5B,oBAAoB;IACpB,sDAAgC,CAAA;IAChC,gEAA0C,CAAA;IAC1C,qDAA+B,CAAA;IAC/B,sDAAgC,CAAA;IAEhC,qBAAqB;IACrB,mEAA6C,CAAA;IAE7C,kBAAkB;IAClB,sDAAgC,CAAA;IAChC,0DAAoC,CAAA;IACpC,yDAAmC,CAAA;IACnC,2DAAqC,CAAA;IAErC,SAAS;IACT,8DAAwC,CAAA;IACxC,kEAA4C,CAAA;IAC5C,0DAAoC,CAAA;IACpC,4DAAsC,CAAA;AACxC,CAAC,EArBW,kBAAkB,KAAlB,kBAAkB,QAqB7B"}
|
|
@@ -0,0 +1,325 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Configuration Types
|
|
3
|
+
*
|
|
4
|
+
* Type definitions for KADI client and service configuration.
|
|
5
|
+
* Clear precedence: Code > Environment > File > Defaults
|
|
6
|
+
*/
|
|
7
|
+
/**
|
|
8
|
+
* Transport protocol types
|
|
9
|
+
*/
|
|
10
|
+
export type TransportKind = 'native' | 'stdio' | 'broker';
|
|
11
|
+
/**
|
|
12
|
+
* Agent role type
|
|
13
|
+
*/
|
|
14
|
+
export type AgentRole = 'agent' | 'ability' | 'client' | 'observer';
|
|
15
|
+
/**
|
|
16
|
+
* KADI Client Configuration
|
|
17
|
+
*
|
|
18
|
+
* Complete configuration for creating a KADI client.
|
|
19
|
+
*
|
|
20
|
+
* @example
|
|
21
|
+
* ```typescript
|
|
22
|
+
* const config: KadiClientConfig = {
|
|
23
|
+
* name: 'my-service',
|
|
24
|
+
* brokers: {
|
|
25
|
+
* local: 'ws://localhost:8080',
|
|
26
|
+
* prod: 'wss://prod.example.com'
|
|
27
|
+
* },
|
|
28
|
+
* networks: ['global', 'team-alpha']
|
|
29
|
+
* };
|
|
30
|
+
* ```
|
|
31
|
+
*/
|
|
32
|
+
export interface KadiClientConfig {
|
|
33
|
+
/**
|
|
34
|
+
* Agent/service name (required)
|
|
35
|
+
*/
|
|
36
|
+
name: string;
|
|
37
|
+
/**
|
|
38
|
+
* Version string (semver recommended)
|
|
39
|
+
*/
|
|
40
|
+
version?: string;
|
|
41
|
+
/**
|
|
42
|
+
* Human-readable description
|
|
43
|
+
*/
|
|
44
|
+
description?: string;
|
|
45
|
+
/**
|
|
46
|
+
* Role of this agent
|
|
47
|
+
* @default 'agent'
|
|
48
|
+
*/
|
|
49
|
+
role?: AgentRole;
|
|
50
|
+
/**
|
|
51
|
+
* Default transport mode for loading abilities
|
|
52
|
+
* @default 'native'
|
|
53
|
+
*/
|
|
54
|
+
transport?: TransportKind;
|
|
55
|
+
/**
|
|
56
|
+
* Named broker configurations
|
|
57
|
+
*
|
|
58
|
+
* @example
|
|
59
|
+
* ```typescript
|
|
60
|
+
* brokers: {
|
|
61
|
+
* local: 'ws://localhost:8080',
|
|
62
|
+
* production: 'wss://broker.example.com'
|
|
63
|
+
* }
|
|
64
|
+
* ```
|
|
65
|
+
*/
|
|
66
|
+
brokers?: Record<string, string>;
|
|
67
|
+
/**
|
|
68
|
+
* Default broker to use (must be a key in `brokers`)
|
|
69
|
+
*/
|
|
70
|
+
defaultBroker?: string;
|
|
71
|
+
/**
|
|
72
|
+
* Networks to join
|
|
73
|
+
* @default ['global']
|
|
74
|
+
*/
|
|
75
|
+
networks?: string[];
|
|
76
|
+
/**
|
|
77
|
+
* Path to agent.json file (for ability mode)
|
|
78
|
+
*/
|
|
79
|
+
abilityAgentJSON?: string;
|
|
80
|
+
/**
|
|
81
|
+
* Whether to automatically connect to brokers on instantiation
|
|
82
|
+
* @default false
|
|
83
|
+
*/
|
|
84
|
+
autoConnect?: boolean;
|
|
85
|
+
/**
|
|
86
|
+
* Advanced configuration options
|
|
87
|
+
*/
|
|
88
|
+
advanced?: AdvancedConfig;
|
|
89
|
+
}
|
|
90
|
+
/**
|
|
91
|
+
* Advanced configuration options
|
|
92
|
+
*/
|
|
93
|
+
export interface AdvancedConfig {
|
|
94
|
+
/**
|
|
95
|
+
* Heartbeat interval in milliseconds
|
|
96
|
+
* @default 30000 (30 seconds)
|
|
97
|
+
*/
|
|
98
|
+
heartbeatInterval?: number;
|
|
99
|
+
/**
|
|
100
|
+
* Request timeout in milliseconds
|
|
101
|
+
* @default 30000 (30 seconds)
|
|
102
|
+
*/
|
|
103
|
+
requestTimeout?: number;
|
|
104
|
+
/**
|
|
105
|
+
* Connection timeout in milliseconds
|
|
106
|
+
* @default 10000 (10 seconds)
|
|
107
|
+
*/
|
|
108
|
+
connectionTimeout?: number;
|
|
109
|
+
/**
|
|
110
|
+
* Whether to automatically reconnect on disconnect
|
|
111
|
+
* @default true
|
|
112
|
+
*/
|
|
113
|
+
autoReconnect?: boolean;
|
|
114
|
+
/**
|
|
115
|
+
* Maximum reconnection attempts
|
|
116
|
+
* @default 5
|
|
117
|
+
*/
|
|
118
|
+
maxReconnectAttempts?: number;
|
|
119
|
+
/**
|
|
120
|
+
* Enable verbose logging
|
|
121
|
+
* @default false
|
|
122
|
+
*/
|
|
123
|
+
verbose?: boolean;
|
|
124
|
+
}
|
|
125
|
+
/**
|
|
126
|
+
* Simplified configuration for quick setup
|
|
127
|
+
*
|
|
128
|
+
* Can be just a broker URL string or a full config object
|
|
129
|
+
*
|
|
130
|
+
* @example
|
|
131
|
+
* ```typescript
|
|
132
|
+
* // Simple
|
|
133
|
+
* const config: KadiConfig = 'ws://localhost:8080';
|
|
134
|
+
*
|
|
135
|
+
* // Full
|
|
136
|
+
* const config: KadiConfig = {
|
|
137
|
+
* name: 'my-service',
|
|
138
|
+
* broker: 'ws://localhost:8080'
|
|
139
|
+
* };
|
|
140
|
+
* ```
|
|
141
|
+
*/
|
|
142
|
+
export type KadiConfig = string | KadiClientConfig;
|
|
143
|
+
/**
|
|
144
|
+
* Service configuration (simplified for service creation)
|
|
145
|
+
*
|
|
146
|
+
* @example
|
|
147
|
+
* ```typescript
|
|
148
|
+
* const config: ServiceConfig = {
|
|
149
|
+
* name: 'calculator',
|
|
150
|
+
* broker: 'ws://localhost:8080'
|
|
151
|
+
* };
|
|
152
|
+
* ```
|
|
153
|
+
*/
|
|
154
|
+
export interface ServiceConfig {
|
|
155
|
+
/**
|
|
156
|
+
* Service name
|
|
157
|
+
*/
|
|
158
|
+
name: string;
|
|
159
|
+
/**
|
|
160
|
+
* Broker URL or name
|
|
161
|
+
*/
|
|
162
|
+
broker?: string;
|
|
163
|
+
/**
|
|
164
|
+
* Version
|
|
165
|
+
*/
|
|
166
|
+
version?: string;
|
|
167
|
+
/**
|
|
168
|
+
* Description
|
|
169
|
+
*/
|
|
170
|
+
description?: string;
|
|
171
|
+
/**
|
|
172
|
+
* Networks to join
|
|
173
|
+
*/
|
|
174
|
+
networks?: string[];
|
|
175
|
+
}
|
|
176
|
+
/**
|
|
177
|
+
* Ability loading options
|
|
178
|
+
*
|
|
179
|
+
* @deprecated Use {@link LoadOptions} from '@kadi.build/core/abilities' instead
|
|
180
|
+
*
|
|
181
|
+
* **Migration Guide:**
|
|
182
|
+
* ```typescript
|
|
183
|
+
* // OLD (deprecated)
|
|
184
|
+
* import type { LoadAbilityOptions } from '@kadi.build/core/types';
|
|
185
|
+
* const options: LoadAbilityOptions = {
|
|
186
|
+
* transport: 'broker',
|
|
187
|
+
* networks: ['global']
|
|
188
|
+
* };
|
|
189
|
+
*
|
|
190
|
+
* // NEW (recommended)
|
|
191
|
+
* import type { LoadOptions } from '@kadi.build/core/abilities';
|
|
192
|
+
* const options: LoadOptions = {
|
|
193
|
+
* transport: 'broker',
|
|
194
|
+
* networks: ['global']
|
|
195
|
+
* };
|
|
196
|
+
* ```
|
|
197
|
+
*
|
|
198
|
+
* **Benefits of new LoadOptions:**
|
|
199
|
+
* - Type-safe discriminated unions (only relevant fields per transport)
|
|
200
|
+
* - Better autocomplete
|
|
201
|
+
* - Compile-time validation
|
|
202
|
+
* - Auto-detection support
|
|
203
|
+
*
|
|
204
|
+
* This interface kept temporarily for backward compatibility.
|
|
205
|
+
* Will be removed in next major version.
|
|
206
|
+
*/
|
|
207
|
+
export interface LoadAbilityOptions {
|
|
208
|
+
/**
|
|
209
|
+
* Transport protocol to use
|
|
210
|
+
* @deprecated Use LoadOptions from abilities module
|
|
211
|
+
*/
|
|
212
|
+
transport?: TransportKind;
|
|
213
|
+
/**
|
|
214
|
+
* Version constraint (semver)
|
|
215
|
+
* @deprecated Use LoadOptions from abilities module
|
|
216
|
+
*/
|
|
217
|
+
version?: string;
|
|
218
|
+
/**
|
|
219
|
+
* Networks to search in (for broker transport)
|
|
220
|
+
* @deprecated Use LoadOptions from abilities module
|
|
221
|
+
*/
|
|
222
|
+
networks?: string[];
|
|
223
|
+
/**
|
|
224
|
+
* Specific broker to use (overrides client default)
|
|
225
|
+
* @deprecated Use LoadOptions from abilities module
|
|
226
|
+
*/
|
|
227
|
+
broker?: string;
|
|
228
|
+
/**
|
|
229
|
+
* Timeout for loading
|
|
230
|
+
* @deprecated Use LoadOptions from abilities module
|
|
231
|
+
*/
|
|
232
|
+
timeout?: number;
|
|
233
|
+
/**
|
|
234
|
+
* Path to ability directory (for native/stdio transports)
|
|
235
|
+
* @deprecated Use LoadOptions from abilities module
|
|
236
|
+
*/
|
|
237
|
+
path?: string;
|
|
238
|
+
}
|
|
239
|
+
/**
|
|
240
|
+
* Configuration loaded from agent.json file
|
|
241
|
+
*/
|
|
242
|
+
export interface AgentJsonConfig {
|
|
243
|
+
/**
|
|
244
|
+
* Agent name
|
|
245
|
+
*/
|
|
246
|
+
name: string;
|
|
247
|
+
/**
|
|
248
|
+
* Version
|
|
249
|
+
*/
|
|
250
|
+
version?: string;
|
|
251
|
+
/**
|
|
252
|
+
* Description
|
|
253
|
+
*/
|
|
254
|
+
description?: string;
|
|
255
|
+
/**
|
|
256
|
+
* Broker configuration
|
|
257
|
+
*/
|
|
258
|
+
brokers?: Record<string, string>;
|
|
259
|
+
/**
|
|
260
|
+
* Default broker
|
|
261
|
+
*/
|
|
262
|
+
defaultBroker?: string;
|
|
263
|
+
/**
|
|
264
|
+
* Networks
|
|
265
|
+
*/
|
|
266
|
+
networks?: string[];
|
|
267
|
+
/**
|
|
268
|
+
* Tools/capabilities this agent provides
|
|
269
|
+
*/
|
|
270
|
+
tools?: Array<{
|
|
271
|
+
name: string;
|
|
272
|
+
handler: string;
|
|
273
|
+
schema?: Record<string, unknown>;
|
|
274
|
+
}>;
|
|
275
|
+
/**
|
|
276
|
+
* Other metadata
|
|
277
|
+
*/
|
|
278
|
+
[key: string]: unknown;
|
|
279
|
+
}
|
|
280
|
+
/**
|
|
281
|
+
* Environment variable configuration
|
|
282
|
+
*/
|
|
283
|
+
export interface EnvConfig {
|
|
284
|
+
/**
|
|
285
|
+
* KADI_BROKER_URL
|
|
286
|
+
*/
|
|
287
|
+
KADI_BROKER_URL?: string;
|
|
288
|
+
/**
|
|
289
|
+
* KADI_NETWORKS (comma-separated)
|
|
290
|
+
*/
|
|
291
|
+
KADI_NETWORKS?: string;
|
|
292
|
+
/**
|
|
293
|
+
* KADI_TRANSPORT
|
|
294
|
+
*/
|
|
295
|
+
KADI_TRANSPORT?: TransportKind;
|
|
296
|
+
/**
|
|
297
|
+
* KADI_AGENT_NAME
|
|
298
|
+
*/
|
|
299
|
+
KADI_AGENT_NAME?: string;
|
|
300
|
+
/**
|
|
301
|
+
* KADI_AUTO_CONNECT
|
|
302
|
+
*/
|
|
303
|
+
KADI_AUTO_CONNECT?: string;
|
|
304
|
+
}
|
|
305
|
+
/**
|
|
306
|
+
* Resolved configuration after merging all sources
|
|
307
|
+
*/
|
|
308
|
+
export interface ResolvedConfig extends Required<KadiClientConfig> {
|
|
309
|
+
/**
|
|
310
|
+
* Configuration source for each field
|
|
311
|
+
*/
|
|
312
|
+
sources: {
|
|
313
|
+
[K in keyof KadiClientConfig]?: ConfigSource;
|
|
314
|
+
};
|
|
315
|
+
}
|
|
316
|
+
/**
|
|
317
|
+
* Configuration source
|
|
318
|
+
*/
|
|
319
|
+
export declare enum ConfigSource {
|
|
320
|
+
CODE = "code",
|
|
321
|
+
ENVIRONMENT = "environment",
|
|
322
|
+
FILE = "file",
|
|
323
|
+
DEFAULT = "default"
|
|
324
|
+
}
|
|
325
|
+
//# sourceMappingURL=config.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../src/types/config.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Configuration Types
|
|
3
|
+
*
|
|
4
|
+
* Type definitions for KADI client and service configuration.
|
|
5
|
+
* Clear precedence: Code > Environment > File > Defaults
|
|
6
|
+
*/
|
|
7
|
+
/**
|
|
8
|
+
* Configuration source
|
|
9
|
+
*/
|
|
10
|
+
export var ConfigSource;
|
|
11
|
+
(function (ConfigSource) {
|
|
12
|
+
ConfigSource["CODE"] = "code";
|
|
13
|
+
ConfigSource["ENVIRONMENT"] = "environment";
|
|
14
|
+
ConfigSource["FILE"] = "file";
|
|
15
|
+
ConfigSource["DEFAULT"] = "default";
|
|
16
|
+
})(ConfigSource || (ConfigSource = {}));
|
|
17
|
+
//# sourceMappingURL=config.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"config.js","sourceRoot":"","sources":["../../src/types/config.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAoWH;;GAEG;AACH,MAAM,CAAN,IAAY,YAKX;AALD,WAAY,YAAY;IACtB,6BAAa,CAAA;IACb,2CAA2B,CAAA;IAC3B,6BAAa,CAAA;IACb,mCAAmB,CAAA;AACrB,CAAC,EALW,YAAY,KAAZ,YAAY,QAKvB"}
|