Newshot
Account

Show HN:Motion Debugger,一款针对AI生成劣质内容的浏览器评审工具

AI summary

开发者发布 Motion Debugger,一款在浏览器中运行的评审工具,用于指出 AI 生成内容中的问题。该工具以 Show HN 形式公开,具体功能与实现细节原文未作说明。

Translation(model translation, not the source's own text)

用你的编码 agent 把 vibe-coded 网站升级到高级质感。先动效,再品味,在真实浏览器中检查。

安装 · 升级网站 · 命令 · 评审器 · 演示 · FAQ · 贡献

左:agent 根据一段话的 brief 构建的网站。右:同一个网站,由一个新的 agent(Opus 5.5)对其运行 premium-motion upgrade 之后的样子。没有任何手工编辑。全部四项升级。

一个 vibe-coded 建筑工作室网站(左)与同网站运行一次 premium-motion 升级后(右)
一个 vibe-coded 建筑工作室网站(左)与同网站运行一次 premium-motion 升级后(右)

每个 agent 构建的落地页看起来都一样:接近黑色配一个霓虹强调色、标题里带一个斜体词、胶囊按钮、bento 网格、logo 跑马灯,而且每个区块都以同样的方式淡入上移。它并不丑。它只是告诉所有人这是模型做的,而且在发布前没人看过它。

Motion Debugger 给你的 agent 两样它没有的东西:

  • 🎬 一套重建外观并保留事实的工作流。premium-motion skill 运行一条升级流水线:它记录基线,保留每一个事实、链接和表单,从产品自身的世界中选取一个方向,然后围绕编排好的动效和一个电影感滚动场景重建页面。它使用经过测试的 GSAP、ScrollTrigger、SplitText 和 Lenis 技术栈,或在 React 项目中使用 Motion。
  • 👀 眼睛。motion-debugger critique 在 Chromium 中打开本地页面,记录入场,滚动整个页面,悬停每个控件,检查手机布局和 reduced motion,并把按优先级排序的修复项以及真实帧的截图交给 agent。agent 查看、修复、再看,然后与基线对比。

安装

下面每一行都是一条命令。它们适用于任何模型和任何编码 agent,且同样的命令可在 macOS、Linux 和 Windows(bash、zsh 或 PowerShell)上运行。CLI 和 npx 行需要 Node.js 22 或更高版本;git 行只需要 git。

完整安装(评审器、skill 和 agent 配置)。先安装,然后在你的项目中运行 init:


        npm install -g https://github.com/ShadowKingYT444/motion-debugger/releases/latest/download/motion-debugger.tgz
      

        motion-debugger init
      

init 会检测你的 agent(Claude Code、Cursor、Codex、VS Code、OpenCode),安装 skill,提供下载匹配 Chromium 的选项,并在要求你输入 yes 之前展示它将更改的每个文件。没有这一步不会写入任何内容,你现有的设置会被保留。

只装 skill,或只装评审器:

你想要一行命令
为你使用的 agent 装 skillnpx skills add ShadowKingYT444/motion-debugger --skill premium-motion -a cursor
把 skill 装到许多 agent 都会读取的共享 .agents/skills 文件夹npx skills add ShadowKingYT444/motion-debugger --skill premium-motion -a universal -y
不装 Node 装 skill(bash、zsh)mkdir -p .agents/skills && git clone --depth 1 https://github.com/ShadowKingYT444/motion-debugger.git /tmp/motion-debugger && cp -r /tmp/motion-debugger/plugin/motion-debugger/skills/premium-motion .agents/skills/
不装 Node 装 skill(PowerShell)git clone --depth 1 https://github.com/ShadowKingYT444/motion-debugger.git $env:TEMP\motion-debugger; $null = New-Item -ItemType Directory -Force .agents\skills; Copy-Item -Recurse $env:TEMP\motion-debugger\plugin\motion-debugger\skills\premium-motion .agents\skills\
什么都不装,直接用评审器npx -y -p https://github.com/ShadowKingYT444/motion-debugger/releases/latest/download/motion-debugger.tgz motion-debugger critique http://localhost:3000
为评审器准备一个浏览器motion-debugger setup --browser

对于 -a,使用你的 agent 的名称:claude-code、cursor、codex、gemini-cli、github-copilot、windsurf、cline、roo、zed、opencode、goose、kiro-cli、amp、junie 以及另外约 70 个(skills CLI)。无法运行 shell 命令的 agent 仍然可以遵循该 skill;它只是无法查看页面。

文章标题:Show HN: Motion Debugger——一个针对 AI 粗制滥造作品的浏览器批评器

如果你下载了 Playwright 的 Chromium,批评器会优先使用它,其次是 CHROMIUM_PATH,然后是已安装的 Chrome、Chromium 或 Edge(位于 macOS、Windows 或 Linux 上的常规位置)。CI 在三个平台上安装打包好的 CLI,并对一个真实页面进行批评。


        git clone https://github.com/ShadowKingYT444/motion-debugger.git
cd motion-debugger && npm ci && npm run build && npm install -g .
motion-debugger setup --browser    # version-matched Chromium
motion-debugger doctor
      

更多选项见 client setup。

升级一个站点

启动你的开发服务器,然后告诉你的 agent:

对这个站点使用 premium-motion upgrade。

agent 会做什么,来自 commands/upgrade.md:

  • 基线。按现状批评页面,并列出它的 AI 痕迹。
  • 盘点。写下要保留的内容(事实、数字、CTA、表单、你的 logo 和颜色)以及要替换的内容。
  • 方向。编写 PREMIUM.md:受众、事实、产品的世界、字体、颜色、图像,以及一种动效个性。
  • 首屏。单独重建 hero,并反复批评直到它站得住。
  • 重建。逐区块推进,每个区块都从其内容出发进行布局,而不是 eyebrow、bento 和 marquee。
  • 标志性场景。构建一个滚动驱动的场景,讲述产品的故事,并且在每个滚动位置都是完整的。
  • 打磨与加固。修复所有列出的缺陷,然后是手机布局、减少动效、无障碍和滚动性能。
  • 验证。再次批评,并与基线并排比较。

窄目标也可以:升级 pricing 区块、为 how-it-works 区块做 signature、打磨 footer。

命令

命令作用
upgrade [target]上述完整流水线:从 vibe-coded 到 premium,前后均验证
audit [target]记录页面并排列所有 AI 痕迹和动效或完成度缺陷。不做编辑
direction编写 PREMIUM.md,即其他所有命令读取的设计上下文
motion [target]以同一种个性编排 hero、reveals、hover、press 和 transitions
signature [target]设计并构建一个电影感滚动场景
typeset [target]用具有个性、尺度和完成度的系统替换默认字体
palette [target]从产品的世界出发处理颜色、光线和深度,并带有章节节奏
imagery [target]不使用 stock 照片的丰富视觉:产品渲染、生成式场景、实时产品 UI
compose [target]布局、层级和节奏:每帧一个主导元素
polish [target]完成度处理:批评器列出的所有内容、每个状态、每个边缘情况
harden [target]手机布局、减少动效、无障碍和滚动性能

agent 从 skill 中复制的动效代码会从其 Markdown 中提取,并在 CI 中以桌面、手机和减少动效尺寸在 Chromium 中运行,因此文档中的代码片段就是经过测试的代码片段。

批评器

你可以自己对任何本地内容运行它:


        motion-debugger critique http://localhost:3000   # your dev server (Next.js, Vite, …)
motion-debugger critique ./site                  # a folder with index.html, or one .html file
      

它会打印发现的问题及修复方法,将 contact sheets 写入 .motion-critique/,并说明自上次运行以来发生了什么变化:已修复、新增和剩余。

在真实页面裁剪图上标出的完成度缺陷
在真实页面裁剪图上标出的完成度缺陷
发现项含义
🎞️动效检查无入场动效、入场动效无错峰、线性缓动、动效在 hero 区域之后停止、悬停无反馈、焦点不可见、不支持 reduced-motion、滚动卡顿、布局偏移
🚫stuck-invisible内容始终不出现,即使完整滚动页面后仍然如此(最常见的 agent 缺陷)
🧱text-collision、copy-under-sticky文案覆盖在其他文案之上,或滚动时钻到 sticky 头部下方
🕳️hollow-containers、dead-space卡片内部存在空白带;页面大部分区域为空白
📐near-miss-alignment、edge-crowding元素偏离其列几个像素;文案紧贴屏幕边缘
📱mobile-overflow、tap targets、clipped text手机布局实际上只是被压缩的桌面布局
🤖default-template首屏与九项默认 AI 落地页特征中的多少项重合

发现项来自真实的 Chromium 帧,绝不来自阅读源码。每一项检查及其局限。

四项升级

四个落地页由 Sonnet 5.5 根据一段式 brief 构建,未使用插件,作为下方 A/B 研究的对照组。一个全新的 Opus 5.5 agent 对每个页面运行 upgrade,使用相同的 prompt。这些是单次运行,用于展示工作流,并非盲测对比,且无人编辑结果。prompt、skill 版本和每一份录屏都在 demos/upgrades.json 中。

评审分数 之前 → 之后阻断级与重要发现模板特征
Ledgerline:支付 API30 → 1002 → 06 → 1 / 9
Atelier Norr:建筑工作室8 → 984 → 07 → 0 / 9
Halo:无线音箱发布38 → 1003 → 05 → 0 / 9
Drift:AI 睡眠教练24 → 1003 → 08 → 0 / 9

每个站点在 agent 完成后运行一次评审。agent 是针对此评审器进行工作的,因此请将分数理解为“它能看到的缺陷已消失”,而非品味度量。请评判影片。

Atelier Norr:建筑工作室 · 影片

Atelier Norr 升级前后
Atelier Norr 升级前后

Halo:无线音箱发布 · 影片

Halo 升级前后
Halo 升级前后

Drift:AI 睡眠教练 · 影片

Drift 升级前后
Drift 升级前后

Ledgerline:支付 API · 影片

Ledgerline 升级前后
Ledgerline 升级前后

每个 upgraded/ 文件夹还包含 agent 编写的 PREMIUM.md 方向文件。可从 demos/ 实时打开任意站点。

它有效吗?盲测研究

与升级分开,我们进行了一项从零构建的盲测 A/B 测试:相同的 brief、相同的构建模型(Sonnet 5.5),每个站点一个全新 agent。一个 agent 在空项目中工作;另一个拥有 skill 和评审器。

评审分数与测量指标,无插件 vs 有插件
评审分数与测量指标,无插件 vs 有插件

在最新一批(四对匹配,插件 v4)中,盲测 Opus 5.5 评审在全部四对中都偏好插件生成的站点(8/8 判定)。独特性从 6.4 升至 8.8,整体高级感从 6.9 升至 8.0。对照组站点平均共享 6.5/9 项默认模板特征;插件站点则一项都不共享。视觉设计变化最小(7.8 至 8.1)。

四对样本太少,不足以达到统计显著性。更早的 16 对研究在整体高级感(+1.0,p = 0.005)和动效质量(+1.34,p = 0.0004)上达到了显著性,但未发现视觉设计方面的提升,后续版本已针对此重建。该研究早于升级工作流。方法、每一项判定及有效性威胁。

FAQ

Show HN: Motion Debugger —— 针对 AI 粗制滥造内容的浏览器批评器

它与 Impeccable 或其他设计技能有何不同?该技能的形态(一个技能、一套命令词汇、一个上下文文件以及每个命令对应的 playbook)借鉴自 Impeccable,在此致谢。区别在于关注点和循环。动效是核心:经过测试的 GSAP 与 Lenis 技术栈、标志性滚动场景、编排以及 reduced-motion 处理。并且每条命令最后都会在真实浏览器中录制页面:批评器测量实际发生移动的内容,并在捕获的帧中发现完成度缺陷,因此 agent 依据证据工作,而不是阅读它自己写的 CSS。

它会改变我的内容吗?upgrade 会保留产品的事实、数字、链接、表单以及任何你已经拥有的东西(logo、品牌色、字体、照片)。它替换的是通用的外观。如果你只想要一份报告,请先运行 audit。

它能配合我的技术栈使用吗?纯 HTML、React、Next.js、Vite、Motion(framer-motion)和 GSAP。该技能使用你已有的动画库,绝不会再添加第二个。

它需要 Claude 或某个特定模型吗?不需要。这里没有任何东西调用模型 API:批评器是一个普通的 CLI,输出 Markdown 或 --json,而该技能是一个用 Markdown 编写的标准 Agent Skill。它可以与你 agent 运行的任何模型配合使用。演示是用 Claude 模型制作的,因为我们手头只有这些;工作流并不依赖它们。init 会配置 Claude Code、Cursor、Codex、VS Code 和 OpenCode,而 skills CLI 覆盖了约 80 个其他 agent(见 Install)。

它能在我的机器上运行吗?可以,在 macOS、Linux 和 Windows 上,需要 Node.js 22 或更高版本。CI 在三个平台上安装打包好的 CLI,并对一个真实页面进行批评。

会有任何东西离开我的机器吗?不会。批评器只打开无需凭据的本地页面(localhost、127.0.0.1、files),从不导入你的浏览器配置文件,并将录制内容保存在你的项目文件夹中。安全模型。

与你的 agent 配合使用

motion-debugger init 会为你配置这些;以下是它写入的内容。

Agent--clientMCP 配置技能
Claude Codeclaude-code.mcp.json.claude/skills/
Cursorcursor.cursor/mcp.json.cursor/skills/
Codexcodex.codex/config.toml.agents/skills/
VS Code / Copilotvscode.vscode/mcp.json.github/skills/
OpenCode 1.xopencodeopencode.json.opencode/skills/

任何其他 agent(Gemini CLI、Aider、Windsurf、CI 任务):将技能文件夹复制到你的项目中,并将 motion-debugger agents-md --skills-dir <folder> 打印出的块添加到该 agent 的指令文件(AGENTS.md、GEMINI.md、.cursorrules 等)中。

MCP 宿主还会获得 motion_critique,它会将发现的问题和截图作为图像内容返回。客户端设置详情 · 原生插件包。

对于单次交互,MCP 证据工具会录制有界旅程并比较修复:

工具用途
motion_critique批评整个页面:发现的问题、修复方案和 contact sheets
motion_recipe获取可运行的动画模式和集成指导
motion_review通过 actor 观察和原生图像审查过渡
motion_probe尝试中断偏移并保留失败证据
motion_capture以明确的预期录制本地交互
motion_inspect检查某一时刻附近的事件和测量数据
motion_frames从实际录制中提取图像
motion_compare比较等效的前后旅程
motion_list查找已保存的捕获

见 Agent workflow。

贡献

欢迎提交 bug 报告、批评器误报的问题以及新的检查项。浏览 open issues 或在 Discussions 中打招呼。贡献指南。

许可证

The translation is machine-generated and individual terms may be off. Nothing is rewritten or cut; the original is authoritative.

Published by HN AI
This site only summarises and aggregates; copyright stays with the original author. Headlines and summaries follow the source — where they differ, the original wins.
Read the original ↗