跳到正文
cccskills
免费在 GitHub 公开

ask-questions-if-underspecified

Ask the minimum clarifying questions before implementation when requirements are ambiguous or missing crucial details

中文简介正在准备中。当前显示原文说明。

查看安装方法

包含的文件(10)

  • SKILL.md6.6 KB
  • commands/ask-questions-if-underspecified.md131 B
  • hooks/post-execute.cjs340 B
  • hooks/pre-execute.cjs457 B
  • references/research-requirements.md430 B
  • rules/ask-questions-if-underspecified.md349 B
  • schemas/input.schema.json603 B
  • schemas/output.schema.json275 B
  • scripts/main.cjs571 B
  • templates/implementation-template.md205 B

SKILL.md(原文)

安装前可以查看交给 AI 代理的指令内容。

Ask Questions If Underspecified

<identity> Ask Questions If Underspecified Skill - Ask the minimum clarifying questions before implementation when requirements are ambiguous or missing crucial details </identity> <capabilities> - Identify ambiguous or missing requirements that would block correct implementation - Generate minimum viable clarifying questions with concrete best-guess defaults - Distinguish scope/constraint questions (ask) from implementation detail decisions (decide yourself) - Unblock parallel work by proceeding with stated defaults while awaiting answers </capabilities> <instructions> <execution_process>

Step 1: Assess Underspecification

Identify which aspects are unclear or missing:

  • Scope: What exactly should be included/excluded?
  • Constraints: Performance targets, platform requirements, security rules?
  • Acceptance criteria: How will the user judge success?
  • Priority: Which conflicting options should win?

Do NOT ask about things you can determine by reading existing code and conventions.

Step 2: Triage Questions

Categorize each candidate question:

TypeAsk or Decide?
Scope boundary (what to include)Ask
Non-functional requirement (perf/security target)Ask
Acceptance criteriaAsk
Implementation approachDecide yourself
Code style / namingDecide yourself (follow existing patterns)
Nice-to-have polishDecide yourself (proceed with sensible default)

Step 3: Ask Concisely (Max 3 Questions)

For each blocking question:

  1. State what you assume (best-guess default)
  2. Ask the specific question in one sentence
  3. Offer 2–3 concrete options when applicable

Format:

I'll [proceed with X default assumption]. Quick questions before I start:
1. [Specific question]? (default: [assumption])
2. [Specific question]? (default: [assumption])

</execution_process>

<best_practices>

  1. Provide defaults with every question: Always state your best-guess assumption so the user can simply confirm rather than answer from scratch
  2. Ask about outcomes, not implementation: "Should this support offline use?" not "Should I use IndexedDB or localStorage?"
  3. Read the codebase first: Many apparent ambiguities are resolved by existing patterns — check before asking
  4. Batch all questions in one message: Never ask one question, wait for answer, then ask another

</best_practices> </instructions>

<examples> <usage_example> **Example — Underspecified feature request:**

User: "Add a search feature to the dashboard"

Good response:

I'll implement client-side search with debouncing and case-insensitive matching. Quick questions before I start:
1. Should search cover all columns or just the name/title column? (default: name/title only)
2. Should results filter in place or open in a new panel? (default: filter in place)

Bad response:

Before I start, I need to know:
1. What search algorithm should I use?
2. Should it be case sensitive?
3. What debounce delay?
4. Should I use a library?
5. How many results to show?

</usage_example> </examples>

Iron Laws

  1. NEVER ask more than 3 questions at once — more than 3 questions causes decision paralysis; triage ruthlessly and decide the rest yourself.
  2. ALWAYS provide a best-guess default alongside every question — a question without a default forces the user to think from scratch; a question with a default lets them confirm in one word.
  3. NEVER ask about implementation details you can decide yourself — algorithm choice, code structure, naming conventions, and library selection are your decisions, not the user's.
  4. NEVER block on nice-to-have requirements — identify what is truly blocking vs. what can be decided with a sensible default; proceed with the default and note your assumption.
  5. ALWAYS read existing code before asking — check existing patterns, conventions, and related code first; most apparent ambiguities are resolved by looking at what already exists.

Anti-Patterns

Anti-PatternWhy It FailsCorrect Approach
Asking 5+ questions before startingParalyzes user; feels like interrogationTriage to max 3 blocking questions; decide the rest
Asking about implementation approachThat is the agent's job, not the user'sAsk about scope/constraints/acceptance criteria only
Questions without defaultsUser must think from scratch; slower feedback loopAlways state: "default: X — correct?"
Sequential questioning (one at a time)Creates a slow back-and-forth waterfallBatch all questions into one message
Asking things visible in the codebaseShows insufficient research effortRead existing conventions before asking

Memory Protocol (MANDATORY)

Before starting:

cat .claude/context/memory/learnings.md

After completing:

  • New pattern -> .claude/context/memory/learnings.md
  • Issue found -> .claude/context/memory/issues.md
  • Decision made -> .claude/context/memory/decisions.md

ASSUME INTERRUPTION: Your context may reset. If it's not in memory, it didn't happen.

评价

还没有评价。欢迎分享你的使用感受。

评论

无需登录即可发表。欢迎分享使用感受、提问,或说明在哪些环境下无法运行。

还没有评论。来写第一条吧。

提交后会立即公开。请勿填写邮箱、电话等个人信息。URL 最多 2 个。

0 / 1000 字

此表单受 reCAPTCHA 保护,适用 Google 的隐私权政策和服务条款。

同一仓库的技能

Ensure accessibility in UI components including semantic HTML, ARIA attributes, keyboard navigation, and WCAG 2.2 AA compliance.

中文简介正在准备中。当前显示原文说明。

oimiragieo/agent-studio422026年7月14日 更新

Use when you want to improve response quality through meta-cognitive reasoning. Applies 15+ reasoning methods to reconsider and refine initial outputs.

中文简介正在准备中。当前显示原文说明。

oimiragieo/agent-studio422026年7月14日 更新

N-round opposing-stance debates for trade-off analysis. Assigns pro/con roles to agents, runs structured debate rounds with quality scoring, and produces a moderator synthesis with confidence-rated recommendation. Generalizable to architecture, technology, security, and design decisions.

中文简介正在准备中。当前显示原文说明。

oimiragieo/agent-studio422026年7月14日 更新

Force adversarial code review stance that eliminates confirmation bias — reviewer must find issues or re-analyze

中文简介正在准备中。当前显示原文说明。

oimiragieo/agent-studio422026年7月14日 更新

Creates specialized AI agents on-demand when no existing agent matches a request. Use when the Router cannot find a suitable agent for a task. Enables self-evolution by generating persistent agents.

中文简介正在准备中。当前显示原文说明。

oimiragieo/agent-studio422026年7月14日 更新

LLM-as-judge evaluation framework with 5-dimension rubric (accuracy, groundedness, coherence, completeness, helpfulness) for scoring AI-generated content quality with weighted composite scores and evidence citations

中文简介正在准备中。当前显示原文说明。

oimiragieo/agent-studio422026年7月14日 更新

查看 oimiragieo 的全部技能

报告此技能的问题