@elizaos/core 1.6.3 → 1.6.4-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/dist/elizaos.d.ts CHANGED
@@ -1,4 +1,51 @@
1
- import type { Character, IAgentRuntime, UUID, Memory, State, Plugin, RuntimeSettings } from './types';
1
+ import type { Character, IAgentRuntime, UUID, Memory, State, Plugin, RuntimeSettings, Content } from './types';
2
+ import type { MessageProcessingResult } from './services/message-service';
3
+ /**
4
+ * Options for sending a message to an agent
5
+ */
6
+ export interface SendMessageOptions {
7
+ /**
8
+ * Called when the agent generates a response (ASYNC MODE)
9
+ * If provided, method returns immediately (fire & forget)
10
+ * If not provided, method waits for response (SYNC MODE)
11
+ */
12
+ onResponse?: (content: Content) => Promise<void>;
13
+ /**
14
+ * Called if an error occurs during processing
15
+ */
16
+ onError?: (error: Error) => Promise<void>;
17
+ /**
18
+ * Called when processing is complete
19
+ */
20
+ onComplete?: () => Promise<void>;
21
+ /**
22
+ * Maximum number of retries for failed messages
23
+ */
24
+ maxRetries?: number;
25
+ /**
26
+ * Timeout duration in milliseconds
27
+ */
28
+ timeoutDuration?: number;
29
+ /**
30
+ * Enable multi-step message processing
31
+ */
32
+ useMultiStep?: boolean;
33
+ /**
34
+ * Maximum multi-step iterations
35
+ */
36
+ maxMultiStepIterations?: number;
37
+ }
38
+ /**
39
+ * Result of sending a message to an agent
40
+ */
41
+ export interface SendMessageResult {
42
+ /** ID of the user message */
43
+ messageId: UUID;
44
+ /** The user message that was created */
45
+ userMessage: Memory;
46
+ /** Processing result (only in SYNC mode) */
47
+ result?: MessageProcessingResult;
48
+ }
2
49
  /**
3
50
  * Batch operation for sending messages
4
51
  */
