| Name | Modified | Size | Downloads / Week |
|---|---|---|---|
| Parent folder | |||
| dsh-desktop-0.3.21-win-x64.zip | 2026-09-12 | 444.3 MB | |
| dsh-desktop-0.3.21-mac-arm64.dmg | 2026-09-12 | 422.8 MB | |
| dsh-desktop-0.3.21-mac-arm64.zip | 2026-09-12 | 450.0 MB | |
| dsh-desktop-0.3.21-mac-x64.dmg | 2026-09-12 | 427.6 MB | |
| dsh-desktop-0.3.21-mac-x64.zip | 2026-09-12 | 454.9 MB | |
| dsh-desktop-0.3.21-win-x64.exe | 2026-09-12 | 339.8 MB | |
| dsh-web v0.3.21 source code.tar.gz | 2026-09-12 | 525.8 MB | |
| dsh-web v0.3.21 source code.zip | 2026-09-12 | 528.6 MB | |
| README.md | 2026-09-12 | 14.8 kB | |
| Totals: 9 Items | 3.6 GB | 0 | |
本次发布包含 27 项新功能、22 项修复、38 项其他改动。
重要变更:内置右侧面板
dsh-better-sidebar从0.19.0-alpha.1升级到正式版0.19.0(两版的 bundle patch、exports 与 client inject 完全一致,只有版本、peer 区间与文案不同)。本次发布没有需要迁移的破坏性改动,也没有改变任何已持久化的标识符或 profile 格式,v0.3.20 的 profile 可以走插件管理器的常规更新路径就地升级,不需要手工改配置。以下是升级前值得知道的几点:皮肤中心新增冰晶公主、暗夜鎏金、工程蓝图、cafe-roastery 与鲸鱼娘 Harness 工坊五套皮肤;xp 与 maid-atelier 的皮肤字节在本版更新,早于溯源机制、没有 provenance 记录的旧副本会因评审哈希重钉而不再被信任——皮肤照常显示,只有可执行 hooks 面被拒绝,从工坊重新安装即可恢复;插件管理器现在为「bundle 内默认禁用」的行写入显式disabled: false并显示实际启用状态,因此这些行会首次如实显示为禁用,且开启真正生效;SSH 面板新增 ProxyCommand 支持,其 ssh_config 导入接口的结果字段由skippedNames改为skippedBlocks(同一包内前后端同步变更,不影响已保存数据)。梁神预设本版重写:旧的tool-bootstrap.mjs被删除,人格配置改用prefix键,启动同步会覆盖并清理~/.dsh/.agent-presets/liangshen;在其更早版本下产生、历史中已含退役消息类型的老会话仍无法打开,本版不再产生新的此类会话。用量统计新增 Token Bank 鲸元券。
新功能
- [dsh-liangshen] 首轮请求只暴露 bash,其后把工具提升为 PTC
- [dsh-pet] 新增冰晶公主工作结果动画
- [dsh-pet] 皮肤声明 gameplayTracks.work 时播放该皮肤的工作循环
- [dsh-pet] 持久化所选宠物皮肤,刷新与重启后保留
- [dsh-pet] 新增冰晶公主生气、傲娇动作与休息循环
- [skin] 新增鲸鱼娘 Harness 工坊皮肤
- [liangshen] 在人格前缀中携带常驻工作纪律
- [skin-center] 新增冰晶公主皮肤
- [liangshen] 新会话界面新增输入框拉杆
- [skin-center] blue-fantasy 工具行、气泡与交付物接入可读性层
- [skin-center] blue-fantasy 面板跟随气泡透明度滑杆,覆盖代码块、表格底板与边框
- [liangshen] 用注入式工具目录取代两阶段切换
- [skin-center] blue-fantasy 在插画背景之上叠加可读性层
- [usage] 鲸元按 1000:1 铸造并展示官方余额的真实消耗
- [usage] 在 Token Bank 标签页用 DeepSeek 官方用量铸造鲸元券
- [skin-center] 新增暗夜鎏金皮肤
- [skin-center] 新增工程蓝图(Blueprint)皮肤
- [ssh] 支持 ProxyCommand 并补全 ssh_config 导入
- [plugin-manager] 聚合子行收起为启用状态摘要
- [aggregate] dsh-better-sidebar 升级到 0.19.0
- [market] 预设按分类归类,并像插件一样筛选
- [preset-center] 发布首个社区角色扮演预设目录
- [skin] 为 cafe-roastery 同步市场 dist 预设与样式
- [skin] 新增 cafe-roastery 皮肤(拿铁、浓缩纸感双主题)
- [community-plugins] 在社区索引中登记 plugin-effort-slider
- [community-plugins] 在社区插件索引中登记 dsh-taskfold
- [skin-center] 优化蓝喉蜂虎选中行装饰与 token 修复
修复
- [maid-atelier] 让输入框底衬位于文字之下并延伸到状态条
- [dsh-pet] 跟随宠物工作节奏并丢弃迟到的 work tick
- [plugins] 支持 cron 裸步长、解码 git 八进制路径并按 key 归并交接行
- [skin-center] 修复深色主题徽标校正失效
- [dsh-usage] 保持设置控件可达,禁用时停止轮询
- [dsh-pet] 渲染器延迟挂载或重挂载时重新应用已恢复的皮肤
- [liangshen] 从首轮起注入工具目录并校准人格
- [liangshen] 把标准工具清单推迟到锚点轮之后
- [liangshen] 会话开始后隐藏拉杆
- [ssh] 捕获子进程 stdin EPIPE 并保留 ProxyCommand 错误上下文
- [plugins] 对齐任务板远程会话注入、宠物余数进位与预设 semver 校验
- [skins] 修正 miku、xp 与 maid-atelier 的视觉缺陷与错位
- [liangshen] 声明远程父服务并约束拉杆切换
- [desktop,skins] 修复 [#1465] 与 [#1471]
- [dsh-usage] 价格表更新到 V4.1-Flash 条目
- [market-worker] 写入与统计接受 preset 类型
- [release] 把根别名钉到精确的已发布聚合包版本
- [plugin-manager] 为被 bundle 禁用的行报告实际启用状态
- [task-board] 归档所有非运行中任务
- [skin-center] 按路径段转义场景资源 URL
- [liangshen] 跟随当前人格 schema 与消息来源
- [skin-center] 按评审修正蜂虎装饰署名与文档
其他改动
- [agents] 把工作流归属移入 skills,并为发布 skill 加门禁
- [skin-center] 为 maid-atelier 渲染修复补测试
- [repo] 为提交的 lib 产物记录源码指纹
- [notes] 记录 2026-09-12 第四次 PR 维护
- [readme] 从 GitHub API 同步贡献者列表
- [dsh-pet] 为 dock entry mock 补上缺失的 setSkin 桩
- [market] 为 jyn 工作轨道重新生成 dist
- [dsh-pet] 覆盖 Frames2dVisualMount 的 base-idle 锁存
- [dsh-pet] PR 描述更新后重跑检查
- [client] 降低插件组合下的空闲开销
- [notes] 修正 remote.session 记录中的 chrome 闭包归属
- [notes] 记录 chatgpt-subscription remote.session 热修诊断
- 移除仅维护者可见的 agent notes
- [notes] 记录 2026-09-12 PR 维护
- [notes] 记录 2026-09-11 第二次 PR 维护
- [dsh-pet] 把 frames2d 解码窗口限制在播放中的轨道
- [web-all,skin-center] 共用同一个 body mutation observer 并合并 shell DOM 同步
- [skin-center] 同步 lib 包中的 maid-atelier reviewed-hooks 注册表
- [notes] 记录 2026-09-11 PR 维护
- [readme] 更新 Token Bank 截图
- [readme] 用 Token Bank 截图介绍用量统计功能
- [readme] 从 GitHub API 同步贡献者列表
- [notes] 记录 2026-09-10 六 PR 维护合入
- [readme] 改善双语搜索发现
- [readme] 移除 LiangShen、rescue 与外部归档内容,加入 DSH Desktop
- [aggregate] rebase 后重新生成客户端 source map
- [notes] 记录线上市场预设点赞已确认
- [notes] 记录 [#1397] 上游跟踪项关闭
- [notes] 记录 [#1452] 宿主升级决策
- [notes] 记录 2026-09-10 bug issue 维护
- [skills] 从 skills home 解析个人开发者 skills
- [notes] 记录 v0.3.20 发布运行
- [dsh-pet] 按评审意见恢复原始宠物 chrome 注释
- [market] 全量 dist 重新生成后刷新市场 manifest
- [archive] 加入线上皮肤的真实 GUI 徽标与提示截图
- [archive] 加入蜂虎皮肤徽标与提示的 token 证据
- [community-plugins] 在社区索引中登记 dsh-backup
- [market] 重新生成 manifest 以纳入 dsh-backup
English
This release contains 27 new features, 22 bug fixes, and 38 other changes. > **Important change**: the bundled right panel `dsh-better-sidebar` moves from `0.19.0-alpha.1` to the stable `0.19.0` (the two releases carry an identical bundle patch, exports, and client inject - only the version, peer ranges, and copy differ). This release has no breaking change that needs a migration and renames no persisted identifier or profile format, so a v0.3.20 profile upgrades in place through the plugin manager's ordinary update path with no manual configuration edit. What is worth knowing before upgrading: the Skin Center gains five skins (Ice Crystal Princess, Black Gold Gilded, Blueprint, cafe-roastery, and Whale-chan Harness Workshop); the xp and maid-atelier skin bytes change, so a historical install of either one that predates provenance recording no longer matches the re-pinned reviewed identity - the skin still renders, only its executable hooks facet is refused, and reinstalling it from the Workshop restores it; the plugin manager now writes an explicit `disabled: false` row for entries a bundle ships disabled and reports effective enablement, so those rows display as disabled for the first time and enabling them actually works; and the SSH panel gains ProxyCommand support, whose ssh_config import result field is renamed from `skippedNames` to `skippedBlocks` (host and client move together inside one package, with no saved data involved). The LiangShen preset is rewritten: the old `tool-bootstrap.mjs` is deleted, the persona config moves to the `prefix` key, and the startup sync overwrites and prunes `~/.dsh/.agent-presets/liangshen`; sessions created under its earlier revisions whose durable history already holds the retired message kind stay unopenable, and this release stops producing new ones. Usage statistics gain the Token Bank whale-yuan voucher. ### New Features - [dsh-liangshen] anchor the first turn on bash alone and promote tools to PTC - [dsh-pet] add the bingjing-gongzhu work result animations - [dsh-pet] play the skin work loop when a skin declares gameplayTracks.work - [dsh-pet] persist the selected pet skin across reloads and restarts - [dsh-pet] add bingjing-gongzhu angry/tsundere actions and rest loop - [skin] add Whale-chan Harness Workshop skin - [liangshen] carry the standing working discipline in the persona prefix - [skin-center] add Ice Crystal Princess skin (冰晶公主) - [liangshen] add the composer lever for the new-session screen - [skin-center] blue-fantasy tool rows, bubble and deliverables join the readability layer - [skin-center] blue-fantasy plates follow the bubble opacity slider; code blocks, table plate and chrome - [liangshen] replace the two-phase transition with an injected tool catalog - [skin-center] blue-fantasy readability layer over the backdrop art - [usage] mint whale yuan at 1000:1 and show the official balance's real spend - [usage] mint a whale-yuan voucher from DeepSeek official usage in a Token Bank tab - [skin-center] add Black Gold Gilded skin (暗夜鎏金) - [skin-center] add the Blueprint skin (工程蓝图) - [ssh] support ProxyCommand and complete the ssh_config importer - [plugin-manager] collapse aggregate child rows behind an enablement summary - [aggregate] bump dsh-better-sidebar to 0.19.0 - [market] classify presets by category and filter them like plugins - [preset-center] publish the first community role-play preset catalog - [skin] sync market dist presets + styles for cafe-roastery - [skin] add cafe-roastery skin (latte/espresso paper themes) - [community-plugins] register plugin-effort-slider in the community index - [community-plugins] register dsh-taskfold in the community plugin index - [skin-center] refine the blue-throated-bee-eater selected-row ornament and token fixes ### Bug Fixes - [maid-atelier] keep the composer backing under the text and reach the stats strip - [dsh-pet] follow the pet work cadence and drop late work ticks - [plugins] honour cron bare steps, decode git octal paths, and key handover rows - [skin-center] make the dark-theme badge correction match again - [dsh-usage] keep the settings controls reachable and stop polling while disabled - [dsh-pet] re-apply the restored skin when the renderer mounts late or remounts - [liangshen] inject the tool catalog from the first turn and orient the persona - [liangshen] stage the standard tool roster behind the anchor turn - [liangshen] hide the lever once the session has started - [ssh] capture child stdin EPIPE and preserve ProxyCommand error context - [plugins] align task-board remote session inject, pet remainder carry, and preset semver check - [skins] correct visual defects and misalignments for miku, xp, and maid-atelier - [liangshen] declare the remote parent service and bound the lever switch - [desktop,skins] resolve issues [#1465] and [#1471] - [dsh-usage] refresh the DeepSeek price book to the V4.1-Flash rows - [market-worker] accept the preset kind in writes and stats - [release] pin the root alias to the exact released aggregate - [plugin-manager] report effective enablement for bundle-disabled rows - [task-board] archive every non-running task - [skin-center] escape scene-resource URLs per path segment - [liangshen] follow the current persona schema and message sources - [skin-center] correct bee-eater ornament attribution and docs per review ### Other Changes - [agents] move workflow ownership into the skills and gate the release skill - [skin-center] guard the maid-atelier rendering fixes - [repo] fingerprint committed lib artifacts against their sources - [notes] record the 2026-09-12 fourth pr maintenance pass - [readme] sync contributor list from GitHub API - [dsh-pet] add the missing setSkin stub to the dock entry mock - [market] regenerate dist for the jyn work track - [dsh-pet] cover the Frames2dVisualMount base-idle latch - [dsh-pet] re-run checks after PR body update - [client] reduce idle work across plugin combinations - [notes] correct the chrome closure attribution in the remote.session note - [notes] record the chatgpt-subscription remote.session hotfix diagnosis - remove maintainer-only agent notes - [notes] record the 2026-09-12 pr maintenance pass - [notes] record the second pr maintenance pass of 2026-09-11 - [dsh-pet] bound the frames2d decode window to the playing track - [web-all,skin-center] share one body mutation observer and coalesce shell DOM syncs - [skin-center] sync maid-atelier reviewed-hooks registry in lib bundle - [notes] record the 2026-09-11 PR maintenance pass - [readme] refresh token bank screenshot - [readme] feature usage statistics with token bank screenshot - [readme] sync contributor list from GitHub API - [notes] record the 2026-09-10 six-PR maintenance merge pass - [readme] improve bilingual search discovery - [readme] drop LiangShen/rescue/external-archive content, add DSH Desktop - [aggregate] regenerate the client source map after the rebase - [notes] record the confirmed preset like on the live market - [notes] record the [#1397] upstream-tracker closure - [notes] record the [#1452] host-upgrade decision - [notes] record the 2026-09-10 bug-issue maintenance pass - [skills] resolve personal developer skills from the skills home - [notes] record the v0.3.20 release run - [dsh-pet] restore the original pet chrome comment per review note - [market] refresh market manifests after full dist regeneration - [archive] add real-GUI badge and tooltip screenshots from the live skin - [archive] add badge-and-tooltip token evidence for the bee-eater skin - [community-plugins] register dsh-backup in the community index - [market] regenerate the manifest to include dsh-backup --- Generated automatically by the release pipeline (scripts/release-notes.mjs).由发布管线自动生成(scripts/release-notes.mjs)。