Skip to content

Releases: Duskriver/dsh-opencode-go

v0.1.22

Choose a tag to compare

@Duskriver Duskriver released this 09 Oct 19:15
74fd37e

本版统一账号操作、设置兼容与模型目录的管理,新增 DeepSeek V4.1 Flash 的实验性 Responses 开关,并包含 v0.1.21 之后的请求可靠性与思考控制改进。

  • 架构简化:账号操作与持久化恢复由同一宿主服务串行处理;设置读写共用契约,模型发现与调用共享目录管理器,账号回退共用判断策略。减少客户端与宿主重复逻辑,保留分层配置、旧版宿主和历史会话兼容。
  • Responses 实验开关:在「设置 → OpenCode Go → 高级设置 → DeepSeek V4.1 Flash 协议」选择 Responses 并保存。默认仍为自动,仅影响该模型的新请求;改回自动即可恢复,协议错误不会触发跨协议重试。支持工具调用、图片及恢复后的历史会话。对应 Issue #45。实测首字改善较小、总耗时收益有波动,不保证稳定提速或固定底层服务商。
  • 思考控制:Default 将思考行为交给服务端;开关型模型显示 On / Off,预算型模型显示数值预设并支持添加自定义预算。升级私有 pi-ai 实现,兼容 Haiku 5.5 adaptive thinking。
  • 请求可靠性与诊断:完善请求与准备阶段超时、图片资源限制、模型目录部分异常提示,保留网关 HTTP 错误及路由证据。仅在符合条件且没有输出或计费 token 时进行账号回退。
  • 账号与安装:完善账号排序、成功回退后的账号采用、凭据更新及中断恢复。私有 SDK 随插件打包,避免首次安装引入不必要的依赖构建审批;包含 PR #41、PR #42 与 Issue #43 的相关修复。

桌面版更新命令:

dsh plugin --profile desktop update dsh-opencode-go --latest

也可下载本 Release 附带的安装包,通过 DSH 插件安装入口安装,或使用:

dsh plugin --profile desktop add ./dsh-opencode-go-0.1.22.tgz

升级后,请完全退出并重新打开 DeepSeek Harness。Web 用户重启 dsh web 并刷新页面。

验证:655 项测试(41 个文件)、60 个发布构建产物一致性检查、10 代实际 DSH 宿主兼容检查,以及 npm/pnpm Git 安装、pnpm 安装包与公开类型检查全部通过。另有 20 次授权的合成请求用于桌面端协议延迟比较,全部成功;详细方法、初步样本和局限见仓库验证文档。

最终提交的 13 项 GitHub CI 检查全部通过。同时修复 Windows 许可证换行导致的构建检查差异,并验证安装测试可以在没有根目录 node_modules 的 checkout 中运行。

完整变更

v0.1.21

Choose a tag to compare

@Duskriver Duskriver released this 06 Oct 16:26
959671c

本版新增设置页网络代理,验证兼容 DeepSeek Harness 0.2.1-alpha.1,并包含账号管理改进和 PR #39 的额度面板毛玻璃修复。

  • 代理地址:设置 → OpenCode Go → 高级设置中填写 HTTP(S) 或 SOCKS5 URL,支持用户名和密码。保存后,后续对话、模型目录、模型元数据和订阅用量查询使用该代理。清空并保存恢复默认网络路径,重置恢复继承值。代理失败会报错,不会自动改为直连。
  • 新版 DSH 兼容验证:新增 0.2.1-alpha.1 实际安装环境,验证插件加载、三种协议、工具调用、历史回放、图片、额度按钮和设置。额度按钮使用新版仍保留的输入区扩展入口。
  • 账号管理:账号卡片支持折叠、拖动或键盘排序;顺序决定首选账号和自动回退顺序。Key 编辑集中在账号卡片中。凭据读取失败时保留已有账号,网关拒绝按地址隔离。
  • 额度面板:显示当前账号和三个额度窗口,可在面板内切换账号;修复生产构建丢失背景模糊的问题,使用独立毛玻璃背景层和内部滚动区域。

升级桌面插件后,请完全退出并重新打开 DeepSeek Harness。Web 用户重启 dsh web 并刷新页面。桌面版更新命令:

dsh plugin --profile desktop update dsh-opencode-go --latest

也可以下载本 Release 附带的安装包,通过 DSH 的插件安装入口安装,或使用:

dsh plugin --profile desktop add ./dsh-opencode-go-0.1.21.tgz

验证:487 项测试(32 个文件)、39 个发布构建产物一致性检查、10 代实际 DSH 宿主兼容检查,以及 npm/pnpm Git 安装验证全部通过。最终提交的 13 项 GitHub CI 检查全部通过。最新版宿主兼容检查使用隔离安装环境;本机桌面端代理设置曾在 DSH 0.2.0-rc.2 上验证。

实现 Issue #37,包含 PR #38 的账号卡片改进和 PR #39 的额度面板修复。

完整变更

v0.1.20 — 修复额度胶囊与设置自定义状态

Choose a tag to compare

@Duskriver Duskriver released this 02 Oct 09:13
bb1c787

本版修复 v0.1.19 在真实宿主中额度胶囊不显示的问题,以及高级设置草稿改回原值后“已自定义/恢复默认”状态与保存按钮不一致的问题。

  • 额度胶囊恢复渲染:保留宿主 settings scope 方法的 this,使自动、常驻、关闭模式正常工作。
  • 自定义状态准确显示:草稿改回当前生效值后,按用户层是否已有该字段决定徽标;已有覆盖仍可恢复默认。
  • 补强回归检查:兼容性夹具的方法读取实例状态,同时检查客户端订阅和卸载清理。快照读取脱绑、仅订阅方法脱绑的负向对照均被捕获。

升级桌面插件后,请完全退出并重新打开 DeepSeek Harness,加载更新后的宿主代码。Web 用户重启 dsh web 并刷新页面。例如桌面版:

dsh plugin --profile desktop update dsh-opencode-go --latest

验证:401 项测试(28 个文件)、34 个发布构建产物一致性检查、9 代实际 DSH 宿主兼容检查,以及 npm/pnpm Git 安装验证全部通过。

GitHub CI:13/13 通过

修复 Issue #33,实现见 PR #34。

完整变更

v0.1.19 — 额度显示模式与请求、回放修复

Choose a tag to compare

@Duskriver Duskriver released this 01 Oct 20:06
b0ba7eb

本版新增额度显示模式,并修复设置变更时的请求配置混用及 Anthropic 模型别名回放;保留 0.1.18 的 MiMo 思考档位修复。

  • 额度显示模式:在「设置 → OpenCode Go → 高级设置 → 额度显示」选择自动、常驻或关闭。自动沿用原有行为;常驻在使用其他模型时也显示;关闭隐藏胶囊并停止轮询。停用插件后所有模式均隐藏。
  • 请求配置固定:修改设置时,已经准备好的请求继续使用原来的网关、密钥引用和模型容量;后续请求使用新配置,避免一次请求混用两套设置。
  • Anthropic 历史回放修复:服务端返回模型别名时,按请求的模型身份恢复历史,保留思考签名和工具调用续聊。

验证:398 项测试(28 个文件)、34 个构建产物一致性检查、9 个实际 DSH 宿主版本兼容检查及 npm/pnpm Git 安装验证全部通过,兼容检查包括 DSH 0.2.0-rc.2。本次使用隔离测试环境和本地网关;MiMo 的实际网关验证见 0.1.18 记录。

更新所用 profile 后重启 DSH;Web 用户同时刷新页面。例如桌面版:

dsh plugin --profile desktop update dsh-opencode-go --latest

GitHub CI:13/13 通过

完整变更

v0.1.18 — 修复 MiMo Flash 思考档位

Choose a tag to compare

@Duskriver Duskriver released this 01 Oct 19:30
9ab3a15

本版修复 MiMo V2.6 Flash 的思考档位问题(#28),依据 OpenCode Go 网关实测适配。

  • 默认继续思考:不发送 reasoning_effort,使用网关默认行为。
  • Off 正确关闭:发送 none,避免网关拒绝 off。
  • 保留 Low / Medium / High:发送对应参数。网关接受这些值并返回思考内容,但实测不能证明思考量逐档递增。
  • 精确适配:只为已验证的 MiMo V2.6 Flash 和协议补充映射;保留 DeepSeek、Qwen 的原生开关。在线配置不可用时,备用配置同样生效。
  • 修正通用档位推断:空控制列表不再凭推理能力自动增加 Off;普通 OpenAI 兼容协议不再从 toggle 或 budget 声明猜测 effort 参数。

验证:381 项测试(27 个文件)、33 个构建产物一致性检查、9 个实际 DSH 宿主版本兼容检查及 npm/pnpm Git 安装验证通过,兼容检查包括 DSH 0.2.0-rc.2。修改后直连 OpenCode Go,默认请求返回思考内容,Off 返回 0 思考 token,两次都正常完成回答。

更新所用 profile 的插件后重启 DSH;Web 用户同时刷新页面。例如桌面版:

dsh plugin --profile desktop update dsh-opencode-go --latest

GitHub CI:13/13 通过

完整变更

v0.1.17 — DSH 0.2 适配、下载超时改进与独立 provider

Choose a tag to compare

@Duskriver Duskriver released this 30 Sep 11:27
03c4823

本版适配 DSH 0.2.0-rc.2,改善慢网络下的模型元数据下载,并使用独立 provider 避免与宿主 OpenCode Go 路由冲突。

  • DSH 0.2 适配:插件通过私有 npm 别名使用 pi-ai 0.87.1,在发送请求前规范化 transcript,保留系统提示词、工具声明和历史回放。宿主及其他插件的公共 pi-ai 依赖保持独立;最低支持版本仍为 DSH 0.1.5-rc.1。
  • 慢网络下载改进(#22):models.dev 元数据请求启用 gzip,并兼容部分 HTTP/2 环境返回原始 gzip 内容的情况。下载、重试和解压共用原有 30 秒截止时间,输入和解压结果均有大小限制。已有持久缓存继续使用。
  • 独立 provider:本插件注册 dsh-opencode-go,模型选择器显示 DSH OpenCode Go,可与宿主的 opencode-go 同时使用。
  • 安装与设置页改进:修复 Node 22 自带 npm 10 的严格干净安装,保留预构建 Git 安装方式;合入 #23 的模型区域布局调整。

升级迁移: 旧会话、Agent 预设和 Headless 默认模型若保存了 provider: opencode-go,升级后需要重新选择 DSH OpenCode Go,或改为 provider: dsh-opencode-go。API Key、模型设置和元数据缓存沿用。旧会话内容保留;切换 provider 时,DSH 会按其规则移除旧适配器的专用回放元数据。

升级对应 profile:

dsh plugin --profile desktop update dsh-opencode-go --latest
dsh plugin --profile web update dsh-opencode-go --latest
dsh plugin --profile headless update dsh-opencode-go --latest

只需运行所用 profile 对应的命令。完成后重启 DSH;Web 用户同时刷新页面。

验证:Host/Client 类型检查、367 项测试(26 个文件)、32 个构建产物一致性检查、9 个实际宿主版本兼容检查及 npm/pnpm Git 安装验证通过。兼容矩阵覆盖 DSH 0.1.5-rc.1 至 0.2.0-rc.2,包含适用的 Desktop/Web/Headless bundle 检查;另已在 macOS 桌面版实际内置 Node 上验证 gzip 读取。安装验证确认插件使用私有 pi-ai 0.87.1,其他插件仍使用公共 pi-ai 0.85.1。测试使用隔离环境和本地端点,未调用真实模型。

#22 仍需要报告者在原网络复测;#26 所报告的旧协议依赖解析问题尚未确认解决。

GitHub CI:13/13 通过

完整变更

v0.1.16 — 模型元数据持久缓存与设置页改进

Choose a tag to compare

@Duskriver Duskriver released this 29 Sep 12:17
88385a4

本版增加跨重启的模型元数据缓存,改善 models.dev 暂时不可达时的模型可用性,并包含设置页改版与 Git 安装改进。

  • 元数据持久缓存:成功下载的公共模型配置、ETag 和校验时间保存到 DSH 缓存目录。重启后,普通读取先确认网关名单,再使用缓存并后台校验;后台完成后同步模型选择器。修复 #22 中已有配置随进程退出而丢失的问题。
  • 保留真实刷新状态:手动刷新和未知模型等待在线结果。失败时保留旧配置及上次成功时间,同时显示原因。缓存损坏或写入失败不会阻断可用的在线结果;网关名单和 API Key 不写入缓存。
  • 设置页改版:合入 #21,按连接、模型和高级参数分区,调整模型区域与整行悬停效果,并显示上游声明的输入模态。
  • Git 安装改进:仓库随附预构建产物,npm/pnpm 从 Git 安装时无需为本插件批准构建脚本。

JSON 请求继续使用非压缩传输,以保留 #7 的宿主兼容修复。首次安装没有缓存时仍需要访问 models.dev;本版没有改变代理或传输策略。

升级 Web profile:

dsh plugin --profile web update dsh-opencode-go --latest

Headless 用户将 web 换成 headless;完成后重启 DSH,Web 用户同时刷新页面。

验证:Host/Client 类型检查、生产构建、347 项测试(24 个文件)、构建产物一致性、8 个宿主版本兼容检查及 npm/pnpm Git 安装测试全部通过。另已验证独立进程重启后,在元数据端点不可达时仍可恢复模型配置。测试使用隔离环境和 fixtures,未调用真实模型。

GitHub CI:13/13 通过

完整变更

v0.1.15 — 可选图片数量上限与额度面板改进

Choose a tag to compare

@Duskriver Duskriver released this 26 Sep 15:10
104c2e0

本版增加可选的单请求图片数量上限,并改进账号额度面板的显示。

  • 可选图片数量上限:在「设置 → OpenCode Go → 高级设置」填写正整数 maxImages 后立即生效。默认不限制张数;清空后继承基础配置。统计包含完整请求历史、重复附件和工具结果中的图片。
  • 兼容不同 DSH 宿主:DSH 0.1.5 在当前请求中将超限的最旧图片转为文字占位;较新宿主通过持久图片卸载机制记录并重试。现有字节、像素和单图预算继续独立生效。
  • 额度面板:合入 PR #17,让面板背景不透出聊天内容,并用颜色区分接近上限和已限流的额度。

升级 Web profile:

dsh plugin --profile web update dsh-opencode-go --latest

Headless 用户将 web 换成 headless。完成后重启 DSH 并刷新 Web 页面。

验证:Host/Client 类型检查、生产构建及 **338 项测试(24 个文件)**通过,包含旧版与新版宿主兼容测试。测试使用本地 fixtures,未进行真实模型请求。

完整变更

v0.1.14 — 简化额度面板与历史校验加固

Choose a tag to compare

@Duskriver Duskriver released this 25 Sep 19:25
0eeec25

本版恢复简洁的账号额度面板,并合入 PR #11 的请求历史校验加固。

  • 账号额度面板:移除 0.1.13 新增的会话缓存统计,继续显示 5 小时、每周和每月额度。每分钟刷新、临时失败保留同账号数据、错误提示和手动重试行为保持不变;会话 token 统计可在 DSH 自身界面查看。
  • 请求历史校验:遇到不支持的 developer 消息、tool-addition / tool-removal 内容块或 deferLoading: true 工具时,文本与图片转换路径均返回明确的 UNSUPPORTED_CONTENT 错误,避免静默丢失语义。此项为预防性加固,合入 PR #11。
  • 兼容性:依赖与最低宿主版本不变,仍支持 DSH 0.1.5-rc.1 及以上。

升级 Web profile:

dsh plugin --profile web update dsh-opencode-go --latest

Headless 用户将 web 换成 headless。完成后重启 DSH 并刷新 Web 页面。

验证:Host/Client 类型检查、生产构建及 **323 项测试(23 个文件)**通过;另验证了 15 个边界场景在两条转换路径上的行为。测试使用本地 fixtures,未进行真实模型请求。

完整变更

v0.1.13 — 模型配置诊断、刷新优化与会话缓存统计

Choose a tag to compare

@Duskriver Duskriver released this 25 Sep 17:41
45b45ee

模型配置获取失败时,现在会显示配置源错误及重试办法,并保留仍可使用的模型。此次发布也包含目录刷新优化与会话缓存读取统计。

  • 模型配置诊断:区分“配置暂不可用”和“配置缺失”,分别显示网关名单与模型配置的刷新状态、错误原因和上次成功检查时间;重试已有列表时保留警告,恢复成功后自动清除。相关问题:#14。
  • 目录刷新:模型配置下载单独使用 30 秒超时;失败后缩短重试间隔。已验证模型在有限时间内可使用缓存并后台刷新,取消请求会立即结束该调用的目录等待。
  • 会话缓存统计:用量弹层展示当前会话已加载历史中的缓存读取比例、读取/写入 tokens 和已统计响应数,排除分叉继承与未结算响应;无需额外网络请求。
  • DSH 兼容性:版本声明支持 0.1.5-rc.1 及以上,包括 alpha、rc 和正式版;现有八个宿主版本兼容性测试通过。

升级 Web profile:

dsh plugin --profile web update dsh-opencode-go --latest

Headless 用户将 web 换成 headless。完成后重启 DSH 并刷新 Web 页面。

配置源持续不可达、或上游尚未提供某个模型的有效配置时,该模型仍可能暂不可用;本版会说明具体原因。

验证:Host/Client 类型检查、生产构建及 **326 项测试(24 个文件)**通过。

完整变更