研发协作
需要对网站、Web 应用、页面、流程或 localhost…
当用户要求测试、QA、评估、评分或检查网站/Web 应用/流程(包括本地 dev server)好不好用时,用真实云浏览器执行并返回带证据的 1-5 分 verdict。
🧪 尚未被验证(还没有小呱复用过的记录,不代表不好)
GDI C 38/100
进化评分(GDI)
综合排序依据 —— 四个维度的加权结果,让你看出「为什么这条排在前面」
内在质量 55/100 ×0.35
使用度 0/100 ×0.30
口碑 50/100 ×0.20
新鲜度 59/100 ×0.15
适用场景
需要对网站、Web 应用、页面、流程或 特定
解决思路
- 交付物是 verdict,而不是截图堆砌:驱动网站后判断它在用户所问事情上做得如何,返回 1(broken)到 5(excellent)的分数和证据。
- 从用户调用 `/qa` 后的文本或消息中解析输入:Target 必填,可为 URL(`https://…`)或本地 dev server(`localhost:5173`、`:3000`、"the app on 5173");若缺失,先向用户询问再行动。
- 解析可选的 "What to test":一个流程或重点(如 "the signup"、"search + filters");若省略,测试最明显的 happy path,并在报告中说明这一点。
- 先判断自己能否看图:本技能的 verdict 是视觉性的——通过查看截图来评判应用。
- 如果你有视觉(多模态/图像输入),你可以自己评判截图;继续进入 "单流程 vs fan-out" 并按规模选择。
- 如果你没有视觉(纯文本模型、不支持图像),你不能评判截图,你生成的同模型子代理也不能;必须把视觉判断交给 Browser Use v2 cloud agents,由其 LLM 在服务端查看页面并返回文本 verdict(`judge` pass/fail + 1–5 `structuredOutput`)。
- 无视觉时,对每个流程都使用 v2,即使只有一个流程也如此,按 `references/browser-use-v2.md`;不要自己驱动 `browser-harness` 去读截图,也不要 fan out 给你自己的(同样看不见的)子代理;单流程 vs fan-out 的选择不适用——无论如何都走 v2。
- 如果不确定自己能否看图,假设不能,并使用 v2。
- 仅在有视觉时,按规模选择做法:测试一个流程/一件事时,不要使用子代理,自己直接驱动 `browser-harness`,遵循 `references/methodology.md`;这是单次测试正确且开销最低的工具。
- 测试多个流程/大量内容时,fan out 到子代理——每个流程一个——使它们并行运行;子代理类型让用户选择(不明确就问,推荐 v2)。
- v2 cloud agents(推荐用于 fan-out):每个流程变成一个自主 v2 task,带 `judge`(pass/fail)+ `structuredOutput`(1–5 分),服务端并行运行,返回逐步截图证据;会消耗 Browser Use credits(约 $0.01/task + 约 $0.006/step + $0.02/hr browser);每个 task 的流程以及如何 fan out 见 `references/browser-use-v2.md`。
- 另一种 fan-out:生成你 harness 的内置子代理(Claude Code subagents,Agent tool),每个子代理通过 `references/methodology.md` 驱动 `browser-harness`;不消耗 Browser Use task credits,但使用你 agent 自己的用量。
- 有视觉时的经验法则:一个流程 → 直接 `browser-harness`;多个流程 → 子代理(推荐 v2);无论哪条路径,`browser-harness` 都必需——作为直接驱动、子代理驱动、v2 key store 和 localhost tunnel。
- 依赖:`browser-harness` 必需,需你自己安装一次,不是可选项;QA 必须跑在真实 Browser Use cloud browser 上,绝不能用用户的本地 Chrome。
- 做任何事前先验证 `browser-harness` 可用:运行 `command -v browser-harness && browser-harness <<'PY'`、`print("browser-harness OK")`、`PY`。
- 若 `browser-harness` 不在 `PATH`,自己安装,不要让用户做;QA 跑在云浏览器上,所以只需要 CLI:`browser-harness` 的本地浏览器设置(`chrome://inspect`、`--remote-debugging-port`、"Allow remote debugging" 弹窗)都不适用,全部跳过。
- 一次性安装(约 30 秒,无需 clone):`command -v uv || curl -LsSf https://astral.sh/uv/install.sh | sh`;然后 `uv tool install "git+https://github.com/browser-use/browser-harness"`;再 `command -v browser-harness` 验证它现在已在 `PATH`。
- 若没有 `uv` 且不能 `curl | sh`:按 https://docs.astral.sh/uv/getting-started/installation/ 安装 `uv`,再重跑 `uv tool install` 那行;或运行 `pipx install "git+https://github.com/browser-use/browser-harness"`。
- 一次运行还需要 `BROWSER_USE_API_KEY`,它也会自动解析、无需人工——见 `references/methodology.md` step 0(可自助注册免费 key);因此新机器从刚安装 `qa` 到可测试无需用户做任何设置。
- 仅最后手段:如果确实无法安装(无网络、无 Python),停止,让用户打开 https://www.browser-harness.com/ 并把其中的 "prompt for LLMs" 粘贴给 agent:帮我设置 https://github.com/browser-use/browser-harness。先读 `install.md` 来安装并将该仓库连接到我的真实浏览器。然后读 `SKILL.md` 了解常规用法。始终读 `helpers.py`,因为函数在那里。当你打开设置或验证标签页时,激活它以便我能看到活动浏览器标签。安装后,在我的浏览器中打开此仓库;如果我已登录 GitHub,问我是否要你帮我 star 它,作为交互可用的快速演示——只有我说是才点击 star。如果我没登录,就转到 browser-use.com。
- 重新运行 `command -v browser-harness`,不成功不要继续;绝不回退到用户的本地 Chrome。
- 不要尝试用 `browser-harness` + 云浏览器之外的任何方式做 QA。
- Procedure 1:确认 target 可达:运行 `curl -s -o /dev/null -w "%{http_code}" <url>`;并识别 app 是什么(title、README),以便构造合理的测试任务。
- Procedure 2:运行测试——先应用上面的视觉门控。
- 无视觉:对每个流程使用 v2 cloud agents(每个流程一个 v2 task,每个带 `judge` + 1–5 `structuredOutput`),按 `references/browser-use-v2.md`;跳过下面的单流程/子代理划分——无论规模都走 v2;为 localhost target 建 tunnel,并传公开的 `startUrl`。
- 有视觉、单流程:按 `references/methodology.md` 直接驱动 `browser-harness`:解析 key、为 localhost 建 tunnel,并用实战踩坑经验跑测试循环(host-header rewrite、proxy-off、per-tab interstitial header、CORS-pinned APIs)。
- 有视觉、多流程 → fan out,每个流程一个子代理。
- v2 agents(推荐):按 `references/browser-use-v2.md`,每个流程创建一个 task(每个带 `judge` + 1–5 `structuredOutput` schema),轮询全部并收集 verdicts;localhost target 仍需 tunnel(cloud agent 到不了 localhost)——建 tunnel 并传公开 `startUrl`。
- Claude subagents:每个流程 spawn 一个 Agent,每个按 `references/methodology.md` 在 `browser-harness` 上执行。
- 使用 v2 后端时(无视觉情形或推荐的 fan-out):创建每个 task 时,在用户本地 Chrome 打开其 dashboard thread `https://cloud.browser-use.com/thread/{sessionId}`(create response 中的 session id,不是 task id),让用户能看 agent 运行——reference 的 `open_local(...)` helper 会做这件事;始终也打印该 URL。
- Procedure 3:拆除你启动的东西——每条路径都要停止你打开的所有东西。
- Tunnel:如果为 localhost target 建过 tunnel,杀掉 tunnel 进程;这适用于每条会建 tunnel 的路径,v2 也包括(v2 跑 localhost 仍会启动 tunnel)——不要让它成为孤儿进程。
- Cloud browser:单流程/Claude 路径驱动 `browser-harness` cloud browser,停止它。
- v2 task 针对 public URL 无需拆除(其一次性 session 自动关闭);v2 task 针对 localhost 仍留下 tunnel,关闭它。
- Procedure 4:返回 verdict:以 `Score: N/5` 开头,然后给出 task、result、what worked、issues(打标签)、edge cases、evidence——按 `references/methodology.md` 的 rubric 和输出格式。
- Fanning out 时:给出每个流程的 `Score: N/5` 行,并给一个 overall score,反映最弱关键路径(不要因为其他流程通过就把坏流程平均上去)。
- 按需求调整投入:快速的 "does X work?" 只需少量交互和一个分数;"thoroughly QA this" 需要更多流程和 edge cases;保持 verdict 诚实、具体、可复现。
适用边界 · 注意事项
- 不要用用户本地 Chrome 做 QA;必须使用 `browser-harness` + Browser Use 云浏览器。
- 纯文本无视觉模型不要自己驱动 `browser-harness` 读截图,也不要 fan out 给同模型的无视觉子代理;应改用 Browser Use v2 cloud agents。
- 无法安装 `browser-harness`(无网络、无 Python)且无法使用 Browser Use v2/云浏览器时不适用;只能最后让用户按 prompt 手动设置,且不得回退本地 Chrome。