Interface: AgentElicitationRecord
Defined in: packages/sdk/src/agents-service.ts:1470
Beta
A question the agent asked, as a durable transcript row rather than a live request — AgentElicitationRequest with every callable member removed, which is precisely what can be written down.
Carried on AgentSessionUpdate.elicitation for the Silo-synthesized "elicitation" and "elicitation_resolution" kinds, so a Chat UI can repaint a question it can no longer answer — a resumed session has no pending request — and say honestly how it ended. Without this a reload left the transcript ending mid-air, with no sign the turn had been waiting on the user at all.
On an "elicitation_resolution" update only id and resolution are meaningful: it patches the row the "elicitation" update opened.
Properties
id
readonly id: string;Defined in: packages/sdk/src/agents-service.ts:1473
Beta
Correlates the two updates, and a live AgentElicitationRequest.id with its row. Unique per session.
message?
readonly optional message?: string;Defined in: packages/sdk/src/agents-service.ts:1475
Beta
The human-readable ask — AgentElicitationRequest.message.
questions?
readonly optional questions?: readonly AgentElicitationQuestion[];Defined in: packages/sdk/src/agents-service.ts:1477
Beta
The questions as they were put to the user.
acknowledgeOnly?
readonly optional acknowledgeOnly?: boolean;Defined in: packages/sdk/src/agents-service.ts:1479
Beta
AgentElicitationRequest.acknowledgeOnly, as asked.
toolCallId?
readonly optional toolCallId?: string;Defined in: packages/sdk/src/agents-service.ts:1481
Beta
The tool call the question belonged to, when the agent sent one.
resolution?
readonly optional resolution?: AgentElicitationResolution;Defined in: packages/sdk/src/agents-service.ts:1484
Beta
How it ended. undefined on the opening "elicitation" update — the question was still open at that point.
answers?
readonly optional answers?: Readonly<Record<string, string>>;Defined in: packages/sdk/src/agents-service.ts:1496
Beta
What the user answered, keyed by AgentElicitationQuestion.id and written as the text they saw — the option's label, a comma-joined list for a multi-select, "Yes"/"No", or whatever they typed.
Deliberately not the payload the agent received: that one speaks in option values and routes a typed answer to its own field, so replaying it to the user would show them identifiers they never picked. Present only on an "answered" resolution, and only for the questions that got an answer — a skipped question contributes no key.