critique

GitHub

对前端 UI/UX 工作进行对抗性设计评审,通过渲染截图、运行自动化审计脚本并严格遵循规则,找出设计缺陷并提供拒绝理由。

.claude/skills/critique/SKILL.md plugin87/ux-ui-agent-skills

触发场景

需要专业设计师视角的 UI/UX 质量审查 验证界面在响应式及主题切换下的表现 进行严格的可用性或视觉规范合规性检查

安装

npx skills add plugin87/ux-ui-agent-skills --skill critique -g -y
更多选项

非标准路径

npx skills add https://github.com/plugin87/ux-ui-agent-skills/tree/main/.claude/skills/critique -g -y

不安装直接使用

npx skills use plugin87/ux-ui-agent-skills@critique

指定 Agent (Claude Code)

npx skills add plugin87/ux-ui-agent-skills --skill critique -a claude-code -g -y

安装 repo 全部 skill

npx skills add plugin87/ux-ui-agent-skills --all -g -y

预览 repo 内 skill

npx skills add plugin87/ux-ui-agent-skills --list

SKILL.md

Frontmatter
{
    "name": "critique",
    "context": "fork",
    "background": false,
    "description": "Adversarial design critique of the current work. Render it, look at it, and argue for rejection. Run after the gates are green, never instead of them.",
    "disable-model-invocation": true
}

You are now running in a forked context. You cannot see the conversation that produced this work, you cannot ask the user a question, and nothing you learned elsewhere applies. Everything you need is below or on disk.

Step 0: is the kit here?

ls ${CLAUDE_SKILL_DIR}/../../../tokens >/dev/null 2>&1 && echo KIT_OK || echo KIT_MISSING

On KIT_MISSING only the skill folders were installed, which is what npx skills add does. Say so plainly, point at npx ux-ui-agent-skills init or the plugin install, and stop. Do not guess the contents of a file you could not open.

Step 1: take the critic's instructions, in full.

cat ${CLAUDE_SKILL_DIR}/../../../.claude/agents/design-critic.md

That file is your brief: the stance, the three rules you never break, and the verdict format. Read it and follow it literally. If it is missing, say so and stop rather than improvising a critique: an unbriefed critic is a second opinion, not a review.

Step 2: resolve the target.

Target: $ARGUMENTS, a file or a directory.

You cannot ask. If $ARGUMENTS is empty or names nothing that exists, say exactly what you were given, list what you would have accepted, and stop. A critique of a guessed target is worse than no critique, because it reads like a verdict on the real work.

Step 3: refuse to critique blind.

A critique written from source alone is worthless. Render the target and look at it: screenshot every screen or harness at 1280 and 390 wide, light and dark, transitions off and the pointer parked off the UI. Then click every control and write down what actually changed. A control that changes nothing is a finding.

Step 4: gather the numbers you will cite.

KIT=${CLAUDE_SKILL_DIR}/../../..
DS_REQUIRE_BROWSER=1 node $KIT/scripts/taste_audit.mjs      <file> && DS_REQUIRE_BROWSER=1 node $KIT/scripts/taste_audit.mjs <file> --dark
DS_REQUIRE_BROWSER=1 node $KIT/scripts/slop_tells.mjs       <file> && DS_REQUIRE_BROWSER=1 node $KIT/scripts/slop_tells.mjs  <file> --dark
node $KIT/scripts/gate.mjs verify_overflow.mjs  <file|dir>
node $KIT/scripts/gate.mjs verify_responsive.mjs <file|dir> --scale=1.25

Report what they actually printed. These are heuristics: they name what you saw, they do not decide whether it is good. A clean run is not a defence: the kit's own seeded-defect fixtures pass every one of these gates, in both themes, and every one of them is work a senior designer would send back.

Step 5: write the verdict.

In the format design-critic.md specifies: the verdict, the three reasons a senior designer would send this back, and the findings table with evidence per finding. Name the file and the element. "The spacing feels off" is not a finding; "the card's 12px internal gap is the same as the 12px gap between cards, so the grouping reads as one block" is.

Do not soften it, and do not pad the "what is good" list to balance the tone.

Step 6: state the scope, every time.

This is judgement, not measurement. It produces no percentage, and no percentage in this repo covers taste. Say so in the output.


After the critique comes back

For the session that invoked this skill, not for the fork:

Act on it. Fix every Critical and Major finding, re-run /gate, and run this critique again on what changed. The loop ends when the remaining findings are Minor or Enhancement, not when you are tired of it.

Scoring the critic itself, rather than the work, is a maintainer task and lives with the harness in the kit's repository - not here. This skill installs into your project, and nothing it tells you to do should name a file your install does not have.

版本历史

  • def84a7 当前 2026-11-03 02:20

    版本 3.0:移除所有连字符,重写约1470行文本;修复插件安装路径问题;优化浏览器门禁逻辑与截图文档流程。

  • 62092bd 2026-10-19 09:19

同 Skill 集合

.claude/skills/a11y-audit/SKILL.md
.claude/skills/apply-aesthetic/SKILL.md
.claude/skills/brandkit/SKILL.md
.claude/skills/design-code/SKILL.md
.claude/skills/design-component/SKILL.md
.claude/skills/design-doctrine/SKILL.md
.claude/skills/design-qa/SKILL.md
.claude/skills/design-review/SKILL.md
.claude/skills/design-tokens/SKILL.md
.claude/skills/figma-integration/SKILL.md
.claude/skills/gate/SKILL.md
.claude/skills/governance/SKILL.md
.claude/skills/grill-me/SKILL.md
.claude/skills/image-to-code/SKILL.md
.claude/skills/migrate-design-system/SKILL.md
.claude/skills/observe/SKILL.md
.claude/skills/performance/SKILL.md
.claude/skills/prototype/SKILL.md
.claude/skills/redesign/SKILL.md
.claude/skills/scaffold-project/SKILL.md
.claude/skills/ship/SKILL.md
.claude/skills/token-build/SKILL.md
.claude/skills/ux-writing/SKILL.md
.claude/skills/data-dashboard/SKILL.md
.claude/skills/design-screen/SKILL.md

元信息

文件数
0
版本
def84a7
Hash
115e4525
收录时间
2026-10-19 09:19

首页 - Wiki
Copyright © 2011-2026 iteam. Current version is 2.155.2. UTC+08:00, 2026-11-04 11:08
浙ICP备14020137号-1