Skip to content

Agents should provide a recommendation and rationale when asking clarifying questions #476

Description

@williamthorsen

Problem

When agents ask clarifying questions with multiple numbered options, the developer needs the agent's recommendation and a concise rationale to make an informed decision. Today, agents only occasionally make a recommendation, and when they do, the framing tends to bury other strong contenders. This forces the developer to either accept the agent's lead unexamined or stop and ask follow-up questions to surface the alternatives.

Context

  • The collaboration skill at packages/agents/content/skills/collaboration/SKILL.md is the centralized authority on interactive question forms. It currently defines yes/no questions (ending 👍🏼👎🏼) and numbered-option lists, but says nothing about recommendations or rationale.
  • The design-and-plan skill is the densest source of clarifying questions in the codebase — Phase 2 (understand the task) and Phase 3 (converge on a design) both rely on iterative numbered-option questions.
  • A separate convention exists in _data/next-steps-after-plan.md and _data/next-steps-after-review.md: a single 🟢 recommended marker on next-steps menus. That convention is structurally different (single-strength, terminal menu), and remains unchanged by this work.

Solution

Add an "Asking with a recommendation gradient" section to collaboration/SKILL.md defining:

  1. A four-level visual gradient using filled-square markers (rendered as plain text, not inside code spans):
    • ■■■ strongly recommended (you'd push back if the developer chose otherwise)
    • ■■□ recommended (your lean; default when you have a preference)
    • ■□□ weakly recommended (slight edge; mostly preference)
    • □□□ not recommended (clear drawbacks; included for completeness)
  2. A no-preference rule: if all options are equally weighted, omit markers from every option. Don't explain the omission.
  3. Inline rationale convention: pros () and cons () following the option title, separated by ;.
  4. Two worked examples — one with a clear strong recommendation, one with no preference.
  5. Three "don'ts": no tiebreaker text for equal-strength options; no partial marking within a marked list; cap at ■■□ unless you'd actively push back.

Add a one-line cross-reference in design-and-plan/SKILL.md Phase 2.3 (the "Ask clarifying questions" sub-step) pointing to the new section in collaboration.

Marker glyphs are U+25A0 BLACK SQUARE and U+25A1 WHITE SQUARE — Unicode "Geometric Shapes" block. They are text glyphs (not emoji), giving consistent monospace width and broad font coverage.

Scope boundaries:

  • The new format applies only to numbered clarifying questions with 2+ options. Yes/no questions (👍🏼👎🏼) and existing next-steps menus (🟢 recommended) are out of scope.
  • No change to the next-steps menu convention. The two systems coexist.

Acceptance criteria

  • collaboration/SKILL.md contains a new "Asking with a recommendation gradient" section with the markers table, no-preference rule, format convention, two examples, and three don'ts.
  • design-and-plan/SKILL.md Phase 2.3 cross-references the new section in collaboration.
  • The next-steps menu convention (🟢 recommended) in _data/next-steps-after-plan.md and _data/next-steps-after-review.md is unchanged.
  • Marker glyphs (■□) appear as plain text, not inside backticks, so they render at full size.
  • User-facing surface change: the new section is documented; no CLI/API/config surfaces are affected.

Metadata

Metadata

Labels

featureAdded or improved external functionalityscope:agents

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions