🎁 福利专区全网大模型免费应用 + 新用户福利 + 注册活动入口,低成本玩转 AI

OpenCode 额度圆环 GLFzr/dsh-opencode-go-quota

DeepSeek Harness
GLFzr13 天前有提交已提供中文文档扫描:含敏感能力

DSH 插件:OpenCode Go 额度圆环 —— 输入框模型选择器左侧的进度圆环,点击切换…

34.2/100
综合分
6
GitHub 星标
—
npm 周下载
—/5
用户评分

数据截至 2026/10/22 · 周下载取自 npm 全网(含 CI / 镜像),非本站安装数;综合分由星标、活跃度与兼容性检查合成。

自动兼容检查有告警:未发布到 npm registry,仅可从源码安装。
安装命令 · 需先装 dsh CLI 引擎
dsh plugin --profile web add GLFzr/dsh-opencode-go-quota
该包不可直接 npm 安装,改从 GitHub 源安装(明细见下方安装检查)

状态速览

判定依据:实装验证 · 静态安装检查 · 自动扫描 · 仓库维护状态
信任档位:已验证
是什么
dsh 原生插件 · ui
装得上吗
本站已在 dsh 0.2.1-rc.2 下真实安装成功
非静态推断
L4 · 真实安装等级说明 →
安全吗
本站尚未对该插件做风险分级
暂未覆盖,不等同于无风险
还在维护吗
活跃:最近一次提交在 13 天前
档位由哪些信号合成

本站实装验证(真实安装 L4 覆盖全站;L5 为运行时冒烟或实机截图,覆盖范围小于 L4) · 验证所用 dsh 版本 · 静态安装检查 · 风险分级 · 仓库维护状态。 下方各区块是它的证据明细。

验证判据与等级说明 →
社区实装还没有人打卡 · 装过的第一个就是你
安装兼容性检查⚠ 装前注意

未发布到 npm registry,仅可从源码安装

展开查看检查明细 ↓

以下结论由程序自动检查 npm 包、engines 声明与入口文件得出,未做人工实机验证——能装不等于用着没问题。

✗npm 包dsh-opencode-go-quota(未发布到 npm,仅可源码安装)
✓Node 引擎未声明 engines.node
✓dsh CLI 依赖未声明 dsh 版本约束
✓入口文件main/exports/bin 已声明

验证方式:npm registry 存在性 + package.json 静态校验 · 最后检查 2026/10/27 17:54:19

安全扫描自动 · 静态分析源码
v2.7.0
🔵 扫描:含敏感能力尚无人工评估
展开查看扫描说明与证据 ↓

静态扫描发现插件具备触达本地系统的能力:执行外部命令、读写/删除本地文件、读取剪贴板或密钥类环境变量(至少其一)。这是能力清单,不是危险判定——具体能力项与证据见下方,安装前请自行判断是否需要。

