deepseek-harness
deepseek-ai
DeepSeek Harness: Everything is a Plugin.
PROJECT TOPICS
INSTALL REFERENCE
dsh plugin --profile web add github:xiaochuan7/dsh-opencode-quota
该命令指向仓库当前默认分支;尚无绑定当前 commit 的完整验证结果。
PROJECT README
面向 DeepSeek Harness 的社区插件,按官方
dsh-plugin话题收录,可配合任何编码 Agent 自动安装适配。
在 DeepSeek Harness 聊天界面中,为内置的「上下文占比」圆环面板(ContextMeter)添加 OpenCode Go 套餐额度 显示:
剩 X%)、重置时间点输入框上方的上下文占比圆环,面板顶部即显示额度:
面板细节:
以上为真实截图,数值来自当前 OpenCode Go 账户的真实配额。
把下面这段提示词发给你的编码 Agent(DSH、Claude Code、Cursor、Gemini CLI 等),它会根据你本地的实际版本自动完成改动,不需要手动替换文件:
为 DeepSeek Harness 项目添加「OpenCode Go 套餐额度」显示:在聊天输入框的上下文占比圆环(ContextMeter 面板)顶部显示额度区块。
参考实现见仓库 Dsh-OpenCode-Go-(如可用):
packages/client/ui-conversation/src/client/skeleton/ContextMeter.tsx— 前端组件改动packages/client/ui-conversation/src/client/skeleton/ContextMeter.module.css— 样式server/opencode-quota-route.mjs— 服务端路由GET /api/opencode-quota参考实现server/cordis.patch.yml— 挂载配置示例要求(参考实现已覆盖,请按你的实际版本适配):
- 前端:ContextMeter 面板顶部渲染「OpenCode Go 额度」区块,共三项:月限额、周限额、五小时。每项显示:名称、使用进度条、剩余百分比(
剩 X%)、重置时间。进度条颜色按剩余量分级:≥50% 用绿色、≥20% 用橙色、<20% 用红色。- 数据源:组件挂载后请求
/api/opencode-quota,之后每 60 秒刷新一次。响应格式:{ ok: true, usage: { rolling: { percent, status, resetsAt }, weekly: {...}, monthly: {...} } },其中percent是已用百分比(剩余 = 100 − percent)。请求失败或ok不为true时隐藏额度区块,面板保持官方原样。- 服务端路由:提供
GET /api/opencode-quota:
- 从部署配置读取 LLM 网关
baseURL(settings 的llm-deepseek.baseURL,未设置时回退web-search-deepseek.baseURL/ 默认值)与 API key(apiKeyEnv环境变量,按需回退OPENCODE_GO_API_KEY→DEEPSEEK_API_KEY)- 仅当
baseURL匹配opencode.ai时返回额度;否则返回{ ok: false, notApplicable: true }(面板自动隐藏)- 请求
{baseURL}/usage(Authorization: Bearer <key>)获取usage.rolling / weekly / monthly- 成功结果缓存约 60 秒;失败不缓存(配置切换立即生效)
- 通过部署的 cordis 用户 patch(如
~/.dsh/profiles/web/cordis.patch.yml)挂载该插件,用webServer.register注册路由- 解耦:路由缺失、不可用或网关不是 OpenCode Go 时,前端自动隐藏额度区块,不影响原有上下文占比功能。
完成标准:构建后打开 GUI 的上下文占比圆环,面板顶部可见额度区块且三项数据正确(数值来自当前账户的真实配额);把网关切到非 OpenCode Go 后额度区块消失、面板恢复官方原样。
packages/client/ui-conversation/src/client/skeleton/pnpm build 或项目对应的打包命令)server/opencode-quota-route.mjs 放到你的用户 patch 目录(默认 ~/.dsh/profiles/web/),并参照 server/cordis.patch.yml 在 cordis.patch.yml 里挂载settings.yaml 中 LLM 网关 baseURL 指向 OpenCode Go(如 https://opencode.ai/zen/go/v1),并配置 API key 环境变量(OPENCODE_GO_API_KEY 或 DEEPSEEK_API_KEY)| 文件 | 说明 |
|---|---|
packages/client/ui-conversation/src/client/skeleton/ContextMeter.tsx |
前端组件改动(额度区块渲染 + 轮询) |
packages/client/ui-conversation/src/client/skeleton/ContextMeter.module.css |
额度区块样式 |
server/opencode-quota-route.mjs |
服务端路由参考实现(GET /api/opencode-quota) |
server/cordis.patch.yml |
路由插件的挂载配置示例 |
本插件为 DeepSeek Harness 社区插件,已按官方规范标记 dsh-plugin 话题(GitHub 仓库 Topics 中可查),并附官方 "powered by dsh" 徽章:
CLASSIFICATION EVIDENCE
系统优先读取 GitHub Topics,再与站内分类词典和词根规则比对。当前命中: 无有效分类标签。