DeepSeek Harness 插件

dsh-api-cost

DeepSeek Harness 插件:实时显示本会话 API 用量开销,按 provider token 用量 × 可配置费率计价,输入栏上方成本条。Real-time per-session API cost meter for DeepSeek Harness: prices provider-reported token usage with configurable rates and(英文原文)

跳到安装方式

来源信息

GitHub 仓库
CCCq-C/dsh-api-cost
最近更新
2026年8月15日
分类
记忆
GitHub stars
0
载体类型
plugin
目录证据
上游声明已找到 dsh.bundle
证据路径
package.json#dsh.bundle
核对版本
0.1.0-rc.8
上游核对日期
2026-08-20

该证据由上游目录提供。本站没有安装、运行或安全审核这个插件。

安装

默认先复制一段 Prompt,让 Agent 读 GitHub 仓库和源码;需要自己装时再切到命令。

复制这段 Prompt,发给 DSH、Codex 或其他 Agent,让它先读 GitHub 仓库和源码。

请先不要安装或执行任何命令。阅读这个插件的 GitHub 仓库、README 和关键源码,然后用清楚、直接的方式回答以下问题,帮助我判断它是否适合我的需求:

1. 这个插件是什么,解决什么问题;
2. 适合哪些用户和典型使用场景;
3. 安装后如何使用,并给出一个最小使用示例;
4. 有哪些已知限制,以及隐私、安全、兼容性或维护风险;
5. 给出“推荐 / 有条件推荐 / 不推荐”的明确建议和理由。

请区分仓库明确说明、根据源码推断和未知信息。证据不足时请明确说明,不要猜测或照抄 README。

GitHub:https://github.com/CCCq-C/dsh-api-cost
插件名:dsh-api-cost
作者:CCCq-C

检查来源文件

安装前先看这个插件目录里的 README 和其他文件。

文件资源管理器4 个文件
README.zh.md来源说明 · 只读预览
README 语言

dsh-api-cost

English | 中文

一个 deepseek-harnessdsh) 的 Host + Web Client 插件:实时显示本会话 API 用量开销——把 provider 上报的 token 用量(未缓存输入 / 缓存命中输入 / 输出)按可配置的模型费率计价,在输入栏 上方渲染一条实时成本条。可通过 dsh plugin add 安装。

特性

  • apiCost 会话投影(node half):对会话日志做纯函数折叠,把每个 provider

用量样本按当前模型费率计价——流式 usage chunk 实时更新成本,最终 assistant/message 不会重复计费。

  • 输入栏上方成本条(browser half):API 开销 $0.0023 1.2K + 3.4K tok

实时刷新;悬停显示分桶明细(输入 / 缓存命中 / 缓存写入 / 输出 + 模型 id)。

  • 可配置定价:美元 / 每百万 tokens;未知模型回退默认费率表,按模型覆盖走

插件行的 config(见[配置](#配置))。

  • 中英双语,跟随宿主 UI 语言。
  • 自包含:无需改动宿主仓库——包内 cordis.patch.yml 以 bundle layer 自动

插入自己的 row。

安装

dsh plugin --profile web add dsh-api-cost

安装器会把包加入 web profile 的 dependencies 与 bundle 列表;重启 dsh web 后 loader 自动应用包内 cordis.patch.yml。然后打开任意会话发一条消息——成本条出现 在输入栏上方,并随 token 流式输出实时增长。

手动安装(同一机制,绕过安装器):编辑 $DSH_HOME/profiles/web/package.json, 在 dependencies"dsh-api-cost": "<版本>"、在 dsh.profile.bundles 数组加 "dsh-api-cost",然后在该目录跑 pnpm install 并重启。

Peer 依赖为官方 @deepseek-ai/* 包(^0.1.0-rc.6)与 react,均由宿主提供。

配置

插件自带可用默认值,且没有 Config schema:通过给 profile 的 cordis.patch.yml(如 $DSH_HOME/profiles/web/cordis.patch.yml)里 api-cost 行设置 config 来覆盖定价:

- id: api-cost
  config:
    currency: USD
    # 未知模型回退费率(美元 / 每百万 tokens)
    rates:
      input: 0.27
      cacheRead: 0.07
      cacheWrite: 0.27
      output: 1.1
    # 按模型覆盖(部分对象,缺失字段回退到 rates)
    models:
      deepseek-chat:
        input: 0.27
        cacheRead: 0.07
        cacheWrite: 0.27
        output: 1.1
      deepseek-reasoner:
        input: 0.55
        cacheRead: 0.14
        cacheWrite: 0.55
        output: 2.19
      deepseek-v4-pro:
        input: 0.27
        cacheRead: 0.07
        cacheWrite: 0.27
        output: 1.1
      deepseek-v4-flash:
        input: 0.14
        cacheRead: 0.03
        cacheWrite: 0.14
        output: 0.55

计费分桶遵循 harness 的 TokenUsage 约定(互斥计数):DeepSeek 的 prompt_tokens 已含缓存命中,官方 adapter 已把 cacheReadTokensinputTokens 中扣除,因此:

分桶含义费率
inputTokens缓存未命中输入input
cacheReadTokens缓存命中输入cacheRead
cacheWriteTokens缓存写入(DeepSeek 不报告)cacheWrite
outputTokens输出output

> deepseek-v4-pro / deepseek-v4-flash 的默认价是占位值,官方定价公布后请更新。

投影

apiCost 会话投影暴露:

字段含义
cost总成本(货币单位)
inputCost / cacheReadCost / cacheWriteCost / outputCost分桶成本
inputTokens / cacheReadTokens / cacheWriteTokens / outputTokens分桶 tokens
model / provider当前路由(last-wins)
currency货币代码

已知限制

  • 是估算不是账单:成本由本地会话日志计算,可能与官方账单有差异(provider 侧

缓存、价格变动、模型更名等)。费率表是唯一事实来源,请保持更新。

  • 模型切换粒度:每个用量样本按其上报时的当前路由计价,会话中途切换模型后,

后续 step 按新模型费率计价。

  • 子代理有独立的 session id,不会汇总进父会话的成本条。

License

[MIT](LICENSE)