Skip to content

trimHistory

trimHistory(history, maxHistorySize, strategy): IRMessage[]

Defined in: conversation-history.ts:45

Trim conversation history to keep only the most recent messages.

readonly IRMessage[]

Current conversation history

number

Maximum number of message pairs to keep - 0: Return empty array (no history) - -1: Return full history (no trimming) - N > 0: Keep last N user/assistant pairs

TrimStrategy = 'fifo'

Trimming strategy - ‘fifo’: First-in-first-out, remove oldest messages - ‘smart’: Preserve system messages, trim user/assistant pairs

IRMessage[]

Trimmed history

const history = [
{ role: 'system', content: 'You are helpful' },
{ role: 'user', content: 'Hi' },
{ role: 'assistant', content: 'Hello!' },
{ role: 'user', content: 'How are you?' },
{ role: 'assistant', content: 'I am well!' },
];
// Keep last 1 pair + system message
const trimmed = trimHistory(history, 1, 'smart');
// Result: system message + last user/assistant pair