dsh-weknora
Tencent/WeKnora把 WeKnora 知识库接入 dsh 的四个只读工具:列出知识库、混合检索原文片段、按顺序还原单篇文档,以及直接取用 WeKnora 自己带引用的 RAG 或 ReAct agent 回答(含可续聊的 session id)。
新增 download_file 工具,用 16 路 aria2c 并发下载,aria2 不可用时自动退回单线程流式下载。需自行安装 aria2c;aria2 通道不校验 TLS 证书。
English | 中文
给 DeepSeek Harness 的多通道文件下载器:优先用 aria2c 开 16 个连接分块并发,拿不到就自动退回 Node.js 原生单流。
A DeepSeek Harness plugin.
Agent 需要下载素材、模型、视频、GitHub 安装包时,用单连接流式下载有三个老问题:
Referer 直接 403。这个插件把这三件事一次性包进一个工具里,Agent 只需要给 URL 和目标路径。
127.0.0.1:16801),16 连接分块并发下载。服务没起来时按需拉起,平时零占用。fetch 流式单连接落盘,保证文件最终能下完。Referer(抖音 / B站 / 小红书 / 微博 / GitHub),并统一带现代浏览器 User-Agent。调用方也可以传自己的 headers 覆盖。Web UI 的插件页填 github:643048695/dsh-mt-download,或命令行:
dsh plugin --profile <profile> add github:643048695/dsh-mt-download写在 profile 的 cordis.patch.yml 里本插件那一行的 config 下:
字段 · 默认值 · 说明 defaultConnections · 16 · 默认并发连接数(工具入参可逐个覆盖,范围 1–16,受底层引擎限制) timeoutSeconds · 600 · 默认超时秒数 aria2Port · 16801 · aria2c JSON-RPC 端口 aria2Path · "" · aria2c 可执行文件绝对路径;留空则自动探测 checkCertificate · true · 是否校验 TLS 证书;系统证书链损坏或内网测试可设为 false
插件不打包 aria2c 二进制,只负责找到并驱动本机已有的那份。查找顺序:
aria2PathMT_ARIA2C_PATH / ARIA2C_PATH / DOUYIN_ARIA2C_PATHPATH 上的 aria2cProgram Files\aria2、Motrix 内置目录;macOS/Linux 的 /usr/bin、/usr/local/bin、/opt/homebrew/bin 等)一个都找不到时不会失败——直接走备用通道。
download_file参数 · 类型 · 必填 · 说明 url · string · 是 · 下载地址 output_path · string · 是 · 保存路径(文件名或目录) connections · integer · 否 · 并发连接数,默认 16,范围 1–16 timeout_seconds · integer · 否 · 超时秒数,默认 600 headers · object · 否 · 自定义请求头,覆盖自动注入的同名项
返回:
{
"success": true,
"file_path": "C:\\path\\to\\file.bin",
"file_size_bytes": 25098,
"file_size_human": "24.51 KB",
"duration_seconds": 1,
"speed_human": "24.51 KB/s",
"method": "aria2c (16 并发通道)"
}失败时返回 { "success": false, "error": "..." },并带上两个通道各自的失败原因。
Range。不支持时 aria2c 会自然退化成单连接,不会下坏文件。Referer 只覆盖几个已知站点,其他站点请自己传 headers。Node.js >= 20。宿主侧只用到 tools 服务的 register,没有硬依赖,任何带工具注册表的 DSH profile 都能挂上。
npm install
npm test测试只覆盖纯函数(大小/速度格式化、文件名推断、防盗链头匹配),不联网、不启动 aria2c。
MIT,Copyright (c) 2026 643048695。