@reminix/runtime 0.6.0 → 0.7.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.
package/README.md CHANGED
@@ -66,8 +66,9 @@ The `metadata` is available via the `/_discover` endpoint and displayed in the R
66
66
  Register an invoke handler:
67
67
 
68
68
  ```typescript
69
- agent.onInvoke(async (input) => {
69
+ agent.onInvoke(async (input, ctx) => {
70
70
  // input is Record<string, unknown>
71
+ // ctx has: conversationId, userId, custom
71
72
  return { output: 'result' };
72
73
  });
73
74
  ```
@@ -77,30 +78,42 @@ agent.onInvoke(async (input) => {
77
78
  Register a chat handler:
78
79
 
79
80
  ```typescript
80
- agent.onChat(async (messages) => {
81
+ agent.onChat(async (messages, ctx) => {
81
82
  // messages is ChatMessage[]
83
+ // ctx has: conversationId, userId, custom
82
84
  return {
83
- message: { role: 'assistant', content: 'response' },
85
+ message: { role: 'assistant', content: `Hello, user ${ctx?.userId}!` },
84
86
  };
85
87
  });
86
88
  ```
87
89
 
90
+ The `ctx` parameter is optional and contains request context:
91
+
92
+ - `conversationId`: Track multi-turn conversations
93
+ - `userId`: Identify the user
94
+ - `custom`: Any additional custom fields
95
+
88
96
  ### Streaming Responses
89
97
 
90
- Return an async generator to stream responses:
98
+ Use separate handlers for streaming responses:
91
99
 
92
100
  ```typescript
93
- agent.onInvoke(async function* (input) {
101
+ agent.onInvokeStream(async function* (input, ctx) {
94
102
  yield { chunk: 'Hello ' };
95
103
  yield { chunk: 'World!' };
96
104
  });
97
105
 
98
- agent.onChat(async function* (messages) {
106
+ agent.onChatStream(async function* (messages, ctx) {
99
107
  yield { chunk: 'Streaming ' };
100
108
  yield { chunk: 'response...' };
101
109
  });
102
110
  ```
103
111
 
112
+ The server routes to the appropriate handler based on the client's `stream` flag:
113
+
114
+ - `stream: false` → uses `onInvoke` / `onChat`
115
+ - `stream: true` → uses `onInvokeStream` / `onChatStream`
116
+
104
117
  ### Serve Function
105
118
 
106
119
  Start a server hosting your agents:
@@ -212,6 +225,33 @@ data: {"chunk": "World!"}
212
225
  data: [DONE]
213
226
  ```
214
227
 
228
+ ## Framework Adapters
229
+
230
+ For wrapping existing AI agents from popular frameworks (OpenAI, Anthropic, LangChain, LangGraph, Vercel AI), use the `@reminix/adapters` package:
231
+
232
+ ```bash
233
+ npm install @reminix/adapters
234
+ ```
235
+
236
+ See the [@reminix/adapters documentation](https://github.com/reminix-ai/reminix-typescript/tree/main/packages/adapters) for details.
237
+
238
+ ### Quick Example
239
+
240
+ ```typescript
241
+ import OpenAI from 'openai';
242
+ import { fromOpenAI } from '@reminix/adapters/openai';
243
+ import { serve } from '@reminix/runtime';
244
+
245
+ const client = new OpenAI();
246
+ const agent = fromOpenAI(client, {
247
+ name: 'gpt4-agent',
248
+ model: 'gpt-4o',
249
+ system: 'You are a helpful assistant.',
250
+ });
251
+
252
+ serve(agent);
253
+ ```
254
+
215
255
  ## Error Handling
216
256
 
217
257
  The runtime handles errors appropriately:
package/dist/agent.d.ts CHANGED
@@ -1,7 +1,7 @@
1
1
  /**
2
2
  * Agent class for building AI agents that integrate with Reminix.
3
3
  */
4
- import type { AgentInfo, ChatHandler, ChatMessage, ChatResponse, InvokeHandler, InvokeInput, InvokeResponse, StreamChunk } from './types';
4
+ import type { AgentInfo, ChatHandler, ChatMessage, ChatResponse, ChatStreamHandler, Context, InvokeHandler, InvokeInput, InvokeResponse, InvokeStreamHandler, StreamChunk } from './types';
5
5
  /**
6
6
  * Options for creating an Agent.
7
7
  */
@@ -14,18 +14,29 @@ export interface AgentOptions {
14
14
  /**
15
15
  * Agent class for defining invoke and chat handlers.
16
16
  *
17
+ * Use separate handlers for non-streaming and streaming responses:
18
+ * - `onInvoke` / `onChat` for non-streaming
19
+ * - `onInvokeStream` / `onChatStream` for streaming
20
+ *
17
21
  * @example
18
22
  * ```typescript
19
23
  * const agent = new Agent('my-agent');
20
24
  *
21
- * agent.onInvoke(async (input) => {
25
+ * agent.onInvoke(async (input, ctx) => {
22
26
  * return { output: `Processed: ${input.message}` };
23
27
  * });
24
28
  *
25
- * agent.onChat(async (messages) => {
26
- * return {
27
- * message: { role: 'assistant', content: 'Hello!' }
28
- * };
29
+ * agent.onInvokeStream(async function* (input, ctx) {
30
+ * yield { chunk: 'Hello ' };
31
+ * yield { chunk: 'World!' };
32
+ * });
33
+ *
34
+ * agent.onChat(async (messages, ctx) => {
35
+ * return { message: { role: 'assistant', content: 'Hello!' } };
36
+ * });
37
+ *
38
+ * agent.onChatStream(async function* (messages, ctx) {
39
+ * yield { chunk: 'Hello!' };
29
40
  * });
30
41
  * ```
31
42
  */
@@ -33,7 +44,9 @@ export declare class Agent {
33
44
  readonly name: string;
34
45
  private readonly _metadata;
35
46
  private invokeHandler;
47
+ private invokeStreamHandler;
36
48
  private chatHandler;
49
+ private chatStreamHandler;
37
50
  /**
38
51
  * Create a new Agent.
39
52
  *
@@ -51,15 +64,23 @@ export declare class Agent {
51
64
  */
52
65
  toInfo(): AgentInfo;
53
66
  /**
54
- * Whether an invoke handler is registered.
67
+ * Whether a non-streaming invoke handler is registered.
55
68
  */
56
69
  get hasInvoke(): boolean;
57
70
  /**
58
- * Whether a chat handler is registered.
71
+ * Whether a streaming invoke handler is registered.
72
+ */
73
+ get hasInvokeStream(): boolean;
74
+ /**
75
+ * Whether a non-streaming chat handler is registered.
59
76
  */
60
77
  get hasChat(): boolean;
61
78
  /**
62
- * Register an invoke handler.
79
+ * Whether a streaming chat handler is registered.
80
+ */
81
+ get hasChatStream(): boolean;
82
+ /**
83
+ * Register a non-streaming invoke handler.
63
84
  *
64
85
  * @param handler - Function that processes invoke requests
65
86
  * @returns The agent instance for chaining
@@ -73,7 +94,22 @@ export declare class Agent {
73
94
  */
74
95
  onInvoke(handler: InvokeHandler): this;
75
96
  /**
76
- * Register a chat handler.
97
+ * Register a streaming invoke handler.
98
+ *
99
+ * @param handler - Async generator function that yields chunks
100
+ * @returns The agent instance for chaining
101
+ *
102
+ * @example
103
+ * ```typescript
104
+ * agent.onInvokeStream(async function* (input) {
105
+ * yield { chunk: 'Hello ' };
106
+ * yield { chunk: 'World!' };
107
+ * });
108
+ * ```
109
+ */
110
+ onInvokeStream(handler: InvokeStreamHandler): this;
111
+ /**
112
+ * Register a non-streaming chat handler.
77
113
  *
78
114
  * @param handler - Function that processes chat requests
79
115
  * @returns The agent instance for chaining
@@ -89,23 +125,57 @@ export declare class Agent {
89
125
  */
90
126
  onChat(handler: ChatHandler): this;
91
127
  /**
92
- * Handle an invoke request.
128
+ * Register a streaming chat handler.
129
+ *
130
+ * @param handler - Async generator function that yields chunks
131
+ * @returns The agent instance for chaining
132
+ *
133
+ * @example
134
+ * ```typescript
135
+ * agent.onChatStream(async function* (messages) {
136
+ * yield { chunk: 'Hello!' };
137
+ * });
138
+ * ```
139
+ */
140
+ onChatStream(handler: ChatStreamHandler): this;
141
+ /**
142
+ * Handle a non-streaming invoke request.
93
143
  *
94
144
  * @param input - The input data from the request
95
- * @returns The response or an async generator for streaming
145
+ * @param ctx - Optional request context
146
+ * @returns The response
96
147
  * @throws {Error} If no invoke handler is registered
97
148
  * @throws {Error} If the response is invalid
98
149
  */
99
- handleInvoke(input: InvokeInput): Promise<InvokeResponse | AsyncGenerator<StreamChunk, void, unknown>>;
150
+ handleInvoke(input: InvokeInput, ctx?: Context): Promise<InvokeResponse>;
100
151
  /**
101
- * Handle a chat request.
152
+ * Handle a streaming invoke request.
153
+ *
154
+ * @param input - The input data from the request
155
+ * @param ctx - Optional request context
156
+ * @returns An async generator yielding chunks
157
+ * @throws {Error} If no streaming invoke handler is registered
158
+ */
159
+ handleInvokeStream(input: InvokeInput, ctx?: Context): Promise<AsyncGenerator<StreamChunk, void, unknown>>;
160
+ /**
161
+ * Handle a non-streaming chat request.
102
162
  *
103
163
  * @param messages - The conversation messages
104
- * @returns The response or an async generator for streaming
164
+ * @param ctx - Optional request context
165
+ * @returns The response
105
166
  * @throws {Error} If no chat handler is registered
106
167
  * @throws {Error} If the response is invalid
107
168
  */
108
- handleChat(messages: ChatMessage[]): Promise<ChatResponse | AsyncGenerator<StreamChunk, void, unknown>>;
169
+ handleChat(messages: ChatMessage[], ctx?: Context): Promise<ChatResponse>;
170
+ /**
171
+ * Handle a streaming chat request.
172
+ *
173
+ * @param messages - The conversation messages
174
+ * @param ctx - Optional request context
175
+ * @returns An async generator yielding chunks
176
+ * @throws {Error} If no streaming chat handler is registered
177
+ */
178
+ handleChatStream(messages: ChatMessage[], ctx?: Context): Promise<AsyncGenerator<StreamChunk, void, unknown>>;
109
179
  /**
110
180
  * String representation for debugging.
111
181
  */
@@ -1 +1 @@
1
- {"version":3,"file":"agent.d.ts","sourceRoot":"","sources":["../src/agent.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,KAAK,EACV,SAAS,EACT,WAAW,EACX,WAAW,EACX,YAAY,EAEZ,aAAa,EACb,WAAW,EACX,cAAc,EAEd,WAAW,EACZ,MAAM,SAAS,CAAC;AAEjB;;GAEG;AACH,MAAM,WAAW,YAAY;IAC3B;;OAEG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACpC;AAmBD;;;;;;;;;;;;;;;;;GAiBG;AACH,qBAAa,KAAK;IAChB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,OAAO,CAAC,QAAQ,CAAC,SAAS,CAA0B;IACpD,OAAO,CAAC,aAAa,CAA8B;IACnD,OAAO,CAAC,WAAW,CAA4B;IAE/C;;;;;;OAMG;gBACS,IAAI,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,YAAY;IAgBhD;;OAEG;IACH,IAAI,QAAQ,IAAI,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAEtC;IAED;;OAEG;IACH,MAAM,IAAI,SAAS;IASnB;;OAEG;IACH,IAAI,SAAS,IAAI,OAAO,CAEvB;IAED;;OAEG;IACH,IAAI,OAAO,IAAI,OAAO,CAErB;IAED;;;;;;;;;;;;OAYG;IACH,QAAQ,CAAC,OAAO,EAAE,aAAa,GAAG,IAAI;IAKtC;;;;;;;;;;;;;;OAcG;IACH,MAAM,CAAC,OAAO,EAAE,WAAW,GAAG,IAAI;IAKlC;;;;;;;OAOG;IACG,YAAY,CAChB,KAAK,EAAE,WAAW,GACjB,OAAO,CAAC,cAAc,GAAG,cAAc,CAAC,WAAW,EAAE,IAAI,EAAE,OAAO,CAAC,CAAC;IAoBvE;;;;;;;OAOG;IACG,UAAU,CACd,QAAQ,EAAE,WAAW,EAAE,GACtB,OAAO,CAAC,YAAY,GAAG,cAAc,CAAC,WAAW,EAAE,IAAI,EAAE,OAAO,CAAC,CAAC;IAyBrE;;OAEG;IACH,QAAQ,IAAI,MAAM;CAMnB;AAED;;GAEG;AACH,qBAAa,mBAAoB,SAAQ,KAAK;gBAChC,OAAO,EAAE,MAAM;CAI5B;AAED;;GAEG;AACH,qBAAa,UAAW,SAAQ,KAAK;gBACvB,OAAO,EAAE,MAAM;CAI5B"}
1
+ {"version":3,"file":"agent.d.ts","sourceRoot":"","sources":["../src/agent.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,KAAK,EACV,SAAS,EACT,WAAW,EACX,WAAW,EACX,YAAY,EACZ,iBAAiB,EACjB,OAAO,EACP,aAAa,EACb,WAAW,EACX,cAAc,EACd,mBAAmB,EACnB,WAAW,EACZ,MAAM,SAAS,CAAC;AAEjB;;GAEG;AACH,MAAM,WAAW,YAAY;IAC3B;;OAEG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACpC;AAmBD;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4BG;AACH,qBAAa,KAAK;IAChB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,OAAO,CAAC,QAAQ,CAAC,SAAS,CAA0B;IACpD,OAAO,CAAC,aAAa,CAA8B;IACnD,OAAO,CAAC,mBAAmB,CAAoC;IAC/D,OAAO,CAAC,WAAW,CAA4B;IAC/C,OAAO,CAAC,iBAAiB,CAAkC;IAE3D;;;;;;OAMG;gBACS,IAAI,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,YAAY;IAgBhD;;OAEG;IACH,IAAI,QAAQ,IAAI,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAEtC;IAED;;OAEG;IACH,MAAM,IAAI,SAAS;IASnB;;OAEG;IACH,IAAI,SAAS,IAAI,OAAO,CAEvB;IAED;;OAEG;IACH,IAAI,eAAe,IAAI,OAAO,CAE7B;IAED;;OAEG;IACH,IAAI,OAAO,IAAI,OAAO,CAErB;IAED;;OAEG;IACH,IAAI,aAAa,IAAI,OAAO,CAE3B;IAED;;;;;;;;;;;;OAYG;IACH,QAAQ,CAAC,OAAO,EAAE,aAAa,GAAG,IAAI;IAKtC;;;;;;;;;;;;;OAaG;IACH,cAAc,CAAC,OAAO,EAAE,mBAAmB,GAAG,IAAI;IAKlD;;;;;;;;;;;;;;OAcG;IACH,MAAM,CAAC,OAAO,EAAE,WAAW,GAAG,IAAI;IAKlC;;;;;;;;;;;;OAYG;IACH,YAAY,CAAC,OAAO,EAAE,iBAAiB,GAAG,IAAI;IAK9C;;;;;;;;OAQG;IACG,YAAY,CAAC,KAAK,EAAE,WAAW,EAAE,GAAG,CAAC,EAAE,OAAO,GAAG,OAAO,CAAC,cAAc,CAAC;IAe9E;;;;;;;OAOG;IACG,kBAAkB,CACtB,KAAK,EAAE,WAAW,EAClB,GAAG,CAAC,EAAE,OAAO,GACZ,OAAO,CAAC,cAAc,CAAC,WAAW,EAAE,IAAI,EAAE,OAAO,CAAC,CAAC;IActD;;;;;;;;OAQG;IACG,UAAU,CAAC,QAAQ,EAAE,WAAW,EAAE,EAAE,GAAG,CAAC,EAAE,OAAO,GAAG,OAAO,CAAC,YAAY,CAAC;IAoB/E;;;;;;;OAOG;IACG,gBAAgB,CACpB,QAAQ,EAAE,WAAW,EAAE,EACvB,GAAG,CAAC,EAAE,OAAO,GACZ,OAAO,CAAC,cAAc,CAAC,WAAW,EAAE,IAAI,EAAE,OAAO,CAAC,CAAC;IActD;;OAEG;IACH,QAAQ,IAAI,MAAM;CAQnB;AAED;;GAEG;AACH,qBAAa,mBAAoB,SAAQ,KAAK;gBAChC,OAAO,EAAE,MAAM;CAI5B;AAED;;GAEG;AACH,qBAAa,UAAW,SAAQ,KAAK;gBACvB,OAAO,EAAE,MAAM;CAI5B"}
package/dist/agent.js CHANGED
@@ -17,18 +17,29 @@ function isAsyncGenerator(value) {
17
17
  /**
18
18
  * Agent class for defining invoke and chat handlers.
19
19
  *
20
+ * Use separate handlers for non-streaming and streaming responses:
21
+ * - `onInvoke` / `onChat` for non-streaming
22
+ * - `onInvokeStream` / `onChatStream` for streaming
23
+ *
20
24
  * @example
21
25
  * ```typescript
22
26
  * const agent = new Agent('my-agent');
23
27
  *
24
- * agent.onInvoke(async (input) => {
28
+ * agent.onInvoke(async (input, ctx) => {
25
29
  * return { output: `Processed: ${input.message}` };
26
30
  * });
27
31
  *
28
- * agent.onChat(async (messages) => {
29
- * return {
30
- * message: { role: 'assistant', content: 'Hello!' }
31
- * };
32
+ * agent.onInvokeStream(async function* (input, ctx) {
33
+ * yield { chunk: 'Hello ' };
34
+ * yield { chunk: 'World!' };
35
+ * });
36
+ *
37
+ * agent.onChat(async (messages, ctx) => {
38
+ * return { message: { role: 'assistant', content: 'Hello!' } };
39
+ * });
40
+ *
41
+ * agent.onChatStream(async function* (messages, ctx) {
42
+ * yield { chunk: 'Hello!' };
32
43
  * });
33
44
  * ```
34
45
  */
@@ -42,7 +53,9 @@ export class Agent {
42
53
  */
43
54
  constructor(name, options) {
44
55
  this.invokeHandler = null;
56
+ this.invokeStreamHandler = null;
45
57
  this.chatHandler = null;
58
+ this.chatStreamHandler = null;
46
59
  if (!name || name.trim() === '') {
47
60
  throw new Error('Agent name cannot be empty');
48
61
  }
@@ -65,25 +78,37 @@ export class Agent {
65
78
  toInfo() {
66
79
  return {
67
80
  name: this.name,
68
- invoke: this.hasInvoke,
69
- chat: this.hasChat,
81
+ invoke: this.hasInvoke || this.hasInvokeStream,
82
+ chat: this.hasChat || this.hasChatStream,
70
83
  metadata: this._metadata,
71
84
  };
72
85
  }
73
86
  /**
74
- * Whether an invoke handler is registered.
87
+ * Whether a non-streaming invoke handler is registered.
75
88
  */
76
89
  get hasInvoke() {
77
90
  return this.invokeHandler !== null;
78
91
  }
79
92
  /**
80
- * Whether a chat handler is registered.
93
+ * Whether a streaming invoke handler is registered.
94
+ */
95
+ get hasInvokeStream() {
96
+ return this.invokeStreamHandler !== null;
97
+ }
98
+ /**
99
+ * Whether a non-streaming chat handler is registered.
81
100
  */
82
101
  get hasChat() {
83
102
  return this.chatHandler !== null;
84
103
  }
85
104
  /**
86
- * Register an invoke handler.
105
+ * Whether a streaming chat handler is registered.
106
+ */
107
+ get hasChatStream() {
108
+ return this.chatStreamHandler !== null;
109
+ }
110
+ /**
111
+ * Register a non-streaming invoke handler.
87
112
  *
88
113
  * @param handler - Function that processes invoke requests
89
114
  * @returns The agent instance for chaining
@@ -100,7 +125,25 @@ export class Agent {
100
125
  return this;
101
126
  }
102
127
  /**
103
- * Register a chat handler.
128
+ * Register a streaming invoke handler.
129
+ *
130
+ * @param handler - Async generator function that yields chunks
131
+ * @returns The agent instance for chaining
132
+ *
133
+ * @example
134
+ * ```typescript
135
+ * agent.onInvokeStream(async function* (input) {
136
+ * yield { chunk: 'Hello ' };
137
+ * yield { chunk: 'World!' };
138
+ * });
139
+ * ```
140
+ */
141
+ onInvokeStream(handler) {
142
+ this.invokeStreamHandler = handler;
143
+ return this;
144
+ }
145
+ /**
146
+ * Register a non-streaming chat handler.
104
147
  *
105
148
  * @param handler - Function that processes chat requests
106
149
  * @returns The agent instance for chaining
@@ -119,46 +162,75 @@ export class Agent {
119
162
  return this;
120
163
  }
121
164
  /**
122
- * Handle an invoke request.
165
+ * Register a streaming chat handler.
166
+ *
167
+ * @param handler - Async generator function that yields chunks
168
+ * @returns The agent instance for chaining
169
+ *
170
+ * @example
171
+ * ```typescript
172
+ * agent.onChatStream(async function* (messages) {
173
+ * yield { chunk: 'Hello!' };
174
+ * });
175
+ * ```
176
+ */
177
+ onChatStream(handler) {
178
+ this.chatStreamHandler = handler;
179
+ return this;
180
+ }
181
+ /**
182
+ * Handle a non-streaming invoke request.
123
183
  *
124
184
  * @param input - The input data from the request
125
- * @returns The response or an async generator for streaming
185
+ * @param ctx - Optional request context
186
+ * @returns The response
126
187
  * @throws {Error} If no invoke handler is registered
127
188
  * @throws {Error} If the response is invalid
128
189
  */
129
- async handleInvoke(input) {
190
+ async handleInvoke(input, ctx) {
130
191
  if (!this.invokeHandler) {
131
192
  throw new NotImplementedError('Invoke handler not implemented');
132
193
  }
133
- const result = await this.invokeHandler(input);
134
- // If it's a generator, return it for streaming
135
- if (isAsyncGenerator(result)) {
136
- return result;
137
- }
138
- // Validate non-streaming response
194
+ const result = await this.invokeHandler(input, ctx ?? {});
195
+ // Validate response
139
196
  if (!('output' in result)) {
140
197
  throw new AgentError('Invoke handler must return an object with "output" field');
141
198
  }
142
199
  return result;
143
200
  }
144
201
  /**
145
- * Handle a chat request.
202
+ * Handle a streaming invoke request.
203
+ *
204
+ * @param input - The input data from the request
205
+ * @param ctx - Optional request context
206
+ * @returns An async generator yielding chunks
207
+ * @throws {Error} If no streaming invoke handler is registered
208
+ */
209
+ async handleInvokeStream(input, ctx) {
210
+ if (!this.invokeStreamHandler) {
211
+ throw new NotImplementedError('Invoke stream handler not implemented');
212
+ }
213
+ const result = await this.invokeStreamHandler(input, ctx ?? {});
214
+ if (!isAsyncGenerator(result)) {
215
+ throw new AgentError('onInvokeStream handler must be an async generator');
216
+ }
217
+ return result;
218
+ }
219
+ /**
220
+ * Handle a non-streaming chat request.
146
221
  *
147
222
  * @param messages - The conversation messages
148
- * @returns The response or an async generator for streaming
223
+ * @param ctx - Optional request context
224
+ * @returns The response
149
225
  * @throws {Error} If no chat handler is registered
150
226
  * @throws {Error} If the response is invalid
151
227
  */
152
- async handleChat(messages) {
228
+ async handleChat(messages, ctx) {
153
229
  if (!this.chatHandler) {
154
230
  throw new NotImplementedError('Chat handler not implemented');
155
231
  }
156
- const result = await this.chatHandler(messages);
157
- // If it's a generator, return it for streaming
158
- if (isAsyncGenerator(result)) {
159
- return result;
160
- }
161
- // Validate non-streaming response
232
+ const result = await this.chatHandler(messages, ctx ?? {});
233
+ // Validate response
162
234
  if (!('message' in result)) {
163
235
  throw new AgentError('Chat handler must return an object with "message" field');
164
236
  }
@@ -168,6 +240,24 @@ export class Agent {
168
240
  }
169
241
  return result;
170
242
  }
243
+ /**
244
+ * Handle a streaming chat request.
245
+ *
246
+ * @param messages - The conversation messages
247
+ * @param ctx - Optional request context
248
+ * @returns An async generator yielding chunks
249
+ * @throws {Error} If no streaming chat handler is registered
250
+ */
251
+ async handleChatStream(messages, ctx) {
252
+ if (!this.chatStreamHandler) {
253
+ throw new NotImplementedError('Chat stream handler not implemented');
254
+ }
255
+ const result = await this.chatStreamHandler(messages, ctx ?? {});
256
+ if (!isAsyncGenerator(result)) {
257
+ throw new AgentError('onChatStream handler must be an async generator');
258
+ }
259
+ return result;
260
+ }
171
261
  /**
172
262
  * String representation for debugging.
173
263
  */
@@ -175,8 +265,12 @@ export class Agent {
175
265
  const capabilities = [];
176
266
  if (this.hasInvoke)
177
267
  capabilities.push('invoke');
268
+ if (this.hasInvokeStream)
269
+ capabilities.push('invokeStream');
178
270
  if (this.hasChat)
179
271
  capabilities.push('chat');
272
+ if (this.hasChatStream)
273
+ capabilities.push('chatStream');
180
274
  return `Agent(${this.name}, ${capabilities.length > 0 ? capabilities.join(', ') : 'no handlers'})`;
181
275
  }
182
276
  }
package/dist/agent.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"agent.js","sourceRoot":"","sources":["../src/agent.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"agent.js","sourceRoot":"","sources":["../src/agent.ts"],"names":[],"mappings":"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"}
package/dist/index.d.ts CHANGED
@@ -23,7 +23,7 @@
23
23
  * serve(agent, { port: 8080 });
24
24
  * ```
25
25
  */
26
- export type { ToolCallFunction, ToolCall, MessageRole, ChatMessage, AssistantMessage, InvokeRequest, ChatRequest, InvokeResponse, ChatResponse, StreamChunk, InvokeInput, InvokeResult, ChatResult, InvokeHandler, ChatHandler, AgentHealth, HealthResponse, AgentMetadata, AgentInfo, RuntimeInfo, DiscoverResponse, } from './types';
26
+ export type { ToolCallFunction, ToolCall, MessageRole, ChatMessage, AssistantMessage, InvokeRequest, ChatRequest, InvokeResponse, ChatResponse, StreamChunk, Context, InvokeInput, InvokeResult, ChatResult, InvokeHandler, ChatHandler, AgentHealth, HealthResponse, AgentMetadata, AgentInfo, RuntimeInfo, DiscoverResponse, } from './types';
27
27
  export { ToolCallFunctionSchema, ToolCallSchema, MessageRoleSchema, ChatMessageSchema, AssistantMessageSchema, InvokeRequestSchema, ChatRequestSchema, InvokeResponseSchema, ChatResponseSchema, StreamChunkSchema, } from './types';
28
28
  export { Agent, NotImplementedError, AgentError, type AgentOptions } from './agent';
29
29
  export { serve, createApp, type ServeOptions } from './server';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AAGH,YAAY,EAEV,gBAAgB,EAChB,QAAQ,EACR,WAAW,EACX,WAAW,EACX,gBAAgB,EAEhB,aAAa,EACb,WAAW,EAEX,cAAc,EACd,YAAY,EACZ,WAAW,EAEX,WAAW,EACX,YAAY,EACZ,UAAU,EACV,aAAa,EACb,WAAW,EAEX,WAAW,EACX,cAAc,EAEd,aAAa,EACb,SAAS,EACT,WAAW,EACX,gBAAgB,GACjB,MAAM,SAAS,CAAC;AAGjB,OAAO,EACL,sBAAsB,EACtB,cAAc,EACd,iBAAiB,EACjB,iBAAiB,EACjB,sBAAsB,EACtB,mBAAmB,EACnB,iBAAiB,EACjB,oBAAoB,EACpB,kBAAkB,EAClB,iBAAiB,GAClB,MAAM,SAAS,CAAC;AAGjB,OAAO,EAAE,KAAK,EAAE,mBAAmB,EAAE,UAAU,EAAE,KAAK,YAAY,EAAE,MAAM,SAAS,CAAC;AAGpF,OAAO,EAAE,KAAK,EAAE,SAAS,EAAE,KAAK,YAAY,EAAE,MAAM,UAAU,CAAC;AAG/D,OAAO,EAAE,cAAc,EAAE,aAAa,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AAGH,YAAY,EAEV,gBAAgB,EAChB,QAAQ,EACR,WAAW,EACX,WAAW,EACX,gBAAgB,EAEhB,aAAa,EACb,WAAW,EAEX,cAAc,EACd,YAAY,EACZ,WAAW,EAEX,OAAO,EAEP,WAAW,EACX,YAAY,EACZ,UAAU,EACV,aAAa,EACb,WAAW,EAEX,WAAW,EACX,cAAc,EAEd,aAAa,EACb,SAAS,EACT,WAAW,EACX,gBAAgB,GACjB,MAAM,SAAS,CAAC;AAGjB,OAAO,EACL,sBAAsB,EACtB,cAAc,EACd,iBAAiB,EACjB,iBAAiB,EACjB,sBAAsB,EACtB,mBAAmB,EACnB,iBAAiB,EACjB,oBAAoB,EACpB,kBAAkB,EAClB,iBAAiB,GAClB,MAAM,SAAS,CAAC;AAGjB,OAAO,EAAE,KAAK,EAAE,mBAAmB,EAAE,UAAU,EAAE,KAAK,YAAY,EAAE,MAAM,SAAS,CAAC;AAGpF,OAAO,EAAE,KAAK,EAAE,SAAS,EAAE,KAAK,YAAY,EAAE,MAAM,UAAU,CAAC;AAG/D,OAAO,EAAE,cAAc,EAAE,aAAa,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC"}
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AAiCH,wCAAwC;AACxC,OAAO,EACL,sBAAsB,EACtB,cAAc,EACd,iBAAiB,EACjB,iBAAiB,EACjB,sBAAsB,EACtB,mBAAmB,EACnB,iBAAiB,EACjB,oBAAoB,EACpB,kBAAkB,EAClB,iBAAiB,GAClB,MAAM,SAAS,CAAC;AAEjB,0CAA0C;AAC1C,OAAO,EAAE,KAAK,EAAE,mBAAmB,EAAE,UAAU,EAAqB,MAAM,SAAS,CAAC;AAEpF,gBAAgB;AAChB,OAAO,EAAE,KAAK,EAAE,SAAS,EAAqB,MAAM,UAAU,CAAC;AAE/D,6BAA6B;AAC7B,OAAO,EAAE,cAAc,EAAE,aAAa,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AAmCH,wCAAwC;AACxC,OAAO,EACL,sBAAsB,EACtB,cAAc,EACd,iBAAiB,EACjB,iBAAiB,EACjB,sBAAsB,EACtB,mBAAmB,EACnB,iBAAiB,EACjB,oBAAoB,EACpB,kBAAkB,EAClB,iBAAiB,GAClB,MAAM,SAAS,CAAC;AAEjB,0CAA0C;AAC1C,OAAO,EAAE,KAAK,EAAE,mBAAmB,EAAE,UAAU,EAAqB,MAAM,SAAS,CAAC;AAEpF,gBAAgB;AAChB,OAAO,EAAE,KAAK,EAAE,SAAS,EAAqB,MAAM,UAAU,CAAC;AAE/D,6BAA6B;AAC7B,OAAO,EAAE,cAAc,EAAE,aAAa,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"server.d.ts","sourceRoot":"","sources":["../src/server.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,IAAI,EAAE,MAAM,MAAM,CAAC;AAI5B,OAAO,EAAE,KAAK,EAAmC,MAAM,SAAS,CAAC;AAcjE;;GAEG;AACH,MAAM,WAAW,YAAY;IAC3B,2CAA2C;IAC3C,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,wCAAwC;IACxC,IAAI,CAAC,EAAE,MAAM,CAAC;CACf;AAED;;;;;GAKG;AACH,wBAAgB,SAAS,CAAC,MAAM,EAAE,KAAK,EAAE,GAAG,IAAI,CAiL/C;AA+BD;;;;;;;;;;;;;;;GAeG;AACH,wBAAgB,KAAK,CAAC,MAAM,EAAE,KAAK,GAAG,KAAK,EAAE,EAAE,OAAO,GAAE,YAAiB,GAAG,IAAI,CA8B/E"}
1
+ {"version":3,"file":"server.d.ts","sourceRoot":"","sources":["../src/server.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,IAAI,EAAE,MAAM,MAAM,CAAC;AAI5B,OAAO,EAAE,KAAK,EAAmC,MAAM,SAAS,CAAC;AAWjE;;GAEG;AACH,MAAM,WAAW,YAAY;IAC3B,2CAA2C;IAC3C,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,wCAAwC;IACxC,IAAI,CAAC,EAAE,MAAM,CAAC;CACf;AAED;;;;;GAKG;AACH,wBAAgB,SAAS,CAAC,MAAM,EAAE,KAAK,EAAE,GAAG,IAAI,CAiL/C;AAmBD;;;;;;;;;;;;;;;GAeG;AACH,wBAAgB,KAAK,CAAC,MAAM,EAAE,KAAK,GAAG,KAAK,EAAE,EAAE,OAAO,GAAE,YAAiB,GAAG,IAAI,CA8B/E"}
package/dist/server.js CHANGED
@@ -53,8 +53,8 @@ export function createApp(agents) {
53
53
  }
54
54
  const response = {
55
55
  name: agent.name,
56
- invoke: agent.hasInvoke,
57
- chat: agent.hasChat,
56
+ invoke: agent.hasInvoke || agent.hasInvokeStream,
57
+ chat: agent.hasChat || agent.hasChatStream,
58
58
  };
59
59
  return c.json(response);
60
60
  });
@@ -81,28 +81,29 @@ export function createApp(agents) {
81
81
  return c.json({ error: `Invalid request: ${errors}` }, 400);
82
82
  }
83
83
  const { input, stream } = parseResult.data;
84
+ // Extract context from raw body (not in schema to keep it flexible)
85
+ const context = body.context;
84
86
  try {
85
- const result = await agent.handleInvoke(input);
86
- // Check if streaming
87
- if (isAsyncGenerator(result)) {
88
- if (stream) {
89
- // Return SSE stream
90
- return streamSSE(c, async (sseStream) => {
91
- for await (const event of streamToSse(result)) {
92
- await sseStream.writeSSE({ data: event.replace(/^data: /, '').replace(/\n\n$/, '') });
93
- }
94
- });
87
+ if (stream) {
88
+ // Client wants streaming
89
+ if (!agent.hasInvokeStream) {
90
+ return c.json({ error: `Agent '${name}' does not implement invokeStream` }, 501);
95
91
  }
96
- else {
97
- // Collect chunks into single response
98
- const chunks = [];
99
- for await (const chunk of result) {
100
- chunks.push(chunk.chunk);
92
+ const result = await agent.handleInvokeStream(input, context);
93
+ return streamSSE(c, async (sseStream) => {
94
+ for await (const event of streamToSse(result)) {
95
+ await sseStream.writeSSE({ data: event.replace(/^data: /, '').replace(/\n\n$/, '') });
101
96
  }
102
- return c.json({ output: chunks.join('') });
97
+ });
98
+ }
99
+ else {
100
+ // Client wants non-streaming
101
+ if (!agent.hasInvoke) {
102
+ return c.json({ error: `Agent '${name}' does not implement invoke` }, 501);
103
103
  }
104
+ const result = await agent.handleInvoke(input, context);
105
+ return c.json(result);
104
106
  }
105
- return c.json(result);
106
107
  }
107
108
  catch (err) {
108
109
  return handleError(c, err);
@@ -131,6 +132,8 @@ export function createApp(agents) {
131
132
  return c.json({ error: `Invalid request: ${errors}` }, 400);
132
133
  }
133
134
  const { messages, stream } = parseResult.data;
135
+ // Extract context from raw body (not in schema to keep it flexible)
136
+ const context = body.context;
134
137
  // Validate messages array is not empty
135
138
  if (messages.length === 0) {
136
139
  return c.json({ error: 'Messages array cannot be empty' }, 400);
@@ -143,29 +146,26 @@ export function createApp(agents) {
143
146
  }
144
147
  }
145
148
  try {
146
- const result = await agent.handleChat(messages);
147
- // Check if streaming
148
- if (isAsyncGenerator(result)) {
149
- if (stream) {
150
- // Return SSE stream
151
- return streamSSE(c, async (sseStream) => {
152
- for await (const event of streamToSse(result)) {
153
- await sseStream.writeSSE({ data: event.replace(/^data: /, '').replace(/\n\n$/, '') });
154
- }
155
- });
149
+ if (stream) {
150
+ // Client wants streaming
151
+ if (!agent.hasChatStream) {
152
+ return c.json({ error: `Agent '${name}' does not implement chatStream` }, 501);
156
153
  }
157
- else {
158
- // Collect chunks into single response
159
- const chunks = [];
160
- for await (const chunk of result) {
161
- chunks.push(chunk.chunk);
154
+ const result = await agent.handleChatStream(messages, context);
155
+ return streamSSE(c, async (sseStream) => {
156
+ for await (const event of streamToSse(result)) {
157
+ await sseStream.writeSSE({ data: event.replace(/^data: /, '').replace(/\n\n$/, '') });
162
158
  }
163
- return c.json({
164
- message: { role: 'assistant', content: chunks.join('') },
165
- });
159
+ });
160
+ }
161
+ else {
162
+ // Client wants non-streaming
163
+ if (!agent.hasChat) {
164
+ return c.json({ error: `Agent '${name}' does not implement chat` }, 501);
166
165
  }
166
+ const result = await agent.handleChat(messages, context);
167
+ return c.json(result);
167
168
  }
168
- return c.json(result);
169
169
  }
170
170
  catch (err) {
171
171
  return handleError(c, err);
@@ -173,15 +173,6 @@ export function createApp(agents) {
173
173
  });
174
174
  return app;
175
175
  }
176
- /**
177
- * Check if a value is an async generator.
178
- */
179
- function isAsyncGenerator(value) {
180
- return (value !== null &&
181
- typeof value === 'object' &&
182
- Symbol.asyncIterator in value &&
183
- typeof value.next === 'function');
184
- }
185
176
  /**
186
177
  * Handle errors from agent handlers.
187
178
  */
@@ -1 +1 @@
1
- {"version":3,"file":"server.js","sourceRoot":"","sources":["../src/server.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"server.js","sourceRoot":"","sources":["../src/server.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,IAAI,EAAE,MAAM,MAAM,CAAC;AAC5B,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAC3C,OAAO,EAAE,KAAK,IAAI,SAAS,EAAE,MAAM,mBAAmB,CAAC;AAEvD,OAAO,EAAS,UAAU,EAAE,mBAAmB,EAAE,MAAM,SAAS,CAAC;AACjE,OAAO,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAC1C,OAAO,EACL,iBAAiB,EACjB,mBAAmB,GAIpB,MAAM,SAAS,CAAC;AACjB,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAYpC;;;;;GAKG;AACH,MAAM,UAAU,SAAS,CAAC,MAAe;IACvC,MAAM,GAAG,GAAG,IAAI,IAAI,EAAE,CAAC;IAEvB,uBAAuB;IACvB,MAAM,QAAQ,GAAG,IAAI,GAAG,EAAiB,CAAC;IAC1C,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;QAC3B,IAAI,QAAQ,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC;YAC7B,MAAM,IAAI,KAAK,CAAC,yBAAyB,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC;QACzD,CAAC;QACD,QAAQ,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;IAClC,CAAC;IAED,wBAAwB;IACxB,GAAG,CAAC,GAAG,CAAC,SAAS,EAAE,CAAC,CAAC,EAAE,EAAE;QACvB,MAAM,QAAQ,GAAmB;YAC/B,MAAM,EAAE,SAAS;YACjB,MAAM,EAAE,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC;SACpC,CAAC;QACF,OAAO,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IAC1B,CAAC,CAAC,CAAC;IAEH,0CAA0C;IAC1C,GAAG,CAAC,GAAG,CAAC,YAAY,EAAE,CAAC,CAAC,EAAE,EAAE;QAC1B,MAAM,QAAQ,GAAqB;YACjC,OAAO,EAAE;gBACP,OAAO,EAAE,OAAO;gBAChB,QAAQ,EAAE,YAAY;gBACtB,SAAS,EAAE,MAAM;aAClB;YACD,MAAM,EAAE,MAAM,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,MAAM,EAAE,CAAC;SAC9C,CAAC;QACF,OAAO,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IAC1B,CAAC,CAAC,CAAC;IAEH,4BAA4B;IAC5B,GAAG,CAAC,GAAG,CAAC,qBAAqB,EAAE,CAAC,CAAC,EAAE,EAAE;QACnC,MAAM,IAAI,GAAG,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;QACjC,MAAM,KAAK,GAAG,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;QAEjC,IAAI,CAAC,KAAK,EAAE,CAAC;YACX,OAAO,CAAC,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,oBAAoB,IAAI,EAAE,EAAE,EAAE,GAAG,CAAC,CAAC;QAC5D,CAAC;QAED,MAAM,QAAQ,GAAgB;YAC5B,IAAI,EAAE,KAAK,CAAC,IAAI;YAChB,MAAM,EAAE,KAAK,CAAC,SAAS,IAAI,KAAK,CAAC,eAAe;YAChD,IAAI,EAAE,KAAK,CAAC,OAAO,IAAI,KAAK,CAAC,aAAa;SAC3C,CAAC;QACF,OAAO,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IAC1B,CAAC,CAAC,CAAC;IAEH,kBAAkB;IAClB,GAAG,CAAC,IAAI,CAAC,qBAAqB,EAAE,KAAK,EAAE,CAAC,EAAE,EAAE;QAC1C,MAAM,IAAI,GAAG,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;QACjC,MAAM,KAAK,GAAG,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;QAEjC,IAAI,CAAC,KAAK,EAAE,CAAC;YACX,OAAO,CAAC,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,oBAAoB,IAAI,EAAE,EAAE,EAAE,GAAG,CAAC,CAAC;QAC5D,CAAC;QAED,6BAA6B;QAC7B,IAAI,IAAa,CAAC;QAClB,IAAI,CAAC;YACH,IAAI,GAAG,MAAM,CAAC,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC;QAC5B,CAAC;QAAC,MAAM,CAAC;YACP,OAAO,CAAC,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,mBAAmB,EAAE,EAAE,GAAG,CAAC,CAAC;QACrD,CAAC;QAED,MAAM,WAAW,GAAG,mBAAmB,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC;QACxD,IAAI,CAAC,WAAW,CAAC,OAAO,EAAE,CAAC;YACzB,MAAM,MAAM,GAAG,WAAW,CAAC,KAAK,CAAC,MAAM;iBACpC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,OAAO,EAAE,CAAC;iBAC/C,IAAI,CAAC,IAAI,CAAC,CAAC;YACd,OAAO,CAAC,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,oBAAoB,MAAM,EAAE,EAAE,EAAE,GAAG,CAAC,CAAC;QAC9D,CAAC;QAED,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,WAAW,CAAC,IAAI,CAAC;QAC3C,oEAAoE;QACpE,MAAM,OAAO,GAAI,IAAgC,CAAC,OAErC,CAAC;QAEd,IAAI,CAAC;YACH,IAAI,MAAM,EAAE,CAAC;gBACX,yBAAyB;gBACzB,IAAI,CAAC,KAAK,CAAC,eAAe,EAAE,CAAC;oBAC3B,OAAO,CAAC,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,UAAU,IAAI,mCAAmC,EAAE,EAAE,GAAG,CAAC,CAAC;gBACnF,CAAC;gBACD,MAAM,MAAM,GAAG,MAAM,KAAK,CAAC,kBAAkB,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;gBAC9D,OAAO,SAAS,CAAC,CAAC,EAAE,KAAK,EAAE,SAAS,EAAE,EAAE;oBACtC,IAAI,KAAK,EAAE,MAAM,KAAK,IAAI,WAAW,CAAC,MAAM,CAAC,EAAE,CAAC;wBAC9C,MAAM,SAAS,CAAC,QAAQ,CAAC,EAAE,IAAI,EAAE,KAAK,CAAC,OAAO,CAAC,SAAS,EAAE,EAAE,CAAC,CAAC,OAAO,CAAC,OAAO,EAAE,EAAE,CAAC,EAAE,CAAC,CAAC;oBACxF,CAAC;gBACH,CAAC,CAAC,CAAC;YACL,CAAC;iBAAM,CAAC;gBACN,6BAA6B;gBAC7B,IAAI,CAAC,KAAK,CAAC,SAAS,EAAE,CAAC;oBACrB,OAAO,CAAC,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,UAAU,IAAI,6BAA6B,EAAE,EAAE,GAAG,CAAC,CAAC;gBAC7E,CAAC;gBACD,MAAM,MAAM,GAAG,MAAM,KAAK,CAAC,YAAY,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;gBACxD,OAAO,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;YACxB,CAAC;QACH,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,OAAO,WAAW,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC;QAC7B,CAAC;IACH,CAAC,CAAC,CAAC;IAEH,gBAAgB;IAChB,GAAG,CAAC,IAAI,CAAC,mBAAmB,EAAE,KAAK,EAAE,CAAC,EAAE,EAAE;QACxC,MAAM,IAAI,GAAG,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;QACjC,MAAM,KAAK,GAAG,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;QAEjC,IAAI,CAAC,KAAK,EAAE,CAAC;YACX,OAAO,CAAC,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,oBAAoB,IAAI,EAAE,EAAE,EAAE,GAAG,CAAC,CAAC;QAC5D,CAAC;QAED,6BAA6B;QAC7B,IAAI,IAAa,CAAC;QAClB,IAAI,CAAC;YACH,IAAI,GAAG,MAAM,CAAC,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC;QAC5B,CAAC;QAAC,MAAM,CAAC;YACP,OAAO,CAAC,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,mBAAmB,EAAE,EAAE,GAAG,CAAC,CAAC;QACrD,CAAC;QAED,MAAM,WAAW,GAAG,iBAAiB,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC;QACtD,IAAI,CAAC,WAAW,CAAC,OAAO,EAAE,CAAC;YACzB,MAAM,MAAM,GAAG,WAAW,CAAC,KAAK,CAAC,MAAM;iBACpC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,OAAO,EAAE,CAAC;iBAC/C,IAAI,CAAC,IAAI,CAAC,CAAC;YACd,OAAO,CAAC,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,oBAAoB,MAAM,EAAE,EAAE,EAAE,GAAG,CAAC,CAAC;QAC9D,CAAC;QAED,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,GAAG,WAAW,CAAC,IAAI,CAAC;QAC9C,oEAAoE;QACpE,MAAM,OAAO,GAAI,IAAgC,CAAC,OAErC,CAAC;QAEd,uCAAuC;QACvC,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YAC1B,OAAO,CAAC,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,gCAAgC,EAAE,EAAE,GAAG,CAAC,CAAC;QAClE,CAAC;QAED,yBAAyB;QACzB,MAAM,UAAU,GAAG,CAAC,QAAQ,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,CAAC,CAAC;QAC3D,KAAK,MAAM,GAAG,IAAI,QAAQ,EAAE,CAAC;YAC3B,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC;gBACnC,OAAO,CAAC,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,iBAAiB,GAAG,CAAC,IAAI,EAAE,EAAE,EAAE,GAAG,CAAC,CAAC;YAC7D,CAAC;QACH,CAAC;QAED,IAAI,CAAC;YACH,IAAI,MAAM,EAAE,CAAC;gBACX,yBAAyB;gBACzB,IAAI,CAAC,KAAK,CAAC,aAAa,EAAE,CAAC;oBACzB,OAAO,CAAC,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,UAAU,IAAI,iCAAiC,EAAE,EAAE,GAAG,CAAC,CAAC;gBACjF,CAAC;gBACD,MAAM,MAAM,GAAG,MAAM,KAAK,CAAC,gBAAgB,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;gBAC/D,OAAO,SAAS,CAAC,CAAC,EAAE,KAAK,EAAE,SAAS,EAAE,EAAE;oBACtC,IAAI,KAAK,EAAE,MAAM,KAAK,IAAI,WAAW,CAAC,MAAM,CAAC,EAAE,CAAC;wBAC9C,MAAM,SAAS,CAAC,QAAQ,CAAC,EAAE,IAAI,EAAE,KAAK,CAAC,OAAO,CAAC,SAAS,EAAE,EAAE,CAAC,CAAC,OAAO,CAAC,OAAO,EAAE,EAAE,CAAC,EAAE,CAAC,CAAC;oBACxF,CAAC;gBACH,CAAC,CAAC,CAAC;YACL,CAAC;iBAAM,CAAC;gBACN,6BAA6B;gBAC7B,IAAI,CAAC,KAAK,CAAC,OAAO,EAAE,CAAC;oBACnB,OAAO,CAAC,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,UAAU,IAAI,2BAA2B,EAAE,EAAE,GAAG,CAAC,CAAC;gBAC3E,CAAC;gBACD,MAAM,MAAM,GAAG,MAAM,KAAK,CAAC,UAAU,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;gBACzD,OAAO,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;YACxB,CAAC;QACH,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,OAAO,WAAW,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC;QAC7B,CAAC;IACH,CAAC,CAAC,CAAC;IAEH,OAAO,GAAG,CAAC;AACb,CAAC;AAED;;GAEG;AACH,SAAS,WAAW,CAClB,CAAwD,EACxD,GAAY;IAEZ,IAAI,GAAG,YAAY,mBAAmB,EAAE,CAAC;QACvC,OAAO,CAAC,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,GAAG,CAAC,OAAO,EAAE,EAAE,GAAG,CAAC,CAAC;IAC7C,CAAC;IACD,IAAI,GAAG,YAAY,UAAU,EAAE,CAAC;QAC9B,OAAO,CAAC,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,GAAG,CAAC,OAAO,EAAE,EAAE,GAAG,CAAC,CAAC;IAC7C,CAAC;IACD,MAAM,OAAO,GAAG,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,uBAAuB,CAAC;IAC7E,OAAO,CAAC,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,OAAO,EAAE,EAAE,GAAG,CAAC,CAAC;AACzC,CAAC;AAED;;;;;;;;;;;;;;;GAeG;AACH,MAAM,UAAU,KAAK,CAAC,MAAuB,EAAE,UAAwB,EAAE;IACvE,MAAM,EAAE,IAAI,GAAG,SAAS,EAAE,IAAI,GAAG,IAAI,EAAE,GAAG,OAAO,CAAC;IAElD,qBAAqB;IACrB,MAAM,SAAS,GAAG,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC;IAE5D,IAAI,SAAS,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC3B,MAAM,IAAI,KAAK,CAAC,qCAAqC,CAAC,CAAC;IACzD,CAAC;IAED,4BAA4B;IAC5B,MAAM,KAAK,GAAG,IAAI,GAAG,EAAU,CAAC;IAChC,KAAK,MAAM,KAAK,IAAI,SAAS,EAAE,CAAC;QAC9B,IAAI,KAAK,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC;YAC1B,MAAM,IAAI,KAAK,CAAC,yBAAyB,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC;QACzD,CAAC;QACD,KAAK,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;IACxB,CAAC;IAED,MAAM,GAAG,GAAG,SAAS,CAAC,SAAS,CAAC,CAAC;IAEjC,OAAO,CAAC,GAAG,CAAC,mCAAmC,CAAC,CAAC;IACjD,OAAO,CAAC,GAAG,CAAC,WAAW,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IAClE,OAAO,CAAC,GAAG,CAAC,uBAAuB,IAAI,IAAI,IAAI,EAAE,CAAC,CAAC;IAEnD,SAAS,CAAC;QACR,KAAK,EAAE,GAAG,CAAC,KAAK;QAChB,QAAQ,EAAE,IAAI;QACd,IAAI;KACL,CAAC,CAAC;AACL,CAAC"}
package/dist/types.d.ts CHANGED
@@ -6,14 +6,17 @@
6
6
  import { z } from 'zod/v4';
7
7
  /**
8
8
  * Tool call function details.
9
+ * @internal
9
10
  */
10
11
  export declare const ToolCallFunctionSchema: z.ZodObject<{
11
12
  name: z.ZodString;
12
13
  arguments: z.ZodString;
13
14
  }, z.core.$strip>;
15
+ /** @internal */
14
16
  export type ToolCallFunction = z.infer<typeof ToolCallFunctionSchema>;
15
17
  /**
16
18
  * A tool call made by the assistant.
19
+ * @internal
17
20
  */
18
21
  export declare const ToolCallSchema: z.ZodObject<{
19
22
  id: z.ZodString;
@@ -23,9 +26,11 @@ export declare const ToolCallSchema: z.ZodObject<{
23
26
  arguments: z.ZodString;
24
27
  }, z.core.$strip>;
25
28
  }, z.core.$strip>;
29
+ /** @internal */
26
30
  export type ToolCall = z.infer<typeof ToolCallSchema>;
27
31
  /**
28
32
  * Valid message roles.
33
+ * @internal
29
34
  */
30
35
  export declare const MessageRoleSchema: z.ZodEnum<{
31
36
  system: "system";
@@ -33,9 +38,11 @@ export declare const MessageRoleSchema: z.ZodEnum<{
33
38
  assistant: "assistant";
34
39
  tool: "tool";
35
40
  }>;
41
+ /** @internal */
36
42
  export type MessageRole = z.infer<typeof MessageRoleSchema>;
37
43
  /**
38
44
  * A chat message in a conversation.
45
+ * @internal
39
46
  */
40
47
  export declare const ChatMessageSchema: z.ZodObject<{
41
48
  role: z.ZodEnum<{
@@ -56,9 +63,13 @@ export declare const ChatMessageSchema: z.ZodObject<{
56
63
  }, z.core.$strip>>>;
57
64
  tool_call_id: z.ZodOptional<z.ZodString>;
58
65
  }, z.core.$strip>;
66
+ /**
67
+ * A chat message in a conversation.
68
+ */
59
69
  export type ChatMessage = z.infer<typeof ChatMessageSchema>;
60
70
  /**
61
71
  * An assistant message returned by chat handlers.
72
+ * @internal
62
73
  */
63
74
  export declare const AssistantMessageSchema: z.ZodObject<{
64
75
  role: z.ZodLiteral<"assistant">;
@@ -72,17 +83,23 @@ export declare const AssistantMessageSchema: z.ZodObject<{
72
83
  }, z.core.$strip>;
73
84
  }, z.core.$strip>>>;
74
85
  }, z.core.$strip>;
86
+ /**
87
+ * An assistant message returned by chat handlers.
88
+ */
75
89
  export type AssistantMessage = z.infer<typeof AssistantMessageSchema>;
76
90
  /**
77
91
  * Request body for invoke endpoint.
92
+ * @internal
78
93
  */
79
94
  export declare const InvokeRequestSchema: z.ZodObject<{
80
95
  input: z.ZodRecord<z.ZodString, z.ZodAny>;
81
96
  stream: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
82
97
  }, z.core.$strip>;
98
+ /** @internal */
83
99
  export type InvokeRequest = z.infer<typeof InvokeRequestSchema>;
84
100
  /**
85
101
  * Request body for chat endpoint.
102
+ * @internal
86
103
  */
87
104
  export declare const ChatRequestSchema: z.ZodObject<{
88
105
  messages: z.ZodArray<z.ZodObject<{
@@ -106,16 +123,20 @@ export declare const ChatRequestSchema: z.ZodObject<{
106
123
  }, z.core.$strip>>;
107
124
  stream: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
108
125
  }, z.core.$strip>;
126
+ /** @internal */
109
127
  export type ChatRequest = z.infer<typeof ChatRequestSchema>;
110
128
  /**
111
129
  * Response from invoke handler (non-streaming).
130
+ * @internal
112
131
  */
113
132
  export declare const InvokeResponseSchema: z.ZodObject<{
114
133
  output: z.ZodAny;
115
134
  }, z.core.$strip>;
135
+ /** @internal */
116
136
  export type InvokeResponse = z.infer<typeof InvokeResponseSchema>;
117
137
  /**
118
138
  * Response from chat handler (non-streaming).
139
+ * @internal
119
140
  */
120
141
  export declare const ChatResponseSchema: z.ZodObject<{
121
142
  message: z.ZodObject<{
@@ -131,36 +152,63 @@ export declare const ChatResponseSchema: z.ZodObject<{
131
152
  }, z.core.$strip>>>;
132
153
  }, z.core.$strip>;
133
154
  }, z.core.$strip>;
155
+ /** @internal */
134
156
  export type ChatResponse = z.infer<typeof ChatResponseSchema>;
135
157
  /**
136
158
  * A streaming chunk.
159
+ * @internal
137
160
  */
138
161
  export declare const StreamChunkSchema: z.ZodObject<{
139
162
  chunk: z.ZodString;
140
163
  }, z.core.$strip>;
164
+ /** @internal */
141
165
  export type StreamChunk = z.infer<typeof StreamChunkSchema>;
166
+ /**
167
+ * Request context passed to handlers.
168
+ */
169
+ export interface Context {
170
+ conversationId?: string;
171
+ userId?: string;
172
+ custom?: Record<string, unknown>;
173
+ }
142
174
  /**
143
175
  * Input data passed to invoke handlers.
176
+ * @internal
144
177
  */
145
178
  export type InvokeInput = Record<string, unknown>;
146
179
  /**
147
180
  * Result from an invoke handler - either a response or an async generator for streaming.
181
+ * @internal
148
182
  */
149
183
  export type InvokeResult = InvokeResponse | AsyncGenerator<StreamChunk, void, unknown>;
150
184
  /**
151
185
  * Result from a chat handler - either a response or an async generator for streaming.
186
+ * @internal
152
187
  */
153
188
  export type ChatResult = ChatResponse | AsyncGenerator<StreamChunk, void, unknown>;
154
189
  /**
155
- * Handler function for invoke requests.
190
+ * Handler function for non-streaming invoke requests.
191
+ * @internal
192
+ */
193
+ export type InvokeHandler = (input: InvokeInput, ctx?: Context) => InvokeResponse | Promise<InvokeResponse>;
194
+ /**
195
+ * Handler function for streaming invoke requests.
196
+ * @internal
197
+ */
198
+ export type InvokeStreamHandler = (input: InvokeInput, ctx?: Context) => AsyncGenerator<StreamChunk, void, unknown> | Promise<AsyncGenerator<StreamChunk, void, unknown>>;
199
+ /**
200
+ * Handler function for non-streaming chat requests.
201
+ * @internal
156
202
  */
157
- export type InvokeHandler = (input: InvokeInput) => InvokeResult | Promise<InvokeResult>;
203
+ export type ChatHandler = (messages: ChatMessage[], ctx?: Context) => ChatResponse | Promise<ChatResponse>;
158
204
  /**
159
- * Handler function for chat requests.
205
+ * Handler function for streaming chat requests.
206
+ * @internal
160
207
  */
161
- export type ChatHandler = (messages: ChatMessage[]) => ChatResult | Promise<ChatResult>;
208
+ export type ChatStreamHandler = (messages: ChatMessage[], ctx?: Context) => AsyncGenerator<StreamChunk, void, unknown> | Promise<AsyncGenerator<StreamChunk, void, unknown>>;
162
209
  /**
163
210
  * Individual agent health status.
211
+ * @internal
164
212
  */
165
213
  export interface AgentHealth {
166
214
  name: string;
@@ -169,6 +217,7 @@ export interface AgentHealth {
169
217
  }
170
218
  /**
171
219
  * Overall health response for the runtime.
220
+ * @internal
172
221
  */
173
222
  export interface HealthResponse {
174
223
  status: 'healthy';
@@ -176,6 +225,7 @@ export interface HealthResponse {
176
225
  }
177
226
  /**
178
227
  * User-defined metadata for an agent.
228
+ * @internal
179
229
  */
180
230
  export interface AgentMetadata {
181
231
  framework?: string;
@@ -185,6 +235,7 @@ export interface AgentMetadata {
185
235
  }
186
236
  /**
187
237
  * Agent information returned by the discovery endpoint.
238
+ * @internal
188
239
  */
189
240
  export interface AgentInfo {
190
241
  name: string;
@@ -194,6 +245,7 @@ export interface AgentInfo {
194
245
  }
195
246
  /**
196
247
  * Runtime information returned by the discovery endpoint.
248
+ * @internal
197
249
  */
198
250
  export interface RuntimeInfo {
199
251
  version: string;
@@ -202,6 +254,7 @@ export interface RuntimeInfo {
202
254
  }
203
255
  /**
204
256
  * Response from the /_discover endpoint.
257
+ * @internal
205
258
  */
206
259
  export interface DiscoverResponse {
207
260
  runtime: RuntimeInfo;
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}
package/dist/types.js CHANGED
@@ -9,6 +9,7 @@ import { z } from 'zod/v4';
9
9
  // =============================================================================
10
10
  /**
11
11
  * Tool call function details.
12
+ * @internal
12
13
  */
13
14
  export const ToolCallFunctionSchema = z.object({
14
15
  name: z.string(),
@@ -16,6 +17,7 @@ export const ToolCallFunctionSchema = z.object({
16
17
  });
17
18
  /**
18
19
  * A tool call made by the assistant.
20
+ * @internal
19
21
  */
20
22
  export const ToolCallSchema = z.object({
21
23
  id: z.string(),
@@ -24,10 +26,12 @@ export const ToolCallSchema = z.object({
24
26
  });
25
27
  /**
26
28
  * Valid message roles.
29
+ * @internal
27
30
  */
28
31
  export const MessageRoleSchema = z.enum(['system', 'user', 'assistant', 'tool']);
29
32
  /**
30
33
  * A chat message in a conversation.
34
+ * @internal
31
35
  */
32
36
  export const ChatMessageSchema = z.object({
33
37
  role: MessageRoleSchema,
@@ -38,6 +42,7 @@ export const ChatMessageSchema = z.object({
38
42
  });
39
43
  /**
40
44
  * An assistant message returned by chat handlers.
45
+ * @internal
41
46
  */
42
47
  export const AssistantMessageSchema = z.object({
43
48
  role: z.literal('assistant'),
@@ -49,6 +54,7 @@ export const AssistantMessageSchema = z.object({
49
54
  // =============================================================================
50
55
  /**
51
56
  * Request body for invoke endpoint.
57
+ * @internal
52
58
  */
53
59
  export const InvokeRequestSchema = z.object({
54
60
  input: z.record(z.string(), z.any()),
@@ -56,6 +62,7 @@ export const InvokeRequestSchema = z.object({
56
62
  });
57
63
  /**
58
64
  * Request body for chat endpoint.
65
+ * @internal
59
66
  */
60
67
  export const ChatRequestSchema = z.object({
61
68
  messages: z.array(ChatMessageSchema).nonempty(),
@@ -66,18 +73,21 @@ export const ChatRequestSchema = z.object({
66
73
  // =============================================================================
67
74
  /**
68
75
  * Response from invoke handler (non-streaming).
76
+ * @internal
69
77
  */
70
78
  export const InvokeResponseSchema = z.object({
71
79
  output: z.any(),
72
80
  });
73
81
  /**
74
82
  * Response from chat handler (non-streaming).
83
+ * @internal
75
84
  */
76
85
  export const ChatResponseSchema = z.object({
77
86
  message: AssistantMessageSchema,
78
87
  });
79
88
  /**
80
89
  * A streaming chunk.
90
+ * @internal
81
91
  */
82
92
  export const StreamChunkSchema = z.object({
83
93
  chunk: z.string(),
package/dist/types.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"types.js","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}
package/dist/version.d.ts CHANGED
@@ -2,5 +2,5 @@
2
2
  * Runtime version - auto-generated by bump-version script.
3
3
  * Do not edit manually.
4
4
  */
5
- export declare const VERSION = "0.6.0";
5
+ export declare const VERSION = "0.7.0";
6
6
  //# sourceMappingURL=version.d.ts.map
package/dist/version.js CHANGED
@@ -2,5 +2,5 @@
2
2
  * Runtime version - auto-generated by bump-version script.
3
3
  * Do not edit manually.
4
4
  */
5
- export const VERSION = '0.6.0';
5
+ export const VERSION = '0.7.0';
6
6
  //# sourceMappingURL=version.js.map
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@reminix/runtime",
3
- "version": "0.6.0",
3
+ "version": "0.7.0",
4
4
  "type": "module",
5
5
  "description": "Reminix Agent Runtime - Build AI agents that integrate with Reminix",
6
6
  "main": "./dist/index.js",
@@ -40,7 +40,7 @@
40
40
  "vitest": "^4.0.16"
41
41
  },
42
42
  "engines": {
43
- "node": ">=18.0.0"
43
+ "node": ">=20.0.0"
44
44
  },
45
45
  "publishConfig": {
46
46
  "access": "public"