← Back to home@yueyexiayu

dsh-huoqu

DSH desktop plugin: capture a rendered webpage into a local offline HTML and MHTML copy.

Stars
0
Language
JavaScript
Created
Sep 28, 2026
Updated
Oct 6, 2026
GitHub repo

Introduction

huoqu

当前项目是深度适配个人使用,项目只是给大家提供思路和借鉴,尽量不要直接照搬。

在 DeepSeek Harness 里采集一个网页的渲染结果,保存为可离线打开的本地副本。

当前插件需要配合 Chrome 插件项目 的 Chrome 扩展。网页获取会复用这个扩展,在当前正式 Chrome 的后台标签里打开页面,不另开调试端口。扩展未连接时才会退回隔离的无头 Chrome,部分站点会把无头浏览器当成可疑请求拦截。

  • 本地入口:index.html
  • 单文件副本:index.mhtml
  • 资源目录:assets/
  • 截图和检查报告:source.png、local.png、report.json

本地副本会保留原站脚本和组件,尽量按采集时打开的样子复刻。依赖源站接口、登录态或采集时还没渲染出来的数据,仍然可能缺失。

输出目录必须为空,或能通过 manifest.json、report.json 及资源清单确认是既有 huoqu 副本。支持这些记录完整的旧版产物;无法确认归属的目录请保留,改用新的空目录。不会仅凭 index.html、assets/ 等文件名自动覆盖。替换失败时恢复旧内容;恢复失败则保留备份并报告位置。

只有资源引用完整、离线 HTML 和 MHTML 预览成功、页面内容足够且图片加载通过,结果才会标为 completed。文件已保存但检查未通过时返回 partial,具体原因记录在 report.json;生成文件不等于离线验证通过。

Chrome 可能禁用 MHTML 内的脚本,交互组件请优先使用 index.html。普通外部 SVG 图标会内联到当前文档,避免离线跨文件限制;含脚本、目标缺失或复杂递归引用的 SVG 不强行改写,其加载失败会保留在检查报告中。

安装

复制到 $DSH_HOME/plugins/huoqu,在 $DSH_HOME/profiles/desktop/cordis.patch.yml 写入:

- insert:
    - id: huoqu
      name: ../../plugins/huoqu/lib/index.js

完全退出 DeepSeek Harness(macOS:⌘Q)再打开。侧栏会出现「网页获取」。

使用前请先安装并连接 dsh-chrome 的 Chrome 扩展。这是配套要求,不是可选项。

Chrome 插件也需要更新到提供 openCaptureSession 的版本。采集使用独立的后台标签和所有权,完成或取消后释放,不切换对话正在操作的标签。

0.1.1 修复

保留重定向资源的原始地址映射;补齐 CSS image-set()、独立 SVG 及 SVG 属性的资源发现和离线改写。额外下载最多尝试 120 个资源,按读取字节限制 100 MiB 总预算,耗尽后停止新请求。修复 IPv4 映射 IPv6 的私网识别,以及普通正文包含 “Just a moment” 时被误判为验证页的问题。

开发

开发检出时,把 dsh-chrome 放在本项目同级的 chrome/ 目录,供 Host 与采集测试使用。

for file in lib/*.js; do node --check "$file" || exit; done
node --test test/*.test.mjs