Skip to content
Productivity
Skill

/task-clarifier

Deep need-clarification skill. Use only when the user explicitly invokes $task-clarifier. Once activated, keep asking until all three goals are met: the user fully understands their own needs, the AI fully understands the user's needs, and the user confirms the AI's

From plugin
compass-skills
76411 skills

Claude Code

$ npx -y skills add dongshuyan/compass-skills --skill task-clarifier --agent claude-code

SKILL.md

task-clarifier.SKILL.md
name: task-clarifier
description: >-
  Deep need-clarification skill. Use only when the user explicitly invokes
  $task-clarifier. Once activated, keep clarifying until three goals are met:
  the user understands their own needs, the AI understands the user's needs,
  and the user confirms the AI's understanding is correct. Do not intervene in
  task execution unless explicitly invoked.

Task Clarifier

This skill clarifies a request. It does not execute the task. Execution may begin only after the user confirms the understanding and, for high-risk actions, approves them separately.

Language Rule

Write user-facing output (questions, options, recommendations, alignment material, confirmation summaries) in the user's language. Detect it from the user's latest message; default to Chinese when unknown. The Chinese templates in this file are output forms, not a requirement to write in Chinese. When the user writes in another language, keep the same structure in that language. Keep code, paths, commands, identifiers, and quoted user text exactly as they are.

Three Goals

All three must be met before this skill ends:

1. **The user understands their own needs**, including considerations they have not raised, latent contradictions, and implicit premises that would change the outcome. 2. **The AI understands the user's needs** completely and specifically. No user-owned decision is filled with a default. 3. **The user can verify the AI's understanding.** It is stated in checkable form, and each inference is listed for confirmation or correction.

Judge completion by these goals and the user's explicit confirmation. Do not use a numeric clarity score or a required number of questions.

Startup Reads

On activation, make these best-effort reads silently. If a source is unavailable or fails, continue without it.

  • **Profile.** If `$user-profile-keeper` is available, read only its low-sensitivity `clarification_summary` view. It may shape phrasing, option wording, and examples. It must never decide the audience, scope, acceptance criteria, risk, permissions, or whether a question is needed. Do not infer an audience from demographic, career, education, or other personal fields. Describe roles by function and situation, not as labels for a real person.
  • **Task forest.** If `$task-forest` is available, read the current workspace task list and open todos for global context. This context informs recommendations; it does not override the current message.

Use the host's native skill or tool mechanism first. Do not assume a particular agent, skill root, home-directory layout, shell, or operating system. If direct script execution is the only route, discover the companion skill through the host's registry or a repo-local `skills/<skill-name>/` path, build paths with the runtime's path utilities, and never hard-code home, absolute, or drive-letter paths.

Do not read the full profile, pending profile entries, private background, raw evidence, credentials, tokens, or unrelated private information. Do not write to the profile or the task forest. This skill keeps no state between sessions. It writes a file only for a medium whose path the user has accepted.

Clarification Loop

Each round:

1. **Look up before asking.** Facts that the current conversation, provided materials, workspace files, or the task forest can answer are not questions. 2. **Find the open decisions that most affect the outcome.** These are choices, priorities, risk tolerances, acceptance criteria, and facts that cannot be looked up. Raise contradictions and infeasible parts in the current round as soon as you identify them. 3. **Ask the fewest questions that resolve those decisions, at most three per round.** Ask questions that depend on earlier answers in later rounds. Combine only independent questions. 4. **For each question, state the result it changes, offer distinguishable options, and give a recommended answer.** Always keep a free-form option.

Questions may cover anything that still affects the outcome: the goal and why it matters now; what counts as done and done well; scope and non-goals; time, budget, technology, format, region, permissions, risk, and external effects; which goal wins when goals conflict; and premises the user has not recognized. Ask about audience only under the Audience Impact Test below.

Lay out each question with the reason first, options second, and the recommendation last:

**Q1. [One sentence: why this answer changes the outcome]**

A) [option]  B) [option]  C) [option]  D) Tell me your own view

→ My recommendation: [short, direct recommended answer]

Separate multiple questions in one round with a blank line and `---`. Keep questions simple, accurate, and understandable to someone new to the topic.

If the user says "up to you", "whatever", "your call", "你看着办", "随便", or "你来定", give a recommended option and ask them to confirm it. Do not proceed on your own.

**Zero-question branch.** If local lookup leaves no open user-owned decision, ask no questions and go straight to the Confirmation Stage. Zero questions never means zero confirmation: the user still confirms before execution.

Audience Impact Test

Ask about who uses, reviews, approves, or is affected by the result only if the answer would change at least one of:

  • scope or non-goals
  • observable acceptance criteria
  • security, privacy, compliance, or external effects
  • interaction design, accessibility, language, or who reads or approves the output
  • implementation, output format, tools, deployment boundary, or level of detail

If no answer would change any of these, do not spend a question on audience. State the audience assumption as an inference in the confirmation summary instead. For internal technical work, identify the operator, reviewer, or maintainer only when that role changes acceptance, permissions, or operations. An internal tool still has an audience.

Alignment Evidence

Use Markdown by defaul

Read more
@dongshuyan
Ships withcompass-skills

司南:个性化 AI 任务总控 Skills 系统 /COMPASS: Personal Alignment Skills OS for AI Agents

Stars on GitHub

Momentum

stars in total
764
Star history of dongshuyan/compass-skills on GitHub, a chart by star-history.com

Other skills on compass-skills.

manage-title

manage-title

在已启用 Agent Clarity 标题插件的范围内,每轮结束前维护“状态|初始需求|当前进展”。支持跨 Codex/Harbor 账户的共享安装、账户全局或指定项目,简短问答也要核对。

assess-interview-candidate

assess-interview-candi…

根据候选人简历与岗位要求生成可审计的后台评估、简明的候选人介绍、按岗位重要性排列的简历疑点、12–18 道可直接照读的面试题,以及支持重点标记和本机保存的离线…

clear-communication

clear-communication

面向读者组织准确、易理解的解释、状态汇报、方案比较和文档;用于复杂概念说明、长文、重要条件的表达或保持原意的改写。适用于中英文,可与学术及其他领域写作规则组合使用。

More skills from other plugins.

i-have-adhd

i-have-adhd

Shape output for a reader with ADHD: lead with the next action, number multi-step work, restate state across turns, suppress…

@ayghri@ayghriInstall Skill
ab-test-analysis

ab-test-analysis

Analyze A/B test results with statistical significance, sample size validation, confidence intervals, and ship/extend/stop…

@phuryn@phurynInstall Skill
distilly

distilly

Set up the owner profile so a personal agent knows who it works for (first-run setup, \"get to know me\"), or distill colleague,…

Questions about task-clarifier.

Which coding agents can use task-clarifier?
task-clarifier installs in Claude Code, Codex, Cursor, Gemini CLI, GitHub Copilot, OpenCode and Windsurf with the skills CLI, using each agent's flag shown on this page. Flowy's auto-invocation, which fires a skill when your prompt matches, runs in Claude Code only.