AGENT SKILL

ask-user

Use when a workflow needs to present the user with 2-4 explicit choices and wait for their response before proceeding. Trigger on requests or internal decision points such as "present options", "ask before proceeding", "choice gate", "user decision", destructive operation confirmation, ambiguous filing/routing choices, priority triage, or phase gates. This is a reusable pattern for other skills that need a human decision before execution.

License 许可
MIT
最近更新
2026-11-11
Stars
★ 1
Forks
0

01 前言 Front Matter

name
ask-user
version
1.0.0
mutating
false
triggers
[ "present options", "ask before proceeding", "choice gate", "user decision" ]
description
Use when a workflow needs to present the user with 2-4 explicit choices and wait for their response before proceeding. Trigger on requests or internal decision points such as "present options", "ask before proceeding", "choice gate", "user decision", destructive operation confirmation, ambiguous filing/routing choices, priority triage, or phase gates. This is a reusable pattern for other skills that need a human decision before execution.
disable-model-invocation
false

03 SKILL.md 正文

Ask User - Choice Gate Pattern

Contract

  • Present 2-4 options. Do not exceed four.
  • Include an escape hatch such as Skip, Cancel, or None of these.
  • Ask one question per message.
  • Use self-explanatory option labels: action verb plus brief qualifier.
  • Stop the turn immediately after presenting choices.
  • Make no follow-up tool calls and take no preemptive action until the user responds.
  • On the next turn, acknowledge the user's choice briefly, then branch.

What This Is

This is the canonical pattern for gating execution on user input. In an agent workflow, a gate means:

  1. Present the choices as buttons if the current platform supports them, or as numbered options if it does not.
  2. Stop the current turn.
  3. Let the user's response trigger the next turn.
  4. Read the response and branch accordingly.

This is not a traditional async operation. The stop is part of the protocol.

When To Use

  • Ambiguous requests with multiple valid interpretations.
  • Destructive or risky operations such as deletes, overwrites, bulk moves, or irreversible sends.
  • Filing and routing decisions such as where a note, artifact, or source should go.
  • Priority triage when the user should choose what happens first.
  • Workflow phase gates before starting the next import, scan, or enrichment step.
  • Any fork where the wrong default would waste significant work or erode trust.

When Not To Use

  • Clear, unambiguous instructions: just do the work.
  • Low-stakes decisions: pick the best option and mention the assumption.
  • Time-critical operations where waiting costs more than a wrong choice.
  • Cases where the user has already expressed a preference.

How To Present Choices

Use a short question, 1-3 lines of decision context, and numbered options:

[Routing] **How should I handle this?**

One to three lines explaining the decision in plain language.

1. **Merge into existing page** - combine this with the matching knowledge page
2. **Create new page** - keep this as a separate knowledge artifact
3. **Skip** - do not file this now

If the active environment has a native clarification or choice UI, use it only when it preserves the same constraints: 2-4 options, one question, escape hatch, and no execution after the gate is emitted.

Decision Prefixes

Use a compact text prefix to signal the decision type:

Prefix Use for
[Routing] Filing, merge, destination, or ownership choices
[Risk] Destructive, irreversible, security-sensitive, or costly choices
[Priority] Triage and sequencing choices
[Strategy] Creative, analytical, or strategic forks
[Workflow] Process, phase, or import choices
[Security] Credential, permission, privacy, or access choices

Option Labels

Format labels as Action verb + short qualifier.

Good labels:

  • Merge into existing page
  • Create new conversation page
  • Archive first
  • Show list

Avoid:

  • Option 1
  • Click here
  • Long labels that force the user to reread the context.

How To Gate

After presenting choices, stop the turn. Do not:

  • Continue with "while you decide..."
  • Pick a default and proceed.
  • Send follow-up messages before the user responds.
  • Run tools or make assumptions about which option they will pick.

End with a brief waiting sentence if helpful, then stop. The gate only works if the user controls what happens next.

Handling The Response

When the user responds:

  1. Read the selected button, number, or text.
  2. Map common text responses gracefully:
    • the first one, A, or 1 maps to the first option.
    • A word from an option label maps to that option when the match is clear.
    • none, skip, or cancel maps to the escape hatch.
  3. Acknowledge briefly: Got it, going with <choice>.
  4. Execute the chosen branch.
  5. If the response is unclear, ask a new single choice-gate question.

If the user sends an unrelated message, treat it as a new request and drop the pending gate unless the user explicitly returns to it.

Examples

Phase Gate

[Workflow] **Ready for the next import source?**

The people directory is seeded. I can now import contact data, which may create
about 200 additional pages.

1. **Import contacts** - create pages for matched real contacts
2. **Import from export** - use an offline file instead
3. **Skip** - move to the next phase

Filing Decision

[Routing] **Where should this go?**

Conversation notes mention Jane Smith and the Acme deal. Both already have knowledge
pages, so either location could be valid.

1. **Merge into Jane's page** - add this to her timeline
2. **Add to Acme deal page** - treat it as deal context
3. **Create conversation page** - keep the notes standalone
4. **Skip** - do not file this now

Destructive Operation

[Risk] **How should I handle stale cache files?**

There are 847 stale cache files using 2.3 GB. They can be recreated, but that
would take several hours.

