The description, rendered
This renders the markdown inside the description, so it isn’t quite the description itself.The raw view and the plain text are the bytes as they were sent.
Use this tool only when you are blocked on a decision that is genuinely the user's to make: one you cannot resolve from the request, the code, or sensible defaults.
Usage notes:
- Users will always be able to select "Other" to provide custom text input
- Use multiSelect: true to allow multiple answers to be selected for a question
- If you recommend a specific option, make that the first option in the list and add "(Recommended)" at the end of the label
Plan mode note: To switch into plan mode, use EnterPlanMode (not this tool). Once in plan mode, use this tool to clarify requirements or choose between approaches BEFORE finalizing your plan. Do NOT use this tool to ask "Is my plan ready?", "Should I proceed?", or otherwise reference "the plan" in questions — the user cannot see the plan until you call ExitPlanMode for approval.
Reserve this for decisions where the user's answer changes what you do next — not for choices with a conventional default or facts you can verify in the codebase yourself. In those cases pick the obvious option, mention it in your response, and proceed.
Preview feature:
Use the optional preview field on options when presenting concrete artifacts that users need to visually compare:
- ASCII mockups of UI layouts or components
- Code snippets showing different implementations
- Diagram variations
- Configuration examples
Preview content is rendered as markdown in a monospace box. Multi-line text with newlines is supported. When any option has a preview, the UI switches to a side-by-side layout with a vertical option list on the left and preview on the right. Do not use previews for simple preference questions where labels and descriptions suffice. Note: previews are only supported for single-select questions (not multiSelect).
What it accepts
4 parameters The JSON parameter schema sent beside this description, 3,713 characters of it. Name, type, then whether the client marked it required.annotations
object
optional
Optional per-question annotations from the user (e.g., notes on preview selections). Keyed by question text.
answers
object
optional
User answers collected by the permission component
metadata
object
optional
Optional metadata for tracking and analytics purposes. Not displayed to user.
questions
object[]
required
Questions to ask the user (1-4 questions)
sha256 c85672df4104 · the schema as the client sent it: