Skip to content

Releases: yhshzh/dsh-cline-pass

v0.2.8

Choose a tag to compare

@yhshzh yhshzh released this 04 Oct 15:04

v0.2.8

账号与密钥

  • 修复名称相近的账号共用凭据引用、导致密钥被覆盖的问题。
  • 修复切换账号后未保存的密钥草稿被带入另一账号的问题。
  • 修复密钥测试忽略账号专属网关地址,以及更新账号时意外重置未修改配置的问题。
  • 修复缺少密钥的账号阻断可用备用账号,以及部分 HTTP 401/403 响应未触发账号切换的问题。
  • 修复替换账号池后旧账号仍被保留的问题。
  • 修复密钥测试误报成功的问题,「保存并测试」失败时不再覆盖已有密钥。

旧版本若已覆盖账号密钥,需要重新输入;升级会保留现有凭据引用,无法恢复已被覆盖的密钥。

渠道探测与校验

  • 模型行新增「校验」按钮,可检查各渠道是否遵守钉住规则。每个渠道会发出一次请求,不会自动修改已有配置。
  • 修复模型探测将错误响应当成成功的问题,失败时保留已发现的渠道信息。
  • 修复渠道别名绕过排除规则的问题,如 zai、z-ai 和 Z.AI。
  • 渠道未报告实际服务方时显示为「未知」,避免误报校验通过。
  • 中英文说明更新为「探测 → 校验 → 手动选择渠道」流程。

请求历史

  • 修复请求历史达到保留上限后不再更新,以及空响应失败被记录为成功的问题。
  • 当天记录只显示时间,跨日记录显示日期。

宿主兼容

  • 修复缺少设置服务时,临时配置修改不生效的问题。
  • 修复用量徽标加载时的页面报错,保留旧版 dsh 的兼容行为。

v0.2.7

Choose a tag to compare

@yhshzh yhshzh released this 04 Oct 03:12

修复了 Cline Pass 窗口配额耗尽后账号池无法切换的问题,并补齐了用量徽标和设置页额度卡片在缓存缺少生效账号时显示其他账号额度的问题。同一构建在本机 dsh 0.2.0-rc.2 上完成回归、真实宿主挂载及 Web 服务验证。

