dsh-connect-qoder
Manifest valid★ 4Bridge local Qoder / Qoder CN models into DeepSeek Harness
DSH Connect Qoder
把本机已登录的 Qoder 模型接入 DeepSeek Harness, 零配置即可在 DSH 的模型选择器里使用你的 Qoder 账号额度。
国内版 Qoder CN 与国际版 Qoder 是两个并行的 provider(qoder-cn / qoder),
装哪个就出现哪一组模型,两个都装就两组并存,各自使用自己的账号与额度。
工作原理
DSH PiAiAdapter(每个区域一套)
-> 安全 loopback shim(随机端口 + 进程内随机 secret)
-> COSY 签名 + 自定义 base64 编码
-> 国内版 https://gateway.qoder.com.cn/
-> 国际版 https://api3.qoder.sh/
-> Qoder 双层包装 SSE
-> OpenAI SSE
-> DSH 本地执行工具并回传结果
Qoder 不是 OpenAI 兼容端点,所以需要三样东西:
- COSY 签名头 —— 每个网关请求都带
Cosy-*头与Authorization: Bearer COSY.<payload>.<sig>, 签名是对 base64 负载、RSA 包装的 AES 密钥、时间戳、请求体与签名路径做 MD5。 - 置换 base64 请求体 —— 查询串里的
Encode=1表示 JSON 体要先 base64、再按换过的字母表 逐字符替换、最后按三分之一旋转。 - 双层 SSE —— 每个
data:帧是一个信封对象,它的body字段本身又是 JSON 字符串, 里面才是 OpenAI 风格的 chunk。
凭据来源
插件复用 Qoder 桌面应用自己的登录状态,不启动额外的 OAuth 流程,也不写入应用的文件 (数据库以只读方式打开)。
Qoder 把登录信息放在 VS Code 风格的 state.vscdb 里,密文是 Chromium OSCrypt 格式
(v10 + nonce + 密文 + tag,AES-256-GCM)。解密用的密钥保存在应用的 Local State 中,
由操作系统 keystore 包裹 —— Windows 上是当前用户作用域的 DPAPI,因此同一用户下的进程都能解开它。
Node 没有内置 DPAPI 绑定,这一步交给 PowerShell,并通过临时文件交换结果(不使用管道),
这样在禁止管道 stdio 的沙箱里同样可用。
没有桌面应用登录时,可以用官方文档的 PAT 兜底:设置 QODERCN_PAT(国内版)或
QODER_PAT(国际版),插件会用它换取 job token。
安装
从 DSH 市场安装(推荐给 DSH 桌面用户)
在 DSH 的「插件市场」里粘贴这个源:
github:hdhgsysh/dsh-connect-qoder
或本地开发模式:
dsh plugin --profile web add <本仓库路径>
安装后需要重启 DSH 进程:bundle 的 patch 在启动时读取。
凭据安全
插件不存储任何凭据:
- 复用本机已登录的 Qoder 桌面应用的本地数据库(只读打开,临时副本在
os.tmpdir()), 关闭后立即删除。 - 进程内随机 bearer token 绑定 loopback 端口;Qoder 真实的 RSA 包装 key 与 session key 不会离开本插件的沙箱。
已知行为
- 始终思考的模型:部分模型(如
GLM-5.3-Flash、Kimi-K3)声明了推理档位但不允许关闭思考, 对它们发送enable_thinking: false会被上游以provider_error 1210拒绝。插件从模型目录 识别这类模型并完全省略该字段,让模型使用自己的默认档位。 - 上游错误可见:上游失败时返回的是普通 200 帧里的错误对象,而不是 chunk。插件把它翻译成 一条可读的错误,而不是让用户看到一个空的助手回合。
- 国际版额度:国际版的试用额度可能已用尽(
isQuotaExceeded),此时目录请求会返回 403Login expired,该区域就不会显示模型;国内版不受影响。 - 依赖 Qoder 客户端接口(非官方开放 API),Qoder 更新后插件可能需要随之调整。
目录
| 文件 | 作用 |
|---|---|
lib/credentials.js | 从 Qoder 应用读取并解密登录凭据 |
lib/upstream.js | COSY 签名、请求体编码、目录与对话流 |
lib/shim.js | 面向 pi-ai 的 OpenAI 兼容回环端点 |
lib/adapter.js | pi-ai provider 与 PiAiAdapter profile |
lib/index.js | 按区域注册 provider 的插件入口 |
免责声明
仅供个人学习研究使用,仅驱动使用者自己的 Qoder 账号在本机调用。使用者需遵守 Qoder 的服务条款, 因使用本项目产生的后果由使用者自行承担。本项目与 Qoder、DeepSeek 均无关联。
许可证
MIT
Versions
| Latest version | Published | Size |
|---|---|---|
| 0.1.0 | — | — |
| 0.1.1 | — | — |
| 0.2.0 | — | — |
Comments
Loading…
Similar plugins
by YYTbit
Bridge opencode skills and config into DeepSeek Harness
★ 4
↓ 94/wk
MIT
TypeScript
Aug 14, 2026
dsh plugin --profile web add dsh-plugin-opencode-bridgeby Hades03
DeepSeek Harness plugin: DeepSeek balance and per-provider/model token usage in a draggable overlay.
★ 0
MIT
JavaScript
Aug 22, 2026
dsh plugin --profile web add dsh-model-quota-usageby masknull
将 Qoder(国内版 / 国际版)的模型以个人访问令牌(PAT)接入 DeepSeek Harness —— 双变体独立配置、侧栏额度展示、上下文窗口一键切换。|Qoder CN & international models for DeepSeek Harness via PAT. 支持 DSH 0.1.5-rc.1+。
★ 3
MIT
TypeScript
Sep 20, 2026
dsh plugin --profile web add dsh-qoder-connectby 2275803244-cpu
One-click provider/model switcher client plugin for the DeepSeek Harness web GUI
★ 0
MIT
JavaScript
Sep 9, 2026
dsh plugin --profile web add dsh-client-ui-model-switcherby CJYLZS
auto sync opencode-go models in dsh
★ 3
JavaScript
Sep 4, 2026
dsh plugin --profile web add dsh-opencode-go-autosyncby wss534857356
Codex App Server model provider for DeepSeek Harness using your local Codex login.
★ 6
↓ 54/wk
MIT
TypeScript
Sep 12, 2026
dsh plugin --profile web add dsh-llm-codex-app-server