heuristic
Compare original and translation side by side
🇺🇸
Original
English🇨🇳
Translation
Chinese<!-- HARNESS MIRROR — do not edit here. Canonical source: skills/ or commands/. After editing source, copy into cli/assets/<harness>/ and repo-root harness mirrors. -->
Context: this sub-skill is one lens of the broader skill. If the skill is also installed, read its SKILL.md first for Discovery + Anti-Slop + Craft Test, then apply the specific lens below.
ui-craftui-craftScore the UI at against Nielsen's 10 + 6 design laws. Load the skill.
$ARGUMENTSui-craftStep 1 — Load the methodology. Read for the full rubric, scoring definitions, design law details, and the required output format. Do NOT invent a new format or a new scale.
references/heuristics.mdStep 2 — Walk Nielsen's 10 heuristics. Score each 1-5 per the rubric:
- 1 blocks users · 2 severe friction · 3 works but confusing · 4 works, minor polish · 5 best-in-class
For every heuristic, write a concrete finding — quote text, count elements, name the broken flow. Vague findings are rejected.
Step 3 — Audit the 6 design laws. PASS / FAIL each with a specific detail:
- Fitts's Law — touch target sizing, CTA placement
- Hick's Law — choice density, nav + select sizing
- Doherty Threshold — perceived latency, optimistic UI
- Cleveland-McGill — chart encoding choice
- Miller's Law — nav depth, form section counts
- Tesler's Law — where complexity lives
Step 4 — Persona walkthrough (if present). If the args include , load and run the matching walkthrough checklist. Supported: , , , , , . Output the walkthrough as a table. Without the flag, skip this step.
--persona=--persona=<name>references/personas.mdpriyajordanadaezekwamemargoall| Checklist item | Pass/Fail | Finding | Impact |Step 5 — Rank findings by impact tag. Impact order: . Include at most 5 findings in the ranked list; cut anything at unless there are no higher-impact findings.
blocks-conversion > adds-friction > reduces-trust > minor-polishminor-polishStep 6 — Compute the UsabilityScore. Roll the scorecard into a 0-100 number + grade per the UsabilityScore formula in : , minus , clamped [0,100]. Same A/B/C/D/F bands as UICraftScore. Always label it — it is not deterministic and must never gate CI. If the args include , also emit the machine-readable block. If the user asks for the full picture, build the Extended quality report by fetching the deterministic UICraftScore ( or the MCP tool) and placing both side by side — never average them.
references/heuristics.mdheuristic_base = round(((mean(nielsen_scores) − 1) / 4) × 100)5 × (failed design laws)(judged)--jsonnode scripts/eval.mjs <path> --jsonscore_uiStep 7 — Output. Use the exact scorecard format in :
references/heuristics.md- table
## Heuristic Scorecard - table
## Design Law Audit - table (only if
## Persona Walkthroughwas passed)--persona= - — numbered list, 3-5 items
## Top findings (ranked by impact) - block — the 0-100 score + grade + component breakdown
## UsabilityScore
Knob awareness: knob-agnostic. Usability is not a knob — a 2 is a 2 whether is 3 or 9. Do not soften scores based on .
CRAFT_LEVELCRAFT_LEVELOutput contract:
- This command produces a critique artifact, not code. No edits unless the user explicitly asks in a follow-up.
- The scorecard is machine-parseable markdown. A PM can paste it into any issue tracker and file tickets row-by-row. Frame it that way in any preamble.
- No "First Impressions" paragraph, no hedging, no praise padding. Tables + ranked list only.
Do NOT edit code. This is a scored critique.
Next step: Fix the findings, then — the scorecard is the input to a gated ship (rung 3).
/finalize<!-- HARNESS MIRROR — 请勿在此编辑。官方源文件路径:skills/ 或 commands/。编辑源文件后,复制到 cli/assets/<harness>/ 以及仓库根目录的 harness 镜像目录中。 -->
背景: 此子技能是更宽泛的技能的一个分析维度。如果同时安装了技能,请先阅读其SKILL.md中的Discovery、Anti-Slop和Craft Test相关内容,再应用以下特定分析维度。
ui-craftui-craft依据尼尔森10+6设计法则对指定的UI进行评分。加载技能。
$ARGUMENTSui-craft步骤1 — 加载方法论。 阅读获取完整评分规则、评分定义、设计法则详情以及要求的输出格式。请勿发明新的格式或评分尺度。
references/heuristics.md步骤2 — 梳理尼尔森10项启发式原则。 按照评分规则为每项打1-5分:
- 1 阻碍用户操作 · 2 严重阻碍 · 3 可用但易混淆 · 4 可用,需小幅优化 · 5 业界领先
针对每一项启发式原则,撰写具体的发现——引用文本、统计元素数量、指出有问题的流程。模糊的发现不予通过。
步骤3 — 审核6项设计定律。 每项判定为PASS / FAIL,并附上具体细节:
- 菲茨定律 — 触摸目标尺寸、CTA位置
- 希克定律 — 选择密度、导航与选择器尺寸
- 多尔蒂阈值 — 感知延迟、乐观UI
- 克利夫兰-麦吉尔法则 — 图表编码选择
- 米勒定律 — 导航深度、表单分区数量
- 泰斯勒定律 — 复杂度的承载位置
步骤4 — 用户角色走查(如果存在参数)。 如果参数中包含,加载并执行对应的走查清单。支持的角色:、、、、、。将走查结果输出为格式的表格。没有该参数则跳过此步骤。
--persona=--persona=<name>references/personas.mdpriyajordanadaezekwamemargoall| 检查项 | 通过/失败 | 发现 | 影响 |步骤5 — 按影响标签对发现结果排序。 影响优先级顺序:。排序列表中最多包含5项发现;除非没有更高影响的发现,否则剔除所有级别的内容。
blocks-conversion > adds-friction > reduces-trust > minor-polishminor-polish步骤6 — 计算UsabilityScore。 根据中的UsabilityScore公式,将记分卡结果换算为0-100的分数和等级:,再减去,最终分数限制在[0,100]区间内。等级划分与UICraftScore相同,采用A/B/C/D/F五级制。始终为其标注——它不是确定性的,绝不能用于CI门禁。如果参数中包含,还需输出机器可读的代码块。如果用户要求完整视图,通过获取确定性的UICraftScore(使用命令或 MCP工具)生成扩展质量报告,将两个分数并列展示——绝对不要取平均值。
references/heuristics.mdheuristic_base = round(((mean(nielsen_scores) − 1) / 4) × 100)5 × (未通过的设计定律数量)(judged)--jsonnode scripts/eval.mjs <path> --jsonscore_ui步骤7 — 输出。 严格遵循中规定的记分卡格式:
references/heuristics.md- 表格
## 启发式记分卡 - 表格
## 设计定律审核 - 表格(仅当传入
## 用户角色走查参数时展示)--persona= - —— 编号列表,包含3-5项
## 核心发现(按影响排序) - 模块 —— 0-100分分数 + 等级 + 组成明细
## UsabilityScore
旋钮感知: 与旋钮无关。可用性不是可调节的旋钮——无论是3还是9,2分就是2分。请勿根据放宽评分标准。
CRAFT_LEVELCRAFT_LEVEL输出约定:
- 此命令生成的是评估产物,而非代码。除非用户在后续对话中明确要求,否则不要进行任何修改。
- 记分卡是机器可解析的Markdown格式。产品经理可以将其粘贴到任何问题跟踪系统中,逐行创建工单。在任何前言中都要以此为前提进行表述。
- 不要有“第一印象”之类的段落,不要模棱两可,不要堆砌赞美之词。仅包含表格和排序列表。
请勿修改代码。这是一份带评分的评估报告。
下一步: 修复发现的问题,然后执行——记分卡是门禁发布(第3级)的输入。
/finalize