Skip to content

Memory caps + metrics

<AgentRoot
endpoint="..."
caps={{
maxNodes: 5000,
maxToolCalls: 500,
onEvict: (slice, evicted) => console.log(`evicted ${evicted.length} from ${slice}`),
}}
onMetric={(m) => sink.record(m)}
tags={{ env: "prod" }}
>
</AgentRoot>

Emitted metrics (all timings in ms):

NameKind
agentui.session.create_mstiming
agentui.stream.connect_mstiming
agentui.stream.first_event_mstiming
agentui.stream.reconnect_attemptscounter
agentui.event.parse_mstiming
agentui.event.dispatch_mstiming
agentui.event.parse_error_countcounter

sessionId tags are FNV-1a hashed; raw UUIDs never leave the library.