subscribe()
Register real-time callbacks for memory change events — filter by organization, agent, and event type.
Signature
subscribe(
filter: SubscribeFilter,
callback: (event: MemoryChangeEvent) => void,
): Unsubscribe
interface SubscribeFilter {
organization: string;
agent?: string;
event?: SubscribableEvent | SubscribableEvent[];
}
type SubscribableEvent =
| "remember"
| "update"
| "forget"
| "compress"
| "ingest"
| "*";
interface MemoryChangeEvent {
event: Exclude<SubscribableEvent, "*">;
organization: string;
agent: string;
memoryId: string | string[];
timestamp: string;
traceId?: string;
sessionId?: string;
upsertAction?: "created" | "updated" | "skipped";
}
type Unsubscribe = () => void;Example
const stop = ctx.subscribe(
{ organization: "my-org", event: ["remember", "update"] },
(e) => console.log(e.event, e.memoryId),
);
await ctx.remember({
agent: "assistant",
content: { text: "Ships prefer express checkout" },
});
stop();
await ctx.close(); // also clears remaining subscriptionsBackend notes
| Backend | Delivery |
|---|---|
| SQLite | Same Node process only |
| PostgreSQL | Cross-process via LISTEN/NOTIFY |
Full guide: Real-time events.