Skip to content

Releases

v0.1.2-rc.2

v0.1.2-rc.2 Pre-release
Pre-release

Choose a tag to compare

@lansi-ai lansi-ai released this 16 Sep 05:11

DSH Forge v0.1.2-rc.2(预发布 · Windows)

预发布版本:应用内「设置 → 关于 → 更新渠道」选 预发布 才能收到本版。
本版与 v0.1.2-rc.1 的差别是「让预发布渠道真正可用」以及模型设置页的若干打磨。

本版要点

1. 预发布更新链修复(坑 75 收口)

  • rc 渠道此前恒报 Cannot find rc.yml … 404:两条发布链都不产出 rc.yml(electron-updater 的 rc 渠道文件名 = rc.yml/mac 为 rc-mac.yml),而 404 回退 latest.yml 只在 allowPrerelease === true 时成立。
  • 本版起:allowPrerelease 由渠道显式决定(正式渠道只看正式版、预发布渠道纳入 -rc.N),不再沿用上游「按当前安装版本推导」的默认值 —— 于是正式版装机切到预发布渠道也能升到本版;切回正式渠道即严格只看正式版。
  • 发布链补齐渠道描述符:align-release-assets.cjs 统一生成 latest.yml → rc.yml、latest-mac.yml → rc-mac.yml 副本,两条链的上传清单与本地直发清单同步补齐,缺 rc.yml 直接中止发版。

2. 模型设置自有化(首版)

  • 自研 @lansi-ai/dsh-forge-settings-models 接管官方「模型」设置页(官方信息架构 1:1):provider 目录行 + 单卡编辑器 + 自定义路由 + 模型探测选择器 + 删除确认 + 只读/冲突态。
  • 补齐官方页缺失的能力:profile 请求头(headers)键值编辑器 —— 这是 opencode 网关 400 MissingSessionID 的配置层入口(坑 74)。
  • 补齐外壳缺口:settings.onboarding 投影(此前引导步骤注册了也永不显示,坑 73)。

3. opencode 逐会话会话头:插件化 + 人类可读标签

  • 该能力不进主包,走独立插件包 lansi-ai/dsh-llm-opencode-session(--install-plugin 安装;删 profile 里那一行即卸载)。
  • 插件 v0.1.1 起,x-opencode-session 的值是人可读短标签(dsh-青竹aB,由对话内容确定性派生 → 同对话稳定、不同对话不同),可直接在 opencode 控制台「会话」列里认出是哪段对话;需要纯 ASCII 时把 roster 行配成 labelStyle: ascii(dsh-Kx7Q)。

4. 插件列表管理面(设置 → 插件)

  • 外部插件行带操作区:来自 GitHub 来源的行可「检查更新 → 更新到 vX」(对照默认分支版本);所有外部行可「卸载」(两步确认,删补丁行 + 包目录 + 来源登记)。
  • 安装 / 更新 / 卸载只改磁盘,外部插件在进程启动时发现 → 操作成功后提示「重启后生效」。

安装

  • 全新安装:下载 DSH-Forge-0.1.2-rc.2-setup.exe(或用便携版 DSH-Forge-0.1.2-rc.2-portable.exe)。
  • 已装旧版:设置 → 关于 → 把更新渠道切到预发布后点「检查更新」。⚠ 若当前装的是正式版,本版之前的构建不会自动跨到预发布,需要手动装一次本安装包。

校验

见随附件上传的 SHA256SUMS。

已知边界

  • macOS 产物需手动触发 release-mac.yml 构建,本版先发 Windows。

v0.1.2-rc.1

v0.1.2-rc.1 Pre-release
Pre-release

Choose a tag to compare

@lansi-ai lansi-ai released this 16 Sep 03:24

v0.1.2-rc.1

预发布(rc):本版把模型设置整页换成自研实现,补齐首次引导,并修掉预发布更新链的两个缺陷。安装包与更新描述符由维护者本机构建上传。

新增 · 模型设置自有化

  • 设置「模型」页由自研插件 @lansi-ai/dsh-forge-settings-models 接管(官方 ui-settings-models 进入互斥排除表,不再装配):
    • provider 目录行 + API 密钥状态点、编辑/删除、首次配置卡片
    • 编辑器:DeepSeek 模型目录(含容量折叠区)与 pi-ai 模型列表(含「获取可用模型」选择器)
    • 自定义路由创建(displayName / API 协议 / baseURL / 模型 + 凭据分离写入)
    • 只读部署与并发冲突(settings/conflict)都有明确提示
  • 新增「请求头」编辑能力:官方设置页不暴露 profile 的 headers 字典,导致「网关要求自定义请求头」在官方 UI 里无路可走;现在可在「自定义设置 → 请求头」逐条增删,命中 opencode 网关时还给一键生成会话 ID。

新增 · 首次引导

  • 设置外壳补齐 settings.onboarding 投影(此前该槽位长期「只声明、不派发」,任何引导步骤都不会显示)。
  • 首启(空白会话)会依次出现:内测声明 → DeepSeek 官方密钥引导(可稍后配置;配置过任一可用提供方即自动跳过)。

修复 · 预发布更新链

  • 本 Release 起随包上传 rc.yml(latest.yml 的逐字节副本)。应用内「预发布渠道」固定请求 rc.yml,而两条发布链此前都只传 latest.yml → 正式版装机点「检查更新」会直接报
    Cannot find rc.yml in the latest release artifacts … 404(回退 latest.yml 只在当前版本本身是预发布时成立)。
  • 预发布命名与渠道对齐:rc 渠道按 tag 的预发布段匹配版本,故预发布统一用 -rc.N(此前的 -alpha.N 对应用内更新不可见)。
  • 顺带给已发布的 v0.1.1 补上 rc.yml:现存正式版装机的预发布渠道从「报错」变为「无更新」(语义正确——正式版本来就没有可升的预发布)。

插件 · opencode Go / Zen 支持

  • 独立插件包 lansi-ai/dsh-llm-opencode-session:解决 opencode 网关 400 MissingSessionID(要求每段对话带稳定的 x-opencode-session 头,而上游 pi-ai 这一版不发)。

  • 本版起该能力不进主包,按需安装(零依赖、零 peer):

    & "$env:LOCALAPPDATA\Programs\dsh-forge\DSH Forge.exe" --install-plugin github:lansi-ai/dsh-llm-opencode-session@v0.1.0

    行为:只对 opencode.ai 域注入;同一段对话内稳定、不同对话不同;请求已带该头则不覆盖(上游修好后自动失效)。

升级提示

  • 上一版为 v0.1.1。正式版装机无法通过应用内更新升到预发布版(allowPrerelease 由当前版本推导,GitHub 上游也会跳过 pre-release):想试本版请手动安装本 Release 的 setup.exe;装过预发布之后,后续 -rc.N 版本即可在「设置 → 关于」切到预发布渠道自动升级。
  • 本 Release 只含 Windows 产物(安装版 / 便携版)与描述符:latest.yml、rc.yml、setup.exe.blockmap、SHA256SUMS。
  • mac 产物未包含:按 D-32(本地产物为权威、tag 不再触发 CI),mac 需每版手动补一次 gh workflow run release-mac.yml。
  • 引导弹窗是行为变化:此前从未显示过,首启会看到「内测声明」。

v0.1.1

Choose a tag to compare

@lansi-ai lansi-ai released this 15 Sep 06:38

本地发布(2026-09-15):Windows 产物由维护者本机构建上传。更新说明待人工补充(gh release edit --notes-file )。

v0.1.1-rc.5

v0.1.1-rc.5 Pre-release
Pre-release

Choose a tag to compare

@lansi-ai lansi-ai released this 15 Sep 02:39

