Skip to Content
ReferenceMemory.deleteMessages()

deleteMessages

Deletes one or more messages from the memory storage. This method accepts arrays to delete multiple messages in a single operation.

Syntax

memory.deleteMessages(input: MessageDeleteInput): Promise<void> type MessageDeleteInput = | string[] // Array of message IDs | { id: string }[] // Array of message objects

Parameters

  • input (required): An array of messages to delete. Must be either:
    • An array of message IDs (strings)
    • An array of message objects with id properties

Returns

A Promise that resolves when all messages have been successfully deleted.

Examples

Delete a single message

// Using an array with a single string ID await memory.deleteMessages(['msg-123']); // Using an array with a single message object await memory.deleteMessages([{ id: 'msg-123' }]);

Delete multiple messages

// Using an array of string IDs await memory.deleteMessages(['msg-1', 'msg-2', 'msg-3']); // Using an array of message objects await memory.deleteMessages([ { id: 'msg-1' }, { id: 'msg-2' }, { id: 'msg-3' } ]);

Using with client SDK

// Get a thread instance const thread = client.getAgent('my-agent').getThread('thread-123'); // Delete a single message await thread.deleteMessages(['msg-123']); // Delete multiple messages await thread.deleteMessages(['msg-1', 'msg-2', 'msg-3']); // Delete using message objects (useful when you have message data) const messagesToDelete = messages.map(msg => ({ id: msg.id })); await thread.deleteMessages(messagesToDelete);

Error handling

try { await memory.deleteMessages(['msg-1', 'msg-2', 'msg-3']); console.log('Messages deleted successfully'); } catch (error) { console.error('Failed to delete messages:', error); }

Notes

  • This method requires an array as input, even when deleting a single message
  • Thread timestamps are automatically updated when messages are deleted
  • The method automatically extracts message IDs from message objects
  • All message IDs must be non-empty strings
  • An empty array will result in no operation (no error thrown)
  • Messages from different threads can be deleted in the same operation
  • When using message objects, only the id property is required