Skip to main content

Class: RollingSummaryChain

Defined in: packages/agentos/src/memory/context/RollingSummaryChain.ts:27

Constructors

Constructor

new RollingSummaryChain(maxBudgetTokens?, llmInvoker?): RollingSummaryChain

Defined in: packages/agentos/src/memory/context/RollingSummaryChain.ts:32

Parameters

maxBudgetTokens?

number = 2000

llmInvoker?

(prompt) => Promise<string>

Returns

RollingSummaryChain

Accessors

size

Get Signature

get size(): number

Defined in: packages/agentos/src/memory/context/RollingSummaryChain.ts:133

Returns

number

Methods

addNodes()

addNodes(nodes): void

Defined in: packages/agentos/src/memory/context/RollingSummaryChain.ts:43

Add new leaf nodes from a compaction.

Parameters

nodes

SummaryChainNode[]

Returns

void


clear()

clear(): void

Defined in: packages/agentos/src/memory/context/RollingSummaryChain.ts:229

Reset the chain.

Returns

void


collapse()

collapse(): Promise<SummaryChainNode[]>

Defined in: packages/agentos/src/memory/context/RollingSummaryChain.ts:54

Collapse the chain if it exceeds the token budget. Merges the oldest leaf nodes into a higher-level summary. Returns any newly created parent nodes.

Returns

Promise<SummaryChainNode[]>


formatForPrompt()

formatForPrompt(): string

Defined in: packages/agentos/src/memory/context/RollingSummaryChain.ts:88

Format the chain for inclusion in a prompt.

Returns

string


getActiveChain()

getActiveChain(): SummaryChainNode[]

Defined in: packages/agentos/src/memory/context/RollingSummaryChain.ts:83

Get the active chain — top-level nodes without parents, sorted by turn range.

Returns

SummaryChainNode[]


getAllNodes()

getAllNodes(): SummaryChainNode[]

Defined in: packages/agentos/src/memory/context/RollingSummaryChain.ts:120

Get all nodes (including absorbed children, for audit/UI).

Returns

SummaryChainNode[]


getCoveredRange()

getCoveredRange(): [number, number] | null

Defined in: packages/agentos/src/memory/context/RollingSummaryChain.ts:127

Get the full turn range covered by the chain.

Returns

[number, number] | null


getTotalTokens()

getTotalTokens(): number

Defined in: packages/agentos/src/memory/context/RollingSummaryChain.ts:112

Total tokens across all active (non-absorbed) nodes.

Returns

number