@@ -113,29 +160,85 @@ export declare class ElizaOS extends EventTarget {
113
160
  */
114
161
  getAgentByCharacterId(characterId: UUID): IAgentRuntime | undefined;
115
162
  /**
116
- * Send a message to a specific agent - THE ONLY WAY to send messages
117
- * All message sending (WebSocket, API, CLI, Tests, MessageBus) must use this method
163
+ * Send a message to a specific agent
164
+ *
165
+ * @param agentId - The agent ID to send the message to
166
+ * @param message - Partial Memory object (missing fields auto-filled)
167
+ * @param options - Optional callbacks and processing options
168
+ * @returns Promise with message ID and result
169
+ *
170
+ * @example
171
+ * // SYNC mode (HTTP API)
172
+ * const result = await elizaOS.sendMessage(agentId, {
173
+ * entityId: user.id,
174
+ * roomId: room.id,
175
+ * content: { text: "Hello", source: 'web' }
176
+ * });
177
+ *
178
+ * @example
179
+ * // ASYNC mode (WebSocket, MessageBus)
180
+ * await elizaOS.sendMessage(agentId, {
181
+ * entityId: user.id,
182
+ * roomId: room.id,
183
+ * content: { text: "Hello", source: 'websocket' }
184
+ * }, {
185
+ * onResponse: async (response) => {
186
+ * await socket.emit('message', response.text);
187
+ * }
188
+ * });
118
189
  */
119
- sendMessage(agentId: UUID, message: Memory | string, options?: {
120
- userId?: UUID;
121
- roomId?: UUID;
122
- metadata?: Record<string, any>;
123
- }): Promise<Memory[]>;
190
+ sendMessage(agentId: UUID, message: Partial<Memory> & {
191
+ entityId: UUID;
192
+ roomId: UUID;
193
+ content: Content;
194
+ worldId?: UUID;
195
+ }, options?: SendMessageOptions): Promise<SendMessageResult>;
124
196
  /**
125
- * Send messages to multiple agents (batch operation)
126
- * All batch message sending must use this method
197
+ * Send messages to multiple agents in parallel
198
+ *
199
+ * Useful for batch operations where you need to send messages to multiple agents at once.
200
+ * All messages are sent in parallel for maximum performance.
201
+ *
202
+ * @param messages - Array of messages to send, each with agentId and message data
203
+ * @returns Promise with array of results, one per message
204
+ *
205
+ * @example
206
+ * const results = await elizaOS.sendMessages([
207
+ * {
208
+ * agentId: agent1Id,
209
+ * message: {
210
+ * entityId: user.id,
211
+ * roomId: room.id,
212
+ * content: { text: "Hello Agent 1", source: "web" }
213
+ * }
214
+ * },
215
+ * {
216
+ * agentId: agent2Id,
217
+ * message: {
218
+ * entityId: user.id,
219
+ * roomId: room.id,
220
+ * content: { text: "Hello Agent 2", source: "web" }
221
+ * },
222
+ * options: {
223
+ * onResponse: async (response) => {
224
+ * console.log("Agent 2 responded:", response.text);
225
+ * }
226
+ * }
227
+ * }
228
+ * ]);
127
229
  */
128
230
  sendMessages(messages: Array<{
129
231
  agentId: UUID;
130
- message: Memory | string;
131
- options?: {
132
- userId?: UUID;
133
- roomId?: UUID;
134
- metadata?: Record<string, any>;
232
+ message: Partial<Memory> & {
233
+ entityId: UUID;
234
+ roomId: UUID;
235
+ content: Content;
236
+ worldId?: UUID;
135
237
  };
238
+ options?: SendMessageOptions;
136
239
  }>): Promise<Array<{
137
240
  agentId: UUID;
138
- responses: Memory[];
241
+ result: SendMessageResult;
139
242
  error?: Error;
140
243
  }>>;
141
244
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"elizaos.d.ts","sourceRoot":"","sources":["../src/elizaos.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"elizaos.d.ts","sourceRoot":"","sources":["../src/elizaos.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EACV,SAAS,EACT,aAAa,EACb,IAAI,EACJ,MAAM,EACN,KAAK,EACL,MAAM,EACN,eAAe,EACf,OAAO,EACR,MAAM,SAAS,CAAC;AACjB,OAAO,KAAK,EAA4B,uBAAuB,EAAE,MAAM,4BAA4B,CAAC;AAEpG;;GAEG;AACH,MAAM,WAAW,kBAAkB;IACjC;;;;OAIG;IACH,UAAU,CAAC,EAAE,CAAC,OAAO,EAAE,OAAO,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IAEjD;;OAEG;IACH,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,KAAK,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IAE1C;;OAEG;IACH,UAAU,CAAC,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;IAEjC;;OAEG;IACH,UAAU,CAAC,EAAE,MAAM,CAAC;IAEpB;;OAEG;IACH,eAAe,CAAC,EAAE,MAAM,CAAC;IAEzB;;OAEG;IACH,YAAY,CAAC,EAAE,OAAO,CAAC;IAEvB;;OAEG;IACH,sBAAsB,CAAC,EAAE,MAAM,CAAC;CACjC;AAED;;GAEG;AACH,MAAM,WAAW,iBAAiB;IAChC,6BAA6B;IAC7B,SAAS,EAAE,IAAI,CAAC;IAEhB,wCAAwC;IACxC,WAAW,EAAE,MAAM,CAAC;IAEpB,4CAA4C;IAC5C,MAAM,CAAC,EAAE,uBAAuB,CAAC;CAClC;AAED;;GAEG;AACH,MAAM,WAAW,cAAc;IAC7B,OAAO,EAAE,IAAI,CAAC;IACd,SAAS,EAAE,SAAS,GAAG,QAAQ,GAAG,UAAU,CAAC;IAC7C,OAAO,EAAE,GAAG,CAAC;CACd;AAED;;GAEG;AACH,MAAM,WAAW,WAAW;IAC1B,OAAO,EAAE,IAAI,CAAC;IACd,OAAO,EAAE,OAAO,CAAC;IACjB,MAAM,CAAC,EAAE,GAAG,CAAC;IACb,KAAK,CAAC,EAAE,KAAK,CAAC;CACf;AAED;;GAEG;AACH,MAAM,WAAW,eAAe;IAC9B,QAAQ,CAAC,EAAE,EAAE,IAAI,GAAG,aAAa,GAAG,SAAS,CAAC;IAC9C,SAAS,IAAI,aAAa,EAAE,CAAC;IAC7B,QAAQ,CAAC,OAAO,EAAE,IAAI,GAAG,KAAK,GAAG,SAAS,CAAC;CAC5C;AAED;;GAEG;AACH,MAAM,WAAW,YAAY;IAC3B,KAAK,EAAE,OAAO,CAAC;IACf,UAAU,EAAE,OAAO,CAAC;IACpB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED;;GAEG;AACH,MAAM,WAAW,WAAW;IAC1B,EAAE,EAAE,IAAI,CAAC;IACT,SAAS,EAAE,OAAO,CAAC,SAAS,CAAC,CAAC;CAC/B;AAED;;;GAGG;AACH,qBAAa,OAAQ,SAAQ,WAAW;IACtC,OAAO,CAAC,QAAQ,CAAuC;IACvD,OAAO,CAAC,aAAa,CAAmE;IACxF,OAAO,CAAC,YAAY,CAAS;IAE7B;;;OAGG;IACG,SAAS,CACb,MAAM,EAAE,KAAK,CAAC;QACZ,SAAS,EAAE,SAAS,CAAC;QACrB,OAAO,CAAC,EAAE,CAAC,MAAM,GAAG,MAAM,CAAC,EAAE,CAAC;QAC9B,QAAQ,CAAC,EAAE,eAAe,CAAC;QAC3B,IAAI,CAAC,EAAE,CAAC,OAAO,EAAE,aAAa,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;KAClD,CAAC,EACF,OAAO,CAAC,EAAE;QAAE,UAAU,CAAC,EAAE,OAAO,CAAA;KAAE,GACjC,OAAO,CAAC,IAAI,EAAE,CAAC;IAqDlB;;OAEG;IACH,aAAa,CAAC,OAAO,EAAE,aAAa,GAAG,IAAI;IAc3C;;OAEG;IACG,WAAW,CAAC,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,OAAO,CAAC,SAAS,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC;IAoB5E;;OAEG;IACG,YAAY,CAAC,QAAQ,EAAE,IAAI,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC;IAenD;;OAEG;IACG,WAAW,CAAC,QAAQ,CAAC,EAAE,IAAI,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC;IAqCnD;;OAEG;IACG,UAAU,CAAC,QAAQ,CAAC,EAAE,IAAI,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC;IAmBlD;;OAEG;IACH,QAAQ,CAAC,EAAE,EAAE,IAAI,GAAG,aAAa,GAAG,SAAS;IAI7C;;OAEG;IACH,SAAS,IAAI,aAAa,EAAE;IAI5B;;OAEG;IACH,cAAc,CAAC,GAAG,EAAE,IAAI,EAAE,GAAG,aAAa,EAAE;IAM5C;;OAEG;IACH,gBAAgB,CAAC,KAAK,EAAE,MAAM,EAAE,GAAG,aAAa,EAAE;IAKlD;;OAEG;IACH,YAAY,CAAC,EAAE,EAAE,IAAI,GAAG,aAAa,GAAG,SAAS;IAIjD;;OAEG;IACH,cAAc,CAAC,IAAI,EAAE,MAAM,GAAG,aAAa,GAAG,SAAS;IAOvD;;OAEG;IACH,uBAAuB,CAAC,IAAI,EAAE,MAAM,GAAG,aAAa,GAAG,SAAS;IAIhE;;OAEG;IACH,qBAAqB,CAAC,WAAW,EAAE,IAAI,GAAG,aAAa,GAAG,SAAS;IAInE;;;;;;;;;;;;;;;;;;;;;;;;;;;OA2BG;IACG,WAAW,CACf,OAAO,EAAE,IAAI,EACb,OAAO,EAAE,OAAO,CAAC,MAAM,CAAC,GAAG;QACzB,QAAQ,EAAE,IAAI,CAAC;QACf,MAAM,EAAE,IAAI,CAAC;QACb,OAAO,EAAE,OAAO,CAAC;QACjB,OAAO,CAAC,EAAE,IAAI,CAAC;KAChB,EACD,OAAO,CAAC,EAAE,kBAAkB,GAC3B,OAAO,CAAC,iBAAiB,CAAC;IAuG7B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAiCG;IACG,YAAY,CAChB,QAAQ,EAAE,KAAK,CAAC;QACd,OAAO,EAAE,IAAI,CAAC;QACd,OAAO,EAAE,OAAO,CAAC,MAAM,CAAC,GAAG;YACzB,QAAQ,EAAE,IAAI,CAAC;YACf,MAAM,EAAE,IAAI,CAAC;YACb,OAAO,EAAE,OAAO,CAAC;YACjB,OAAO,CAAC,EAAE,IAAI,CAAC;SAChB,CAAC;QACF,OAAO,CAAC,EAAE,kBAAkB,CAAC;KAC9B,CAAC,GACD,OAAO,CAAC,KAAK,CAAC;QAAE,OAAO,EAAE,IAAI,CAAC;QAAC,MAAM,EAAE,iBAAiB,CAAC;QAAC,KAAK,CAAC,EAAE,KAAK,CAAA;KAAE,CAAC,CAAC;IA4B9E;;OAEG;IACG,eAAe,CAAC,MAAM,CAAC,EAAE,IAAI,EAAE,GAAG,OAAO,CAAC,GAAG,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;IAkBnE;;OAEG;IACG,WAAW,CAAC,MAAM,CAAC,EAAE,IAAI,EAAE,GAAG,OAAO,CAAC,GAAG,CAAC,IAAI,EAAE,YAAY,CAAC,CAAC;IAuBpE;;OAEG;IACH,kBAAkB,IAAI,eAAe;IAqBrC;;OAEG;IACH,kBAAkB,IAAI,IAAI;CAQ3B"}
@@ -25990,7 +25990,7 @@ var getDefaultProjectName = () => {
25990
25990
  };
25991
25991
 
25992
25992
  // ../../node_modules/langsmith/dist/index.js
25993
- var __version__ = "0.3.74";
25993
+ var __version__ = "0.3.75";
25994
25994
 
25995
25995
  // ../../node_modules/langsmith/dist/utils/env.js
25996
25996
  var globalEnv;
@@ -32234,7 +32234,7 @@ class AIMessageChunk extends BaseMessageChunk {
32234
32234
  invalid_tool_calls: [],
32235
32235
  tool_call_chunks: []
32236
32236
  };
32237
- } else if (fields.tool_call_chunks === undefined) {
32237
+ } else if (fields.tool_call_chunks === undefined || fields.tool_call_chunks.length === 0) {
32238
32238
  initParams = {
32239
32239
  ...fields,
32240
32240
  tool_calls: fields.tool_calls ?? [],
@@ -32243,7 +32243,8 @@ class AIMessageChunk extends BaseMessageChunk {
32243
32243
  usage_metadata: fields.usage_metadata !== undefined ? fields.usage_metadata : undefined
32244
32244
  };
32245
32245
  } else {
32246
- const groupedToolCallChunks = fields.tool_call_chunks.reduce((acc, chunk) => {
32246
+ const toolCallChunks = fields.tool_call_chunks ?? [];
32247
+ const groupedToolCallChunks = toolCallChunks.reduce((acc, chunk) => {
32247
32248
  const matchedChunkIndex = acc.findIndex(([match]) => {
32248
32249
  if ("id" in chunk && chunk.id && "index" in chunk && chunk.index !== undefined) {
32249
32250
  return chunk.id === match.id && chunk.index === match.index;
@@ -47280,31 +47281,79 @@ class ElizaOS extends EventTarget {
47280
47281
  if (!runtime) {
47281
47282
  throw new Error(`Agent ${agentId} not found`);
47282
47283
  }
47283
- const memory = typeof message === "string" ? {
47284
- id: v4_default(),
47285
- entityId: options?.userId || "system",
47286
- agentId,
47287
- roomId: options?.roomId || agentId,
47288
- content: { text: message },
47289
- createdAt: Date.now(),
47290
- metadata: options?.metadata
47291
- } : message;
47292
- const responses = [];
47293
- await runtime.processActions(memory, responses);
47294
- this.dispatchEvent(new CustomEvent("message:sent", {
47295
- detail: { agentId, message: memory, responses }
47296
- }));
47297
- return responses;
47284
+ if (!runtime.messageService) {
47285
+ throw new Error("messageService is not initialized on runtime");
47286
+ }
47287
+ const messageId = message.id || v4_default();
47288
+ const userMessage = {
47289
+ ...message,
47290
+ id: messageId,
47291
+ agentId: message.agentId || runtime.agentId,
47292
+ createdAt: message.createdAt || Date.now(),
47293
+ entityId: message.entityId,
47294
+ roomId: message.roomId,
47295
+ content: message.content
47296
+ };
47297
+ await runtime.ensureConnection({
47298
+ entityId: userMessage.entityId,
47299
+ roomId: userMessage.roomId,
47300
+ worldId: message.worldId || userMessage.roomId,
47301
+ source: userMessage.content.source || "unknown",
47302
+ channelId: userMessage.roomId
47303
+ });
47304
+ const processingOptions = {
47305
+ maxRetries: options?.maxRetries,
47306
+ timeoutDuration: options?.timeoutDuration,
47307
+ useMultiStep: options?.useMultiStep,
47308
+ maxMultiStepIterations: options?.maxMultiStepIterations
47309
+ };
47310
+ const isAsyncMode = !!options?.onResponse;
47311
+ if (isAsyncMode) {
47312
+ const callback = async (content) => {
47313
+ try {
47314
+ if (options.onResponse) {
47315
+ await options.onResponse(content);
47316
+ }
47317
+ } catch (error) {
47318
+ if (options.onError) {
47319
+ await options.onError(error instanceof Error ? error : new Error(String(error)));
47320
+ }
47321
+ }
47322
+ return [];
47323
+ };
47324
+ runtime.messageService.handleMessage(runtime, userMessage, callback, processingOptions).then(() => {
47325
+ if (options.onComplete)
47326
+ options.onComplete();
47327
+ }).catch((error) => {
47328
+ if (options.onError)
47329
+ options.onError(error);
47330
+ });
47331
+ this.dispatchEvent(new CustomEvent("message:sent", {
47332
+ detail: { agentId, messageId, mode: "async" }
47333
+ }));
47334
+ return { messageId, userMessage };
47335
+ } else {
47336
+ const result = await runtime.messageService.handleMessage(runtime, userMessage, undefined, processingOptions);
47337
+ if (options?.onComplete)
47338
+ await options.onComplete();
47339
+ this.dispatchEvent(new CustomEvent("message:sent", {
47340
+ detail: { agentId, messageId, mode: "sync", result }
47341
+ }));
47342
+ return { messageId, userMessage, result };
47343
+ }
47298
47344
  }
47299
47345
  async sendMessages(messages) {
47300
47346
  const results = await Promise.all(messages.map(async ({ agentId, message, options }) => {
47301
47347
  try {
47302
- const responses = await this.sendMessage(agentId, message, options);
47303
- return { agentId, responses };
47348
+ const result = await this.sendMessage(agentId, message, options);
47349
+ return { agentId, result };
47304
47350
  } catch (error) {
47305
47351
  return {
47306
47352
  agentId,
47307
- responses: [],
47353
+ result: {
47354
+ messageId: message.id || "",
47355
+ userMessage: message
47356
+ },
47308
47357
  error: error instanceof Error ? error : new Error(String(error))
47309
47358
  };
47310
47359
  }
@@ -47754,5 +47803,5 @@ export {
47754
47803
  AgentRuntime
47755
47804
  };
47756
47805
 
47757
- //# debugId=9B89E2D616BB564964756E2164756E21
47806
+ //# debugId=93B0F013074B074E64756E2164756E21
47758
47807
  //# sourceMappingURL=index.node.js.map