@elizaos/core 1.2.0 → 1.2.1

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.
@@ -499,6 +499,15 @@ var AgentStatus2 = /* @__PURE__ */ ((AgentStatus3) => {
499
499
  return AgentStatus3;
500
500
  })(AgentStatus2 || {});
501
501
 
502
+ // src/types/components.ts
503
+ function createActionResult(partial = {}) {
504
+ return {
505
+ success: true,
506
+ // Default to success
507
+ ...partial
508
+ };
509
+ }
510
+
502
511
  // src/types/service.ts
503
512
  var ServiceType3 = {
504
513
  TRANSCRIPTION: "transcription",
@@ -1463,7 +1472,7 @@ function formatActionNames2(actions) {
1463
1472
  }
1464
1473
  function formatActions2(actions) {
1465
1474
  if (!actions?.length) return "";
1466
- return [...actions].sort(() => Math.random() - 0.5).map((action) => `${action.name}: ${action.description}`).join(",\n");
1475
+ return [...actions].sort(() => Math.random() - 0.5).map((action) => `- **${action.name}**: ${action.description || "No description available"}`).join("\n");
1467
1476
  }
1468
1477
 
1469
1478
  // src/database.ts
@@ -1519,14 +1528,22 @@ IMPORTANT ACTION ORDERING RULES:
1519
1528
  - REPLY is used to acknowledge and inform the user about what you're going to do
1520
1529
  - Follow-up actions execute the actual tasks after acknowledgment
1521
1530
  - Use IGNORE only when you should not respond at all
1531
+ - If you use IGNORE, do not include any other actions. IGNORE should be used alone when you should not respond or take any actions.
1522
1532
 
1523
1533
  IMPORTANT PROVIDER SELECTION RULES:
1534
+ - Only include providers if they are needed to respond accurately.
1524
1535
  - If the message mentions images, photos, pictures, attachments, or visual content, OR if you see "(Attachments:" in the conversation, you MUST include "ATTACHMENTS" in your providers list
1525
1536
  - If the message asks about or references specific people, include "ENTITIES" in your providers list
1526
1537
  - If the message asks about relationships or connections between people, include "RELATIONSHIPS" in your providers list
1527
1538
  - If the message asks about facts or specific information, include "FACTS" in your providers list
1528
1539
  - If the message asks about the environment or world context, include "WORLD" in your providers list
1529
- - If you need external knowledge, information, or context beyond the current conversation to provide a helpful response, include "KNOWLEDGE" in your providers list
1540
+ - If no additional context is needed, you may leave the providers list empty.
1541
+
1542
+ IMPORTANT CODE BLOCK FORMATTING RULES:
1543
+ - If {{agentName}} includes code examples, snippets, or multi-line code in the response, ALWAYS wrap the code with \`\`\` fenced code blocks (specify the language if known, e.g., \`\`\`python).
1544
+ - ONLY use fenced code blocks for actual code. Do NOT wrap non-code text, instructions, or single words in fenced code blocks.
1545
+ - If including inline code (short single words or function names), use single backticks (\`) as appropriate.
1546
+ - This ensures the user sees clearly formatted and copyable code when relevant.
1530
1547
 
1531
1548
  First, think about what you want to do next and plan your actions. Then, write the next message and include the actions you plan to take.
1532
1549
  </instructions>
@@ -1591,7 +1608,7 @@ Your output should be formatted in XML like this:
1591
1608
 
1592
1609
  The "post" field should be the post you want to send. Do not including any thinking or internal reflection in the "post" field.
1593
1610
  The "imagePrompt" field is optional and should be a prompt for an image that is relevant to the post. It should be a single sentence that captures the essence of the post. ONLY USE THIS FIELD if it makes sense that the post would benefit from an image.
1594
- The "thought" field should be a short description of what the agent is thinking about before responding, inlcuding a brief justification for the response. Includate an explanation how the post is relevant to the topic but unique and different than other posts.
1611
+ The "thought" field should be a short description of what the agent is thinking about before responding, including a brief justification for the response. Includate an explanation how the post is relevant to the topic but unique and different than other posts.
1595
1612
 
1596
1613
  Do NOT include any thinking, reasoning, or <think> sections in your response.
1597
1614
  Go directly to the XML response format without any preamble or explanation.
@@ -2689,6 +2706,7 @@ var Semaphore = class {
2689
2706
  }
2690
2707
  };
2691
2708
  var AgentRuntime = class {
2709
+ // Default value, can be overridden
2692
2710
  constructor(opts) {
2693
2711
  this.#conversationLength = 32;
2694
2712
  this.actions = [];
@@ -2711,6 +2729,7 @@ var AgentRuntime = class {
2711
2729
  // The initial list of plugins specified by the character configuration.
2712
2730
  this.characterPlugins = [];
2713
2731
  this.servicesInitQueue = /* @__PURE__ */ new Set();
2732
+ this.maxWorkingMemoryEntries = 50;
2714
2733
  this.agentId = opts.character?.id ?? opts?.agentId ?? stringToUuid(opts.character?.name ?? uuidv4() + opts.character?.username);
2715
2734
  this.character = opts.character;
2716
2735
  const logLevel = process.env.LOG_LEVEL || "info";
@@ -2735,6 +2754,11 @@ var AgentRuntime = class {
2735
2754
  }
2736
2755
  this.logger.debug(`Success: Agent ID: ${this.agentId}`);
2737
2756
  this.currentRunId = void 0;
2757
+ if (opts.settings?.MAX_WORKING_MEMORY_ENTRIES) {
2758
+ this.maxWorkingMemoryEntries = parseInt(opts.settings.MAX_WORKING_MEMORY_ENTRIES, 10) || 50;
2759
+ } else if (process.env.MAX_WORKING_MEMORY_ENTRIES) {
2760
+ this.maxWorkingMemoryEntries = parseInt(process.env.MAX_WORKING_MEMORY_ENTRIES, 10) || 50;
2761
+ }
2738
2762
  }
2739
2763
  #conversationLength;
2740
2764
  /**
@@ -3035,19 +3059,74 @@ var AgentRuntime = class {
3035
3059
  registerEvaluator(evaluator) {
3036
3060
  this.evaluators.push(evaluator);
3037
3061
  }
3062
+ // Helper functions for immutable action plan updates
3063
+ updateActionPlan(plan, updates) {
3064
+ return { ...plan, ...updates };
3065
+ }
3066
+ updateActionStep(plan, index, stepUpdates) {
3067
+ if (!plan.steps || index < 0 || index >= plan.steps.length) {
3068
+ this.logger.warn(
3069
+ `Invalid step index: ${index} for plan with ${plan.steps?.length || 0} steps`
3070
+ );
3071
+ return plan;
3072
+ }
3073
+ return {
3074
+ ...plan,
3075
+ steps: plan.steps.map(
3076
+ (step, i) => i === index ? { ...step, ...stepUpdates } : step
3077
+ )
3078
+ };
3079
+ }
3038
3080
  async processActions(message, responses, state, callback) {
3081
+ const allActions = [];
3082
+ for (const response of responses) {
3083
+ if (response.content?.actions && response.content.actions.length > 0) {
3084
+ allActions.push(...response.content.actions);
3085
+ }
3086
+ }
3087
+ const hasMultipleActions = allActions.length > 1;
3088
+ const runId = this.createRunId();
3089
+ let actionPlan = null;
3090
+ if (hasMultipleActions) {
3091
+ const thought = responses[0]?.content?.thought || `Executing ${allActions.length} actions: ${allActions.join(", ")}`;
3092
+ actionPlan = {
3093
+ runId,
3094
+ totalSteps: allActions.length,
3095
+ currentStep: 0,
3096
+ steps: allActions.map((action) => ({
3097
+ action,
3098
+ status: "pending"
3099
+ })),
3100
+ thought,
3101
+ startTime: Date.now()
3102
+ };
3103
+ }
3104
+ let actionIndex = 0;
3039
3105
  for (const response of responses) {
3040
3106
  let normalizeAction = function(actionString) {
3041
- return actionString.toLowerCase().replace("_", "");
3107
+ return actionString.toLowerCase().replace(/_/g, "");
3042
3108
  };
3043
3109
  if (!response.content?.actions || response.content.actions.length === 0) {
3044
3110
  this.logger.warn("No action found in the response content.");
3045
3111
  continue;
3046
3112
  }
3047
3113
  const actions = response.content.actions;
3114
+ const actionResults = [];
3115
+ let accumulatedState = state;
3048
3116
  this.logger.debug(`Found actions: ${this.actions.map((a) => normalizeAction(a.name))}`);
3049
3117
  for (const responseAction of actions) {
3050
- state = await this.composeState(message, ["RECENT_MESSAGES"]);
3118
+ if (actionPlan) {
3119
+ actionPlan = this.updateActionPlan(actionPlan, { currentStep: actionIndex + 1 });
3120
+ }
3121
+ accumulatedState = await this.composeState(message, [
3122
+ "RECENT_MESSAGES",
3123
+ "ACTION_STATE"
3124
+ // This will include the action plan
3125
+ ]);
3126
+ if (actionPlan && accumulatedState.data) {
3127
+ accumulatedState.data.actionPlan = actionPlan;
3128
+ accumulatedState.data.actionResults = actionResults;
3129
+ }
3051
3130
  this.logger.debug(`Success: Calling action: ${responseAction}`);
3052
3131
  const normalizedResponseAction = normalizeAction(responseAction);
3053
3132
  let action = this.actions.find(
@@ -3063,12 +3142,20 @@ var AgentRuntime = class {
3063
3142
  } else {
3064
3143
  this.logger.debug("Attempting to find action in similes.");
3065
3144
  for (const _action of this.actions) {
3066
- const simileAction = _action.similes?.find(
3067
- (simile) => simile.toLowerCase().replace("_", "").includes(normalizedResponseAction) || normalizedResponseAction.includes(simile.toLowerCase().replace("_", ""))
3145
+ const exactSimileMatch = _action.similes?.find(
3146
+ (simile) => normalizeAction(simile) === normalizedResponseAction
3068
3147
  );
3069
- if (simileAction) {
3148
+ if (exactSimileMatch) {
3070
3149
  action = _action;
3071
- this.logger.debug(`Success: Action found in similes: ${action.name}`);
3150
+ this.logger.debug(`Success: Action found in similes (exact match): ${action.name}`);
3151
+ break;
3152
+ }
3153
+ const fuzzySimileMatch = _action.similes?.find(
3154
+ (simile) => normalizeAction(simile).includes(normalizedResponseAction) || normalizedResponseAction.includes(normalizeAction(simile))
3155
+ );
3156
+ if (fuzzySimileMatch) {
3157
+ action = _action;
3158
+ this.logger.debug(`Success: Action found in similes (fuzzy match): ${action.name}`);
3072
3159
  break;
3073
3160
  }
3074
3161
  }
@@ -3076,6 +3163,12 @@ var AgentRuntime = class {
3076
3163
  if (!action) {
3077
3164
  const errorMsg = `No action found for: ${responseAction}`;
3078
3165
  this.logger.error(errorMsg);
3166
+ if (actionPlan && actionPlan.steps[actionIndex]) {
3167
+ actionPlan = this.updateActionStep(actionPlan, actionIndex, {
3168
+ status: "failed",
3169
+ error: errorMsg
3170
+ });
3171
+ }
3079
3172
  const actionMemory = {
3080
3173
  id: uuidv4(),
3081
3174
  entityId: message.entityId,
@@ -3083,14 +3176,26 @@ var AgentRuntime = class {
3083
3176
  worldId: message.worldId,
3084
3177
  content: {
3085
3178
  thought: errorMsg,
3086
- source: "auto"
3179
+ source: "auto",
3180
+ type: "action_result",
3181
+ actionName: responseAction,
3182
+ actionStatus: "failed",
3183
+ runId
3087
3184
  }
3088
3185
  };
3089
3186
  await this.createMemory(actionMemory, "messages");
3187
+ actionIndex++;
3090
3188
  continue;
3091
3189
  }
3092
3190
  if (!action.handler) {
3093
3191
  this.logger.error(`Action ${action.name} has no handler.`);
3192
+ if (actionPlan && actionPlan.steps[actionIndex]) {
3193
+ actionPlan = this.updateActionStep(actionPlan, actionIndex, {
3194
+ status: "failed",
3195
+ error: "No handler"
3196
+ });
3197
+ }
3198
+ actionIndex++;
3094
3199
  continue;
3095
3200
  }
3096
3201
  try {
@@ -3101,9 +3206,130 @@ var AgentRuntime = class {
3101
3206
  actionId,
3102
3207
  prompts: []
3103
3208
  };
3104
- await action.handler(this, message, state, {}, callback, responses);
3105
- this.logger.debug(`Success: Action ${action.name} executed successfully.`);
3106
- this.adapter.log({
3209
+ const actionContext = {
3210
+ previousResults: actionResults,
3211
+ getPreviousResult: (actionName) => {
3212
+ return actionResults.find((r) => r.data?.actionName === actionName);
3213
+ }
3214
+ };
3215
+ const options2 = {
3216
+ context: actionContext
3217
+ };
3218
+ if (actionPlan) {
3219
+ options2.actionPlan = {
3220
+ totalSteps: actionPlan.totalSteps,
3221
+ currentStep: actionPlan.currentStep,
3222
+ steps: actionPlan.steps,
3223
+ thought: actionPlan.thought
3224
+ };
3225
+ }
3226
+ const result = await action.handler(
3227
+ this,
3228
+ message,
3229
+ accumulatedState,
3230
+ options2,
3231
+ callback,
3232
+ responses
3233
+ );
3234
+ const isLegacyReturn = result === void 0 || result === null || typeof result === "boolean";
3235
+ let actionResult = null;
3236
+ if (!isLegacyReturn) {
3237
+ if (typeof result === "object" && result !== null && ("values" in result || "data" in result || "text" in result)) {
3238
+ actionResult = {
3239
+ success: true,
3240
+ // Default to true if not specified
3241
+ ...result
3242
+ };
3243
+ } else {
3244
+ actionResult = {
3245
+ success: true,
3246
+ // Default success for legacy results
3247
+ data: {
3248
+ actionName: action.name,
3249
+ legacyResult: result
3250
+ }
3251
+ };
3252
+ }
3253
+ actionResults.push(actionResult);
3254
+ if (actionResult.values) {
3255
+ accumulatedState = {
3256
+ ...accumulatedState,
3257
+ values: { ...accumulatedState.values, ...actionResult.values },
3258
+ data: {
3259
+ ...accumulatedState.data || {},
3260
+ actionResults: [...accumulatedState.data?.actionResults || [], actionResult],
3261
+ actionPlan
3262
+ }
3263
+ };
3264
+ }
3265
+ if (actionResult && accumulatedState.data) {
3266
+ if (!accumulatedState.data.workingMemory) accumulatedState.data.workingMemory = {};
3267
+ const memoryKey = `action_${responseAction}_${uuidv4()}`;
3268
+ const memoryEntry = {
3269
+ actionName: action.name,
3270
+ result: actionResult,
3271
+ timestamp: Date.now()
3272
+ };
3273
+ accumulatedState.data.workingMemory[memoryKey] = memoryEntry;
3274
+ const entries = Object.entries(accumulatedState.data.workingMemory);
3275
+ if (entries.length > this.maxWorkingMemoryEntries) {
3276
+ const sorted = entries.sort((a, b) => {
3277
+ const entryA = a[1];
3278
+ const entryB = b[1];
3279
+ const timestampA = entryA?.timestamp ?? 0;
3280
+ const timestampB = entryB?.timestamp ?? 0;
3281
+ return timestampB - timestampA;
3282
+ });
3283
+ accumulatedState.data.workingMemory = Object.fromEntries(
3284
+ sorted.slice(0, this.maxWorkingMemoryEntries)
3285
+ );
3286
+ }
3287
+ }
3288
+ if (actionPlan && actionPlan.steps[actionIndex]) {
3289
+ actionPlan = this.updateActionStep(actionPlan, actionIndex, {
3290
+ status: "completed",
3291
+ result: actionResult
3292
+ });
3293
+ }
3294
+ }
3295
+ const actionMemory = {
3296
+ id: actionId,
3297
+ entityId: this.agentId,
3298
+ roomId: message.roomId,
3299
+ worldId: message.worldId,
3300
+ content: {
3301
+ text: actionResult?.text || `Executed action: ${action.name}`,
3302
+ source: "action",
3303
+ type: "action_result",
3304
+ actionName: action.name,
3305
+ actionStatus: actionResult?.success ? "completed" : "failed",
3306
+ actionResult: isLegacyReturn ? { legacy: result } : actionResult,
3307
+ runId,
3308
+ ...actionPlan && {
3309
+ planStep: `${actionPlan.currentStep}/${actionPlan.totalSteps}`,
3310
+ planThought: actionPlan.thought
3311
+ }
3312
+ },
3313
+ metadata: {
3314
+ type: "action_result",
3315
+ actionName: action.name,
3316
+ runId,
3317
+ actionId,
3318
+ ...actionPlan && {
3319
+ totalSteps: actionPlan.totalSteps,
3320
+ currentStep: actionPlan.currentStep
3321
+ }
3322
+ }
3323
+ };
3324
+ await this.createMemory(actionMemory, "messages");
3325
+ this.logger.debug(`Action ${action.name} completed`, {
3326
+ isLegacyReturn,
3327
+ result: isLegacyReturn ? result : void 0,
3328
+ hasValues: actionResult ? !!actionResult.values : false,
3329
+ hasData: actionResult ? !!actionResult.data : false,
3330
+ hasText: actionResult ? !!actionResult.text : false
3331
+ });
3332
+ await this.adapter.log({
3107
3333
  entityId: message.entityId,
3108
3334
  roomId: message.roomId,
3109
3335
  type: "action",
@@ -3112,30 +3338,82 @@ var AgentRuntime = class {
3112
3338
  actionId,
3113
3339
  message: message.content.text,
3114
3340
  messageId: message.id,
3115
- state,
3341
+ state: accumulatedState,
3116
3342
  responses,
3343
+ result: isLegacyReturn ? { legacy: result } : actionResult,
3344
+ isLegacyReturn,
3117
3345
  prompts: this.currentActionContext?.prompts || [],
3118
- promptCount: this.currentActionContext?.prompts.length || 0
3346
+ promptCount: this.currentActionContext?.prompts.length || 0,
3347
+ runId,
3348
+ ...actionPlan && {
3349
+ planStep: `${actionPlan.currentStep}/${actionPlan.totalSteps}`,
3350
+ planThought: actionPlan.thought
3351
+ }
3119
3352
  }
3120
3353
  });
3121
3354
  this.currentActionContext = void 0;
3122
3355
  } catch (error) {
3123
3356
  const errorMessage = error instanceof Error ? error.message : String(error);
3124
3357
  this.logger.error(error);
3358
+ if (actionPlan && actionPlan.steps[actionIndex]) {
3359
+ actionPlan = this.updateActionStep(actionPlan, actionIndex, {
3360
+ status: "failed",
3361
+ error: errorMessage
3362
+ });
3363
+ }
3125
3364
  this.currentActionContext = void 0;
3365
+ const errorResult = {
3366
+ success: false,
3367
+ // Required field
3368
+ data: {
3369
+ actionName: action.name,
3370
+ error: errorMessage,
3371
+ errorObject: error
3372
+ }
3373
+ };
3374
+ actionResults.push(errorResult);
3126
3375
  const actionMemory = {
3127
3376
  id: uuidv4(),
3128
3377
  content: {
3129
3378
  thought: errorMessage,
3130
- source: "auto"
3379
+ source: "auto",
3380
+ type: "action_result",
3381
+ actionName: action.name,
3382
+ actionStatus: "failed",
3383
+ error: errorMessage,
3384
+ runId,
3385
+ ...actionPlan && {
3386
+ planStep: `${actionPlan.currentStep}/${actionPlan.totalSteps}`,
3387
+ planThought: actionPlan.thought
3388
+ }
3131
3389
  },
3132
- entityId: message.entityId,
3390
+ entityId: this.agentId,
3133
3391
  roomId: message.roomId,
3134
- worldId: message.worldId
3392
+ worldId: message.worldId,
3393
+ metadata: {
3394
+ type: "action_result",
3395
+ actionName: action.name,
3396
+ runId,
3397
+ error: true,
3398
+ ...actionPlan && {
3399
+ totalSteps: actionPlan.totalSteps,
3400
+ currentStep: actionPlan.currentStep
3401
+ }
3402
+ }
3135
3403
  };
3136
3404
  await this.createMemory(actionMemory, "messages");
3137
- throw error;
3405
+ if (error?.critical || error?.code === "CRITICAL_ERROR") {
3406
+ throw error;
3407
+ }
3138
3408
  }
3409
+ actionIndex++;
3410
+ }
3411
+ if (message.id) {
3412
+ this.stateCache.set(`${message.id}_action_results`, {
3413
+ values: { actionResults },
3414
+ data: { actionResults, actionPlan },
3415
+ text: JSON.stringify(actionResults)
3416
+ });
3139
3417
  }
3140
3418
  }
3141
3419
  }
@@ -5788,6 +6066,7 @@ export {
5788
6066
  Role2 as Role,
5789
6067
  ChannelType2 as ChannelType,
5790
6068
  AgentStatus2 as AgentStatus,
6069
+ createActionResult,
5791
6070
  ServiceType3 as ServiceType,
5792
6071
  Service3 as Service,
5793
6072
  getTypedService2 as getTypedService,
@@ -1712,7 +1712,7 @@ type HandlerCallback = (response: Content, files?: any) => Promise<Memory[]>;
1712
1712
  */
1713
1713
  type Handler = (runtime: IAgentRuntime, message: Memory, state?: State, options?: {
1714
1714
  [key: string]: unknown;
1715
- }, callback?: HandlerCallback, responses?: Memory[]) => Promise<unknown>;
1715
+ }, callback?: HandlerCallback, responses?: Memory[]) => Promise<ActionResult | void>;
1716
1716
  /**
1717
1717
  * Validator function type for actions/evaluators
1718
1718
  */
@@ -1794,6 +1794,36 @@ interface Provider {
1794
1794
  /** Data retrieval function */
1795
1795
  get: (runtime: IAgentRuntime, message: Memory, state: State) => Promise<ProviderResult>;
1796
1796
  }
1797
+ /**
1798
+ * Result returned by an action after execution
1799
+ * Used for action chaining and state management
1800
+ */
1801
+ interface ActionResult {
1802
+ /** Optional text description of the result */
1803
+ text?: string;
1804
+ /** Values to merge into the state */
1805
+ values?: Record<string, any>;
1806
+ /** Data payload containing action-specific results */
1807
+ data?: Record<string, any>;
1808
+ /** Whether the action succeeded - defaults to true */
1809
+ success: boolean;
1810
+ /** Error information if the action failed */
1811
+ error?: string | Error;
1812
+ }
1813
+ /**
1814
+ * Context provided to actions during execution
1815
+ * Allows actions to access previous results and update state
1816
+ */
1817
+ interface ActionContext {
1818
+ /** Results from previously executed actions in this run */
1819
+ previousResults: ActionResult[];
1820
+ /** Get a specific previous result by action name */
1821
+ getPreviousResult?: (actionName: string) => ActionResult | undefined;
1822
+ }
1823
+ /**
1824
+ * Helper function to create ActionResult with proper defaults
1825
+ */
1826
+ declare function createActionResult(partial?: Partial<ActionResult>): ActionResult;
1797
1827
 
1798
1828
  /**
1799
1829
  * Interface representing settings with string key-value pairs.
@@ -2398,7 +2428,7 @@ declare function formatEntities({ entities }: {
2398
2428
  */
2399
2429
  type LogMethod = (...args: any[]) => void;
2400
2430
  declare const logger: Record<'trace' | 'debug' | 'success' | 'progress' | 'log' | 'info' | 'warn' | 'error' | 'fatal' | 'clear', LogMethod>;
2401
- declare const elizaLogger: Record<"debug" | "fatal" | "error" | "warn" | "info" | "log" | "progress" | "success" | "trace" | "clear", LogMethod>;
2431
+ declare const elizaLogger: Record<"success" | "error" | "debug" | "fatal" | "warn" | "info" | "log" | "progress" | "trace" | "clear", LogMethod>;
2402
2432
 
2403
2433
  declare const shouldRespondTemplate: string;
2404
2434
  declare const messageHandlerTemplate: string;
@@ -3031,4 +3061,4 @@ declare namespace v2 {
3031
3061
  export { Action$1 as Action, ActionEventPayload$1 as ActionEventPayload, ActionExample$1 as ActionExample, Agent$1 as Agent, v2_AgentRuntime as AgentRuntime, AgentStatus$1 as AgentStatus, AudioProcessingParams$1 as AudioProcessingParams, BaseMetadata$1 as BaseMetadata, BaseModelParams$1 as BaseModelParams, CacheKeyPrefix$1 as CacheKeyPrefix, ChannelClearedPayload$1 as ChannelClearedPayload, ChannelType$1 as ChannelType, Character$1 as Character, ChunkRow$1 as ChunkRow, Component$1 as Component, v2_ComponentData as ComponentData, Content$1 as Content, ContentType$1 as ContentType, ControlMessage$1 as ControlMessage, CustomMetadata$1 as CustomMetadata, v2_DatabaseAdapter as DatabaseAdapter, DbConnection$1 as DbConnection, v2_DeriveKeyAttestationData as DeriveKeyAttestationData, DescriptionMetadata$1 as DescriptionMetadata, DetokenizeTextParams$1 as DetokenizeTextParams, DirectoryItem$1 as DirectoryItem, DocumentMetadata$1 as DocumentMetadata, EmbeddingSearchResult$1 as EmbeddingSearchResult, EnhancedState$1 as EnhancedState, Entity$1 as Entity, EntityPayload$1 as EntityPayload, EvaluationExample$1 as EvaluationExample, Evaluator$1 as Evaluator, EvaluatorEventPayload$1 as EvaluatorEventPayload, v2_EventDataObject as EventDataObject, EventHandler$1 as EventHandler, EventPayload$1 as EventPayload, EventPayloadMap$1 as EventPayloadMap, EventType$1 as EventType, FragmentMetadata$1 as FragmentMetadata, GenerateTextParams$1 as GenerateTextParams, Handler$1 as Handler, HandlerCallback$1 as HandlerCallback, IAgentRuntime$1 as IAgentRuntime, IDatabaseAdapter$1 as IDatabaseAdapter, ImageDescriptionParams$1 as ImageDescriptionParams, ImageGenerationParams$1 as ImageGenerationParams, InvokePayload$1 as InvokePayload, IsValidServiceType$1 as IsValidServiceType, JSONSchema$1 as JSONSchema, KnowledgeItem$1 as KnowledgeItem, KnowledgeScope$1 as KnowledgeScope, Log$1 as Log, Media$1 as Media, Memory$1 as Memory, MemoryMetadata$1 as MemoryMetadata, MemoryRetrievalOptions$1 as MemoryRetrievalOptions, MemoryScope$1 as MemoryScope, MemorySearchOptions$1 as MemorySearchOptions, MemoryType$1 as MemoryType, MemoryTypeAlias$1 as MemoryTypeAlias, MessageExample$1 as MessageExample, MessageMemory$1 as MessageMemory, MessageMetadata$1 as MessageMetadata, MessagePayload$1 as MessagePayload, MessageReceivedHandlerParams$1 as MessageReceivedHandlerParams, v2_MetadataObject as MetadataObject, ModelEventPayload$1 as ModelEventPayload, ModelHandler$1 as ModelHandler, ModelParamsMap$1 as ModelParamsMap, ModelResultMap$1 as ModelResultMap, ModelType$1 as ModelType, ModelTypeName$1 as ModelTypeName, MultiRoomMemoryOptions$1 as MultiRoomMemoryOptions, ObjectGenerationParams$1 as ObjectGenerationParams, OnboardingConfig$1 as OnboardingConfig, Participant$1 as Participant, PlatformPrefix$1 as PlatformPrefix, Plugin$1 as Plugin, PluginEvents$1 as PluginEvents, Project$1 as Project, ProjectAgent$1 as ProjectAgent, Provider$1 as Provider, ProviderResult$1 as ProviderResult, Relationship$1 as Relationship, v2_RemoteAttestationMessage as RemoteAttestationMessage, v2_RemoteAttestationQuote as RemoteAttestationQuote, Role$1 as Role, Room$1 as Room, RoomMetadata$1 as RoomMetadata, Route$1 as Route, RunEventPayload$1 as RunEventPayload, RuntimeSettings$1 as RuntimeSettings, SOCKET_MESSAGE_TYPE$1 as SOCKET_MESSAGE_TYPE, v2_Semaphore as Semaphore, SendHandlerFunction$1 as SendHandlerFunction, type v2_ServerOwnershipState as ServerOwnershipState, Service$1 as Service, v2_ServiceBuilder as ServiceBuilder, ServiceClassMap$1 as ServiceClassMap, v2_ServiceConfig as ServiceConfig, type v2_ServiceDefinition as ServiceDefinition, ServiceError$1 as ServiceError, ServiceInstance$1 as ServiceInstance, ServiceRegistry$1 as ServiceRegistry, ServiceType$1 as ServiceType, ServiceTypeName$1 as ServiceTypeName, ServiceTypeRegistry$1 as ServiceTypeRegistry, ServiceTypeValue$1 as ServiceTypeValue, Setting$1 as Setting, State$1 as State, StateArray$1 as StateArray, StateObject$1 as StateObject, StateValue$1 as StateValue, v2_TEEMode as TEEMode, TargetInfo$1 as TargetInfo, Task$1 as Task, TaskMetadata$1 as TaskMetadata, TaskWorker$1 as TaskWorker, v2_TeeAgent as TeeAgent, v2_TeePluginConfig as TeePluginConfig, v2_TeeType as TeeType, v2_TeeVendorConfig as TeeVendorConfig, TemplateType$1 as TemplateType, TestCase$1 as TestCase, TestSuite$1 as TestSuite, TextEmbeddingParams$1 as TextEmbeddingParams, TextGenerationParams$1 as TextGenerationParams, TextToSpeechParams$1 as TextToSpeechParams, TokenizeTextParams$1 as TokenizeTextParams, TranscriptionParams$1 as TranscriptionParams, TypedEventHandler$1 as TypedEventHandler, TypedService$1 as TypedService, TypedServiceClass$1 as TypedServiceClass, UUID$1 as UUID, UnifiedMemoryOptions$1 as UnifiedMemoryOptions, UnifiedSearchOptions$1 as UnifiedSearchOptions, VECTOR_DIMS$1 as VECTOR_DIMS, Validator$1 as Validator, VideoProcessingParams$1 as VideoProcessingParams, World$1 as World, WorldPayload$1 as WorldPayload, WorldSettings$1 as WorldSettings, v2_addHeader as addHeader, asUUID$1 as asUUID, v2_booleanFooter as booleanFooter, v2_composeActionExamples as composeActionExamples, v2_composePrompt as composePrompt, v2_composePromptFromState as composePromptFromState, createMessageMemory$1 as createMessageMemory, v2_createService as createService, createServiceError$1 as createServiceError, v2_createSettingFromConfig as createSettingFromConfig, v2_createUniqueUuid as createUniqueUuid, v2_decryptObjectValues as decryptObjectValues, decryptStringValue as decryptSecret, v2_decryptStringValue as decryptStringValue, v2_decryptedCharacter as decryptedCharacter, v2_defineService as defineService, v2_elizaLogger as elizaLogger, v2_encryptObjectValues as encryptObjectValues, v2_encryptStringValue as encryptStringValue, v2_encryptedCharacter as encryptedCharacter, v2_findEntityByName as findEntityByName, v2_findWorldsForOwner as findWorldsForOwner, v2_formatActionNames as formatActionNames, v2_formatActions as formatActions, v2_formatEntities as formatEntities, v2_formatMessages as formatMessages, v2_formatPosts as formatPosts, v2_formatTimestamp as formatTimestamp, v2_getEntityDetails as getEntityDetails, getMemoryText$1 as getMemoryText, v2_getSalt as getSalt, getTypedService$1 as getTypedService, v2_getUserServerRole as getUserServerRole, v2_getWorldSettings as getWorldSettings, v2_imageDescriptionTemplate as imageDescriptionTemplate, v2_initializeOnboarding as initializeOnboarding, isCustomMetadata$1 as isCustomMetadata, isDescriptionMetadata$1 as isDescriptionMetadata, isDocumentMemory$1 as isDocumentMemory, isDocumentMetadata$1 as isDocumentMetadata, isFragmentMemory$1 as isFragmentMemory, isFragmentMetadata$1 as isFragmentMetadata, isMessageMetadata$1 as isMessageMetadata, v2_logger as logger, v2_messageHandlerTemplate as messageHandlerTemplate, v2_parseBooleanFromText as parseBooleanFromText, v2_parseJSONObjectFromText as parseJSONObjectFromText, v2_parseKeyValueXml as parseKeyValueXml, v2_postCreationTemplate as postCreationTemplate, v2_safeReplacer as safeReplacer, v2_saltSettingValue as saltSettingValue, v2_saltWorldSettings as saltWorldSettings, v2_shouldRespondTemplate as shouldRespondTemplate, v2_stringToUuid as stringToUuid, v2_trimTokens as trimTokens, v2_truncateToCompleteSentence as truncateToCompleteSentence, v2_unsaltSettingValue as unsaltSettingValue, v2_unsaltWorldSettings as unsaltWorldSettings, v2_updateWorldSettings as updateWorldSettings, v2_validateUuid as validateUuid };
3032
3062
  }
3033
3063
 
3034
- export { type FragmentMetadata as $, type Action as A, type WorldSettings as B, ContentType as C, v2 as D, type Entity as E, asUUID as F, type Media as G, type HandlerCallback as H, type IAgentRuntime as I, type StateValue as J, type StateObject as K, type Log as L, type Metadata as M, type StateArray as N, type OnboardingConfig as O, type Participant as P, type EnhancedState as Q, type Room as R, Service as S, type TemplateType as T, type UUID as U, type MemoryTypeAlias as V, type World as W, MemoryType as X, type MemoryScope as Y, type BaseMetadata as Z, type DocumentMetadata as _, type State as a, VECTOR_DIMS as a$, type MessageMetadata as a0, type DescriptionMetadata as a1, type CustomMetadata as a2, type MessageMemory as a3, createMessageMemory as a4, isDocumentMetadata as a5, isFragmentMetadata as a6, isMessageMetadata as a7, isDescriptionMetadata as a8, isCustomMetadata as a9, ServiceType as aA, type TypedService as aB, getTypedService as aC, type ServiceError as aD, createServiceError as aE, ModelType as aF, type GenerateTextParams as aG, type DetokenizeTextParams as aH, type BaseModelParams as aI, type TextGenerationParams as aJ, type TextEmbeddingParams as aK, type TokenizeTextParams as aL, type ImageGenerationParams as aM, type ImageDescriptionParams as aN, type TranscriptionParams as aO, type TextToSpeechParams as aP, type AudioProcessingParams as aQ, type VideoProcessingParams as aR, type JSONSchema as aS, type ObjectGenerationParams as aT, type EmbeddingSearchResult as aU, type MemoryRetrievalOptions as aV, type MemorySearchOptions as aW, type MultiRoomMemoryOptions as aX, type UnifiedMemoryOptions as aY, type UnifiedSearchOptions as aZ, type DbConnection as a_, isDocumentMemory as aa, isFragmentMemory as ab, getMemoryText as ac, type KnowledgeItem as ad, KnowledgeScope as ae, CacheKeyPrefix as af, type DirectoryItem as ag, type ChunkRow as ah, type RoomMetadata as ai, type MessageExample as aj, AgentStatus as ak, type ActionExample as al, type Handler as am, type Validator as an, type EvaluationExample as ao, type ProviderResult as ap, type PluginEvents as aq, type ProjectAgent as ar, type Project as as, type ServiceTypeRegistry as at, type ServiceTypeValue as au, type IsValidServiceType as av, type TypedServiceClass as aw, type ServiceClassMap as ax, type ServiceInstance as ay, type ServiceRegistry as az, type Memory as b, formatPosts as b$, EventType as b0, PlatformPrefix as b1, type EventPayload as b2, type WorldPayload as b3, type EntityPayload as b4, type MessagePayload as b5, type ChannelClearedPayload as b6, type InvokePayload as b7, type RunEventPayload as b8, type ActionEventPayload as b9, messageHandlerTemplate as bA, postCreationTemplate as bB, booleanFooter as bC, imageDescriptionTemplate as bD, type ServerOwnershipState as bE, getUserServerRole as bF, findWorldsForOwner as bG, Semaphore as bH, AgentRuntime as bI, decryptStringValue as bJ, createSettingFromConfig as bK, getSalt as bL, encryptStringValue as bM, saltSettingValue as bN, unsaltSettingValue as bO, saltWorldSettings as bP, unsaltWorldSettings as bQ, updateWorldSettings as bR, getWorldSettings as bS, initializeOnboarding as bT, encryptedCharacter as bU, decryptedCharacter as bV, encryptObjectValues as bW, decryptObjectValues as bX, composePrompt as bY, composePromptFromState as bZ, addHeader as b_, type EvaluatorEventPayload as ba, type ModelEventPayload as bb, type MessageReceivedHandlerParams as bc, type EventPayloadMap as bd, type EventHandler as be, type TypedEventHandler as bf, type TaskMetadata as bg, SOCKET_MESSAGE_TYPE as bh, type ControlMessage as bi, type TestCase as bj, type TestSuite as bk, ServiceBuilder$1 as bl, createService$1 as bm, type ServiceDefinition$1 as bn, defineService$1 as bo, composeActionExamples as bp, formatActionNames as bq, formatActions as br, DatabaseAdapter as bs, findEntityByName as bt, createUniqueUuid as bu, getEntityDetails as bv, formatEntities as bw, logger as bx, elizaLogger as by, shouldRespondTemplate as bz, type Character as c, formatMessages as c0, formatTimestamp as c1, validateUuid as c2, stringToUuid as c3, truncateToCompleteSentence as c4, parseKeyValueXml as c5, parseJSONObjectFromText as c6, parseBooleanFromText as c7, safeReplacer as c8, trimTokens as c9, ServiceBuilder as ca, createService as cb, type ServiceDefinition as cc, defineService as cd, type IDatabaseAdapter as d, type Component as e, type MemoryMetadata as f, type Relationship as g, type Agent as h, type Task as i, Role as j, type Evaluator as k, type Provider as l, type Plugin as m, type ServiceTypeName as n, type ModelHandler as o, type Route as p, type RuntimeSettings as q, ChannelType as r, type ModelTypeName as s, type ModelResultMap as t, type ModelParamsMap as u, type TaskWorker as v, type SendHandlerFunction as w, type TargetInfo as x, type Content as y, type Setting as z };
3064
+ export { type FragmentMetadata as $, type Action as A, type WorldSettings as B, ContentType as C, v2 as D, type Entity as E, asUUID as F, type Media as G, type HandlerCallback as H, type IAgentRuntime as I, type StateValue as J, type StateObject as K, type Log as L, type Metadata as M, type StateArray as N, type OnboardingConfig as O, type Participant as P, type EnhancedState as Q, type Room as R, Service as S, type TemplateType as T, type UUID as U, type MemoryTypeAlias as V, type World as W, MemoryType as X, type MemoryScope as Y, type BaseMetadata as Z, type DocumentMetadata as _, type State as a, type UnifiedMemoryOptions as a$, type MessageMetadata as a0, type DescriptionMetadata as a1, type CustomMetadata as a2, type MessageMemory as a3, createMessageMemory as a4, isDocumentMetadata as a5, isFragmentMetadata as a6, isMessageMetadata as a7, isDescriptionMetadata as a8, isCustomMetadata as a9, type ServiceClassMap as aA, type ServiceInstance as aB, type ServiceRegistry as aC, ServiceType as aD, type TypedService as aE, getTypedService as aF, type ServiceError as aG, createServiceError as aH, ModelType as aI, type GenerateTextParams as aJ, type DetokenizeTextParams as aK, type BaseModelParams as aL, type TextGenerationParams as aM, type TextEmbeddingParams as aN, type TokenizeTextParams as aO, type ImageGenerationParams as aP, type ImageDescriptionParams as aQ, type TranscriptionParams as aR, type TextToSpeechParams as aS, type AudioProcessingParams as aT, type VideoProcessingParams as aU, type JSONSchema as aV, type ObjectGenerationParams as aW, type EmbeddingSearchResult as aX, type MemoryRetrievalOptions as aY, type MemorySearchOptions as aZ, type MultiRoomMemoryOptions as a_, isDocumentMemory as aa, isFragmentMemory as ab, getMemoryText as ac, type KnowledgeItem as ad, KnowledgeScope as ae, CacheKeyPrefix as af, type DirectoryItem as ag, type ChunkRow as ah, type RoomMetadata as ai, type MessageExample as aj, AgentStatus as ak, type ActionExample as al, type Handler as am, type Validator as an, type EvaluationExample as ao, type ProviderResult as ap, type ActionResult as aq, type ActionContext as ar, createActionResult as as, type PluginEvents as at, type ProjectAgent as au, type Project as av, type ServiceTypeRegistry as aw, type ServiceTypeValue as ax, type IsValidServiceType as ay, type TypedServiceClass as az, type Memory as b, composePrompt as b$, type UnifiedSearchOptions as b0, type DbConnection as b1, VECTOR_DIMS as b2, EventType as b3, PlatformPrefix as b4, type EventPayload as b5, type WorldPayload as b6, type EntityPayload as b7, type MessagePayload as b8, type ChannelClearedPayload as b9, logger as bA, elizaLogger as bB, shouldRespondTemplate as bC, messageHandlerTemplate as bD, postCreationTemplate as bE, booleanFooter as bF, imageDescriptionTemplate as bG, type ServerOwnershipState as bH, getUserServerRole as bI, findWorldsForOwner as bJ, Semaphore as bK, AgentRuntime as bL, decryptStringValue as bM, createSettingFromConfig as bN, getSalt as bO, encryptStringValue as bP, saltSettingValue as bQ, unsaltSettingValue as bR, saltWorldSettings as bS, unsaltWorldSettings as bT, updateWorldSettings as bU, getWorldSettings as bV, initializeOnboarding as bW, encryptedCharacter as bX, decryptedCharacter as bY, encryptObjectValues as bZ, decryptObjectValues as b_, type InvokePayload as ba, type RunEventPayload as bb, type ActionEventPayload as bc, type EvaluatorEventPayload as bd, type ModelEventPayload as be, type MessageReceivedHandlerParams as bf, type EventPayloadMap as bg, type EventHandler as bh, type TypedEventHandler as bi, type TaskMetadata as bj, SOCKET_MESSAGE_TYPE as bk, type ControlMessage as bl, type TestCase as bm, type TestSuite as bn, ServiceBuilder$1 as bo, createService$1 as bp, type ServiceDefinition$1 as bq, defineService$1 as br, composeActionExamples as bs, formatActionNames as bt, formatActions as bu, DatabaseAdapter as bv, findEntityByName as bw, createUniqueUuid as bx, getEntityDetails as by, formatEntities as bz, type Character as c, composePromptFromState as c0, addHeader as c1, formatPosts as c2, formatMessages as c3, formatTimestamp as c4, validateUuid as c5, stringToUuid as c6, truncateToCompleteSentence as c7, parseKeyValueXml as c8, parseJSONObjectFromText as c9, parseBooleanFromText as ca, safeReplacer as cb, trimTokens as cc, ServiceBuilder as cd, createService as ce, type ServiceDefinition as cf, defineService as cg, type IDatabaseAdapter as d, type Component as e, type MemoryMetadata as f, type Relationship as g, type Agent as h, type Task as i, Role as j, type Evaluator as k, type Provider as l, type Plugin as m, type ServiceTypeName as n, type ModelHandler as o, type Route as p, type RuntimeSettings as q, ChannelType as r, type ModelTypeName as s, type ModelResultMap as t, type ModelParamsMap as u, type TaskWorker as v, type SendHandlerFunction as w, type TargetInfo as x, type Content as y, type Setting as z };
package/dist/index.d.ts CHANGED
@@ -1,5 +1,5 @@
1
- import { M as Metadata, S as Service, T as TemplateType, a as State, b as Memory, E as Entity, I as IAgentRuntime, U as UUID, C as ContentType, c as Character, A as Action, d as IDatabaseAdapter, e as Component, L as Log, f as MemoryMetadata, W as World, R as Room, P as Participant, g as Relationship, h as Agent, i as Task, j as Role, k as Evaluator, l as Provider, m as Plugin, n as ServiceTypeName, o as ModelHandler, p as Route, q as RuntimeSettings, H as HandlerCallback, r as ChannelType, s as ModelTypeName, t as ModelResultMap, u as ModelParamsMap, v as TaskWorker, w as SendHandlerFunction, x as TargetInfo, y as Content, z as Setting, B as WorldSettings, O as OnboardingConfig, D as v2 } from './index-Bu4JVNja.js';
2
- export { b9 as ActionEventPayload, al as ActionExample, ak as AgentStatus, aQ as AudioProcessingParams, Z as BaseMetadata, aI as BaseModelParams, af as CacheKeyPrefix, b6 as ChannelClearedPayload, ah as ChunkRow, bi as ControlMessage, a2 as CustomMetadata, a_ as DbConnection, a1 as DescriptionMetadata, aH as DetokenizeTextParams, ag as DirectoryItem, _ as DocumentMetadata, aU as EmbeddingSearchResult, Q as EnhancedState, b4 as EntityPayload, ao as EvaluationExample, ba as EvaluatorEventPayload, be as EventHandler, b2 as EventPayload, bd as EventPayloadMap, b0 as EventType, $ as FragmentMetadata, aG as GenerateTextParams, am as Handler, aN as ImageDescriptionParams, aM as ImageGenerationParams, b7 as InvokePayload, av as IsValidServiceType, aS as JSONSchema, ad as KnowledgeItem, ae as KnowledgeScope, G as Media, aV as MemoryRetrievalOptions, Y as MemoryScope, aW as MemorySearchOptions, X as MemoryType, V as MemoryTypeAlias, aj as MessageExample, a3 as MessageMemory, a0 as MessageMetadata, b5 as MessagePayload, bc as MessageReceivedHandlerParams, bb as ModelEventPayload, aF as ModelType, aX as MultiRoomMemoryOptions, aT as ObjectGenerationParams, b1 as PlatformPrefix, aq as PluginEvents, as as Project, ar as ProjectAgent, ap as ProviderResult, ai as RoomMetadata, b8 as RunEventPayload, bh as SOCKET_MESSAGE_TYPE, bl as ServiceBuilder, ax as ServiceClassMap, bn as ServiceDefinition, aD as ServiceError, ay as ServiceInstance, az as ServiceRegistry, aA as ServiceType, at as ServiceTypeRegistry, au as ServiceTypeValue, N as StateArray, K as StateObject, J as StateValue, bg as TaskMetadata, bj as TestCase, bk as TestSuite, aK as TextEmbeddingParams, aJ as TextGenerationParams, aP as TextToSpeechParams, aL as TokenizeTextParams, aO as TranscriptionParams, bf as TypedEventHandler, aB as TypedService, aw as TypedServiceClass, aY as UnifiedMemoryOptions, aZ as UnifiedSearchOptions, a$ as VECTOR_DIMS, an as Validator, aR as VideoProcessingParams, b3 as WorldPayload, F as asUUID, a4 as createMessageMemory, bm as createService, aE as createServiceError, bo as defineService, ac as getMemoryText, aC as getTypedService, a9 as isCustomMetadata, a8 as isDescriptionMetadata, aa as isDocumentMemory, a5 as isDocumentMetadata, ab as isFragmentMemory, a6 as isFragmentMetadata, a7 as isMessageMetadata } from './index-Bu4JVNja.js';
1
+ import { M as Metadata, S as Service, T as TemplateType, a as State, b as Memory, E as Entity, I as IAgentRuntime, U as UUID, C as ContentType, c as Character, A as Action, d as IDatabaseAdapter, e as Component, L as Log, f as MemoryMetadata, W as World, R as Room, P as Participant, g as Relationship, h as Agent, i as Task, j as Role, k as Evaluator, l as Provider, m as Plugin, n as ServiceTypeName, o as ModelHandler, p as Route, q as RuntimeSettings, H as HandlerCallback, r as ChannelType, s as ModelTypeName, t as ModelResultMap, u as ModelParamsMap, v as TaskWorker, w as SendHandlerFunction, x as TargetInfo, y as Content, z as Setting, B as WorldSettings, O as OnboardingConfig, D as v2 } from './index-cLfhYsFC.js';
2
+ export { ar as ActionContext, bc as ActionEventPayload, al as ActionExample, aq as ActionResult, ak as AgentStatus, aT as AudioProcessingParams, Z as BaseMetadata, aL as BaseModelParams, af as CacheKeyPrefix, b9 as ChannelClearedPayload, ah as ChunkRow, bl as ControlMessage, a2 as CustomMetadata, b1 as DbConnection, a1 as DescriptionMetadata, aK as DetokenizeTextParams, ag as DirectoryItem, _ as DocumentMetadata, aX as EmbeddingSearchResult, Q as EnhancedState, b7 as EntityPayload, ao as EvaluationExample, bd as EvaluatorEventPayload, bh as EventHandler, b5 as EventPayload, bg as EventPayloadMap, b3 as EventType, $ as FragmentMetadata, aJ as GenerateTextParams, am as Handler, aQ as ImageDescriptionParams, aP as ImageGenerationParams, ba as InvokePayload, ay as IsValidServiceType, aV as JSONSchema, ad as KnowledgeItem, ae as KnowledgeScope, G as Media, aY as MemoryRetrievalOptions, Y as MemoryScope, aZ as MemorySearchOptions, X as MemoryType, V as MemoryTypeAlias, aj as MessageExample, a3 as MessageMemory, a0 as MessageMetadata, b8 as MessagePayload, bf as MessageReceivedHandlerParams, be as ModelEventPayload, aI as ModelType, a_ as MultiRoomMemoryOptions, aW as ObjectGenerationParams, b4 as PlatformPrefix, at as PluginEvents, av as Project, au as ProjectAgent, ap as ProviderResult, ai as RoomMetadata, bb as RunEventPayload, bk as SOCKET_MESSAGE_TYPE, bo as ServiceBuilder, aA as ServiceClassMap, bq as ServiceDefinition, aG as ServiceError, aB as ServiceInstance, aC as ServiceRegistry, aD as ServiceType, aw as ServiceTypeRegistry, ax as ServiceTypeValue, N as StateArray, K as StateObject, J as StateValue, bj as TaskMetadata, bm as TestCase, bn as TestSuite, aN as TextEmbeddingParams, aM as TextGenerationParams, aS as TextToSpeechParams, aO as TokenizeTextParams, aR as TranscriptionParams, bi as TypedEventHandler, aE as TypedService, az as TypedServiceClass, a$ as UnifiedMemoryOptions, b0 as UnifiedSearchOptions, b2 as VECTOR_DIMS, an as Validator, aU as VideoProcessingParams, b6 as WorldPayload, F as asUUID, as as createActionResult, a4 as createMessageMemory, bp as createService, aH as createServiceError, br as defineService, ac as getMemoryText, aF as getTypedService, a9 as isCustomMetadata, a8 as isDescriptionMetadata, aa as isDocumentMemory, a5 as isDocumentMetadata, ab as isFragmentMemory, a6 as isFragmentMetadata, a7 as isMessageMetadata } from './index-cLfhYsFC.js';
3
3
  import { z } from 'zod';
4
4
  import * as pino from 'pino';
5
5
  import * as browser from '@sentry/browser';
@@ -560,9 +560,9 @@ declare const characterSchema: z.ZodObject<{
560
560
  }, "strip", z.ZodTypeAny, {
561
561
  name?: string;
562
562
  content?: {
563
+ thought?: string;
563
564
  text?: string;
564
565
  actions?: string[];
565
- thought?: string;
566
566
  providers?: string[];
567
567
  source?: string;
568
568
  target?: string;
@@ -576,9 +576,9 @@ declare const characterSchema: z.ZodObject<{
576
576
  }, {
577
577
  name?: string;
578
578
  content?: {
579
+ thought?: string;
579
580
  text?: string;
580
581
  actions?: string[];
581
- thought?: string;
582
582
  providers?: string[];
583
583
  source?: string;
584
584
  target?: string;
@@ -645,9 +645,9 @@ declare const characterSchema: z.ZodObject<{
645
645
  messageExamples?: {
646
646
  name?: string;
647
647
  content?: {
648
+ thought?: string;
648
649
  text?: string;
649
650
  actions?: string[];
650
- thought?: string;
651
651
  providers?: string[];
652
652
  source?: string;
653
653
  target?: string;
@@ -687,9 +687,9 @@ declare const characterSchema: z.ZodObject<{
687
687
  messageExamples?: {
688
688
  name?: string;
689
689
  content?: {
690
+ thought?: string;
690
691
  text?: string;
691
692
  actions?: string[];
692
- thought?: string;
693
693
  providers?: string[];
694
694
  source?: string;
695
695
  target?: string;
@@ -1296,8 +1296,8 @@ declare let logger: pino.Logger<string, boolean>;
1296
1296
  declare const elizaLogger: pino.Logger<string, boolean>;
1297
1297
 
1298
1298
  declare const shouldRespondTemplate = "<task>Decide on behalf of {{agentName}} whether they should respond to the message, ignore it or stop the conversation.</task>\n\n<providers>\n{{providers}}\n</providers>\n\n<instructions>Decide if {{agentName}} should respond to or interact with the conversation.\nIf the message is directed at or relevant to {{agentName}}, respond with RESPOND action.\nIf a user asks {{agentName}} to be quiet, respond with STOP action.\nIf {{agentName}} should ignore the message, respond with IGNORE action.</instructions>\n\n<output>\nDo NOT include any thinking, reasoning, or <think> sections in your response. \nGo directly to the XML response format without any preamble or explanation.\n\nRespond using XML format like this:\n<response>\n <name>{{agentName}}</name>\n <reasoning>Your reasoning here</reasoning>\n <action>RESPOND | IGNORE | STOP</action>\n</response>\n\nIMPORTANT: Your response must ONLY contain the <response></response> XML block above. Do not include any text, thinking, or reasoning before or after this XML block. Start your response immediately with <response> and end with </response>.\n</output>";
1299
- declare const messageHandlerTemplate = "<task>Generate dialog and actions for the character {{agentName}}.</task>\n\n<providers>\n{{providers}}\n</providers>\n\nThese are the available valid actions:\n<actionNames>\n{{actionNames}}\n</actionNames>\n\n<instructions>\nWrite a thought and plan for {{agentName}} and decide what actions to take. Also include the providers that {{agentName}} will use to have the right context for responding and acting, if any.\n\nIMPORTANT ACTION ORDERING RULES:\n- Actions are executed in the ORDER you list them - the order MATTERS!\n- REPLY should come FIRST to acknowledge the user's request before executing other actions\n- Common patterns:\n - For requests requiring tool use: REPLY,CALL_MCP_TOOL (acknowledge first, then gather info)\n - For task execution: REPLY,SEND_MESSAGE or REPLY,EVM_SWAP_TOKENS (acknowledge first, then do the task)\n - For multi-step operations: REPLY,ACTION1,ACTION2 (acknowledge first, then complete all steps)\n- REPLY is used to acknowledge and inform the user about what you're going to do\n- Follow-up actions execute the actual tasks after acknowledgment\n- Use IGNORE only when you should not respond at all\n\nIMPORTANT PROVIDER SELECTION RULES:\n- If the message mentions images, photos, pictures, attachments, or visual content, OR if you see \"(Attachments:\" in the conversation, you MUST include \"ATTACHMENTS\" in your providers list\n- If the message asks about or references specific people, include \"ENTITIES\" in your providers list \n- If the message asks about relationships or connections between people, include \"RELATIONSHIPS\" in your providers list\n- If the message asks about facts or specific information, include \"FACTS\" in your providers list\n- If the message asks about the environment or world context, include \"WORLD\" in your providers list\n- If you need external knowledge, information, or context beyond the current conversation to provide a helpful response, include \"KNOWLEDGE\" in your providers list\n\nFirst, think about what you want to do next and plan your actions. Then, write the next message and include the actions you plan to take.\n</instructions>\n\n<keys>\n\"thought\" should be a short description of what the agent is thinking about and planning.\n\"actions\" should be a comma-separated list of the actions {{agentName}} plans to take based on the thought, IN THE ORDER THEY SHOULD BE EXECUTED (if none, use IGNORE, if simply responding with text, use REPLY)\n\"providers\" should be a comma-separated list of the providers that {{agentName}} will use to have the right context for responding and acting (NEVER use \"IGNORE\" as a provider - use specific provider names like ATTACHMENTS, ENTITIES, FACTS, KNOWLEDGE, etc.)\n\"text\" should be the text of the next message for {{agentName}} which they will send to the conversation.\n</keys>\n\n<output>\nDo NOT include any thinking, reasoning, or <think> sections in your response. \nGo directly to the XML response format without any preamble or explanation.\n\nRespond using XML format like this:\n<response>\n <thought>Your thought here</thought>\n <actions>ACTION1,ACTION2</actions>\n <providers>PROVIDER1,PROVIDER2</providers>\n <text>Your response text here</text>\n</response>\n\nIMPORTANT: Your response must ONLY contain the <response></response> XML block above. Do not include any text, thinking, or reasoning before or after this XML block. Start your response immediately with <response> and end with </response>.\n</output>";
1300
- declare const postCreationTemplate = "# Task: Create a post in the voice and style and perspective of {{agentName}} @{{twitterUserName}}.\n\nExample task outputs:\n1. A post about the importance of AI in our lives\n<response>\n <thought>I am thinking about writing a post about the importance of AI in our lives</thought>\n <post>AI is changing the world and it is important to understand how it works</post>\n <imagePrompt>A futuristic cityscape with flying cars and people using AI to do things</imagePrompt>\n</response>\n\n2. A post about dogs\n<response>\n <thought>I am thinking about writing a post about dogs</thought>\n <post>Dogs are man's best friend and they are loyal and loving</post>\n <imagePrompt>A dog playing with a ball in a park</imagePrompt>\n</response>\n\n3. A post about finding a new job\n<response>\n <thought>Getting a job is hard, I bet there's a good tweet in that</thought>\n <post>Just keep going!</post>\n <imagePrompt>A person looking at a computer screen with a job search website</imagePrompt>\n</response>\n\n{{providers}}\n\nWrite a post that is {{adjective}} about {{topic}} (without mentioning {{topic}} directly), from the perspective of {{agentName}}. Do not add commentary or acknowledge this request, just write the post.\nYour response should be 1, 2, or 3 sentences (choose the length at random).\nYour response should not contain any questions. Brief, concise statements only. The total character count MUST be less than 280. No emojis. Use \\n\\n (double spaces) between statements if there are multiple statements in your response.\n\nYour output should be formatted in XML like this:\n<response>\n <thought>Your thought here</thought>\n <post>Your post text here</post>\n <imagePrompt>Optional image prompt here</imagePrompt>\n</response>\n\nThe \"post\" field should be the post you want to send. Do not including any thinking or internal reflection in the \"post\" field.\nThe \"imagePrompt\" field is optional and should be a prompt for an image that is relevant to the post. It should be a single sentence that captures the essence of the post. ONLY USE THIS FIELD if it makes sense that the post would benefit from an image.\nThe \"thought\" field should be a short description of what the agent is thinking about before responding, inlcuding a brief justification for the response. Includate an explanation how the post is relevant to the topic but unique and different than other posts.\n\nDo NOT include any thinking, reasoning, or <think> sections in your response. \nGo directly to the XML response format without any preamble or explanation.\n\nIMPORTANT: Your response must ONLY contain the <response></response> XML block above. Do not include any text, thinking, or reasoning before or after this XML block. Start your response immediately with <response> and end with </response>.";
1299
+ declare const messageHandlerTemplate = "<task>Generate dialog and actions for the character {{agentName}}.</task>\n\n<providers>\n{{providers}}\n</providers>\n\nThese are the available valid actions:\n<actionNames>\n{{actionNames}}\n</actionNames>\n\n<instructions>\nWrite a thought and plan for {{agentName}} and decide what actions to take. Also include the providers that {{agentName}} will use to have the right context for responding and acting, if any.\n\nIMPORTANT ACTION ORDERING RULES:\n- Actions are executed in the ORDER you list them - the order MATTERS!\n- REPLY should come FIRST to acknowledge the user's request before executing other actions\n- Common patterns:\n - For requests requiring tool use: REPLY,CALL_MCP_TOOL (acknowledge first, then gather info)\n - For task execution: REPLY,SEND_MESSAGE or REPLY,EVM_SWAP_TOKENS (acknowledge first, then do the task)\n - For multi-step operations: REPLY,ACTION1,ACTION2 (acknowledge first, then complete all steps)\n- REPLY is used to acknowledge and inform the user about what you're going to do\n- Follow-up actions execute the actual tasks after acknowledgment\n- Use IGNORE only when you should not respond at all\n- If you use IGNORE, do not include any other actions. IGNORE should be used alone when you should not respond or take any actions.\n\nIMPORTANT PROVIDER SELECTION RULES:\n- Only include providers if they are needed to respond accurately.\n- If the message mentions images, photos, pictures, attachments, or visual content, OR if you see \"(Attachments:\" in the conversation, you MUST include \"ATTACHMENTS\" in your providers list\n- If the message asks about or references specific people, include \"ENTITIES\" in your providers list \n- If the message asks about relationships or connections between people, include \"RELATIONSHIPS\" in your providers list\n- If the message asks about facts or specific information, include \"FACTS\" in your providers list\n- If the message asks about the environment or world context, include \"WORLD\" in your providers list\n- If no additional context is needed, you may leave the providers list empty.\n\nIMPORTANT CODE BLOCK FORMATTING RULES:\n- If {{agentName}} includes code examples, snippets, or multi-line code in the response, ALWAYS wrap the code with ``` fenced code blocks (specify the language if known, e.g., ```python).\n- ONLY use fenced code blocks for actual code. Do NOT wrap non-code text, instructions, or single words in fenced code blocks.\n- If including inline code (short single words or function names), use single backticks (`) as appropriate.\n- This ensures the user sees clearly formatted and copyable code when relevant.\n\nFirst, think about what you want to do next and plan your actions. Then, write the next message and include the actions you plan to take.\n</instructions>\n\n<keys>\n\"thought\" should be a short description of what the agent is thinking about and planning.\n\"actions\" should be a comma-separated list of the actions {{agentName}} plans to take based on the thought, IN THE ORDER THEY SHOULD BE EXECUTED (if none, use IGNORE, if simply responding with text, use REPLY)\n\"providers\" should be a comma-separated list of the providers that {{agentName}} will use to have the right context for responding and acting (NEVER use \"IGNORE\" as a provider - use specific provider names like ATTACHMENTS, ENTITIES, FACTS, KNOWLEDGE, etc.)\n\"text\" should be the text of the next message for {{agentName}} which they will send to the conversation.\n</keys>\n\n<output>\nDo NOT include any thinking, reasoning, or <think> sections in your response. \nGo directly to the XML response format without any preamble or explanation.\n\nRespond using XML format like this:\n<response>\n <thought>Your thought here</thought>\n <actions>ACTION1,ACTION2</actions>\n <providers>PROVIDER1,PROVIDER2</providers>\n <text>Your response text here</text>\n</response>\n\nIMPORTANT: Your response must ONLY contain the <response></response> XML block above. Do not include any text, thinking, or reasoning before or after this XML block. Start your response immediately with <response> and end with </response>.\n</output>";
1300
+ declare const postCreationTemplate = "# Task: Create a post in the voice and style and perspective of {{agentName}} @{{twitterUserName}}.\n\nExample task outputs:\n1. A post about the importance of AI in our lives\n<response>\n <thought>I am thinking about writing a post about the importance of AI in our lives</thought>\n <post>AI is changing the world and it is important to understand how it works</post>\n <imagePrompt>A futuristic cityscape with flying cars and people using AI to do things</imagePrompt>\n</response>\n\n2. A post about dogs\n<response>\n <thought>I am thinking about writing a post about dogs</thought>\n <post>Dogs are man's best friend and they are loyal and loving</post>\n <imagePrompt>A dog playing with a ball in a park</imagePrompt>\n</response>\n\n3. A post about finding a new job\n<response>\n <thought>Getting a job is hard, I bet there's a good tweet in that</thought>\n <post>Just keep going!</post>\n <imagePrompt>A person looking at a computer screen with a job search website</imagePrompt>\n</response>\n\n{{providers}}\n\nWrite a post that is {{adjective}} about {{topic}} (without mentioning {{topic}} directly), from the perspective of {{agentName}}. Do not add commentary or acknowledge this request, just write the post.\nYour response should be 1, 2, or 3 sentences (choose the length at random).\nYour response should not contain any questions. Brief, concise statements only. The total character count MUST be less than 280. No emojis. Use \\n\\n (double spaces) between statements if there are multiple statements in your response.\n\nYour output should be formatted in XML like this:\n<response>\n <thought>Your thought here</thought>\n <post>Your post text here</post>\n <imagePrompt>Optional image prompt here</imagePrompt>\n</response>\n\nThe \"post\" field should be the post you want to send. Do not including any thinking or internal reflection in the \"post\" field.\nThe \"imagePrompt\" field is optional and should be a prompt for an image that is relevant to the post. It should be a single sentence that captures the essence of the post. ONLY USE THIS FIELD if it makes sense that the post would benefit from an image.\nThe \"thought\" field should be a short description of what the agent is thinking about before responding, including a brief justification for the response. Includate an explanation how the post is relevant to the topic but unique and different than other posts.\n\nDo NOT include any thinking, reasoning, or <think> sections in your response. \nGo directly to the XML response format without any preamble or explanation.\n\nIMPORTANT: Your response must ONLY contain the <response></response> XML block above. Do not include any text, thinking, or reasoning before or after this XML block. Start your response immediately with <response> and end with </response>.";
1301
1301
  declare const booleanFooter = "Respond with only a YES or a NO.";
1302
1302
  declare const imageDescriptionTemplate = "<task>Analyze the provided image and generate a comprehensive description with multiple levels of detail.</task>\n\n<instructions>\nCarefully examine the image and provide:\n1. A concise, descriptive title that captures the main subject or scene\n2. A brief summary description (1-2 sentences) highlighting the key elements\n3. An extensive, detailed description that covers all visible elements, composition, lighting, colors, mood, and any other relevant details\n\nBe objective and descriptive. Focus on what you can actually see in the image rather than making assumptions about context or meaning.\n</instructions>\n\n<output>\nDo NOT include any thinking, reasoning, or <think> sections in your response. \nGo directly to the XML response format without any preamble or explanation.\n\nRespond using XML format like this:\n<response>\n <title>A concise, descriptive title for the image</title>\n <description>A brief 1-2 sentence summary of the key elements in the image</description>\n <text>An extensive, detailed description covering all visible elements, composition, lighting, colors, mood, setting, objects, people, activities, and any other relevant details you can observe in the image</text>\n</response>\n\nIMPORTANT: Your response must ONLY contain the <response></response> XML block above. Do not include any text, thinking, or reasoning before or after this XML block. Start your response immediately with <response> and end with </response>.\n</output>";
1303
1303
 
@@ -1372,6 +1372,7 @@ declare class AgentRuntime implements IAgentRuntime {
1372
1372
  private servicesInitQueue;
1373
1373
  private currentRunId?;
1374
1374
  private currentActionContext?;
1375
+ private maxWorkingMemoryEntries;
1375
1376
  constructor(opts: {
1376
1377
  conversationLength?: number;
1377
1378
  agentId?: UUID;
@@ -1414,6 +1415,8 @@ declare class AgentRuntime implements IAgentRuntime {
1414
1415
  registerProvider(provider: Provider): void;
1415
1416
  registerAction(action: Action): void;
1416
1417
  registerEvaluator(evaluator: Evaluator): void;
1418
+ private updateActionPlan;
1419
+ private updateActionStep;
1417
1420
  processActions(message: Memory, responses: Memory[], state?: State, callback?: HandlerCallback): Promise<void>;
1418
1421
  evaluate(message: Memory, state: State, didRespond?: boolean, callback?: HandlerCallback, responses?: Memory[]): Promise<Evaluator[]>;
1419
1422
  ensureConnections(entities: any, rooms: any, source: any, world: any): Promise<void>;
package/dist/index.js CHANGED
@@ -30,6 +30,7 @@ import {
30
30
  composeActionExamples,
31
31
  composePrompt,
32
32
  composePromptFromState,
33
+ createActionResult,
33
34
  createLogger,
34
35
  createMessageMemory,
35
36
  createService,
@@ -94,7 +95,7 @@ import {
94
95
  v2_exports,
95
96
  validateCharacter,
96
97
  validateUuid
97
- } from "./chunk-6DHKYLYG.js";
98
+ } from "./chunk-QZR5LTYF.js";
98
99
  import "./chunk-2HSL25IJ.js";
99
100
  import "./chunk-WO7Z3GE6.js";
100
101
  import "./chunk-U2ADTLZY.js";
@@ -133,6 +134,7 @@ export {
133
134
  composeActionExamples,
134
135
  composePrompt,
135
136
  composePromptFromState,
137
+ createActionResult,
136
138
  createLogger,
137
139
  createMessageMemory,
138
140
  createService,
@@ -7,7 +7,7 @@ import {
7
7
  formatTimestamp3 as formatTimestamp,
8
8
  generateUuidFromString,
9
9
  getActorDetails
10
- } from "../../chunk-6DHKYLYG.js";
10
+ } from "../../chunk-QZR5LTYF.js";
11
11
  import {
12
12
  createTemplateFunction,
13
13
  getTemplateValues,
@@ -3,7 +3,7 @@ import {
3
3
  formatMessages3 as formatMessages,
4
4
  formatTimestamp3 as formatTimestamp,
5
5
  getActorDetails
6
- } from "../../chunk-6DHKYLYG.js";
6
+ } from "../../chunk-QZR5LTYF.js";
7
7
  import "../../chunk-2HSL25IJ.js";
8
8
  import "../../chunk-WO7Z3GE6.js";
9
9
  import "../../chunk-U2ADTLZY.js";
@@ -1,6 +1,6 @@
1
1
  import {
2
2
  formatPosts3 as formatPosts
3
- } from "../../chunk-6DHKYLYG.js";
3
+ } from "../../chunk-QZR5LTYF.js";
4
4
  import "../../chunk-2HSL25IJ.js";
5
5
  import "../../chunk-WO7Z3GE6.js";
6
6
  import "../../chunk-U2ADTLZY.js";
@@ -1,6 +1,6 @@
1
1
  import {
2
2
  AgentRuntime3 as AgentRuntime
3
- } from "../../chunk-6DHKYLYG.js";
3
+ } from "../../chunk-QZR5LTYF.js";
4
4
  import "../../chunk-2HSL25IJ.js";
5
5
  import "../../chunk-WO7Z3GE6.js";
6
6
  import "../../chunk-U2ADTLZY.js";
@@ -1,7 +1,7 @@
1
1
  import {
2
2
  asUUID3 as asUUID,
3
3
  generateUuidFromString
4
- } from "../../chunk-6DHKYLYG.js";
4
+ } from "../../chunk-QZR5LTYF.js";
5
5
  import "../../chunk-2HSL25IJ.js";
6
6
  import "../../chunk-WO7Z3GE6.js";
7
7
  import "../../chunk-U2ADTLZY.js";
@@ -1,2 +1,2 @@
1
1
  export { a as Action, w as ActionEventPayload, A as ActionExample, f as Agent, x as AgentStatus, y as AudioProcessingParams, B as BaseMetadata, z as BaseModelParams, D as CacheKeyPrefix, F as ChannelClearedPayload, G as ChannelType, l as Character, J as ChunkRow, b as Component, K as ComponentData, C as Content, N as ContentType, O as ControlMessage, Q as CustomMetadata, V as DbConnection, X as DeriveKeyAttestationData, Y as DescriptionMetadata, Z as DetokenizeTextParams, _ as DirectoryItem, $ as DocumentMetadata, a0 as EmbeddingSearchResult, a1 as EnhancedState, E as Entity, a2 as EntityPayload, a3 as EvaluationExample, m as Evaluator, a4 as EvaluatorEventPayload, a5 as EventDataObject, a6 as EventHandler, a7 as EventPayload, a8 as EventPayloadMap, a9 as EventType, aa as FragmentMetadata, ab as GenerateTextParams, ac as Handler, H as HandlerCallback, g as IAgentRuntime, I as IDatabaseAdapter, ad as ImageDescriptionParams, ae as ImageGenerationParams, af as InvokePayload, ag as IsValidServiceType, ah as JSONSchema, ai as KnowledgeItem, aj as KnowledgeScope, L as Log, ak as Media, M as Memory, c as MemoryMetadata, al as MemoryRetrievalOptions, am as MemoryScope, an as MemorySearchOptions, ao as MemoryType, ap as MemoryTypeAlias, aq as MessageExample, ar as MessageMemory, as as MessageMetadata, at as MessagePayload, au as MessageReceivedHandlerParams, av as MetadataObject, aw as ModelEventPayload, ax as ModelHandler, r as ModelParamsMap, q as ModelResultMap, ay as ModelType, p as ModelTypeName, az as MultiRoomMemoryOptions, aA as ObjectGenerationParams, aB as OnboardingConfig, d as Participant, aC as PlatformPrefix, n as Plugin, aD as PluginEvents, aE as Project, aF as ProjectAgent, P as Provider, aG as ProviderResult, e as Relationship, aH as RemoteAttestationMessage, aI as RemoteAttestationQuote, h as Role, R as Room, aJ as RoomMetadata, k as Route, aK as RunEventPayload, o as RuntimeSettings, aL as SOCKET_MESSAGE_TYPE, t as SendHandlerFunction, j as Service, aM as ServiceClassMap, aN as ServiceConfig, aO as ServiceError, aP as ServiceInstance, aQ as ServiceRegistry, aR as ServiceType, i as ServiceTypeName, aS as ServiceTypeRegistry, aT as ServiceTypeValue, aU as Setting, S as State, aV as StateArray, aW as StateObject, aX as StateValue, aY as TEEMode, u as TargetInfo, T as Task, aZ as TaskMetadata, s as TaskWorker, a_ as TeeAgent, a$ as TeePluginConfig, b0 as TeeType, b1 as TeeVendorConfig, v as TemplateType, b2 as TestCase, b3 as TestSuite, b4 as TextEmbeddingParams, b5 as TextGenerationParams, b6 as TextToSpeechParams, b7 as TokenizeTextParams, b8 as TranscriptionParams, b9 as TypedEventHandler, ba as TypedService, bb as TypedServiceClass, U as UUID, bc as UnifiedMemoryOptions, bd as UnifiedSearchOptions, be as VECTOR_DIMS, bf as Validator, bg as VideoProcessingParams, W as World, bh as WorldPayload, bi as WorldSettings, bj as asUUID, bk as createMessageMemory, bl as createServiceError, bm as getMemoryText, bn as getTypedService, bo as isCustomMetadata, bp as isDescriptionMetadata, bq as isDocumentMemory, br as isDocumentMetadata, bs as isFragmentMemory, bt as isFragmentMetadata, bu as isMessageMetadata } from '../../types-CpAVqV6l.js';
2
- export { bI as AgentRuntime, bs as DatabaseAdapter, bH as Semaphore, bE as ServerOwnershipState, ca as ServiceBuilder, cc as ServiceDefinition, b_ as addHeader, bC as booleanFooter, bp as composeActionExamples, bY as composePrompt, bZ as composePromptFromState, cb as createService, bK as createSettingFromConfig, bu as createUniqueUuid, bX as decryptObjectValues, bJ as decryptSecret, bJ as decryptStringValue, bV as decryptedCharacter, cd as defineService, by as elizaLogger, bW as encryptObjectValues, bM as encryptStringValue, bU as encryptedCharacter, bt as findEntityByName, bG as findWorldsForOwner, bq as formatActionNames, br as formatActions, bw as formatEntities, c0 as formatMessages, b$ as formatPosts, c1 as formatTimestamp, bv as getEntityDetails, bL as getSalt, bF as getUserServerRole, bS as getWorldSettings, bD as imageDescriptionTemplate, bT as initializeOnboarding, bx as logger, bA as messageHandlerTemplate, c7 as parseBooleanFromText, c6 as parseJSONObjectFromText, c5 as parseKeyValueXml, bB as postCreationTemplate, c8 as safeReplacer, bN as saltSettingValue, bP as saltWorldSettings, bz as shouldRespondTemplate, c3 as stringToUuid, c9 as trimTokens, c4 as truncateToCompleteSentence, bO as unsaltSettingValue, bQ as unsaltWorldSettings, bR as updateWorldSettings, c2 as validateUuid } from '../../index-Bu4JVNja.js';
2
+ export { bL as AgentRuntime, bv as DatabaseAdapter, bK as Semaphore, bH as ServerOwnershipState, cd as ServiceBuilder, cf as ServiceDefinition, c1 as addHeader, bF as booleanFooter, bs as composeActionExamples, b$ as composePrompt, c0 as composePromptFromState, ce as createService, bN as createSettingFromConfig, bx as createUniqueUuid, b_ as decryptObjectValues, bM as decryptSecret, bM as decryptStringValue, bY as decryptedCharacter, cg as defineService, bB as elizaLogger, bZ as encryptObjectValues, bP as encryptStringValue, bX as encryptedCharacter, bw as findEntityByName, bJ as findWorldsForOwner, bt as formatActionNames, bu as formatActions, bz as formatEntities, c3 as formatMessages, c2 as formatPosts, c4 as formatTimestamp, by as getEntityDetails, bO as getSalt, bI as getUserServerRole, bV as getWorldSettings, bG as imageDescriptionTemplate, bW as initializeOnboarding, bA as logger, bD as messageHandlerTemplate, ca as parseBooleanFromText, c9 as parseJSONObjectFromText, c8 as parseKeyValueXml, bE as postCreationTemplate, cb as safeReplacer, bQ as saltSettingValue, bS as saltWorldSettings, bC as shouldRespondTemplate, c6 as stringToUuid, cc as trimTokens, c7 as truncateToCompleteSentence, bR as unsaltSettingValue, bT as unsaltWorldSettings, bU as updateWorldSettings, c5 as validateUuid } from '../../index-cLfhYsFC.js';
@@ -78,7 +78,7 @@ import {
78
78
  unsaltWorldSettings2 as unsaltWorldSettings,
79
79
  updateWorldSettings2 as updateWorldSettings,
80
80
  validateUuid2 as validateUuid
81
- } from "../../chunk-6DHKYLYG.js";
81
+ } from "../../chunk-QZR5LTYF.js";
82
82
  import "../../chunk-2HSL25IJ.js";
83
83
  import "../../chunk-WO7Z3GE6.js";
84
84
  import "../../chunk-U2ADTLZY.js";
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@elizaos/core",
3
- "version": "1.2.0",
3
+ "version": "1.2.1",
4
4
  "description": "",
5
5
  "type": "module",
6
6
  "main": "dist/index.js",
@@ -75,5 +75,5 @@
75
75
  "publishConfig": {
76
76
  "access": "public"
77
77
  },
78
- "gitHead": "ebaf4b24102aa4c17c6d42108be13bf2cc1348f3"
78
+ "gitHead": "227798477b53ad38b01f147ac1a649a5d1c810a3"
79
79
  }