前言¶
在 DeepSeek Harness(DSH)插件生态中,通过接口对接业务系统(如 EIP 系统)通常需要先明确接口定义、业务步骤与数据契约。现有文档往往缺失或过时,逆向工程成本较高。dsh-web-recorder 提供了一种替代方案:它不依赖文档,而是通过录制真实的浏览器操作和网络请求,生成可供大模型分析的时间线报告,从而推导出接口调用序列与数据格式。
核心能力¶
本插件专注于“旁观与记录”:
* 记录真实浏览器操作(点击、输入、导航)和网络请求(XHR/Fetch)。
* 生成 Markdown 摘要报告(report.md)和原始事件流(events.jsonl)。
* Attach 到已打开的浏览器窗口(如带调试端口的 Playwright MCP 浏览器)。
* 启动有头浏览器进行录制。
* 提供工具:recorder_start、recorder_stop、recorder_status。
安装与前置¶
使用本插件需要满足以下环境要求:
* DSH 宿主版本:@deepseek-ai/dsh ^0.2.0-rc.2
* Node.js >= 18
* pnpm >= 8
* Playwright MCP 是可选依赖,不是必需。
执行以下命令安装插件:
dsh plugin --profile web add dsh-web-recorder@latest
安装完成后,硬刷新浏览器即可在 DSH 会话工具列表中看到 recorder_* 工具。
工具说明¶
插件提供三个核心工具:
recorder_start(url?, waitSeconds?):开始录制。优先 attach 到已有浏览器窗口(如 CDP 端口的 Playwright MCP),否则启动有头浏览器。waitSeconds可用于跳过页面初始化。事件实时写入events.jsonl。recorder_stop():停止录制。生成report.md摘要报告。attach 模式只断开连接,不关闭浏览器;自启模式则关闭窗口。此操作为幂等。recorder_status():查询录制状态,包括是否在录制、事件分类计数、产物目录、jobId等。
使用流程¶
本插件职责仅为“记录”,页面操作由真人或自动化工具(如 playwright MCP、browser-use)驱动。
- 启动录制:调用
recorder_start。 - 执行流程:在受监控的浏览器窗口中完成业务操作(真人操作或自动化工具驱动)。
- 停止录制:调用
recorder_stop,生成报告。 - 分析沉淀:模型读取
report.md和events.jsonl,归纳业务流程、接口调用序列与数据契约,进而沉淀为 skill 或接口文档。
注意事项¶
- 录制范围:仅记录插件 attach/启动的浏览器窗口内的操作。
- 驱动分离:插件不直接操作页面,只负责记录。如果使用 Playwright MCP,需确保其浏览器启动时带
--remote-debugging-port,以便插件 attach。 - 文件输出:停止录制后会生成
report.md(摘要)和events.jsonl(原始事件流)。
结语¶
dsh-web-recorder 通过“操作留痕”的方式,将不可见的接口调用显性化。对于缺乏文档或需要快速验证接口契约的场景,它是连接 DSH 智能体与真实 Web 业务的实用工具。