读写/删除本地文件发起外部网络请求
查看扫描证据(共 3 处,展示前 3 条)
  • 读取本地文件
    lib/index.js:297
    const readFile = options.readFile === undefined ? (file) => fs.readFileSync(file, 'utf8') : options.readFile
  • 读取本地文件
    lib/index.js:299
    ? (dir) => fs.readdirSync(dir, { withFileTypes: true }).filter((entry) => entry.isDirectory()).map((entry) => entry.name)
  • 发起网络请求
    lib/client.js:52
    return fetch('/ocg-quota/usage', force
扫描于 2026/11/4(0 天前) · 范围 入口闭包 + 发布文件清单 · 来源 GitHub 仓库

静态扫描只反映源码中出现的调用,不构成安全背书;人工评估与自动扫描相互独立、互不覆盖。

给这个插件打分还没有人投票↓
用户评分
还没有人投票,来当第一个

功能亮点

  • 显示额度进度圆环
  • 点击切换用量周期
展开完整介绍(108 字)↓

DSH 插件:OpenCode Go 额度圆环 —— 输入框模型选择器左侧的进度圆环,点击切换 5小时/每周/每月用量(OpenCode Go quota ring for DeepSeek Harness Web)

README

由 DeepSeek 最新模型翻译生成
dsh-opencode-go-quota OpenCode Go 额度圆环 —— DSH 的持久化插件,Web 与桌面端(DSH Desktop)通用。 在聊天输入框模型选择器左侧显示一个 22px 进度圆环: - 中央字母 5 / W / M,点击循环切换 5小时 / 每周 / 每月 用量窗口 - 悬停显示「5小时 已用 X% · 重置倒计时」 - 颜色按紧急程度:绿 <30% / 蓝 30-60% / 橙 60-80% / 红 ≥80% - 每 5 分钟自动刷新,点击切换时若数据超过 1 分钟则强制刷新 - 额度告急(≥80%)时圆环红色脉冲闪烁,悬停提示「⚠ 5小时额度即将用尽,建议暂停等重置」 配合 dsh-token-ledger 使用 额度(钱)与 token 用量是两回事:本插件回答「还剩多少额度」, dsh-token-ledger 则逐请求记录真实的输入 / 输出 / 缓存命中 token 数(会话顶部「用量」页,堆叠柱状图,支持按请求/按小时/按天/按轮次查看)。两个插件可同时安装、互不依赖:额度圆环在输入框左侧,token 用量在「用量」页。
展开完整文档(README 剩余 1 节)
dsh-opencode-go-quota

OpenCode Go 额度圆环 —— DSH 的持久化插件,Web 与桌面端(DSH Desktop)通用。

在聊天输入框模型选择器左侧显示一个 22px 进度圆环:

- 中央字母 5 / W / M,点击循环切换 5小时 / 每周 / 每月 用量窗口
- 悬停显示「5小时 已用 X% · 重置倒计时」
- 颜色按紧急程度:绿 <30% / 蓝 30-60% / 橙 60-80% / 红 ≥80%
- 每 5 分钟自动刷新,点击切换时若数据超过 1 分钟则强制刷新
- 额度告急(≥80%)时圆环红色脉冲闪烁,悬停提示「⚠ 5小时额度即将用尽,建议暂停等重置」

配合 dsh-token-ledger 使用

额度(钱)与 token 用量是两回事:本插件回答「还剩多少额度」, dsh-token-ledger 则逐请求记录真实的输入 / 输出 / 缓存命中 token 数(会话顶部「用量」页,堆叠柱状图,支持按请求/按小时/按天/按轮次查看)。两个插件可同时安装、互不依赖:额度圆环在输入框左侧,token 用量在「用量」页。

对话内额度提醒(Codex CLI 式)

每次 agent 请求时,插件会把当前额度状态动态注入 system prompt,只在进入新档位时注入一次(同档内后续请求不重复,prompt 前缀稳定、省 token、利于缓存命中):

| 5小时用量 | 行为 |
| <60%(warnAt) | 不注入(零 prompt 成本) |
| 60%-79% | 注入一次:注意档——建议在合适节点提醒用户、暂停待恢复 |
| 80%-89% | 注入一次:告急档——主动提醒、任务边界暂停 |
| 90% 起 | 每增长 2% 递进一档(90/92/94/...),措辞紧急程度递增:严重 → 濒临耗尽 → 即将耗尽 → 几乎耗尽 → 近极限 → 已用尽(100%),每档只提醒一次 |

窗口重置回 60% 以下后,升档记忆自动清除,下次爬升会重新按档提醒。

阈值可通过 cordis.yml 配置(warnAt / criticalAt / escalateFrom / escalateStep,默认 60 / 80 / 90 / 2;cacheTtl 为用量缓存秒数,默认 60;weeklyWarnAt / monthlyWarnAt 为周/月圆环警示阈值,默认 90 / 95):

- id: dsh-opencode-go-quota
config:
warnAt: 60
criticalAt: 80
escalateFrom: 90
escalateStep: 2
cacheTtl: 60
weeklyWarnAt: 90
monthlyWarnAt: 95

数据不可用(无 key / 接口失败)时注入为空,不产生 prompt 噪声;圆环显示灰色 !,悬停可见错误原因,宿主进程与浏览器控制台均有调试日志。

数据来源与 key 解析(零配置)

插件不要求你另外准备一份 key:它按 DSH 自己配置模型的方式去解析 OpenCode 的 key,命中即用,全部失败才报错:

| 顺序 | 来源 | 说明 |
| 1 | 环境变量 OPENCODE_GO_API_KEY | 显式覆盖,优先级最高 |
| 2 | DSH 的 provider 绑定 | 从 $DSH_HOME/cordis.patch.yml 与 $DSH_HOME/profiles//cordis.patch.yml 找 OpenCode 的 provider(id 含 opencode,或 baseURL 指向 opencode.ai;默认模型所用的那个优先),取它的 apiKeyEnv(如 apiKeyEnv: OPENCODE_GO_API_KEY),再到 $DSH_HOME/.credentials.yaml 的 refs: 取同名密钥 —— 就是 DSH 调模型用的那把 key |
| 3 | $DSH_HOME/.env | DSH 的只读凭据兜底层 |
| 4 | provider 块内联的 apiKey: | 少数手工配置会直接写值 |
| 5 | ~/.local/share/opencode/auth.json 的 opencode-go.key | 兼容只装了 opencode CLI 的机器(容忍 UTF-8 BOM) |

也就是说:只要你的 DSH 已经把 OpenCode 配成模型提供商(设置 → 模型 → 第三方提供商 / 自定义模型 API),圆环开箱即用,不用手工同步 key。解析结果缓存 30 秒,收到 401 会立刻失效重读——在 DSH 里换了 key,下一次轮询即生效,无需重启。key 通过子进程环境变量(OCG_QUOTA_KEY)传递,不写进脚本文本、不落临时文件。

自定义 harness home(多 profile / 便携安装 / 测试)时,可在配置里指定:

- id: dsh-opencode-go-quota
config:
dshHome: 'D:/somewhere/.dsh'

接口与缓存

- 调用官方接口 GET https://opencode.ai/zen/go/v1/usage(Bearer 鉴权),宿主侧通过 node -(stdin 脚本)执行,不涉及 shell 引号
- 结果经 /ocg-quota/usage 路由提供给浏览器端与 prompt 注入(cacheTtl 秒节流缓存,默认 60;失败结果按 errorCacheTtl 秒短缓存,默认 5;响应含 thresholds)

只显示 Go 计划额度,不显示 Console 余额

圆环读的是 Go 计划的 5 小时 / 周 / 月窗口。Console 的按量余额目前没有可用的只读接口:/inference/v1/usage 返回 404;/console/api/v1/budgets/ 只接受 service-account key(All 权限,推理 key 会 403),而且返回的是成员月度预算而非余额。所以插件不显示余额,余额请看 <https://opencode.ai/console>。

安装

DSH Desktop(桌面端)

桌面端自带的 dsh CLI 是唯一能管理 desktop profile 的入口(该 profile 禁止用 CLI 直接启动):

Windows:用安装目录里的 CLI,把插件装进 desktop profile & '<安装目录>\resources\runtime\cli\bin\dsh.cmd' plugin --profile desktop add <本目录绝对路径> 或直接从 GitHub 安装 & '<安装目录>\resources\runtime\cli\bin\dsh.cmd' plugin --profile desktop add github:GLFzr/dsh-opencode-go-quota

然后完全退出并重启 DSH Desktop:插件行在启动时装配,热装载不生效。

DSH Web

本地路径安装
dsh plugin --profile web add <本目录绝对路径>

或直接从 GitHub 安装
dsh plugin --profile web add github:GLFzr/dsh-opencode-go-quota

重启 dsh web 后生效

卸载

dsh plugin --profile <web|desktop> remove dsh-opencode-go-quota

常见问题

圆环显示灰色感叹号(宿主报 shell failed / windows-acl-run ...)

插件需要宿主 shell 能运行子进程。DSH 的 Windows ACL 沙箱要求 sandbox-policy.workspaceRoot 不包含系统 TEMP 目录。

- 桌面端:workspace 根默认是 ~/.dsh/profiles/desktop,本身不含 TEMP,通常无需处理;若系统 TEMP 被改到该目录下,按下面的方式固定 workspaceRoot。
- Web 端:workspace 根默认取 dsh web 的启动目录,从用户主目录等位置启动即会触发(插件会显示友好提示)。

解决:在 ~/.dsh/profiles/<profile>/cordis.patch.yml 固定 workspace 根目录:

- id: sandbox-policy
config:
workspaceRoot: <你的 workspace 绝对路径>

然后重启 DSH。Web 端也可临时改为在 workspace 目录内启动 dsh web。

一直提示 "opencode-go key not found"

按上面的解析顺序排查:

- 你的 DSH 里有没有把 OpenCode 配成模型服务商?配了的话,$DSH_HOME/profiles/<profile>/cordis.patch.yml 里应有 opencode: { apiKeyEnv: ... },且 $DSH_HOME/.credentials.yaml 的 refs: 里有同名密钥;
- 或设置环境变量 OPENCODE_GO_API_KEY(优先级最高)后重启 DSH;
- 或跑过 opencode auth login,让 ~/.local/share/opencode/auth.json 里有 opencode-go.key(容忍 UTF-8 BOM);
- 若 key 存在但上游拒绝,圆环悬停会显示具体原因:api_key_expired 表示密钥过期——去 <https://opencode.ai/console> 重新生成,替换后无需重启。

本地 link: 安装时如何改代码即生效

profile 的配置变更(package.json / cordis.patch.yml)本来就会触发热重载,但模块热重载默认关闭: dsh-base 里 hmr 这一行的配置是 root: []("Profile configuration reloads by default; module roots are opt-in"),且默认 ignored 含 /node_modules —— 插件经 link: 挂在 node_modules 下,源码改动不会被监听。

把插件的真实目录加进 root,之后改 lib/.js 就会在运行中的 DSH 里重新 import 并重载该插件(免重启):

~/.dsh/profiles/<profile>/cordis.patch.yml
- id: hmr
config:
base: 'file:///<盘符>:/<插件父目录>' # 必须是 file: URL root:
- '<插件绝对路径>'

base 是监听基准目录:相对它计算出的路径若带 ../.. 段,会被默认 ignored 里的 */. 当成点开头目录匹配掉、改动被静默忽略。
另外 new URL(config.base, ctx.baseUrl) 会把裸写的 E:/x 里的 E: 解析成协议,所以必须写 file:///E:/x。

兼容性

宿主 shell 执行器在 DSH 0.2 由 ShellExecutor.run(spec) 改为 execute(spec)
(返回句柄,handle.result() 才携带退出码与输出)。插件同时支持两代 API,
0.1.x 与 0.2+(含桌面端)均可运行。

解析出的 key 通过 shell spec 的 env 字段交给子进程;若某个宿主不接受 env,插件会自动退回不带 env 的 spec,由子进程按「环境变量 → auth.json」自行解析,不会因此失败。

许可

MIT
预览分享卡片长什么样 ↓GLFzr/dsh-opencode-go-quota
分享 · DeepSeek Harness Hub
GLFzr/dsh-opencode-go-quota

DSH 插件:OpenCode Go 额度圆环 —— 输入框模型选择器左侧的进度圆环,点击切换…

这是你的仓库?认领条目

回到顶部