Skip to content

TokenAccumulator

Append-only per-session token totals. record() is synchronous O(1).

new TokenAccumulator(contextWindow?): TokenAccumulator;
Parameter Type

contextWindow?

number

TokenAccumulator

get cumulative(): object;

object

cacheReadTokens: number;
cacheWriteTokens: number;
inputTokens: number;
outputTokens: number;
totalTokens: number;

get peakUtilization(): number;

number


get turns(): TurnUsage[];

TurnUsage[]

record(usage): TurnUsage;
Parameter Type

usage

TurnUsageInput

TurnUsage


restoreCumulative(saved): void;

Rehydrate cumulative totals from persisted session state (cross-turn).

Parameter Type

saved

{ cacheReadTokens?: number; cacheWriteTokens?: number; inputTokens: number; outputTokens: number; totalTokens: number; }

saved.cacheReadTokens?

number

saved.cacheWriteTokens?

number

saved.inputTokens

number

saved.outputTokens

number

saved.totalTokens

number

void


toSessionTraceFields(): Partial<SessionTrace>;

Partial<SessionTrace>