修复

  • 安装版 Glob / Grep 全挂 —— 报 Error: glob subprocess failed before reporting an outcome (ripgrep provider failure):
    上游 @vscode/ripgrep 的 rgPath 由模块解析得来,打包后恒指向 app.asar 内的 rg.exe,而 Windows 无法启动归档内的文件 → runner 目标启动失败、工具报"provider failure"。
    现于 ctx.subprocess 启动咽喉把这类路径就地改写为 app.asar.unpacked 孪生(仅当孪生真实存在;零上游耦合)。
    该问题只在打包态出现(dev 正常、danger-full-access 下同样失败),此前容易被误判成沙箱/权限问题。
  • 一键装插件在匿名 GitHub API 限流时不可用 —— 默认分支查询改为「先问 API、失败回退探测 main / master」(取包的 codeload 不计入 API 限额),避免共享出口被限流时整条命令失效。

发布链

  • 新增 npm run release -- <version> --publish-local:本地打包后直接发布到 GitHub Release(Windows 产物 + 描述符 + 校验和,并自动复核资产)。
  • release-win / release-mac 两个 CI workflow 改为仅 workflow_dispatch 触发(不再响应 tag push):此前 gh release create 会在远端隐式建 tag,进而触发 CI 重建并用 --clobber 覆盖本地产物。
  • 因此macOS 产物需为每个版本在 Actions 手动 Run 一次 release-mac(本机 Windows 无法打 dmg)。

产物与校验

平台 产物 校验
Windows DSH-Forge-0.1.1-rc.5-setup.exe(NSIS 安装包)/ DSH-Forge-0.1.1-rc.5-portable.exe SHA256SUMS
macOS arm64 / x64 的 dmg 与 zip SHA256SUMS-mac
更新描述符 latest.yml(Windows)/ latest-mac.yml(macOS) 匿名可下载(HTTP 200)

说明:rc.5 的 Windows 产物最终由 CI 构建并覆盖(发布当时 CI 仍监听 tag);该触发已随本次改动移除,后续版本以本地产物为准。
应用内「检查更新」在 rc 渠道可直接命中本版本;若网络环境需要代理,请在 通用设置 → 网络设置 中配置。

v0.1.1-rc.4

v0.1.1-rc.4 Pre-release
Pre-release

Choose a tag to compare

@github-actions github-actions released this 14 Sep 08:56

Created automatically by release-mac workflow.

v0.1.1-rc.3

v0.1.1-rc.3 Pre-release
Pre-release

Choose a tag to compare

@github-actions github-actions released this 14 Sep 06:43

Created automatically by release-mac workflow.

v0.1.1-rc.2

v0.1.1-rc.2 Pre-release
Pre-release

Choose a tag to compare

@github-actions github-actions released this 11 Sep 03:49

DSH Forge v0.1.1-rc.2

预发布版(Pre-release)。0.1.1 线第二个 rc 候选,继续稳定化验证。
上游基线:@deepseek-ai/dsh 0.1.5-rc.2(由 0.1.5-alpha.2 升级)
完整变更:v0.1.1-rc.1...v0.1.1-rc.2

✨ 本版亮点

  • 插件列表全自研 —— 「设置 → 插件 → 插件列表」改为桌面定制口径:全局插件 / 预设组成两级分组 + 预设切换器 + 承载面筛选;并修掉「宿主侧插件搜不到」的根因。
  • 上游基线升级至 0.1.5-rc.2 —— 一次纳入上游 rc.1 / rc.2 两个版本:默认模型更新、右侧栏预览与统计打磨、反馈与交付文件优化;本项目零代码适配。

🧩 插件列表(全自研)

界面(自研件接管 settings.plugins.tab,官方同名 Tab 已互斥排除)

  • 两级分组:「全局插件」与「预设组成」。
  • 「预设组成」组带预设切换器:可直接对比不同预设下模型实际可见的插件,条目数与官方「会话插件 · N 个」一致(极简模式 = 6 行)。
  • 承载面筛选 chips + 精简两行摘要,点击行展开详情。
  • 已停用 / 条件装配的行如实列出,不再隐去。

数据(根因修复)

  • 插件清单由「仅客户端资源图谱」升级为三源合并:Cordis 真实 Loader 条目 ∪ 客户端资源图谱 ∪ 预设组成。
  • 此前仅读客户端图谱,导致宿主侧插件(如 tool-pwsh)在列表中完全缺失;现在与官方口径一致,读真实插件树。

⬆️ 上游基线升级(0.1.5-alpha.2 → 0.1.5-rc.2)

以下为上游 0.1.5-rc.1 / 0.1.5-rc.2 中的用户可见变化。

类别 变化
模型 Chat Completions 默认使用 DeepSeek V41 Flash,同时保留 V4 系列(含 V4 Flash Vision Exp)可选。你在配置中显式指定的模型不受影响。
交付文件 交付文件卡片排版与对话间距优化;代码文件图标换为全彩 artwork,文件更易辨认、界面更紧凑。
反馈 点赞 / 点踩改为弹窗确认后提交;提交失败时保留已填写内容并给出提示。
右侧栏 文档预览布局与滚动打磨(预览内容更新后保持滚动位置)。
会话统计 统计信息更安静:无意义的行按需隐藏(如缓存写入为 0 时不再占位)。
侧栏引导 引导起始页视觉打磨。

桌面侧核对(C-7):拴合面 S1/S2/S3/S3b 零差异,roster 96 个官方包全部存在,官方 web-app roster 包集无增删;上游本窗口的内部变更(含槽位目录刷新)未影响本项目自绘槽位契约。适配仅依赖版本对齐,无代码改动。

⚠️ 升级须知

  1. 本版为预发布(Pre-release):不会进入 GitHub "Latest release",stable 渠道不会收到本版推送。
  2. 应用内「rc」渠道本版仍不会自动发现更新:更新描述符 latest-rc.yml 未产出(实测 404),请从本页 Assets 手动下载安装。已知问题,修复方案已列入计划。
  3. 若下载失败:国内直连 github.com 可能被重置。可在 通用设置 → 网络设置 选择「手动设置」填入本地代理(如 127.0.0.1:7890)后重试;本版资产已实测经代理可匿名正常下载。
  4. 品牌图标:桌面快捷方式与安装包图标随本版安装包更新;你自行上传的自定义图标不会被覆盖。
  5. 动态插件安全提示:创造模式下的动态插件等同 bash 级访问权限,vm 不是安全边界 —— 请只运行你信任的代码。

📦 下载与校验

平台 产物
Windows x64 DSH-Forge-0.1.1-rc.2-setup.exe(NSIS 安装包)· DSH-Forge-0.1.1-rc.2-portable.exe(便携版)
macOS(Apple Silicon) DSH.Forge-0.1.1-rc.2-arm64.dmg · DSH.Forge-0.1.1-rc.2-arm64-mac.zip
macOS(Intel) DSH.Forge-0.1.1-rc.2.dmg · DSH.Forge-0.1.1-rc.2-mac.zip

校验下载完整性:

# Windows(PowerShell)—— 与 Assets 中 SHA256SUMS 的对应行比对
Get-FileHash -Algorithm SHA256 .\DSH-Forge-0.1.1-rc.2-setup.exe
# macOS
shasum -a 256 -c SHA256SUMS-mac

v0.1.1-rc.1

v0.1.1-rc.1 Pre-release
Pre-release

Choose a tag to compare

@github-actions github-actions released this 10 Sep 07:57

DSH Forge v0.1.1-rc.1

预发布版(Pre-release)。这是 0.1.1 线的首个 rc 候选:功能已冻结,进入稳定化验证。
上游基线:@deepseek-ai/dsh 0.1.5-alpha.2。
完整变更:v0.1.1-alpha.9...v0.1.1-rc.1

✨ 本版亮点

  • 创造模式可用 —— cordis 预设此前一直是坏的,本版修复后可直接创建/管理动态插件。
  • 品牌资产 v2 —— 全新黑底金标图标,标题栏品牌标记独立成件。
  • 极简模式回归官方 token 水平 —— 修掉一个隐蔽的宿主装配缺陷(工具悄悄渗进所有预设)。
  • 工程命名统一 —— 自研插件从 dsh-desktop 全面更名为 dsh-forge。

🐛 修复

1. 极简模式(minimal 预设)模型可见能力远超官方

  • 现象:切到极简模式后,模型实际能看到的工具与指令明显多于官方 minimal 预设,token 开销偏高。
  • 根因:宿主 roster 完整抄录了官方 dsh-base 的 insert 清单,却漏抄官方 web profile 的 23 行「模型可见」关停表。这些能力本应在全局层关停、只由各 agent 预设自行声明,缺失后便渗进了所有预设。
  • 修复:
    • boot.ts 新增 §3b 关停表,共 24 行 disabled(官方 23 行 + 桌面历史遗留 1 行);
    • 删除项目自带的 standard 预设 —— 它与官方 shipped 根同 id,一直被遮蔽、从未生效;预设来源回归官方 shipped 根。
  • 结果:极简模式 token 占用回到官方水平;四个预设(standard / ptc / cordis / minimal)能力零损失。

2. 创造模式(cordis 预设)插件树挂载失败

  • 现象:选择创造模式时启动报错,插件树无法挂载。
  • 根因:预设行 tool-cordis 静态依赖 dynamicCordisRunner / cordisInspect 两个服务,而提供它们的宿主半 cordis-host-runner 从未被装配(原先那条 disabled 是在禁用一条从未插入的行,属空操作)。
  • 修复:
    • 按官方 web profile 回填三处:宿主半 insert、客户端两半(cordis-client-runner / ui-cordis)入图谱、自绘侧栏补声明并渲染 sidebar.footer.action 槽位(即「动态插件」面板入口);
    • cordis-inventory 兼容面退役 dynamicCordisRunner / inventory,仅保留 pluginInventory/list,避免遮蔽官方实现。
  • 安全提示:动态插件等同于 bash 级访问权限,vm 不是安全边界 —— 请只运行你信任的插件代码。

🎨 品牌与外观

品牌资产 v2(黑底金标)

  • 应用图标(窗口 / 任务栏 / Dock / 安装包)与托盘图标改为「纯黑 #000000 + 22% 圆角实底 + 金标」,浅色与深色两版同形。
  • 标题栏品牌标记独立为透明底 brand-mark-{light,dark}.png,不再与窗口图标复用同一张图。
  • 存量安装通过「品牌修订号 + 哈希标记」自动刷新内置品牌资产,不会覆盖你自行上传的自定义图标。

🔧 底层重构

自研插件命名空间统一为 dsh-forge

项 前 后
插件 ID @lansi-ai/dsh-desktop-* @lansi-ai/dsh-forge-*
源码目录 src/desktop-host / src/desktop-shell src/forge-host / src/forge-shell
源文件名 desktop-*.ts / desktop-*-client.js forge-*.ts / forge-*-client.js
CSS 类 / 样式 ID / 日志标签 .dsh-desktop-* / dsh-desktop-* / [dsh-desktop] .dsh-forge-* / dsh-forge-* / [dsh-forge]
  • 影响面仅限工程内部命名,对外行为与你的数据不受影响。
  • 迁移常量(旧设备目录名 dsh-desktop)与历史问题台账刻意保留原样,确保老版本升级路径不被破坏。

⚠️ 升级须知

  1. 本版为预发布(Pre-release):不会进入 GitHub "Latest release",stable 渠道不会收到推送。
  2. 品牌图标的生效时机:
    • 任务栏 / 窗口 / 托盘 / Dock 图标 —— 重启应用后生效(运行期读 $DSH_HOME/icons);
    • 桌面快捷方式与安装包图标 —— 随本版安装包更新。
  3. 工程内更名无自动迁移:若你有自建脚本或外部工具按 @lansi-ai/dsh-desktop-* 引用本项目的自研插件,需同步改为 @lansi-ai/dsh-forge-*。

📦 下载与校验

  • 安装包 / 便携包见本页 Assets;SHA256SUMS 用于校验下载完整性:
    sha256sum -c SHA256SUMS

v0.1.1-alpha.9

v0.1.1-alpha.9 Pre-release
Pre-release

Choose a tag to compare

@github-actions github-actions released this 10 Sep 05:41

Created automatically by release-win workflow.

v0.1.1-alpha.8

v0.1.1-alpha.8 Pre-release
Pre-release

Choose a tag to compare

@github-actions github-actions released this 10 Sep 05:29

Created automatically by release-win workflow.