Use this tool when you need to ask the user questions during execution. This allows you to:
1. Gather user preferences or requirements
2. Clarify ambiguous instructions
3. Get decisions on implementation choices as you work
4. Offer choices to the user about what direction to take.

Parameters:
- `question`: Complete question text to display
- `header`: Very short label (max 30 chars) that summarizes the question
- `options`: Array of available choices, each with:
  - `label`: Display text (1-5 words, concise)
  - `description`: Explanation of the choice
- `multiple`: (optional) Allow selecting multiple choices (default: false)
- `custom`: (optional) Allow typing a custom answer (default: true)

Custom input behavior:
- When `custom` is true (default): User can either select from options OR type their own answer
  - System will show: "Hint: Enter option number or custom text"
  - User can input any text as a custom answer
  - IMPORTANT: Do NOT add a "[0] Custom input" option - the system handles this automatically via the hint message
- When `custom` is false: User MUST select from the provided options only
  - System will show: "Hint: Only valid option numbers allowed"
  - Custom text input will be rejected as invalid
  - Use this when you need strict validation (e.g., yes/no questions, predefined choices)

Best practices:
- Set `custom: false` when you need strict validation and want to ensure users only select from predefined options
- Set `custom: true` (or omit it) when you want to allow flexibility for users to provide their own answers
- Keep option labels concise (1-5 words)
- Provide clear descriptions for each option to help users understand the implications
- If you recommend a specific option, make that the first option in the list and add "(Recommended)" at the end of the label
- For yes/no questions, provide explicit "Yes" and "No" options and consider setting `custom: false` for strict validation
- NEVER add a "Custom input" or "Other" option when custom is true - the system automatically allows custom input through the hint message
