dsh-web
zhu1090093659/dsh-webDeepSeek Harness(DSH)Web 插件聚合生态包 · 一切皆插件,创意工坊分发(dsh-market.com)
A DeepSeek Harness (DSH) plugin that brings Qoder, WorkBuddy and Trae models into one model picker, sharing a single credential store, cache, scheduler and settings page.
简体中文 | English
一个 DeepSeek Harness(DSH)插件:把 Qoder、WorkBuddy、Trae 三个平台的模型接入同一个模型 选择器,共用一套凭证、缓存、定时任务与设置界面。
插件直接复用本机已登录的官方桌面端,通常不需要重新登录或粘贴令牌;Qoder 另外提供 Personal Access Token(PAT)作为备选。

非官方社区项目,与 Qoder、WorkBuddy、Trae、DeepSeek 官方无关联。仅供个人学习研究, 使用前请阅读免责声明。
| 能力 | Qoder | WorkBuddy | Trae |
|---|---|---|---|
| 桌面端登录自动读取(无需粘贴令牌) | ✓(macOS;Windows 实验性) | ✓ | ✓ |
| 模型目录(实时 / 缓存 / 内置三级降级) | ✓ | ✓ | ✓ |
| 模型开关、批量开关、搜索 | ✓ | ✓ | ✓ |
| 上下文窗口(默认 / 上游最大值) | ✓ | ✓(仅国际版) | ✓ |
| 倍率 / 优惠徽章 | ✓(仅倍率) | ✓ | ✓(仅倍率) |
| 额度、订阅与套餐明细 | ✓ | ✓ | ✓ |
| 每日签到(可自定义时刻,UTC+8) | ✓ | ✓(国内版,官方活动期内) | ✓(国内版,按设备每天一次) |
| 推理档位探测(需显式授权) | — | ✓ | ✓ |
| 多账号切换、导入导出 | — | — | ✓ |
三家共用同一套体验:
0600 的私有文件;
设置、日志、错误和状态文档中永不出现明文 token。设置页在 插件 → dsh-connect-hub:顶部切换 Qoder / WorkBuddy / Trae,区域内再切换国内版 / 国际版,每块只显示该 provider 真正支持的功能。
WorkBuddy 每日签到卡片:

输入框额度读数:

