A user makes a complex request that typically requires clarification and/or multiple steps.
- U: Complex request (“Configure a pump for 120 m³/h at 8 bar”).
- A: Establish scope + ask for constraints (→ agent inquiry).
- A: Plan/confirm next action (“I will size the pump using… Shall I proceed?”).
- A: Execute or transition to extended telling (instructions) as needed.
- U (Optional): Sequence closer.
Guidance
- Show a brief intent frame, e.g. goal, constraints, assumptions, sources, risk.
- Prefer mixed-initiative clarifications; ask only for missing/ambiguous slots.
- Gate irreversible actions behind an explicit confirmation.
Repair affordances
- One-tap: Repeat · Say it simpler · Example · Define term.
- Support retroactive repair (“Apply this correction to the last step”).
Metrics
- Wrong-action rate before confirmation
- Clarifications per task; completion time
- Accuracy against source-of-truth/tool outputs
Consequences
- the request is framed rather than merely received: goal, constraints, assumptions and sources are explicit, and what's still missing shows up as named gaps instead of general vagueness
- a plan exists and the agent is about to act on the actor's behalf; where a step can't be taken back, the actor's explicit go-ahead has to come before it, not after
Related patterns
Precedes
- Plan preview — a complex request is the situation a plan makes reviewable before work starts
- Inline confirmation — a plan exists and the agent is about to act on the actor's behalf; where a step can't be taken back, the actor's explicit go-ahead has to come before it, not after
Enables
- Conversation — the primary primitive for instruction-based dialogue
Preceded by
- Opening (Agent) — footing is set and a topic is on the table; the encounter is at its first fork, and a topic the actor accepts on any scale beyond a single question opens into an open request
- Opening (User) — the actor's topic is on the table and the agent has aligned to it; the shape of what they brought decides the activity — a question answerable in one turn passes straight into user inquiry, a goal with steps behind it into an open request, and one stated too loosely to act on needs the agent to ask first
Enabled by
- Inquiry (Agent) — used within open request to gather missing or ambiguous constraints