Clarify questions with a finite option set now render as the same tappable picker card used by /reasoning and /fast, instead of a numbered text list. The change is gateway-only: it reuses the existing picker.choice frame and the app's PickerCard UI, so no app change or reinstall is needed. - send_clarify: single-select + live device emits a picker.choice frame (one button per option + an "Other (type your answer)" button) and registers a pending picker; the selection resolves via resolve_gateway_clarify (the agent then continues and replies). - "Other" flips the entry to text-capture (mark_awaiting_text) and prompts the user to type; an unmappable value also flips to text so a clarify never dead-ends. - Multi-select, open-ended, and no-live-device clarifies keep the numbered-text fallback (unchanged behavior). - New helpers _clarify_is_multi / _clarify_picker_callback; positional option values (c0..cN, other) mirror the relay adapter. Tests: updated test_clarify_emits_banner_and_message to multi-select (text fallback) + 3 new tests (single-select emits picker & resolves, Other flips to text, no-device falls back to text). Full suite 90/90. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>