catalog / cross-platform
AskUserQuestion and ask_user_input_v0 are different tools
verified
AskUserQuestion(Code/Desktop) andask_user_input_v0(Claude.ai) serve the same purpose but have different schemas, different limits, and different question/option caps.
- Category: cross-platform
- Applies to: Claude.ai has
ask_user_input_v0| Claude Code hasAskUserQuestion| Claude Desktop hasAskUserQuestion - Verified on: Claude.ai 2026-05-17, Claude Code 2026-05-17
- Verification tier: verified
- Severity: Silent substitution
Symptom
A SKILL.md that names one of the two tools is silently substituted (or fails) on the other platform. Question shape, option shape, and supported variants differ enough that hardcoding either name is non-portable.
Cause
Same purpose, different schemas. Differences:
- Max questions: 3 (Claude.ai
ask_user_input_v0) vs 4 (Code/DesktopAskUserQuestion) - Question types: Claude.ai has
single_select/multi_select/rank_priorities; Code/Desktop has single and multi (viamultiSelect: true), norank_priorities - Options: Claude.ai uses plain strings; Code/Desktop requires
{label, description}objects with optionalpreview - "Other": Claude.ai doesn't auto-add; Code/Desktop auto-adds (don't include manually)
- Header field: required (max 12 chars) on Code/Desktop; absent on Claude.ai
- Recommendation convention: Code/Desktop expect the first option marked "(Recommended)" when applicable
Fix
Treat them as different tools. A portable skill must conform to the *stricter* constraints of both: 3 questions max, every option must include a description, header under 12 chars, no manual "Other" option.
Notes
The schema-cap details for Claude.ai's variant live in ../tool-constraints/ask-user-input-v0-question-and-option-limits.md.