@agentxjs/core 2.0.0 → 3.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (112) hide show
  1. package/dist/{Processor-DT0N1qI6.d.ts → Processor-CeMyXtsX.d.ts} +1 -1
  2. package/dist/agent/engine/internal/index.d.ts +4 -5
  3. package/dist/agent/engine/internal/index.js +1 -1
  4. package/dist/agent/engine/mealy/index.d.ts +4 -4
  5. package/dist/agent/engine/mealy/index.js +1 -1
  6. package/dist/agent/index.d.ts +91 -91
  7. package/dist/agent/index.js +6 -6
  8. package/dist/agent/types/index.d.ts +4 -4
  9. package/dist/agent/types/index.js +1 -1
  10. package/dist/bash/index.d.ts +4 -4
  11. package/dist/{chunk-LTVNPHST.js → chunk-22NTRYNO.js} +60 -60
  12. package/dist/chunk-22NTRYNO.js.map +1 -0
  13. package/dist/{chunk-7ZDX3O6I.js → chunk-AAFPAF67.js} +2 -2
  14. package/dist/{chunk-7ZDX3O6I.js.map → chunk-AAFPAF67.js.map} +1 -1
  15. package/dist/{chunk-EKHT54KN.js → chunk-APCBNCOW.js} +1 -1
  16. package/dist/{chunk-EKHT54KN.js.map → chunk-APCBNCOW.js.map} +1 -1
  17. package/dist/{chunk-JTKCV7IS.js → chunk-RWIYC65R.js} +111 -111
  18. package/dist/{chunk-JTKCV7IS.js.map → chunk-RWIYC65R.js.map} +1 -1
  19. package/dist/{chunk-DEAR6N3O.js → chunk-TUFZ2YH6.js} +1 -1
  20. package/dist/chunk-TUFZ2YH6.js.map +1 -0
  21. package/dist/{chunk-23UUBQXR.js → chunk-YSZG6XIM.js} +1 -1
  22. package/dist/chunk-YSZG6XIM.js.map +1 -0
  23. package/dist/{combinators-nEa5dD0T.d.ts → combinators-Dy-7lxKV.d.ts} +50 -50
  24. package/dist/common/logger/index.js +14 -14
  25. package/dist/common/logger/index.js.map +1 -1
  26. package/dist/container/index.d.ts +3 -3
  27. package/dist/driver/index.d.ts +2 -2
  28. package/dist/event/index.d.ts +1 -1
  29. package/dist/event/index.js +2 -2
  30. package/dist/event/types/index.d.ts +199 -199
  31. package/dist/event/types/index.js +1 -1
  32. package/dist/{event-DNWOBSBO.d.ts → event-DNsF9EkO.d.ts} +4 -6
  33. package/dist/image/index.d.ts +3 -3
  34. package/dist/image/index.js.map +1 -1
  35. package/dist/{index-CuS1i5V-.d.ts → index--gxNpY5W.d.ts} +2 -2
  36. package/dist/index.d.ts +4 -4
  37. package/dist/index.js +6 -6
  38. package/dist/{message-03TJzvIX.d.ts → message-Dn-I2vr0.d.ts} +1 -1
  39. package/dist/mq/index.d.ts +25 -25
  40. package/dist/mq/index.js +1 -1
  41. package/dist/mq/index.js.map +1 -1
  42. package/dist/network/index.d.ts +2 -220
  43. package/dist/network/index.js +27 -27
  44. package/dist/network/index.js.map +1 -1
  45. package/dist/persistence/index.d.ts +2 -2
  46. package/dist/platform/index.d.ts +14 -6
  47. package/dist/runtime/index.d.ts +5 -5
  48. package/dist/runtime/index.js +6 -6
  49. package/dist/runtime/index.js.map +1 -1
  50. package/dist/session/index.d.ts +3 -3
  51. package/dist/{RpcClient-BcJ_zAGu.d.ts → types-CTV8Z9PI.d.ts} +225 -7
  52. package/dist/{types-aE74Eo6G.d.ts → types-Cb8tKM6Y.d.ts} +1 -1
  53. package/package.json +1 -1
  54. package/src/agent/AgentStateMachine.ts +2 -2
  55. package/src/agent/__tests__/AgentStateMachine.test.ts +2 -2
  56. package/src/agent/__tests__/createAgent.test.ts +4 -4
  57. package/src/agent/__tests__/engine/internal/messageAssemblerProcessor.test.ts +10 -10
  58. package/src/agent/__tests__/engine/internal/stateEventProcessor.test.ts +6 -6
  59. package/src/agent/__tests__/engine/internal/turnTrackerProcessor.test.ts +4 -4
  60. package/src/agent/__tests__/engine/mealy/Mealy.test.ts +3 -3
  61. package/src/agent/__tests__/engine/mealy/Store.test.ts +1 -1
  62. package/src/agent/__tests__/engine/mealy/combinators.test.ts +4 -4
  63. package/src/agent/createAgent.ts +15 -15
  64. package/src/agent/engine/AgentProcessor.ts +7 -7
  65. package/src/agent/engine/MealyMachine.ts +3 -3
  66. package/src/agent/engine/internal/index.ts +11 -11
  67. package/src/agent/engine/internal/messageAssemblerProcessor.ts +14 -14
  68. package/src/agent/engine/internal/stateEventProcessor.ts +13 -15
  69. package/src/agent/engine/internal/turnTrackerProcessor.ts +4 -4
  70. package/src/agent/engine/mealy/Mealy.ts +2 -2
  71. package/src/agent/engine/mealy/combinators.ts +10 -10
  72. package/src/agent/engine/mealy/index.ts +9 -11
  73. package/src/agent/index.ts +30 -32
  74. package/src/agent/types/engine.ts +3 -3
  75. package/src/agent/types/event.ts +4 -8
  76. package/src/agent/types/index.ts +85 -85
  77. package/src/bash/index.ts +1 -1
  78. package/src/common/logger/ConsoleLogger.ts +1 -1
  79. package/src/common/logger/LoggerFactoryImpl.ts +14 -14
  80. package/src/common/logger/index.ts +3 -3
  81. package/src/container/index.ts +4 -5
  82. package/src/container/types.ts +1 -1
  83. package/src/driver/index.ts +15 -17
  84. package/src/driver/types.ts +89 -79
  85. package/src/event/EventBus.ts +10 -10
  86. package/src/event/__tests__/EventBus.test.ts +1 -1
  87. package/src/event/index.ts +2 -3
  88. package/src/event/types/agent.ts +186 -180
  89. package/src/event/types/bus.ts +1 -1
  90. package/src/event/types/command.ts +292 -265
  91. package/src/event/types/container.ts +207 -222
  92. package/src/event/types/driver.ts +153 -155
  93. package/src/event/types/index.ts +6 -12
  94. package/src/event/types/session.ts +117 -130
  95. package/src/image/Image.ts +1 -1
  96. package/src/image/index.ts +4 -5
  97. package/src/mq/OffsetGenerator.ts +1 -1
  98. package/src/mq/__tests__/OffsetGenerator.test.ts +1 -1
  99. package/src/mq/index.ts +4 -5
  100. package/src/network/RpcClient.ts +10 -10
  101. package/src/network/index.ts +41 -44
  102. package/src/network/jsonrpc.ts +5 -5
  103. package/src/persistence/index.ts +5 -5
  104. package/src/platform/types.ts +15 -5
  105. package/src/runtime/AgentXRuntime.ts +15 -15
  106. package/src/runtime/__tests__/AgentXRuntime.test.ts +5 -5
  107. package/src/runtime/index.ts +5 -6
  108. package/src/runtime/types.ts +1 -1
  109. package/src/session/index.ts +2 -3
  110. package/dist/chunk-23UUBQXR.js.map +0 -1
  111. package/dist/chunk-DEAR6N3O.js.map +0 -1
  112. package/dist/chunk-LTVNPHST.js.map +0 -1