配图使用演示数据,不含真实账号信息。
前置条件:
0.2.1-rc.2(peer 依赖锁定该预发布版本;stable 与后续 rc 尚未适配)^22.19.0 || >=24.0.0git clone https://github.com/DaozeTang/dsh-connect-hub.git
cd dsh-connect-hub
pnpm install
pnpm run build
dsh plugin --profile desktop add "$PWD"
重启 DSH 后进入 插件 → dsh-connect-hub:连接状态、额度、模型、签到与探测都在这一页。 TUI / headless 组合下只注册 provider,模型照常可用,设置页在有浏览器界面时显示。
Desktop 发行版可能自行管理 profile,安装与卸载以其规则为准。从源码更新时重新执行
pnpm install && pnpm run build并重启 DSH;已保存的偏好会保留。没有保存过凭据的安装会在 首次启动时自动读取桌面端登录,保存 PAT 或清除凭据即可关闭自动登录。
尚未发布到 npm;发布后可直接 dsh plugin --profile desktop add dsh-connect-hub。
| 变量 | 作用 |
|---|---|
DSH_CONNECT_HUB_DATA_DIR | 覆盖插件数据目录(默认 <profile>/.dsh-connect-hub/) |
DSH_CONNECT_HUB_QODER_CN_AUTH_FILE / DSH_CONNECT_HUB_QODER_GLOBAL_AUTH_FILE | 指定 Qoder 国内版 / 国际版桌面登录记录的位置 |
DSH_CONNECT_HUB_WORKBUDDY_AUTH_FILE / DSH_CONNECT_HUB_WORKBUDDY_AI_AUTH_FILE | 指定 WorkBuddy / WorkBuddy AI 桌面登录文件的位置 |
DSH_CONNECT_HUB_WORKBUDDY_ELECTRON_BIN / DSH_CONNECT_HUB_WORKBUDDY_AI_ELECTRON_BIN | 指定 WorkBuddy / WorkBuddy AI 官方 Electron 可执行文件(非默认安装位置) |
DSH_WORKBUDDY_POLL_MS | WorkBuddy 桌面登录轮询间隔(默认 30 秒,1 秒–24 小时) |
<profile>/.dsh-connect-hub/(DSH_CONNECT_HUB_DATA_DIR 可覆盖):
preferences.json 保存模型开关、签到设置与日志、探测授权等偏好;state/ 放可重建的模型目录
缓存与 Qoder 设备标识种子;secrets.json 仅在 DSH credentials 服务不可用时作为凭据后备。dsh-connect-hub),服务不可用时才写入
权限 0600 的私有文件。配置、偏好、缓存与日志永远不含明文 token。Host,并在 Origin
存在时校验其是否匹配;写操作另需每进程随机控制键,请求体有大小上限和频率限制;状态响应只含
脱敏后的账号信息。安全回归测试覆盖路由防护、凭证存储、回环转发端点、账号导入校验、子进程环境、生命周期与仓库 卫生;Qoder 桌面登录读取另有注入全部系统调用的封闭测试:
pnpm exec vitest run tests/security
Q:Qoder 读取登录时为什么经常弹出 macOS 钥匙串授权?
Qoder 桌面端把登录记录加密存放,解密密钥在系统钥匙串里(Qoder App Safe Storage /
Qoder CN App Safe Storage),插件只能只读请求该密钥,所以 macOS 会要求授权。选「始终允许」
并输入一次登录密码即可,之后不再反复询问;只点「允许」则每个 DSH 进程首次读取可能再问一次。
国内版与国际版是两个条目,可能各问一次。Windows 走 DPAPI 无此提示;Linux 请用 PAT。不想让插件
读取桌面端时,保存 PAT 即可关闭自动读取。
Q:WorkBuddy 的签到在哪里?为什么有时看不到签到卡片?
WorkBuddy 国内版有官方「Buddy 加油站」每日签到,插件已接入:活动进行中且账号可参与时,设置页 会显示签到卡片,可手动签到或配置每天自动签到(UTC+8),并记录签到日志与积分。签到活动由官方 按活动周期开放;接口返回活动不可用时卡片会隐藏。
Q:用 WorkBuddy 模型时报 400「请求被拦截,请重新发送」(code 11128)怎么办?
这是上游对系统提示词开头的客户端身份标识做特征拦截:只要提示词以本工具的身份句开头,请求
就会被拒(Illegal API invocation from an unapproved channel),与账号、模型、请求头都无关——
同一个账号发普通提示词可以正常返回。插件默认开启「提示词中和」:在命中的词组里插入不可见字符,
使上游的关键词匹配不再命中,模型读到的语义不变,账号、模型、请求头和文件路径都不受影响
(含 / 或 \ 的路径永远原样发送)。卡片上会显示已中和的处数,可随时关闭;关闭后请求与原始
字节级一致,但当前上游会拦截绝大多数请求。上游更换关键词时,可在
src/providers/workbuddy/prompt-guard.ts 的 GUARDED_PHRASES 增加条目,无需改动算法。
Q:刷新额度会消耗积分吗?
额度查询可能产生上游的计费查询,所以只在插件启动 / 首次初始化、登录或账号变化、手动刷新和 定时轮询时发生;模型目录读取与状态渲染不会产生计费请求。
Q:为什么输入框里看不到额度读数?
读数只在当前会话选中的模型来自本插件时出现;位置可以在「界面偏好」里切到工具栏或输入框上方。
Q:怎么彻底移除插件?
先移除插件(DSH 插件管理,或 dsh plugin --profile desktop remove dsh-connect-hub),再删除插件
数据目录(默认 <profile>/.dsh-connect-hub/;如果设置过 DSH_CONNECT_HUB_DATA_DIR,删除该目录)。
Qoder 另外提供「清除凭证」,可在移除前先删除 DSH credentials 服务中的记录;WorkBuddy 与 Trae
没有该按钮,其插件副本会随数据目录删除。移除插件不会退出任何桌面客户端,也不会删除桌面端自己
的登录。
multimodal 标注自动声明(无逐模型开关);两个区域始终注册,未使用
区域为空;Raw Chat 上游长期关闭,只保留 SOLO;签到仅国内版且按设备每天一次。pnpm install
pnpm run typecheck # 宿主与浏览器端类型检查
pnpm test # 单元、集成与客户端测试
pnpm run build # 构建 lib/index.js 与 lib/client.js
pnpm run check # 以上全部
代码按 src/client(设置页与输入框读数)、src/core(凭证、偏好、调度与 HTTP 路由)、
src/providers(三家协议)和 src/shared(共享类型)组织;tests/security 覆盖安全回归,
tests/live 是可选的只读真实账号回归。
辅助脚本:
scripts/dev-server.sh [port] [dsh-home]:创建一次性的 hub-test profile 并启动 Web 界面。PUPPETEER_FROM=<profile package.json> node scripts/screenshot.mjs <url> <out.png>:用无头 Chrome
打开插件页截图(非默认 Chrome 路径用 CHROME_PATH 指定)。HUB_LIVE_PROFILE=<profile dir> HUB_LIVE_HOME=<dsh home> pnpm exec vitest run tests/live
(qoder-desktop-live 例外:它会轮换令牌并发起一次极短对话,只应在测试账号上运行)。问题、建议与 PR 欢迎提到 Issues;提交前请
先跑一遍 pnpm run check。
本项目是非官方社区项目,与 Qoder、WorkBuddy、Trae、DeepSeek 及其关联公司没有隶属、合作或 背书关系;相关名称与商标归各自所有者。
MIT。见 LICENSE。