dsh-at-file
FSMargoo/dsh-at-fileCodex 风格的 `@file` 文件引用,输入框里直接搜索并引用工作区文件。
DSH Web 余额与会话用量插件:头部余额按钮(Session log 左侧),下拉展示账户余额、实时 token 明细(缓存未命中/命中、缓存写入、输出)、缓存命中率,以及按官方峰谷价自动切换的费用估算。
DeepSeek Harness Web 插件:会话头部余额按钮(位于原生 Session log 按钮左侧), 点击下拉查看 账户余额、当前会话的模型与实时 token 用量、以及按 DeepSeek 官方价目表 计算的费用估算。
¥558.42)DEEPSEEK_API_KEY(设置 → 模型,或 ~/.dsh/.credentials.yaml)dsh plugin --profile web add @lmmzss/dsh-plugin-balance
# 重启 dsh web 使插件生效
插件复用 DSH 现有配置:先确保已在「设置 → 模型」中配置好 DeepSeek API Key。
dsh plugin --profile web remove dsh-plugin-balance
lib/index.js):
GET /api/dsh-balance:读取凭证服务中的 DEEPSEEK_API_KEY(或环境变量兜底),代理请求
https://api.deepseek.com/user/balance(遵循 DEEPSEEK_BASE_URL 覆盖),返回脱敏 JSON——
API Key 不会暴露到浏览器;GET /api/dsh-pricing:每 6 小时以 ETag 条件请求同步官方定价页,解析峰谷价/旧价/生效日期/
高峰窗口,失败时保留上次价格。lib/client.js):以 dsh.client 双面包加载,注册到
conversation.session.header.utilities 槽位(order: -10,位于 Session log 左侧)。
useProjection("tokenUsage") 订阅 token-meter 的会话投影,实时更新;session.models RPC 读取当前会话的 provider/model;命中×命中价 + 未命中×未命中价 + 输出×输出价)。dsh plugin --profile web add /path/to/dsh-plugin-balance
# 修改 lib/client.js 后刷新页面即可生效;修改宿主端/配置需重启 dsh
npm test # 价格计算/格式化回归测试(node:test)
node scripts/prepublish-check.mjs # 发布前冒烟检查
# 1. 改代码并自测
npm test
# 2. 更新 package.json 版本号 + CHANGELOG.md
# 3. 发布 npm(需 npm 账号 2FA passkey 认证,走官方源)
npm publish --access public --registry=https://registry.npmjs.org/
# 4. 同步 GitHub(commit + tag + push)
git add -A && git commit -m "chore: release vX.Y.Z"
git tag -a vX.Y.Z -m "dsh-plugin-balance vX.Y.Z"
git push && git push --tags
会话头部余额按钮与下拉面板(账户余额 + 实时 token 明细 + 缓存命中率 + 官方价目表费用估算):