@@ -59,25 +59,25 @@
59
59
  // =============================================================================
60
60
 
61
61
  export type {
62
+ AssistantMessage,
63
+ ContentPart,
64
+ ErrorMessage,
65
+ FilePart,
66
+ ImagePart,
67
+ Message,
68
+ // Message Types
69
+ MessageRole,
70
+ MessageSubtype,
62
71
  // Content Parts
63
72
  TextPart,
64
73
  ThinkingPart,
65
- ImagePart,
66
- FilePart,
74
+ TokenUsage,
67
75
  ToolCallPart,
76
+ ToolResultMessage,
68
77
  ToolResultOutput,
69
78
  ToolResultPart,
70
- ContentPart,
71
79
  UserContentPart,
72
- // Message Types
73
- MessageRole,
74
- MessageSubtype,
75
- TokenUsage,
76
80
  UserMessage,
77
- AssistantMessage,
78
- ToolResultMessage,
79
- ErrorMessage,
80
- Message,
81
81
  } from "./message";
82
82
 
83
83
  // =============================================================================
@@ -85,111 +85,111 @@ export type {
85
85
  // =============================================================================
86
86
 
87
87
  export type {
88
- // Base Types
89
- EngineEvent,
88
+ AgentError,
89
+ AgentErrorCategory,
90
+ AgentErrorOccurredEvent,
90
91
  AgentEvent,
92
+ AgentEventHandler,
93
+ AgentMessageEvent,
94
+ // Agent Output
95
+ AgentOutput,
96
+ AgentOutputCallback,
91
97
  // Agent State and Error
92
98
  AgentState,
93
- AgentErrorCategory,
94
- AgentError,
95
- // Stream Events
96
- StopReason,
97
- MessageStartData,
98
- MessageDeltaData,
99
- MessageStopData,
100
- TextDeltaData,
101
- ToolUseStartData,
102
- InputJsonDeltaData,
103
- ToolUseStopData,
104
- ToolResultData,
105
- ErrorReceivedData,
106
- MessageStartEvent,
107
- MessageDeltaEvent,
108
- MessageStopEvent,
109
- TextDeltaEvent,
110
- ToolUseStartEvent,
111
- InputJsonDeltaEvent,
112
- ToolUseStopEvent,
113
- ToolResultEvent,
114
- ErrorReceivedEvent,
115
- StreamEvent,
116
- StreamEventType,
117
- // State Events
118
- ConversationQueuedData,
119
- ConversationStartData,
120
- ConversationThinkingData,
121
- ConversationRespondingData,
99
+ AgentStateEvent,
100
+ AgentTurnEvent,
101
+ AssistantMessageEvent,
122
102
  ConversationEndData,
103
+ ConversationEndEvent,
123
104
  ConversationInterruptedData,
124
- ToolPlannedData,
125
- ToolExecutingData,
126
- ToolCompletedData,
127
- ToolFailedData,
128
- ErrorOccurredData,
129
- StateEvent,
105
+ ConversationInterruptedEvent,
106
+ // State Events
107
+ ConversationQueuedData,
130
108
  ConversationQueuedEvent,
109
+ ConversationRespondingData,
110
+ ConversationRespondingEvent,
111
+ ConversationStartData,
131
112
  ConversationStartEvent,
113
+ ConversationThinkingData,
132
114
  ConversationThinkingEvent,
133
- ConversationRespondingEvent,
134
- ConversationEndEvent,
135
- ConversationInterruptedEvent,
136
- ToolPlannedEvent,
137
- ToolExecutingEvent,
138
- ToolCompletedEvent,
139
- ToolFailedEvent,
115
+ // Base Types
116
+ EngineEvent,
117
+ ErrorMessageEvent,
118
+ ErrorOccurredData,
140
119
  ErrorOccurredEvent,
141
- AgentErrorOccurredEvent,
142
- AgentStateEvent,
120
+ ErrorReceivedData,
121
+ ErrorReceivedEvent,
122
+ InputJsonDeltaData,
123
+ InputJsonDeltaEvent,
124
+ MessageDeltaData,
125
+ MessageDeltaEvent,
143
126
  // Message Events
144
127
  MessageEvent,
145
- UserMessageEvent,
146
- AssistantMessageEvent,
128
+ MessageStartData,
129
+ MessageStartEvent,
130
+ MessageStopData,
131
+ MessageStopEvent,
132
+ StateEvent,
133
+ // Stream Events
134
+ StopReason,
135
+ StreamEvent,
136
+ StreamEventType,
137
+ TextDeltaData,
138
+ TextDeltaEvent,
139
+ ToolCompletedData,
140
+ ToolCompletedEvent,
141
+ ToolExecutingData,
142
+ ToolExecutingEvent,
143
+ ToolFailedData,
144
+ ToolFailedEvent,
145
+ ToolPlannedData,
146
+ ToolPlannedEvent,
147
+ ToolResultData,
148
+ ToolResultEvent,
147
149
  ToolResultMessageEvent,
148
- ErrorMessageEvent,
149
- AgentMessageEvent,
150
+ ToolUseStartData,
151
+ ToolUseStartEvent,
152
+ ToolUseStopData,
153
+ ToolUseStopEvent,
154
+ TurnEvent,
150
155
  // Turn Events
151
156
  TurnRequestData,
152
- TurnResponseData,
153
- TurnEvent,
154
157
  TurnRequestEvent,
158
+ TurnResponseData,
155
159
  TurnResponseEvent,
156
- AgentTurnEvent,
157
- // Agent Output
158
- AgentOutput,
159
160
  // Event Handling
160
161
  Unsubscribe,
161
- AgentOutputCallback,
162
- AgentEventHandler,
162
+ UserMessageEvent,
163
163
  } from "./event";
164
164
 
165
165
  // Type guards (functions, not types)
166
- export { isStateEvent, isMessageEvent, isTurnEvent } from "./event";
166
+ export { isMessageEvent, isStateEvent, isTurnEvent } from "./event";
167
167
 
168
168
  // =============================================================================
169
169
  // Engine Types - Engine, Source, Presenter, Middleware, Interceptor
170
170
  // =============================================================================
171
171
 
172
172
  export type {
173
- // Message Queue
174
- MessageQueue,
175
- // Middleware & Interceptor
176
- AgentMiddlewareNext,
177
- AgentMiddleware,
178
- AgentInterceptorNext,
179
- AgentInterceptor,
180
- // State Machine
181
- StateChange,
182
- StateChangeHandler,
183
- AgentStateMachineInterface,
184
- // Event Handler Maps
185
- EventHandlerMap,
186
- ReactHandlerMap,
187
173
  // Agent Engine
188
174
  AgentEngine,
175
+ AgentEventBus,
176
+ AgentInterceptor,
177
+ AgentInterceptorNext,
178
+ AgentMiddleware,
179
+ // Middleware & Interceptor
180
+ AgentMiddlewareNext,
181
+ AgentPresenter,
189
182
  // Source & Presenter (EventBus adapters)
190
183
  AgentSource,
191
- AgentPresenter,
192
- AgentEventBus,
184
+ AgentStateMachineInterface,
193
185
  // Factory Options
194
186
  CreateAgentOptions,
187
+ // Event Handler Maps
188
+ EventHandlerMap,
189
+ // Message Queue
190
+ MessageQueue,
191
+ ReactHandlerMap,
192
+ // State Machine
193
+ StateChange,
194
+ StateChangeHandler,
195
195
  } from "./engine";
package/src/bash/index.ts CHANGED
@@ -17,5 +17,5 @@
17
17
  * ```
18
18
  */
19
19
 
20
- export type { BashProvider, BashResult, BashOptions } from "./types";
21
20
  export { createBashTool } from "./tool";
21
+ export type { BashOptions, BashProvider, BashResult } from "./types";
@@ -5,7 +5,7 @@
5
5
  * Used as fallback when no custom LoggerFactory is provided.
6
6
  */
7
7
 
8
- import type { Logger, LogContext, LogLevel } from "./types";
8
+ import type { LogContext, Logger, LogLevel } from "./types";
9
9
 
10
10
  export interface ConsoleLoggerOptions {
11
11
  level?: LogLevel;
@@ -7,8 +7,8 @@
7
7
  * - External LoggerFactory can be injected via Runtime
8
8
  */
9
9
 
10
- import type { Logger, LoggerFactory, LogContext, LogLevel } from "./types";
11
10
  import { ConsoleLogger, type ConsoleLoggerOptions } from "./ConsoleLogger";
11
+ import type { LogContext, Logger, LoggerFactory, LogLevel } from "./types";
12
12
 
13
13
  // External factory injected via Runtime
14
14
  let externalFactory: LoggerFactory | null = null;
@@ -36,22 +36,22 @@ export class LoggerFactoryImpl {
36
36
  static getLogger(nameOrClass: string | (new (...args: unknown[]) => unknown)): Logger {
37
37
  const name = typeof nameOrClass === "string" ? nameOrClass : nameOrClass.name;
38
38
 
39
- if (this.loggers.has(name)) {
40
- return this.loggers.get(name)!;
39
+ if (LoggerFactoryImpl.loggers.has(name)) {
40
+ return LoggerFactoryImpl.loggers.get(name)!;
41
41
  }
42
42
 
43
- const lazyLogger = this.createLazyLogger(name);
44
- this.loggers.set(name, lazyLogger);
43
+ const lazyLogger = LoggerFactoryImpl.createLazyLogger(name);
44
+ LoggerFactoryImpl.loggers.set(name, lazyLogger);
45
45
  return lazyLogger;
46
46
  }
47
47
 
48
48
  static configure(config: LoggerFactoryConfig): void {
49
- this.config = { ...this.config, ...config };
49
+ LoggerFactoryImpl.config = { ...LoggerFactoryImpl.config, ...config };
50
50
  }
51
51
 
52
52
  static reset(): void {
53
- this.loggers.clear();
54
- this.config = { defaultLevel: "info" };
53
+ LoggerFactoryImpl.loggers.clear();
54
+ LoggerFactoryImpl.config = { defaultLevel: "info" };
55
55
  externalFactory = null;
56
56
  factoryVersion++; // Invalidate all cached real loggers
57
57
  }
@@ -63,7 +63,7 @@ export class LoggerFactoryImpl {
63
63
  const getRealLogger = (): Logger => {
64
64
  // Recreate logger if factory version changed (setLoggerFactory was called)
65
65
  if (!realLogger || loggerVersion !== factoryVersion) {
66
- realLogger = this.createLogger(name);
66
+ realLogger = LoggerFactoryImpl.createLogger(name);
67
67
  loggerVersion = factoryVersion;
68
68
  }
69
69
  return realLogger;
@@ -71,7 +71,7 @@ export class LoggerFactoryImpl {
71
71
 
72
72
  return {
73
73
  name,
74
- level: this.config.defaultLevel || "info",
74
+ level: LoggerFactoryImpl.config.defaultLevel || "info",
75
75
  debug: (message: string, context?: LogContext) => getRealLogger().debug(message, context),
76
76
  info: (message: string, context?: LogContext) => getRealLogger().info(message, context),
77
77
  warn: (message: string, context?: LogContext) => getRealLogger().warn(message, context),
@@ -89,13 +89,13 @@ export class LoggerFactoryImpl {
89
89
  return externalFactory.getLogger(name);
90
90
  }
91
91
 
92
- if (this.config.defaultImplementation) {
93
- return this.config.defaultImplementation(name);
92
+ if (LoggerFactoryImpl.config.defaultImplementation) {
93
+ return LoggerFactoryImpl.config.defaultImplementation(name);
94
94
  }
95
95
 
96
96
  return new ConsoleLogger(name, {
97
- level: this.config.defaultLevel,
98
- ...this.config.consoleOptions,
97
+ level: LoggerFactoryImpl.config.defaultLevel,
98
+ ...LoggerFactoryImpl.config.consoleOptions,
99
99
  });
100
100
  }
101
101
  }
@@ -16,11 +16,11 @@
16
16
  * ```
17
17
  */
18
18
 
19
- export type { Logger, LoggerFactory, LogContext, LogLevel } from "./types";
20
19
  export { ConsoleLogger, type ConsoleLoggerOptions } from "./ConsoleLogger";
21
20
  export {
22
- LoggerFactoryImpl,
21
+ createLogger,
23
22
  type LoggerFactoryConfig,
23
+ LoggerFactoryImpl,
24
24
  setLoggerFactory,
25
- createLogger,
26
25
  } from "./LoggerFactoryImpl";
26
+ export type { LogContext, Logger, LoggerFactory, LogLevel } from "./types";
@@ -32,13 +32,12 @@
32
32
  * ```
33
33
  */
34
34
 
35
+ export { ContainerImpl, createContainer, getOrCreateContainer, loadContainer } from "./Container";
35
36
  export type {
36
- ContainerRecord,
37
- ContainerConfig,
38
- ContainerRepository,
39
37
  Container,
38
+ ContainerConfig,
40
39
  ContainerContext,
41
40
  ContainerCreateConfig,
41
+ ContainerRecord,
42
+ ContainerRepository,
42
43
  } from "./types";
43
-
44
- export { ContainerImpl, createContainer, loadContainer, getOrCreateContainer } from "./Container";
@@ -16,7 +16,7 @@ import type { SessionRepository } from "../session/types";
16
16
  // Re-export from persistence (storage schema)
17
17
  // ============================================================================
18
18
 
19
- export type { ContainerRecord, ContainerConfig, ContainerRepository } from "../persistence/types";
19
+ export type { ContainerConfig, ContainerRecord, ContainerRepository } from "../persistence/types";
20
20
 
21
21
  // ============================================================================
22
22
  // Container Interface
@@ -16,28 +16,26 @@
16
16
  */
17
17
 
18
18
  export type {
19
- // Configuration
20
- McpServerConfig,
21
- ToolDefinition,
22
- DriverConfig,
23
- DriverState,
24
-
19
+ CreateDriver,
25
20
  // Core Interface
26
21
  Driver,
27
- CreateDriver,
28
-
29
- // Stream Events
30
- StreamEvent,
31
- StopReason,
22
+ DriverConfig,
23
+ DriverState,
24
+ DriverStreamEvent,
25
+ DriverStreamEventType,
26
+ ErrorEvent,
27
+ InputJsonDeltaEvent,
28
+ InterruptedEvent,
29
+ // Configuration
30
+ McpServerConfig,
32
31
  MessageStartEvent,
33
32
  MessageStopEvent,
33
+ StopReason,
34
+ // Stream Events
35
+ StreamEvent,
34
36
  TextDeltaEvent,
37
+ ToolDefinition,
38
+ ToolResultEvent,
35
39
  ToolUseStartEvent,
36
- InputJsonDeltaEvent,
37
40
  ToolUseStopEvent,
38
- ToolResultEvent,
39
- ErrorEvent,
40
- InterruptedEvent,
41
- DriverStreamEvent,
42
- DriverStreamEventType,
43
41
  } from "./types";
@@ -170,85 +170,95 @@ export interface StreamEvent<T extends string = string, D = unknown> {
170
170
  }
171
171
 
172
172
  // Stream Event Types
173
- export interface MessageStartEvent extends StreamEvent<
174
- "message_start",
175
- {
176
- messageId: string;
177
- model: string;
178
- }
179
- > {}
180
-
181
- export interface MessageStopEvent extends StreamEvent<
182
- "message_stop",
183
- {
184
- stopReason: StopReason;
185
- }
186
- > {}
187
-
188
- export interface TextDeltaEvent extends StreamEvent<
189
- "text_delta",
190
- {
191
- text: string;
192
- }
193
- > {}
194
-
195
- export interface ToolUseStartEvent extends StreamEvent<
196
- "tool_use_start",
197
- {
198
- toolCallId: string;
199
- toolName: string;
200
- }
201
- > {}
202
-
203
- export interface InputJsonDeltaEvent extends StreamEvent<
204
- "input_json_delta",
205
- {
206
- partialJson: string;
207
- }
208
- > {}
209
-
210
- export interface ToolUseStopEvent extends StreamEvent<
211
- "tool_use_stop",
212
- {
213
- toolCallId: string;
214
- toolName: string;
215
- input: Record<string, unknown>;
216
- }
217
- > {}
218
-
219
- export interface ToolResultEvent extends StreamEvent<
220
- "tool_result",
221
- {
222
- toolCallId: string;
223
- result: unknown;
224
- isError?: boolean;
225
- }
226
- > {}
227
-
228
- export interface ErrorEvent extends StreamEvent<
229
- "error",
230
- {
231
- message: string;
232
- errorCode?: string;
233
- }
234
- > {}
235
-
236
- export interface MessageDeltaEvent extends StreamEvent<
237
- "message_delta",
238
- {
239
- usage?: {
240
- inputTokens: number;
241
- outputTokens: number;
242
- };
243
- }
244
- > {}
245
-
246
- export interface InterruptedEvent extends StreamEvent<
247
- "interrupted",
248
- {
249
- reason: "user" | "timeout" | "error";
250
- }
251
- > {}
173
+ export interface MessageStartEvent
174
+ extends StreamEvent<
175
+ "message_start",
176
+ {
177
+ messageId: string;
178
+ model: string;
179
+ }
180
+ > {}
181
+
182
+ export interface MessageStopEvent
183
+ extends StreamEvent<
184
+ "message_stop",
185
+ {
186
+ stopReason: StopReason;
187
+ }
188
+ > {}
189
+
190
+ export interface TextDeltaEvent
191
+ extends StreamEvent<
192
+ "text_delta",
193
+ {
194
+ text: string;
195
+ }
196
+ > {}
197
+
198
+ export interface ToolUseStartEvent
199
+ extends StreamEvent<
200
+ "tool_use_start",
201
+ {
202
+ toolCallId: string;
203
+ toolName: string;
204
+ }
205
+ > {}
206
+
207
+ export interface InputJsonDeltaEvent
208
+ extends StreamEvent<
209
+ "input_json_delta",
210
+ {
211
+ partialJson: string;
212
+ }
213
+ > {}
214
+
215
+ export interface ToolUseStopEvent
216
+ extends StreamEvent<
217
+ "tool_use_stop",
218
+ {
219
+ toolCallId: string;
220
+ toolName: string;
221
+ input: Record<string, unknown>;
222
+ }
223
+ > {}
224
+
225
+ export interface ToolResultEvent
226
+ extends StreamEvent<
227
+ "tool_result",
228
+ {
229
+ toolCallId: string;
230
+ result: unknown;
231
+ isError?: boolean;
232
+ }
233
+ > {}
234
+
235
+ export interface ErrorEvent
236
+ extends StreamEvent<
237
+ "error",
238
+ {
239
+ message: string;
240
+ errorCode?: string;
241
+ }
242
+ > {}
243
+
244
+ export interface MessageDeltaEvent
245
+ extends StreamEvent<
246
+ "message_delta",
247
+ {
248
+ usage?: {
249
+ inputTokens: number;
250
+ outputTokens: number;
251
+ };
252
+ }
253
+ > {}
254
+
255
+ export interface InterruptedEvent
256
+ extends StreamEvent<
257
+ "interrupted",
258
+ {
259
+ reason: "user" | "timeout" | "error";
260
+ }
261
+ > {}
252
262
 
253
263
  /**
254
264
  * DriverStreamEvent - Union of all stream events from Driver
@@ -5,22 +5,22 @@
5
5
  * Uses RxJS Subject for reactive event distribution.
6
6
  */
7
7
 
8
+ import { createLogger } from "commonxjs/logger";
9
+ import { Subject } from "rxjs";
8
10
  import type {
9
- EventBus,
10
- EventProducer,
11
- EventConsumer,
12
- Unsubscribe,
13
- BusEventHandler,
14
- SubscribeOptions,
15
11
  BusEvent,
12
+ BusEventHandler,
16
13
  CommandEventMap,
14
+ CommandRequestResponseMap,
17
15
  CommandRequestType,
18
- ResponseEventFor,
16
+ EventBus,
17
+ EventConsumer,
18
+ EventProducer,
19
19
  RequestDataFor,
20
- CommandRequestResponseMap,
20
+ ResponseEventFor,
21
+ SubscribeOptions,
22
+ Unsubscribe,
21
23
  } from "./types";
22
- import { Subject } from "rxjs";
23
- import { createLogger } from "commonxjs/logger";
24
24
 
25
25
  const logger = createLogger("event/EventBus");
26
26
 
@@ -2,7 +2,7 @@
2
2
  * EventBus.test.ts - Unit tests for EventBus implementation
3
3
  */
4
4
 
5
- import { describe, it, expect, beforeEach } from "bun:test";
5
+ import { beforeEach, describe, expect, it } from "bun:test";
6
6
  import { EventBusImpl as EventBus } from "../EventBus";
7
7
  import type { BusEvent } from "../types";
8
8
 
@@ -39,8 +39,7 @@
39
39
  * ```
40
40
  */
41
41
 
42
- // Type definitions from types directory
43
- export * from "./types";
44
-
45
42
  // Implementation
46
43
  export { EventBusImpl } from "./EventBus";
44
+ // Type definitions from types directory
45
+ export * from "./types";