eko24ive/pi-ask/ask-user
Claude Code and agent skill by eko24ive/pi-ask
- community
Checking that the SKILL.md file is still in the repository.
Use ask_user as a decision, research, and requirements gate before ambiguous or high-stakes choices.
Install
npx vskill@latest install eko24ive/pi-ask/ask-userSKILL.md
Ask User decision/research gate
Use this skill to force explicit user alignment before consequential decisions, preference-sensitive planning, research scoping, or requirements gathering.
This skill is for decision control, research scoping, requirements gathering, and preference-sensitive planning, not general chat.
Trigger
Classify the next step as one of:
high_stakesambiguousbothclear
Use ask_user when the next step is ambiguous, preference-sensitive, or high-stakes and the user has not already made the decision explicitly.
Use ask_user for any domain where user input changes the plan, recommendation, research direction, output format, criteria, constraints, or next action.
Also use ask_user when the user asks to gather requirements, interview them, ask questions, scope research, plan work, compare options, or answer a set of open product/design/architecture/research questions. Do not respond with a plain-text questionnaire unless the user explicitly asks for a checklist or written questionnaire.
Treat as high_stakes when the next step changes:
- architecture, schema, API contract, deployment, or security posture
- production-facing behavior in a costly-to-undo way
- large refactors, migrations, or destructive edits
- legal, financial, medical, career, hiring, vendor, purchasing, travel, or other costly-to-reverse decisions
- public-facing claims, sensitive communications, or consequential recommendations
Treat as ambiguous when:
- requirements, goals, constraints, evaluation criteria, or success criteria are missing/conflicting
- multiple valid options exist and the trade-off is preference-sensitive
- research scope, audience, budget, timeline, risk tolerance, or output format is unclear
- you would otherwise make a material assumption
Handshake (required)
- Gather evidence first from code/docs/tools.
- Summarize neutral context (current state, constraints, trade-offs, recommendation).
- Ask one focused
ask_userdecision question, or bundle 2-5 closely related questions when the user is explicitly in requirement-gathering/interview mode. - Restate the user decision and proceed explicitly with it.
- Re-open only for materially new ambiguity.
Question spew prevention
Before sending any assistant response that contains 2+ substantive questions for the user, stop and decide whether those questions should be interactive.
Use ask_user instead of prose when:
- the questions are meant to collect requirements, goals, constraints, preferences, scope, priorities, criteria, or missing context
- answers will materially change the next artifact, recommendation, research direction, plan, implementation, architecture, schema, UX, stack choice, or decision criteria
- the user previously corrected you with phrases like "ask those questions", "ask interactively", or "use ask_user"
Plain-text questions are acceptable only when:
- the user asked for a written checklist/list of open questions
- the questions are rhetorical or purely explanatory
- there is exactly one small factual clarification and an interactive flow would be heavier than needed
If there are too many questions, group them into the smallest coherent ask_user batches and ask the highest-impact batch first.
Question budget and escalation
- Max 1
ask_usercall per decision boundary in normal cases. - Max 2 calls for the same boundary if first answer is unclear/cancelled.
- Never re-ask the same trade-off without new evidence.
Attempt 2 (only if needed) must be narrower and include:
Proceed with recommended optionChoose another optionStop for now
After attempt 2:
- for
high_stakesorboth: stop as blocked until explicit decision - for
ambiguousonly: if user delegates ("your call"), proceed with the most reversible default and state assumptions
ask_user payload quality
- Ask one concrete decision at a time.
- Provide clear, distinct options. Do not add filler options.
- Choose question type from semantics:
singlemeans one answer is expected,multimeans multiple answers could reasonably be selected, andpreviewmeans options need preview-pane detail with non-empty preview text. - Avoid defaulting mechanically; infer from whether options are mutually exclusive, can coexist, or need preview-pane detail.
- Keep option labels short and outcome-oriented.
- Include trade-off descriptions when non-obvious.
- For research/planning, ask about goals, constraints, evaluation criteria, audience, budget, timeline, risk tolerance, and desired output only when they materially affect the result.
- Prefer non-
previewquestions when a free-form answer may be useful, since those include an internalType your ownoption.
Guardrails
- Do not ask before reading available context.
- Do not use for trivial formatting/style micro-decisions.
- Do not continue implementation after unclear high-stakes answers.
Conflict rule
If this skill conflicts with implementation behavior or tests, the project contract wins:
docs/contract.mdtests/*.test.ts- this skill
Security
- Security scanPassed, 95 of 100Pattern checks on the skill's files.
- Model reviewPassed
Quality evaluation
- Task evaluationNot runNo evaluation yet. Run one in Skill Studio.
Source
- SKILL.md in the repositoryCheckingskills/ask-user/SKILL.md
Popularity
- Repository stars
- 52
- Repository forks
- 22
- 7-day trend score
- 20
Stars and forks are for the whole GitHub repository, not this skill alone. Not refreshed yet.
Works with
Any agent vskill installs to: 56 targets in all. These 39 have a page on this site.
- Claude Code
- Cursor
- GitHub Copilot
- Windsurf
- Codex
- Gemini CLI
- Cline
- Amp
- Roo Code
- Goose
- Continue
- Kilo Code
- Junie
- Trae
- OpenHands
- Qwen Code
- AI Agent
- Tabnine Chat
- Sourcegraph Cody
- Amazon Q
- Firebase Genkit
- Sweep
- Devin
- Phind
- Mentat
- Claude Desktop
- Aider
- GPT Pilot
- Plandex
- bolt.new
- v0
- Replit Agent
- Anse
- TypingMind
- BetterChatGPT
- LibreChat
- Warp AI
- Pieces
- Fig AI
Embed badge
[](https://verified-skill.com/skills/eko24ive/pi-ask/ask-user)