ToSSEOptions
Interface: ToSSEOptions
Defined in: src/stream.ts:36
Hand the runner this iterable's caller before calling runner.run().
Yields SSE-formatted strings until the run finishes (success, error,
or pause). Each event becomes:
event: data:
Example
// Express
app.post('/agent', async (req, res) => {
res.setHeader('content-type', 'text/event-stream');
for await (const chunk of toSSE(agent)) {
res.write(chunk);
}
res.end();
// (in parallel: await agent.run(req.body))
});Properties
eventName?
readonlyoptionaleventName?: (event) =>string
Defined in: src/stream.ts:55
Custom event name extractor. By default event.type is used.
Useful for SSE consumers that want their own naming.
Parameters
event
Returns
string
filter?
readonlyoptionalfilter?: (event) =>boolean
Defined in: src/stream.ts:42
Filter predicate — return false to skip an event. Default: all events.
Common: event => event.type.startsWith('agentfootprint.stream.')
for a token-only feed.
Parameters
event
Returns
boolean
format?
readonlyoptionalformat?:"full"|"text"
Defined in: src/stream.ts:50
Output shape:
- 'full' (default) — each event is JSON-serialized verbatim.
- 'text' — only
agentfootprint.stream.token.contentis yielded, in plain text form (no event/data prefix). Useful for piping directly into a chat UI.
heartbeatMs?
readonlyoptionalheartbeatMs?:number
Defined in: src/stream.ts:61
Heartbeat interval in ms. SSE connections through proxies/load
balancers often die after ~30s of silence; emit : ping comments
at this interval. Default 0 (disabled).
