Skip to content

Memory

Source: src/AWS/BedrockAgentCore/Memory.ts

An Amazon Bedrock AgentCore Memory — managed short- and long-term memory for AI agents.

Short-term memory stores raw session events (turn-by-turn conversation); optional memoryStrategies asynchronously extract long-term records (semantic facts, summaries, user preferences) into queryable namespaces.

Provisioning is asynchronous: the provider waits for the memory to reach ACTIVE (~2-3 minutes) before returning.

Short-Term Memory Only

import * as AgentCore from "alchemy/AWS/BedrockAgentCore";
const memory = yield* AgentCore.Memory("SessionMemory", {
eventExpiryDuration: "30 days",
});

Memory with a Semantic Long-Term Strategy

const memory = yield* AgentCore.Memory("AgentMemory", {
eventExpiryDuration: "90 days",
memoryStrategies: [
{
semanticMemoryStrategy: {
name: "facts",
namespaces: ["facts/{actorId}"],
},
},
],
});
// init
const createEvent = yield* AgentCore.CreateEvent(memory);
const listEvents = yield* AgentCore.ListEvents(memory);
return {
fetch: Effect.gen(function* () {
// runtime
yield* createEvent({
actorId: "user-1",
sessionId: "session-1",
eventTimestamp: new Date(),
payload: [
{
conversational: {
role: "USER",
content: { text: "My favorite color is teal." },
},
},
],
});
const events = yield* listEvents({
actorId: "user-1",
sessionId: "session-1",
});
return HttpServerResponse.json({ count: events.events.length });
}),
};