API Reference
Episode API
Manage the full episode lifecycle programmatically.
createEpisode()
Open a new episode to group related interactions:
const episode = await engine.createEpisode({
description?: string,
userId: string,
participants?: string[],
metadata?: Record<string, any>,
});
// Returns: Episode with id, status: 'active', createdAtupdateEpisode()
Update an active episode's metadata or description:
await engine.updateEpisode(episodeId, {
description?: string,
metadata?: Record<string, any>,
});closeEpisode()
Finalize an episode. Triggers automatic summary memory creation with the full emotional trajectory:
const summary = await engine.closeEpisode(episodeId);
// Returns: { memoryId: string, summary: string, emotionalArc: EmotionPoint[] }queryEpisodes()
Query episodes by time range, emotional state, or participant:
const episodes = await engine.queryEpisodes({
userId: string,
timeRange?: { start: Date, end: Date },
emotions?: string[],
participants?: string[],
status?: 'active' | 'closed',
limit?: number,
});
// Returns: Array<Episode>getEpisodeMemories()
Retrieve the complete memory trail for an episode, including emotional trajectory data and temporal metadata:
const trail = await engine.getEpisodeMemories(episodeId);
// Returns: {
// memories: Memory[],
// emotionalTrajectory: EmotionPoint[],
// duration: number,
// participantCount: number,
// }