Existence001100/dsh-budget-guard-plugin ↗★ 1

dsh-budget-guard-plugin

A budget guard plugin for DSH (DeepSeek Harness).

包名
dsh-budget-guard-plugin
兼容性
待验证
版本
0.4.5
许可证
MIT
最近更新
2026年11月2日

安装

$npx -p @deepseek-ai/dsh dsh plugin --profile web add dsh-budget-guard-plugin

配置项

键默认值说明
budgetAmount0每个会话默认金额预算;0 表示不设金额上限
tokenBudget0每个会话默认 Token 预算;0 表示不设 Token 上限
currencyCNY只支持 CNY / RMB;两者都是人民币,统一显示 ¥(不做汇率换算)
warnRatio0.8预警比例,必须 ≤ interceptRatio
interceptRatio0.95拦截阈值(0.01–1)
interceptModeautoauto:自动取消;manual:只提示,等用户点「继续 / 中止」
enablePreEstimatetrue任务开始前给出粗估
enableTurnEstimatetrue每轮结束后显示消耗估算:未提供计划时只展示近期历史均值,不做未来外推
estimateOutputbothchat / sidebar / both
turnEstimateMinInterval1500两次预估的最小间隔(毫秒),避免连续快轮重复计算
enforceAtPreSteptrue在 agent/pre-step 也做硬拦截,防止超预算后继续买模型调用
holidays[]法定节假日(YYYY-MM-DD)。非空时完全覆盖内置表;为空 / 全部非法且 useBuiltinHolidays=true 时回退内置表
useBuiltinHolidaystrue为空时是否允许回退内置 2024–2026 节假日表;false 时为空表示“无节假日”;2027 起内置表超范围会 warn
allowedOrigins[]开发用跨源白名单;生产默认只允许同源,见“HTTP 路由”
enableSnapshottrue将累计状态写入冷启动快照
snapshotPath''快照基路径;空值时使用 $DSH_HOME/budget-guard/snapshots.json,实际写入 `.
.json`
snapshotMaxSessions200每个实例快照最多保留的会话数;活跃会话优先保留
snapshotKeepTurns8快照保留最近多少轮的全部 stepCharges 明细;更早的重试会被拒绝并 warn,不会重复累加
snapshotMaxAgeDays30非活跃快照的最长保留天数;0 表示不按时间清理
unknownWarnRatio0.2未定价 token 占比达到此值时提示“按最高价估算,实际可能偏低”
maxGrantedPercent30manual「继续」最多累计放行比例;默认终值 130%,严格低于 142.5% 硬停线
manualHardStopRatio1.5manual 模式(含 suppress)超过 interceptRatio × 该值 时强制中止
perSessionMaxSettled2000每个会话保留多少条已结算摘要;超过后新步骤只记标记,重试会被拒绝而不是替换
requireLocalControltrue/config/save(改全局预算)只接受本机(loopback)请求;远程 GUI 改预算需显式关闭
requireLocalActiontrue/action(继续 / 中止 / 设置本次预算)只接受本机请求;可单独关闭以支持远程 manual 操作

单价只影响“金额”核算;Token 预算始终按真实 usage 计算。价格不在 Config 里硬编码,见下一节。

GET /dsh-budget/config 还返回 4 个只读字段(output / holidaysSource / priceSources / server),它们不能通过 /config/save 写回;含义见「HTTP 路由」下的「只读字段」小节。