Problem
The core azd UX patterns were previously converted from Figma into a markdown style guide (cli/azd/docs/style-guidelines/azd-style-guide.md) so that AI agents (and contributors) can consume them. That guide is explicitly scoped to core azd flows only. It states:
This guide covers core azd flows only. Separate guidelines for agentic flows and extension-specific UX will be provided in dedicated files in the future.
This work is to document the agentic UX design patterns, which differ from the core azd design patterns. Today there is no written specification for how azd should look and behave when it is driven by, or acting as, an AI agent.
Open decision (for reviewers)
Where should the agentic patterns live?
- Option A — New dedicated file (e.g.
cli/azd/docs/style-guidelines/agentic-style-guide.md), cross-linked from the core guide and guiding-principles.md. Matches the "dedicated files in the future" note in the core guide and keeps that guide focused. (Recommended.)
- Option B — New "Agentic UX" section inside the existing
azd-style-guide.md. Single source of truth, but grows an already large (~620-line) file and works against the "dedicated file" intent.
Either way, update the note in the core guide to link to the agentic guidance instead of describing it as "future."
Agentic surfaces in azd to document (grounded in current code)
azd mcp start — MCP server over stdio; exposes azd + extension tools; supports elicitation and sampling; currently labeled (Alpha) (cli/azd/cmd/mcp.go).
internal/agent CopilotAgent — operating modes interactive / autopilot / plan, plus headless mode that suppresses console output and defaults to autopilot (cli/azd/internal/agent/types.go).
- Usage + cost reporting — session usage block (model, input/output/total tokens, billing rate, premium requests, API duration) and file-change summaries, rendered with
WithGrayFormat.
- MCP elicitation / sampling proxy handlers (agent-initiated prompts and model calls).
Proposed agentic UX pattern catalog (content outline)
- When agentic UX applies — definitions: agent-mode, MCP-server mode (
azd mcp start), and headless/CI. Contrast with core interactive flows.
- Interaction modes — interactive vs autopilot vs plan: the approval UX each implies, and when tool execution pauses for confirmation.
- Headless / non-interactive output — no spinners or interactive pickers; deterministic, machine-parseable output; how this composes with
--no-prompt and structured (--output json) formats.
- Progress & status in agent contexts — how the core progress-report states (Done/Failed/Warning/Skipped) map when there is no live TTY; avoid in-place spinner animation when non-interactive.
- Elicitation pattern — how an agent/MCP tool requests input from the user (mirrors core Text / Yes-No / List-select prompts but mediated by the client).
- Tool responses & error surfacing — shape of MCP tool results, the actionable error + suggestion pattern (
ErrorWithSuggestion), and troubleshooting tools (yaml schema, error troubleshooting, provision common errors).
- Usage, cost & change transparency — the session usage block and file-change summary as a standard "end of turn" report; formatting and color rules.
- Session lifecycle — starting, resuming (
WithSessionID), and session-started notifications.
- Alpha labeling & progressive disclosure — agentic commands are Alpha; how to label and gate them consistently.
- Color / accessibility carry-over — reaffirm core color-helper rules and
FORCE_COLOR behavior for child MCP processes; never rely on color alone.
- Cross-references — link the core guide,
guiding-principles.md, and extensions-style-guide.md for shared rules (don't duplicate).
Implementation tasks
Notes
- Keep prose grounded in existing code surfaces; do not invent commands.
- Follow the repo documentation-maintenance rules (style standards live under
cli/azd/docs/style-guidelines/).
- No behavior or code changes are implied by this documentation work.
Problem
The core
azdUX patterns were previously converted from Figma into a markdown style guide (cli/azd/docs/style-guidelines/azd-style-guide.md) so that AI agents (and contributors) can consume them. That guide is explicitly scoped to coreazdflows only. It states:This work is to document the agentic UX design patterns, which differ from the core
azddesign patterns. Today there is no written specification for howazdshould look and behave when it is driven by, or acting as, an AI agent.Open decision (for reviewers)
Where should the agentic patterns live?
cli/azd/docs/style-guidelines/agentic-style-guide.md), cross-linked from the core guide andguiding-principles.md. Matches the "dedicated files in the future" note in the core guide and keeps that guide focused. (Recommended.)azd-style-guide.md. Single source of truth, but grows an already large (~620-line) file and works against the "dedicated file" intent.Either way, update the note in the core guide to link to the agentic guidance instead of describing it as "future."
Agentic surfaces in
azdto document (grounded in current code)azd mcp start— MCP server over stdio; exposesazd+ extension tools; supports elicitation and sampling; currently labeled (Alpha) (cli/azd/cmd/mcp.go).internal/agentCopilotAgent — operating modes interactive / autopilot / plan, plus headless mode that suppresses console output and defaults to autopilot (cli/azd/internal/agent/types.go).WithGrayFormat.Proposed agentic UX pattern catalog (content outline)
azd mcp start), and headless/CI. Contrast with core interactive flows.--no-promptand structured (--output json) formats.ErrorWithSuggestion), and troubleshooting tools (yaml schema, error troubleshooting, provision common errors).WithSessionID), and session-started notifications.FORCE_COLORbehavior for child MCP processes; never rely on color alone.guiding-principles.md, andextensions-style-guide.mdfor shared rules (don't duplicate).Implementation tasks
guiding-principles.mdand (if relevant)extensions-style-guide.md.Notes
cli/azd/docs/style-guidelines/).