DSH Hub
dsh-opencode-go cover

Duskriver/dsh-opencode-go

dsh-opencode-go

UIWeb UI194 GitHub stars· updated 2026-10-23

dsh-opencode-go is a community DeepSeek Harness plugin. Read the repository README before installing.

Install

npx @deepseek-ai/dsh plugin --profile web add dsh-opencode-go

Restart `dsh web` after install. Bundle APIs can change during the developer preview.

README badge

dsh-opencode-go DSH Hub badge
[![DSH Hub](https://dshhub.dev/badge/dsh-opencode-go.svg)](https://dshhub.dev/plugins/dsh-opencode-go)

Paste this into your README. The star count updates with every catalog sync.

From the README

Excerpt from Duskriver/dsh-opencode-go, cleaned of badges and images.

<h1 align="center">dsh-opencode-go</h1>

<a href="README.en.md">English</a> · <a href="#常见问题-faq">常见问题</a> · <a href="docs/advanced.md">高级指南</a> · <a href="docs/development.md">开发与测试</a>

为 DeepSeek Harness (DSH) 量身打造的 OpenCode Go 专属接入与多账号管理插件。

DSH 原生支持接入 OpenCode Go,但原生模式无法满足复杂的生产与日常开发需求(如多账号无感容灾、会话级 Prompt 缓存绑定、会话内实时额度透视等)。本插件基于 Cordis 微内核架构,在提供完整模型协议转换的同时,带来了流畅的客户端 UI 与企业级容灾体验。


✨ 核心特性

  • 🛡️ 多账号无感容灾:支持最多 20 个账号集中管理与拖拽排序。当主账号额度耗尽或 Key 失效时,在输出前自动尝试备用账号,成功后自动扶正,告别“聊到一半额度没了”的打断感。
  • ⚡ 会话级 Prompt 缓存绑定:严格遵循网关协议注入专有 x-opencode-session 路由头,稳定复用网关上下文缓存,显著降低响应首字延迟。
  • 📊 会话内额度实时透视:在聊天输入框旁常驻“用量胶囊”,直观展示 5 小时滚动、每周、每月的额度百分比及重置时间倒计时;支持休眠节能与静默刷新。
  • 💰 本地用量看板:在本地扫描会话历史,按模型与峰谷时段统计 Token 消耗与估算开销,不上传统计所用的会话内容;模型和价格元数据从 models.dev 联网刷新。
  • 🎛️ 模型与热配置:无需重启 DSH!随时在线调整模型上下文窗口、最大输出上限、思考预算(Thinking Budget),并支持 HTTP/HTTPS/SOCKS5 代理。

🚀 快速开始

适用于 DSH 0.1.5-rc.1 及以上版本(完整支持矩阵见兼容矩阵)。

1. 安装插件

方式 A:在 DSH 界面中一键安装(推荐)

  1. 打开 DSH,进入 插件 → 添加插件。
  2. 输入 dsh-opencode-go(或填入仓库地址 https://github.com/Duskriver/dsh-opencode-go),点击 安装。
  3. 安装完成后点击 立即启用。

方式 B:命令行安装

dsh plugin --profile web add dsh-opencode-go

命令行安装后请重启 dsh web。Headless 用户请使用 --profile headless。

2. 配置与使用

  1. 打开 设置 → OpenCode Go,填入你的 OpenCode Go API Key;若有多个账号,可在 账号 卡片中点击添加。
  2. 在任意会话的模型选择器中,选择 DSH OpenCode Go 目录下的模型。
  3. 开始对话,输入区右下角即可看到实时的用量胶囊。

💡 深度功能与运行机制

1. 多账号管理与无感容灾(Auto-failover)

在 设置 → OpenCode Go → 账号 中集中管理你的所有账号:

  • 拖拽排序即优先级:列表第一项为当前主账号;鼠标拖拽左侧手柄调整顺序,这个顺序也是自动尝试备用账号的优先次序。
  • 出词前无感切换:开启“自动使用备用账号”后,若当前账号在发出请求后遇到了 401/403 鉴权失败、429 限流或 Quota 额度耗尽:
    • 插件会在开始向你输出文字前,静默挑出下一个备用账号重新发送请求。
    • 成功出词的备用账号会自动移至首位成为新主账号,并在会话面板给出切换提示。
    • 防御机制:若模型已经开始吐字或已产生计费,插件不会切换,避免拼接乱码或重复扣费。
  • 防雪崩冷却黑名单:被网关拒绝的 Key 会进入 5 分钟的内存冷却名单,避免短时间内反复向已失效的账号发起无意义的重试。
  • 凭据安全隔离:Key 直接存储至 DSH 底层凭据系统,前端界面永远不会回显明文密钥。

2. 会话内订阅额度透视(UsagePill)

在聊天输入区旁,常驻有直观的“用量胶囊”。点击即可展开完整的用量卡片:

  • 三窗口精准监控:
    • 🟢 5 小时滚动配额:短周期高频使用的健康度。
    • 🟡 每周配额:本周累计使用进度。
    • 🔴 每月配额:月度套餐消耗百分比。 每个窗口均显示精确的重置倒计时;进度条会随着接近上限变黄,耗尽时变红。
  • 节能与防抖机制:默认每分钟静默刷新;当页面切入后台或浏览器最小化时自动暂停轮询,切换回前台时即时刷新。
  • 账号全名与快速切换:多账号时直接显示当前账号全名(名字过长以省略号截断),展开面板点击“切换”即可直接提拔目标账号为主账号。
  • 显示模式(在 高级设置 → 额度显示 中配置):
    • 自动(默认):仅在使用 DSH OpenCode Go 模型时显示。
    • 常驻:切换到其他厂商模型时,仍然保持胶囊显示。
    • 关闭:隐藏胶囊并停止后台用量轮询。

3. 用量与开销看板(Analytics)

点击用量面板底部的 用量统计,或进入 设置 → OpenCode Go → 用量统计 即可唤出看板:

  • 本地扫描与缓存:直接调用 DSH 宿主 sessionQuery 扫描本地历史会话,统计本插件产生的 Token 消耗,不会为统计上传会话内容。模型和价格元数据会从 models.dev 联网刷新。已关闭会话的折叠结果会按日志 revision 缓存在本地;revision 可用时只重读变更过的会话,不可用时最多复用 5 秒。
  • 峰谷电价式开销估算:使用从 models.dev 获取的模型价格;自动识别 DeepSeek V4.1 Flash / V4 Pro 等模型的官方峰时时段(UTC 周一至周五 01:00–04:00、06:00–10:00)并按双倍费率估算金额。
  • 四款专属主题:支持在 寂静黑 / 石墨(默认)/ 海盐青 / 暖砂 之间切换,自动适配系统的亮色/暗色模式。

🛠️ 架构设计与工作原理

本插件采用严格的宿主-客户端分离(Host-Client Separation)架构:

…

Related plugins