1. **Delete files** - free up space now
2. **Archive first** - preserve them before deleting
3. **Keep files** - make no changes
4. **Show list** - review before deciding

Integration With Other Skills

Use this pattern from any knowledge-base skill that needs a decision before it can safely continue, especially:

  • Cold-start import phase gates.
  • Ingestion routing decisions.
  • Entity enrichment merge-vs-create decisions.
  • Knowledge filing location choices.
  • Conversation-note filing choices.
  • Archive scan-vs-ingest gates.

Reference this pattern instead of inventing a new choice format.

Anti-Patterns

  • Continuing the turn after presenting choices.
  • Picking a default after asking.
  • Presenting more than four options.
  • Omitting Skip, Cancel, or another escape hatch.
  • Asking multiple questions in the same gate.
  • Using cryptic labels.
  • Asking about low-stakes decisions.

Output Format

The skill's output is the choice-gate message itself:

[{decision-type}] **{question}**

{1-3 lines of context}

1. **{Option A label}** - {short qualifier}
2. **{Option B label}** - {short qualifier}
3. **{Skip or Cancel}** - {what skipping means}

After emitting this, stop the turn. The user's response triggers the next turn, where the calling skill branches on the chosen option.

04 同仓库更多 Skills

weisberg
weisberg/agile_agentic_analytics

minimal-skill

Minimal shared skill fixture for marketplace renderer and validator examples.

Skill与智能体开发
★ 1
weisberg
weisberg/agile_agentic_analytics

roadmap

Use this skill when the user wants a product roadmap, initiative sequencing, Now/Next/Later plan, quarterly roadmap, release theme map, product strategy-to-roadmap translation, or executive roadmap narrative. Trigger on phrases like "build a roadmap", "roadmap these initiatives", "what should be now next later", "sequence this backlog", "quarterly product roadmap", "theme-based roadmap", or "plan the next two quarters". Do NOT trigger for drafting or reviewing a single PRD (use prd-writer or prd-review), converting a PRD into an agentic PLAN.md (use prd-to-plan), or scoring/ranking a set of options without a time horizon (use prioritization).

产品经理
★ 1
weisberg
weisberg/agile_agentic_analytics

prioritization

Use this skill when the user wants to rank, score, triage, or compare product opportunities, features, PRD requirements, backlog items, roadmap candidates, or initiatives using RICE, impact-effort, confidence, reach, value, effort, risk, or tradeoff analysis. Trigger on phrases like "prioritize these features", "rank this backlog", "RICE score", "impact effort matrix", "what should we build first", "compare these initiatives", or "stack rank product bets". Do NOT trigger for a time-based roadmap (use roadmap), writing or reviewing one PRD (use prd-writer or prd-review), turning a PRD into an agentic plan (use prd-to-plan), or analyzing experiment results (use ab-testing or experimentation skills).

产品经理
★ 1
weisberg
weisberg/agile_agentic_analytics

prd-writer

Use this skill whenever the user wants to write, draft, create, or scaffold a PRD (Product Requirements Document), spec, product brief, one-pager, or "working backwards" PR/FAQ from an idea, rough notes, discovery inputs, or an existing partial draft that needs authoring. Trigger on phrases like "write a PRD", "draft a spec", "product doc for X", "one-pager", "PR/FAQ", "feature brief", or when the user describes a feature/product idea and asks for it to be turned into a written requirements document. Do NOT trigger for critique or approval-readiness review of an existing PRD (use prd-review), engineering design docs, RFCs, ADRs, prioritization, roadmaps, or technical architecture documents. The output of this skill is always a markdown file (or section thereof) that a real product team could ship from.

产品经理Skill与智能体开发
★ 1
weisberg
weisberg/agile_agentic_analytics

prd-to-plan

Use this skill when the user has a PRD (Product Requirements Document), spec, or product brief and wants to turn it into an executable plan for agentic development — a plan that AI coding agents (Claude Code, sub-agents, orchestrators) can actually run. Trigger on phrases like "turn this PRD into a plan", "agentic plan", "execution plan", "task graph", "break this down for Claude Code", "decompose this spec", "build plan", "implementation plan from PRD", "scrum-master plan", or when the user provides a PRD/spec and asks "what's next" or "how do we build this with agents". The output is always a structured `PLAN.md` artifact with phases, tasks, dependencies, validation gates, sub-agent assignments, and context bundles. Do NOT trigger for: writing the PRD itself (use prd-writer), pure engineering design / RFC / ADR (architecture is a separate artifact), or generic project management plans without an agentic execution model.

产品经理Skill与智能体开发
★ 1
weisberg
weisberg/agile_agentic_analytics

prd-review

Use this skill when the user has an existing PRD, product spec, one-pager, or PR/FAQ and wants critique, approval-readiness review, quality-bar scoring, required changes, or a red-team pass. Trigger on phrases like "review this PRD", "critique my product spec", "is this PRD ready", "PRD quality bar", "red-team this requirements doc", "find gaps in this PR/FAQ", or "what would block approval". Do NOT trigger for drafting a new PRD from an idea (use prd-writer), converting an approved PRD into an agentic implementation plan (use prd-to-plan), building a roadmap (use roadmap), or ranking multiple initiatives (use prioritization).

产品经理
★ 1