问题修复

  • 窗口配额耗尽没有触发账号切换:现在识别带有耗尽、超限等含义的 weekly、five_hour、5-hour、monthly、daily 和 plan 配额错误,HTTP 402 也归为配额拒绝;普通瞬时 429 仍走渠道重试。(#18) @Alonso-li
  • 账号切换依赖剩余渠道重试次数:原来一次账号拒绝会消耗一次渠道 attempt,只有自动路由或一个固定渠道时,备用账号没有机会接手。现在账号拒绝后排除该账号,给下一个账号完整的原始渠道链;单账号优先和轮询模式均可在同一个请求内完成故障转移。
  • 配额冷却使用了写死的错误码:本机 dsh 导出的配额错误码为 QUOTA,原冷却表却使用 QUOTA_EXCEEDED。现在冷却表与适配器共用宿主导出的常量,后续请求会避开刚刚拒绝服务的账号。
  • HTTP 账号拒绝分支调用了未定义的 firstLine,会在记录失败和切换账号前抛出异常。现在正常保存错误文本、失败账号及配额或认证错误码。
  • 生效账号没有缓存读数时,用量徽标和额度卡片仍回退到其他账号;全部禁用时,徽标还会保留旧账号的百分比。现在显式指定的账号缺少读数时显示等待或不可用状态,明确没有生效账号时不显示旧百分比;刷新失败也不会恢复错误账号的缓存。(#17) @JuLian1130

兼容性

  • 保留手动翻页查看账号、浮层关闭后恢复跟随生效账号,以及旧宿主缺少 effectiveAccount 字段时的兼容行为。
  • 已向调用方输出内容后不重试其他账号;账号全部拒绝时保留配额错误并终止请求。
  • 延用配额 15 分钟、认证 30 分钟的冷却策略;本版没有引入基于 percentUsed 或 resetsAt 的预冷却。所有候选均在冷却时,仍按既有策略尝试请求。
  • 本机环境:dsh 0.2.0-rc.2、Node.js v26.10.0。离线 304 + 135 + 46 + 45 项、真实宿主挂载 69 项检查全部通过。
  • 发布包 dsh-cline-pass-0.2.7.tgz 的 16 个文件与已验证的源码一致;解压后前端 135 项及真实宿主挂载 69 项检查通过。GitHub release 附带该包,npm 由维护者手动发布。
  • 实际启动本机 Web profile,确认当前仓库插件被加载,登录、面板状态及真实 Cline 官方额度读取成功。多账号耗尽和故障转移由真实 dsh 宿主与本地模拟网关验证;没有消耗真实账号至配额上限。
  • 浏览器控制工具因内部运行时文件缺失无法连接,页面点击验证未完成;前端组件行为已由客户端回归覆盖。

致谢

感谢 @Alonso-li 在 #18 中报告窗口配额与账号池故障转移问题,并补充请求历史的说明;感谢 @JuLian1130 在 #17 中报告用量徽标不跟随生效账号的问题。

v0.2.6

Choose a tag to compare

@yhshzh yhshzh released this 02 Oct 14:26

修复了用量徽标不跟随生效账号的问题,以及输出预算按模型输出上限上报、导致压缩过早甚至部分模型直接报错的问题。同一构建在 dsh 0.2.0-rc.2 上验证通过。

新增功能

  • 用量徽标展开后可按账号切换查看:多账号时出现左右箭头与「第几个 / 共几个」。两侧都默认停在「下一个请求会用到的账号」,翻页后在浮层打开期间保持用户的选择,关闭再打开回到生效账号。 @JuLian1130

问题修复

  • 用量徽标永远显示第一个账号:多账号时它按「谁先读取成功」挑账号,而额度是按账号计的,于是显示的是一个下一次请求根本不会用到的密钥的额度。(#17) @JuLian1130
  • 没有任何接口能说出「下一个请求会用哪个账号」:activeAccount 只决定单账号模式,轮询模式下与队列无关。宿主现在统一解析一次 —— 与选账号共用同一套排序,避免两处漂移 —— 并且只读、不消耗轮询游标,因为读额度不是请求。
  • 徽标把生效账号读自自己的用量读数,而读数只在挂载时和每 60 秒取一次;在设置页切换账号后,额度卡片立刻更新而浮层最多滞后一分钟。现在改从面板快照读取,切换即时生效。
  • 输出预算把模型的输出上限当成了默认值:defaultMaxTokens 的语义是「一次请求要多少输出」,出厂表却填了「模型最多能输出多少」。dsh 把这个数用两次 —— 填进请求的 max_tokens,并作为压缩前的输出预留 —— 于是 384k 的上限在 100 万窗口里预留了 384k,压缩点从比例要求的 80% 掉到 55%。
  • 输出上限等于窗口的模型直接报错:kimi-k2.6 与 kimi-k2.7-code 的出厂数据为 context == maxTokens == 262144,窗口 − 预留 − 余量 为负,压缩策略回的是错误而不是读数。现在出厂上限只用于钳制配置的预算,且预算不会被放到超过窗口的一半。

兼容性

  • 每个模型的出厂输出上限仍作为上限钳制预算,不再直接当作请求输出。
  • defaultMaxTokens 默认值 32k → 64k:远高于工具型 agent 单条回复的实际长度,同时让预留保持在开始挤占压缩比例之前。
  • 插件自己的 defaultMaxTokens 配置项恢复可用 —— 此前对任何在出厂表里的模型都被覆盖,改了不生效。
  • 离线 304 + 126 + 46、真实挂载 51 项检查,全部通过。

致谢

感谢 @JuLian1130 在 #17 中报告了徽标不跟随生效账号的问题。

0.2.5

Choose a tag to compare

@yhshzh yhshzh released this 02 Oct 03:39

修复了在 dsh 0.2.0 上带着工具调用跑长会话时,模型请求被整单拒绝的问题。同一构建在 dsh 0.2.0-rc.2 上验证通过。

问题修复

  • 工具结果没有按 tool 角色发出:dsh 0.2.0 起,工具结果是一条带 toolCallId 的 tool 角色消息,而插件只认识旧版「user 消息里包一个 tool-result 块」的形状,于是每条结果都落进了用户分支,整份请求里没有任何 tool_call_id。网关校验「assistant 的 tool_calls 必须紧跟对应的 tool 响应」时会直接拒绝,报 insufficient tool messages following tool_calls message,整个 turn 中断。 @JuLian1130
  • 工具调用组可能被其它消息拆开:assistant 的 tool_calls 与它的响应之间若插入任何非 tool 消息(例如宿主在工具集变化时追加的 developer 通知、或工具结果图片那条 user 消息),请求同样是非法的。现在这些消息会等到该组响应齐了再发出,顺序不变。
  • developer 角色被当成用户消息:宿主用它承载自身的系统级通知,插件未处理该角色,导致它变成「用户说过的话」。现按 system 发出(多数兼容网关不接受较新的 developer 拼写)。

兼容性

  • 旧版「user 消息包 tool-result 块」的形状仍然支持,不受影响。
  • 没有工具调用的普通对话,发出的请求与之前完全一致。
  • 离线 299 + 115 + 46、真实挂载 44 项检查,全部通过。

致谢

感谢 @JuLian1130 在 #16 中定位并修复了工具结果的角色问题。

0.2.4

Choose a tag to compare

@yhshzh yhshzh released this 01 Oct 14:16

本版本汇总了 #15 的全部内容,同一构建在 dsh 0.2.0-rc.2 上验证通过。

新增功能

  • 模型选择器旁新增 Cline Pass 用量徽标:折叠时显示 Pass · 5 小时 6% · 周 2%,点击展开可看到三个窗口的百分比与重置倒计时、读取时间与刷新按钮。仅在选中本提供商模型时出现,其他模型下不渲染也不发起用量请求;每 60 秒刷新一次,标签页隐藏时跳过、切回时立即刷新,读取失败保留上一次成功读数。 @GamingNowEdward

兼容性

  • 复用已有的用量接口,账号密钥仍只在宿主侧解析,不上前端。
  • 客户端新增对 @deepseek-ai/dsh-client-ui-model-selection 的依赖声明。
  • 离线 287 + 115 + 46、真实挂载 44 项检查,全部通过。

致谢

感谢 @GamingNowEdward 在 #15 中提出该需求,并确认了数据链路已经就绪。

0.2.3

Choose a tag to compare

@yhshzh yhshzh released this 28 Sep 15:23

修复 0.2.2 中设置面板的工具开关无法保存的问题。

问题修复

  • 点击「开启工具注入」会报 Config field "exposeTools" is not volatile,设置无法保存:该字段是普通布尔值,而设置服务只接受被声明为 volatile 的字段写入。现已声明为 volatile。
  • 勾选后没有生效:volatile 字段在宿主上以引用对象传给插件,判断时读到的是引用而非值,因此存了 false 也仍然注册工具。现改为读取解引用后的快照。
  • 点击后复选框会弹回原位,看起来像没点成功:面板上报的是运行中插件的值,而非刚保存的值。现改为上报保存的值;生效时机由标题「(重启后生效)」说明。

兼容性

  • 0.2.2 已在 npm 发布且包含上述第一个问题(npm 不允许覆盖已发布版本),因此以 0.2.3 修复。若你已安装 0.2.2,升级到 0.2.3 即可。
  • cline_pass_* 工具默认不注册(自 0.2.2 起)。0.2.1 及更早的 profile 没有 exposeTools 键,会采用默认值 false;在设置面板勾选并重启 dsh 后恢复,或在 profile 配置里写 exposeTools: true。
  • 离线 287 + 106 + 46、真实挂载 43 项检查,三条线(0.1.5-rc.3 / 0.1.7-rc.2 / 0.2.0-rc.1)均通过。

致谢

感谢 @KFERMercer 在 #11 中提出工具注入开关。


本版本同时包含 0.2.2 的全部内容:cline_pass_* 工具默认关闭并可在面板开启、dsh 版本上限放宽至 < 0.3.0。

v0.2.1

Choose a tag to compare

@yhshzh yhshzh released this 25 Sep 16:54

本版本汇总了 #9 的全部内容,并修复了 #10 报告的上游并发问题(CWE-770),同一构建同时支持 dsh 0.1.5-rc.3 与 0.1.7-rc.2。

问题修复

  • 发往上游的流没有并发上限:请求一多就能开出任意多条上游流,占满连接和账号的并发。现在每个账号同时最多保持 16 条流,从发出请求一直占用到响应体关闭;超出的请求排队,排队中可以随时取消,一个账号卡住也不会拖住账号池里的其它账号。
  • 额度卡片读不出单个账号的剩余额度:账号池里每个账号的每个窗口都堆在一起,卡片随账号数变长。改为一次显示一个账号,用 ‹ › 翻页,翻页不发请求。 @codeOct
  • 请求记录表格里的延迟数值被截成 13…,带日期的时间戳也被截断:固定列宽把多余空间都给了模型列。改为按内容分配列宽,数值始终完整,也不会横向滚动。 @codeOct

兼容性

  • 新增设置 maxConcurrentRequests(默认 16,0 表示不限),升级无需改配置;单个账号需要同时跑超过 16 条流时可以调高。
  • 离线 278 + 99 + 46、真实挂载 39 项检查,两条线均通过。

致谢

感谢 @codeOct(#9)的贡献,以及 @anupamme 在 #10 中报告并发问题。

v0.2.0

Choose a tag to compare

@yhshzh yhshzh released this 23 Sep 17:14

本版本汇总了 #4、#6、#7 的全部内容,修复了图片、钉住与账号删除的问题,同一构建同时支持 dsh 0.1.5-rc.3 与 0.1.7-rc.1。

新增功能

  • 上游钉住会回读实际服务的渠道,网关不采纳时报告失败,不再把「钉了 baseten 却由 deepseek 服务」当成成功。 @codeOct
  • 渠道枚举不再截断,并包含官方上游本身,「已知渠道 − 排除项」因此盖得住真正在服务的渠道。 @codeOct
  • 账号池支持多账号、轮询与启用开关;账号被拒后自动绕开并冷却。 @codeOct
  • 设置页读取官方额度,展示百分比与重置时间。 @codeOct
  • 请求历史记录首字节时间、Token 用量与思考 Token。 @codeOct
  • 插件卡片可在「设置 → 插件」折叠展开,并注册为独立标签页。 @codeOct
  • 图片请求同时下发两套契约,0.1.2–0.1.5 与 0.1.6+ 都能通过校验。 @leeloveloli
  • tool-result 内嵌的图片(read_image、截图)随后的 user 消息发出。 @leeloveloli
  • 扫描官方目录时保留发布方给出的模态与上下文窗口,新上线的多模态模型不再被当成纯文本。

问题修复

  • 删除账号无效:设置补丁是递归合并的,省略某个键不会删除它,被删账号会被合并回来。改为显式 unset。
  • 「设置 → 插件」展开后空白:面板引用的宿主方法被漏删,异常在首屏绘制之后,条目被槽位渲染器退休。
  • 英文界面部分文案显示为键名。
  • 浅色主题下的可读性。

兼容性

  • 按能力探测适配两条线(installSection / configure、volatile 支持),不判断版本号。
  • 离线 260 + 85 + 46、真实挂载 39 项检查,两条线均通过。

致谢

感谢 @codeOct(含 #7)与 @leeloveloli 的贡献。

v0.1.0

Choose a tag to compare

@yhshzh yhshzh released this 14 Sep 15:47
docs: make web setup the primary README flow