johnwick128-ship
dsh-opencode-subscription
在 DSH 中管理 OpenCode Go/Zen 官方订阅:官方订阅直达(支付宝)、API Key 安全验证接入、套餐额度查询与换算、主界面常驻额度徽标
- Stars
- 0
- Language
- JavaScript
- Created
- Aug 15, 2026
- Updated
- Aug 15, 2026
Introduction
DSH OpenCode 订阅助手(dsh-opencode-subscription)
在 DeepSeek Harness Web GUI(DSH)中一键管理 OpenCode Go / Zen 官方订阅:官方订阅直达(支持支付宝)、API Key 安全验证接入、Go 套餐剩余额度查询与换算、主界面常驻额度徽标。
话题:
dsh-plugin| 平台:DeepSeek Harness(dsh)Web GUI
功能
| 功能 | 说明 |
|---|---|
| 官方订阅直达 | 一键打开 OpenCode 官网(域名白名单,防钓鱼),官方支付页支持支付宝扫码 |
| 网络可达性检测 | 探测 opencode.ai 连通性,不可达时提示检查代理(含 IPv4 优先修复) |
| API Key 安全接入 | Key 只发往官方端点做只读验证(~1 token),验证通过后存入 DSH 本机凭据库(OPENCODE_API_KEY),settings 只存引用 |
| 模型路由注册 | 自动注册 pi-ai 官方 catalog 路由 opencode-go,DSH 模型选择器直接可选 deepseek-v4-flash / deepseek-v4-pro |
| 套餐额度查询 | 调用官方 GET /zen/go/v1/usage,展示滚动 5h / 周 / 月三个窗口的已用%、剩余%、重置时间 |
| 额度换算 | 按套餐总额 × 剩余% 估算剩余美元;按 deepseek-v4-flash 官方单价估算 token 数(总额可调) |
| 主界面常驻徽标 | 输入框下方统计行显示 Go 额度 5h剩X% · 周剩X% · 月剩X%,每 5 分钟自动刷新 |
| 一键移除 | 删除本地 Key + 注销模型路由 |
安全设计(第一优先级)
- 插件零接触支付信息:付款(含支付宝扫码)始终在 OpenCode 官方网站(
opencode.ai域名白名单、完整 URL 展示)完成,卡号/支付宝信息只提交给官方支付服务商; - Key 只发官方端点:验证走
https://opencode.ai/zen/go/v1/chat/completions(只读、最小请求),用量查询走https://opencode.ai/zen/go/v1/usage(只读、零消耗); - Key 存储:存入 DSH 官方凭据库(
~/.dsh/.credentials.yaml,用户级 ACL),settings 只存apiKeyEnv: OPENCODE_API_KEY引用;不落日志、不回显、不经过对话; - 不保存账号会话:插件不存储 opencode 登录态(登录只发生在你的浏览器与官方域名之间);
- 审计通过:全量扫描确认 Key 在本机只有凭据库一个明文落点,RPC 参数与子进程环境均不记录。
安装
方式一:动态插件(快速体验)
在 DSH 会话中让 Agent 执行:
cordis_define(plugin idPrefix:ocpay)——代码见plugin.json;cordis_run激活;- 设置页出现 "OpenCode 订阅",主界面统计行出现额度徽标。
动态插件随 DSH 进程重启失效(Key 与模型路由配置持久)。
方式二:持久化(推荐)
- 复制
plugin.json到~/.dsh/oc-subscription/plugin.json; - 复制
oc-restore.js到~/.dsh/profiles/web/oc-restore.js; - 在
~/.dsh/profiles/web/cordis.patch.yml追加:
- id: oc-restore
name: './oc-restore.js'
- 重启 DSH。恢复插件会在首个会话创建时自动重放插件(define + run)。
使用流程
- 设置 → OpenCode 订阅 → 点"前往 OpenCode 官网完成订阅(支付宝)"→ 官方页面登录,Go 套餐用支付宝扫码(首月 $5 含 $60 额度,之后 $10/月);
- 官方控制台(Dashboard)生成 API Key(
sk-oc-...); - 插件粘贴 Key → 验证并接入(自动识别套餐,写入凭据库 + 注册模型路由);
- 输入框
/model选择opencode-go / deepseek-v4-flash; - 主界面统计行常驻显示剩余额度,设置页可查详细窗口与换算。
官方端点(已实测)
| 端点 | 用途 |
|---|---|
GET https://opencode.ai/zen/v1/models | 模型列表(公共,不鉴权) |
POST https://opencode.ai/zen/go/v1/chat/completions | Go 套餐对话(鉴权,401=Key 无效) |
GET https://opencode.ai/zen/go/v1/usage | Go 套餐用量(返回 {usage:{rolling,weekly,monthly}},各含 percent/resetsAt) |
Go 套餐可用模型(16 个,已实测)
2026-08-15 对每个模型发最小 1-token 请求实测,16/16 全部可用(HTTP 200)。验证 Key 时全部自动注册到 opencode-go 路由,DSH 模型选择器可直接选用。
| 模型 ID | 名称 | 协议 | 上下文 | 最大输出 |
|---|---|---|---|---|
| deepseek-v4-flash | DeepSeek V4 Flash | openai-completions | 1M | 384K |
| deepseek-v4-pro | DeepSeek V4 Pro | openai-completions | 1M | 384K |
| glm-5.1 | GLM-5.1 | openai-completions | 202K | 32K |
| glm-5.2 | GLM-5.2 | openai-completions | 1M | 131K |
| hy3 | Hy3 | openai-completions | 256K | 64K |
| kimi-k2.6 | Kimi K2.6 | openai-completions | 262K | 65K |
| kimi-k2.7-code | Kimi K2.7 Code | openai-completions | 262K | 262K |
| kimi-k3 | Kimi K3 (2x usage) | openai-completions | 1M | 131K |
| mimo-v2.5 | MiMo V2.5 | openai-completions | 1M | 128K |
| mimo-v2.5-pro | MiMo V2.5 Pro | openai-completions | 1M | 128K |
| minimax-m2.7 | MiniMax-M2.7 | openai-completions | 204K | 131K |
| qwen3.6-plus | Qwen3.6 Plus | openai-completions | 1M | 65K |
| grok-4.5 | Grok 4.5 | openai-responses | 500K | 500K |
| minimax-m3 | MiniMax-M3 | anthropic-messages | 1M | 131K |
| qwen3.7-max | Qwen3.7 Max | anthropic-messages | 1M | 65K |
| qwen3.7-plus | Qwen3.7 Plus | anthropic-messages | 1M | 65K |
重新验证可用性:仓库内 test-models.js(从凭据库读取 Key,逐个模型发最小请求,不输出 Key)。
已知限制
- 官方用量 API 只返回百分比(
percent+resetsAt),不提供 token 计数值——插件提供美元/token 换算(估算); - 额度查询与模型调用均依赖外网(云服务本质);
- 本机到 opencode.ai 的 IPv6 路由可能间歇不通,插件已强制 IPv4 优先(
--dns-result-order=ipv4first)。
相关项目
- xiaoqi20/dsh-opencode-go-usage:仅查看 Go 套餐额度(本插件额度部分与其等价,并扩展了订阅引导/Key 接入/模型路由/主界面徽标)
- Ychris12138/dsh-usage-stats:DeepSeek 官方余额与用量热图(不同功能)
许可
MIT