场景
你改完代码,最怕的是「不知道自己改坏了什么」。想自动验证不回归,有三个确定性环节:静态分析(提交前拦明显问题)、沙箱执行(隔离环境把代码真的跑起来)、浏览器 E2E(断言页面关键元素与路由真实可访问)。三个工具各自都能跑(条目均收录并分项实测),但缺的是成套编排与顺序。
本组合包把「静态 → 沙箱 → E2E」串成一条验证链路:deepcode 静态分析(第一道)、swe-rex 沙箱执行(第二道)、playwright-mcp 浏览器 E2E(第三道)。组合链路实测待补(三工具分项已实测,见验证证据),装完先有链路骨架,验证能力随实测补全。
组合成员 (3)
deepcode(静态分析)
下载:PyPI 包 `deepcode-hku`;国内必须带清华镜像(官方直连当次预检 16s 边缘,可能触发 15s 读超时)
版本要求:2.1.0;Python >= 3.12
pip install -i https://pypi.tuna.tsinghua.edu.cn/simple deepcode-hku
deepcode --version # 预期输出: DeepCode 2.1.0
swe-rex(沙箱执行)
下载:PyPI 包 `swe-rex`;国内必须带清华镜像
版本要求:1.4.0;Python >= 3.10;沙箱执行需 Docker(本环境未实测沙箱运行)
pip install -i https://pypi.tuna.tsinghua.edu.cn/simple swe-rex==1.4.0
swerex-remote --help # 预期输出: usage: swerex-remote [-h] [--host HOST] [--port PORT] --auth-token AUTH_TOKEN
playwright-mcp(浏览器 E2E)
下载:npm 包 `@playwright/mcp`;国内必须带 npmmirror 前缀(2026-08-29 实测 3 秒装完)
版本要求:0.0.79;Node >= 18;首次运行需下载浏览器引擎(chromium 113.9MiB)
npm_config_registry=https://registry.npmmirror.com npm install -g @playwright/mcp
npx --no-install @playwright/mcp --version
npx --no-install playwright install chromium
方案总览
| 工具 | 管什么 | 为什么是它 |
|---|---|---|
| deepcode | 静态分析(第一道,提交前) | 拦明显问题最早最便宜;pip 生态 |
| swe-rex | 沙箱执行(第二道,跑起来验证) | 隔离环境跑代码不怕炸;Docker 沙箱 |
| playwright-mcp | 浏览器 E2E(第三道,真实页面断言) | 断言页面真实可访问;npm 生态 |
备选方案:只想要「提交前静态检查」→ 只装 deepcode;只想要「浏览器自动测」→ 只装 playwright-mcp。生态隔离是天然优势:pip 侧(deepcode/swe-rex)与 npm 侧(playwright-mcp)分属独立生态,venv 与 npm prefix 天然隔离,不会互相污染依赖。
快速开始
一键脚本由本文档自动生成(渲染后位于 pages/combos/combo-auto-test.sh),逐条执行:
bash pages/combos/combo-auto-test.sh
- 装完你会得到:deepcode / swerex-remote / @playwright/mcp 三个命令可用,「静态 → 沙箱 → E2E」验证链路骨架。
- 预计耗时:10-15 分钟。最大卡点 = deepcode 全量依赖(实测约 40s,网络差更久)+ chromium 引擎下载(约 114MiB)。
- 前置条件:Python >= 3.12(deepcode 硬性);Node >= 18(playwright-mcp);Docker(swe-rex 沙箱,未实测)。
想弄明白每一步在干什么、装错了怎么恢复 → 看「逐步教学」。一键脚本出问题 → 按逐步教学手动执行定位。
逐步教学
第 1 步:装 deepcode(静态分析,提交前第一道)
deepcode 是验证链路的「第一道闸」:提交前先静态分析,明显问题(类型/依赖/常见反模式)在跑测试前就拦下来——越早发现问题越便宜。它是重件:Python >= 3.12,全量依赖实测约 40 秒。装完还需配置 provider 才能跑分析(本地 provider 不需要云 key)。
pip install -i https://pypi.tuna.tsinghua.edu.cn/simple deepcode-hku
deepcode --version # 预期输出: DeepCode 2.1.0
预期输出: DeepCode 2.1.0
装好确认:
deepcode --version输出DeepCode 2.1.0;deepcode init初始化成功。
卡住怎么办:
- 安装慢(40s+ 正常)→ 等;超时重试一次(命令已带清华镜像)。
- Python 版本不足 → deepcode 需要 3.12,先升级 Python 再装。
- 跑分析报 provider 未配置 →
deepcode provider set <厂商> --api-key <key>;本地 provider 无需 key。
第 2 步:装 swe-rex(沙箱执行,跑起来验证)
第二道闸是「跑起来」:swe-rex 把代码放进沙箱执行,环境隔离、不怕搞坏本机。装完提供 swerex-remote 命令。真实沙箱执行需要 Docker(本环境未实测沙箱运行),CLI 层已实测;无 Docker 也能装、CLI/库层可用,只是沙箱段要等有 Docker 的环境补测。
pip install -i https://pypi.tuna.tsinghua.edu.cn/simple swe-rex==1.4.0
swerex-remote --help # 预期输出: usage: swerex-remote [-h] [--host HOST] [--port PORT] --auth-token AUTH_TOKEN
预期输出: usage: swerex-remote [-h] [--host HOST] [--port PORT] --auth-token AUTH_TOKEN
装好确认:
swerex-remote --help打印 usage;- 与 deepcode 同 venv 共装后两个
--version均正常。
卡住怎么办:
- pip 超时 → 清华镜像已内置,重试一次。
- 沙箱报 Docker 错 → 需要 Docker;没有就先跳过沙箱段,CLI 面不受影响。
第 3 步:装 playwright-mcp(浏览器 E2E,真实页面断言)
第三道闸是「真页面」:playwright-mcp 驱动真实浏览器,断言页面关键元素、路由真实可访问。npm 安装极快(npmmirror 实测 3 秒),但首次运行要下载浏览器引擎(chromium 约 114MiB,实测走 playwright CDN 可下)。无 GUI 环境用 --headless。
npm_config_registry=https://registry.npmmirror.com npm install -g @playwright/mcp
npx --no-install @playwright/mcp --version
npx --no-install playwright install chromium
预期输出: @playwright/mcp 版本号 + chromium 下载完成
装好确认:
npx --no-install @playwright/mcp --version输出版本号(0.0.79);- chromium 下载完成后,跑一次页面冒烟(实测通过,证据)。
卡住怎么办:
- npm 慢 → 命令已带 npmmirror registry。
- chromium 下载失败(CDN 超时)→ 换网络窗口重试
npx --no-install playwright install chromium;或配 playwright 镜像环境变量。 - 无 GUI → 运行参数加
--headless。
装完验收(一步到位)
作用:装完跑下面一条命令块,全绿 = 本组合包就绪;某条失败 → 回「逐步教学」对应步骤定位。
deepcode --version
swerex-remote --help
npx --no-install @playwright/mcp --version
预期输出: DeepCode 2.1.0;swerex-remote 打印 usage;@playwright/mcp 0.0.79(chromium 引擎已下载)。全绿 = 静态→沙箱→E2E 验证链路命令面就位
注:成员级命令已实测;swe-rex 沙箱执行需 Docker,未实测、如实标注。
日常使用
启动与入口
- deepcode:
deepcode init→deepcode run(分析任务)。 - swe-rex:
swerex-remote --auth-token <token>起沙箱服务(Docker 环境)。 - playwright-mcp:
npx --no-install @playwright/mcp(MCP 服务,默认端口 8931,--port可改;--headless无头模式)。
常用操作
- 验证链路:
deepcode run(静态)→ 沙箱跑测试(swe-rex)→@playwright/mcp断言页面(E2E)。 - 只跑静态:
deepcode run --target <目录>。 - 只跑 E2E:起 playwright-mcp 后让 Agent 断言关键路由/元素。
- 预检一条龙:
python3 --version && node --version && docker --version确认三件前置齐。
数据与目录
- deepcode:配置
~/.config/deepcode/(推断,以官方为准)。 - swe-rex:沙箱由 Docker 管理,无固定数据目录。
- playwright-mcp:浏览器引擎在
~/.cache/ms-playwright/(可删,重新 install 即恢复)。
卸载与清理
按安装相反顺序卸载:
# 1. playwright-mcp(npm 全局)+ 浏览器引擎缓存
npm uninstall -g @playwright/mcp
rm -rf ~/.cache/ms-playwright
# 2. swe-rex + deepcode(同 venv)
pip uninstall -y swe-rex deepcode-hku
提示:浏览器引擎缓存约 114MiB,卸载时一并清掉释放空间。
安装顺序
- 预检:
python3 --version(>= 3.12,deepcode 硬性)+node --version(>= 18)+docker --version(swe-rex 沙箱)。 - deepcode(pip,静态分析无端口无后台)。
- swe-rex(pip,沙箱用 Docker;无 Docker 时 CLI/库层仍可用,沙箱段标注未实测)。
- playwright-mcp(npm + chromium 引擎 ~114MiB;无 GUI 环境用
--headless)。
依赖警告
- 冲突(3 对全查,出处:站内文档):
本站实测记录
- possible-compatible 2 对:deepcode×playwright-mcp、playwright-mcp×swe-rex(写面分析:playwright-mcp 无共享配置写面——输出单文件/临时 profile/代理配置)
- 判定基线:pip 侧(deepcode/swe-rex)与 npm 侧(playwright-mcp)分属独立生态,venv 与 npm prefix 天然隔离
- 版本:Python >= 3.12(deepcode,比 swe-rex 的 3.10 更严,按 3.12 预检);Node >= 18(playwright-mcp);Docker(swe-rex 沙箱,未实测)
- 环境:playwright-mcp 默认监听 8931 端口(--port 可改)、chromium 引擎 113.9MiB 磁盘;swe-rex 沙箱拉起 Docker 容器(资源占用按容器隔离);deepcode 无后台进程
- 国内网络:pip → 清华镜像;npm → npmmirror;浏览器引擎走 playwright CDN(2026-08-29 实测下载成功)
FAQ
- 三个工具跨 pip/npm 生态,会不会互相污染? → 不会。venv(pip)与 npm prefix(node)天然隔离;deepcode×swe-rex 已实测 compatible,另两对写面分析为 possible-compatible。
- deepcode 装得慢正常吗? → 正常(全量依赖约 40s,网络差更久);命令已带清华镜像,超时重试一次即可。
- 没有 Docker 能用这套吗? → 能装能用前两道(静态 + CLI),沙箱段(swe-rex 真实执行)需要 Docker,未实测。
- chromium 下载不下来? → 换网络窗口重试
npx --no-install playwright install chromium,或配 playwright 镜像环境变量。 - 无图形界面能跑 E2E 吗? → 能,playwright-mcp 加
--headless。
验证证据
每份组合包在隔离环境实测(冒烟 + 写面检查),未实测项在文中如实标注;实测日期见下方验证证据。
验证于 2026-08-29 · TTL 到期 —(180 天)
- 分工具实测(各条目已有证据):deepcode 2.1.0 清华镜像 40s 全量依赖(实测记录(本地留存));swe-rex 1.4.0 CLI 实测 + 沙箱未实测(实测记录(本地留存));playwright-mcp 0.0.79 npmmirror 3s 安装 + chromium 113.9MiB 下载 + 页面冒烟(实测复现日志(2026-08-29) +)
- 未实测:三工具成套链路(静态 → 沙箱 → E2E 同一环境跑通);swe-rex 沙箱段(Docker)