Let the agent ask questions¶
For a team whose agent needs a decision from a person mid-task: at the end, the agent's question appears in the thread, a channel member answers it there, and the same agent task carries on with the answer.
Turn it on¶
In the Binding:
- How long a question waits. The default is 30 minutes.
Without askUser: true, Agent Kourier refuses the agent's question and says so in the thread.
What people see¶
The kagent-v1 dialect reads kagent's structured questions. Each question is shown with its choices as a select
(a multi-select where the agent allows several), or as a text input when there are no choices, and a Submit
button. A question raised by a sub-agent is labelled with that sub-agent.
The a2a dialect shows an agent's input-required pause as a question in text. A single question with no
choices also takes a typed reply in the thread, and its prompt says so. In a Binding with
chat.threadReplies: mention, that reply needs no mention.
How an answer is taken¶
- Only a member of the channel can answer, and never a bot. An incomplete answer is turned away with a message only the person sees; nothing reaches the agent.
- The first complete answer wins. The prompt is updated to show who answered and when, and its controls are removed.
- The answer goes to the agent under the Binding's identity. The audit log records who answered, when and the answer's shape, never its text.
- A reply that is not an answer waits until the question is answered, times out or is cancelled, and is then sent as the next turn.
- When the timeout passes, the question is cancelled and the thread is told.
Tool approvals¶
interactions.toolApprovals is reserved for approving an agent's tool calls from Slack, which is not built yet. Keep
it false. If an agent pauses for a tool approval anyway, Agent Kourier denies it, says so in the thread, and counts
it, because the Binding was declared to point at a read-only agent.