关于 heuristic
heuristic 是 ui-craft 的子技能,依据 Nielsen 启发式原则和六项设计法则评估界面。它输出带具体问题、影响排序和主观 UsabilityScore 的评审结果。
主要功能
- 01Nielsen 启发式评分
- 02六项设计法则审查
- 03Persona 演练
- 04按影响排序问题
- 05UsabilityScore 计算
适用场景
- 01发布前评审界面
- 02确定易用性修复优先级
- 03按指定 Persona 评估界面
安装
复制下面的命令,在终端中运行。
npx skills add https:/ / github.com/ educlopez/ ui-craft --skill heuristic安装后在 Claude Code 中输入/heuristic确认已加载。
详细介绍
上下文: 此子技能是更广泛的 ui-craft 技能中的一个视角。如果也安装了 ui-craft 技能,请先阅读其 SKILL.md,了解 Discovery、Anti-Slop 和 Craft Test,然后再应用以下特定视角。
根据 Nielsen 的 10 项启发式原则和 6 项设计定律,对 $ARGUMENTS 处的 UI 进行评分。加载 ui-craft 技能。
步骤 1 — 加载方法论。 阅读 references/heuristics.md,了解完整评分标准、评分定义、设计定律详情和所需输出格式。不要另创格式或量表。
步骤 2 — 逐项检查 Nielsen 的 10 项启发式原则。 按评分标准逐项打 1–5 分:
- 1 阻碍用户 · 2 严重阻碍 · 3 可用但令人困惑 · 4 可用,仅需微调 · 5 同类最佳
对每项启发式原则,都要写出具体发现——引用文本、统计元素数量、指出失效的流程。含糊的发现会被拒绝。
步骤 3 — 审核 6 项设计定律。 对每项给出 PASS / FAIL,并附具体细节:
- Fitts's Law — 触控目标尺寸、CTA 位置
- Hick's Law — 选项密度、导航和选择器尺寸
- Doherty Threshold — 感知延迟、乐观 UI
- Cleveland-McGill — 图表编码选择
- Miller's Law — 导航深度、表单分区数量
- Tesler's Law — 复杂性所在的位置
步骤 4 — Persona 演练(若存在 --persona=)。 如果参数中包含 --persona=<name>,加载 references/personas.md 并运行匹配的演练检查清单。支持的值:priya、jordan、adaeze、kwame、margo、all。以 | Checklist item | Pass/Fail | Finding | Impact | 表格输出演练结果。没有此标志则跳过此步骤。
步骤 5 — 按影响标签排列发现项。 影响顺序:blocks-conversion > adds-friction > reduces-trust > minor-polish。排名列表最多包含 5 项;除非没有更高影响的发现,否则删去所有 minor-polish 项。
步骤 6 — 计算 UsabilityScore。 按 references/heuristics.md 中的 UsabilityScore 公式,将评分卡换算为 0–100 分及等级:heuristic_base = round(((mean(nielsen_scores) − 1) / 4) × 100),然后减去 5 × (failed design laws),并限制在 [0,100] 范围内。等级采用与 UICraftScore 相同的 A/B/C/D/F 标准。始终标注为 (judged)——它不是确定性评分,绝不能作为 CI 的门禁。如果参数中包含 --json,还要输出机器可读代码块。如果用户要求完整评估,则通过 node scripts/eval.mjs <path> --json 或 score_ui MCP 工具获取确定性的 UICraftScore,并将两者并列展示,绝不可取平均值。
步骤 7 — 输出。 使用 references/heuristics.md 中的精确评分卡格式:
## Heuristic Scorecard表格## Design Law Audit表格## Persona Walkthrough表格(仅在传入--persona=时)## Top findings (ranked by impact)— 编号列表,3–5 项## UsabilityScore区块 — 0–100 分、等级及各组成部分明细
旋钮意识: 不受旋钮影响。可用性不是旋钮——无论 CRAFT_LEVEL 是 3 还是 9,2 分就是 2 分。不要根据 CRAFT_LEVEL 降低评分。
输出约定:
- 此命令生成的是评审报告,不是代码。除非用户在后续明确提出要求,否则不得进行任何修改。
- 评分卡必须是机器可解析的 Markdown。PM 可以将其粘贴到任意问题跟踪工具中,逐行创建工单。在任何前言中都应如此说明。
- 不要写“第一印象”段落,不要模棱两可,也不要堆砌赞美。只输出表格和排名列表。
不要编辑代码。这是一份评分评审报告。
下一步: 修复这些发现,然后运行 /finalize——此评分卡将作为受门禁控制的发布流程(第 3 阶段)的输入。