Ask User
Reusable pattern for presenting the user with explicit choices and gating execution...
Install
npx skills add garrytan/gbrain --skill ask-user -g -a claude-code -y- Repository
- garrytan/gbrain31.4k
- Category
- AI and agents
- Updated
- 3d ago
- License
- MIT
- Context cost
- Mediumabout 2,102 tokens
- Runs scripts
- No, instructions only
What it does
Reusable pattern for presenting the user with explicit choices and gating execution until they respond. Used by other skills when a decision point requires human input before proceeding. Platform-agnostic, works on Telegram (inline buttons), Discord, CLI, or any agent with a message tool.
Ask User, Choice Gate Pattern
Contract
- Present 2-4 options (no more, decision paralysis kicks in past 4).
- Always include an escape hatch (Skip, Cancel, or "none of these").
- Stop the turn immediately after presenting choices. No follow-up tool calls, no preemptive action, no default-and-proceed.
- The user's response triggers the next turn. Acknowledge briefly, then branch.
- One question per message, never stack multiple choice gates.
- Self-explanatory option labels: action verb plus brief qualifier, not "Option 1".
What This Is
A formalized pattern for presenting users with 2-4 options and stopping execution until they respond. This is the canonical way to gate on user input in any GBrain-powered agent.
This is NOT a traditional async/await. In an LLM agent, "gating" means:
- Present the choices (buttons or numbered options)
- Explicitly stop the current turn (do not proceed)
- The user's response triggers the next turn
- Read the response and branch accordingly
When To Use
- Ambiguous requests with multiple valid interpretations
- Destructive operations (bulk deletes, overwrites)
- Filing/routing decisions ("where should this go?")
- Priority triage ("which should I do first?")
- Cold-start phase gates ("ready for the next import source?")
- Any fork where the wrong default wastes significant work
When NOT To Use
- Clear, unambiguous instructions → just do it
- Low-stakes decisions → pick the best option and mention it
- Time-critical operations where delay costs more than a wrong choice
- When the user has already expressed a preference
How To Present Choices
Platform-agnostic format (works everywhere)
Present choices as a clear question with numbered or labeled options:
🔀 **How should I handle this?**
[context about the decision, 1-3 lines max]
1. **Option A**, short description
2. **Option B**, short description
3. **Option C**, short description
4. **Skip**, do nothing for now

