DeepSeek Harness plugin

dsh-download-progress-nanshanz

DSH 下载进度插件:download 工具实时计算下载百分比,Web GUI 右下角悬浮面板显示进度条

Jump to install

Source facts

Repository
nanshanzhaoji/dsh-download-progress
Latest update
Aug 17, 2026
Category
Tools & Capabilities
GitHub stars
0
Format
plugin
Catalog evidence
Upstream dsh.bundle evidence
Evidence path
package.json#dsh.bundle
Checked against
0.1.0-rc.8
Upstream check date
2026-08-20

This evidence comes from the upstream catalog. This site has not installed, run, or security-reviewed the plugin.

Install

Start with a prompt that asks an agent to review the GitHub repository and source. Switch to the command if you want to install it yourself.

Copy this prompt into DSH, Codex, or another agent and ask it to review the GitHub repository and source first.

Do not install or run any commands yet. Read this plugin's GitHub repository, README, and relevant source code. Then answer the questions below clearly and directly so I can decide whether it fits my needs:

1. What is this plugin, and what problem does it solve?
2. Who is it for, and what are its typical use cases?
3. How is it used after installation? Include one minimal example.
4. What known limitations or privacy, security, compatibility, or maintenance risks does it have?
5. Give a clear recommendation: recommend, conditionally recommend, or do not recommend, with reasons.

Distinguish statements documented by the repository, inferences from source code, and unknowns. If evidence is insufficient, say so explicitly. Do not guess or simply repeat the README.

GitHub: https://github.com/nanshanzhaoji/dsh-download-progress
Plugin: dsh-download-progress-nanshanz
Author: nanshanzhaoji

Check the source files

Read the README and other files from this plugin directory before installing.

File explorer3 files
README.mdSource · read only

dsh-download-progress

DSH 下载进度插件:给 DeepSeek Harness 增加一个 download 工具,下载时在 Web GUI 右下角显示实时进度条(百分比 / 速度 / 大小),无需用户盯着终端猜下载是否卡住。

  • 中英双语界面(面板文案跟随浏览器语言)
  • 纯官方接缝:工具走 ctx.tools,面板走 shell.overlay slot,进度走 ctx.webServer 路由
  • 零构建:客户端 bundle 为手写 __ModuleLoader__.load 格式,安装即用

Overview

问题本插件解决
模型用 shell / web 工具下载大文件时,GUI 上看不到进度提供 download 工具,实时上报 received / total → percent
想知道下载速度、剩余大小、是否卡住面板显示速度(B/s)、已下载/总大小、百分比
想让别的客户端也消费进度暴露 GET /download-progress JSON 快照接口

Compatibility

  • 目标 DSH:0.1.0-rc.6(实测于 2026-08-17,Windows + web profile)
  • 依赖:Node.js ≥ 18(内置 http/https/stream,无第三方运行时依赖)
  • 平台:Web GUI(dsh web);浏览器端依赖 shell.overlay slot(由 dsh-client-ui-layout 声明)
  • 已验证:download 工具真实下载 4 MiB → percent: 100、字节数一致、快照 JSON 正确、取消后清理临时文件(test/smoke.mjs

Install

# 方式一:npm 包(若已发布)
dsh plugin --profile web add dsh-download-progress

# 方式二:GitHub clone 安装
git clone https://github.com/nanshanzhaoji/dsh-download-progress.git
dsh plugin --profile web add ./dsh-download-progress

安装后重启 dsh web 生效(新增插件行需要重新加载组合树)。

安装完成后确认:

# 浏览器访问(重启后)
curl http://127.0.0.1:3080/download-progress   # → {"downloads":[]}
curl http://127.0.0.1:3080/plugins/dsh-download-progress/client.js   # → 200

Uninstall

dsh plugin --profile web remove dsh-download-progress

或手动移除 profile 的 cordis.patch.yml 中对应 insert 行、删除 node_modules 中的包,然后重启 dsh web

Quick start

在对话中让模型调用:

download({ url: "https://example.com/file.zip", dest: "file.zip" })

Web 右下角实时显示:

下载进度                         2 个进行中
file.zip                         ▓▓▓▓▓░░░░░ 62%
                                 34.5 MB / 55.7 MB   8.2 MB/s

下载完成后条目停留约 1 分钟自动消失;没有活动下载时面板自动隐藏。

Configuration

host 端 Configcordis.patch.ymldownload-progress 行的 config):

字段默认说明
keepFinishedMs60000完成后在面板停留的毫秒数
maxFinished20内存中保留的已完成条目上限
maxRedirects5跟随重定向次数上限

示例:

- id: download-progress
  name: dsh-download-progress
  config:
    keepFinishedMs: 120000
    maxRedirects: 8

Permissions & data

  • 网络download 工具会向目标 URL 发起 HTTP(S) 请求并流式写入工作区文件(dest 相对工作区根解析,默认取 URL 文件名)。请确保目标地址可信。
  • 文件:写入路径由调用方 dest 决定,仅写入工作区内的目标文件及其父目录。
  • 不访问:不读取凭据、不上传任何数据、不做遥测。
  • 浏览器端:仅轮询同源 /download-progress;不读取会话内容。

Troubleshooting

现象排查
面板不出现确认重启过 dsh web;确认浏览器访问 /plugins/dsh-download-progress/client.js 返回 200;确认页面无 JS 报错
/download-progress 404插件 host 端未加载:检查 --dump-config 是否包含 download-progress 行,检查启动日志
下载报 HTTP xxx目标返回非 200;可能是 404/403/500,检查 URL 是否有效
进度一直 0%服务器未返回 Content-Length(chunked 响应),此时显示"下载中…"而非百分比,属预期行为
取消后残留文件取消时会删除未完成的临时文件;若进程被强杀可能残留,手动删除即可

Development

npm install            # 安装运行时依赖(@deepseek-ai/dsh-tools 等)
node test/smoke.mjs    # 冒烟测试:本地 HTTP 服务器驱动真实下载 + 取消路径

冒烟测试断言:文件字节数、percent === 100/download-progress 快照 JSON、取消后清理临时文件。

License & security

  • MIT License(见 [LICENSE](LICENSE))
  • 安全问题:请勿在公开 issue 中粘贴敏感信息;可直接开 issue 或私信维护者