Skip to content

[UX] Guideline: Add agentic UX pattern to style MD file  #7447

Description

@hyoshis

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)

  1. When agentic UX applies — definitions: agent-mode, MCP-server mode (azd mcp start), and headless/CI. Contrast with core interactive flows.
  2. Interaction modes — interactive vs autopilot vs plan: the approval UX each implies, and when tool execution pauses for confirmation.
  3. Headless / non-interactive output — no spinners or interactive pickers; deterministic, machine-parseable output; how this composes with --no-prompt and structured (--output json) formats.
  4. 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.
  5. 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).
  6. 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).
  7. Usage, cost & change transparency — the session usage block and file-change summary as a standard "end of turn" report; formatting and color rules.
  8. Session lifecycle — starting, resuming (WithSessionID), and session-started notifications.
  9. Alpha labeling & progressive disclosure — agentic commands are Alpha; how to label and gate them consistently.
  10. Color / accessibility carry-over — reaffirm core color-helper rules and FORCE_COLOR behavior for child MCP processes; never rely on color alone.
  11. Cross-references — link the core guide, guiding-principles.md, and extensions-style-guide.md for shared rules (don't duplicate).

Implementation tasks

  • Confirm file-placement decision (Option A vs B) with maintainers.
  • Author agentic UX content following the catalog above.
  • Update the core guide's "future" note to link to the agentic guidance.
  • Add cross-links from guiding-principles.md and (if relevant) extensions-style-guide.md.
  • Spell-check via the cspell misc config and verify markdown formatting.

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.

Metadata

Metadata

Assignees

Labels

area/uxUX, prompts, output formattingfeatureFeature request

Projects

No projects

Relationships

None yet

Development

No branches or pull requests

Issue actions