DeepSeek Harness v0.1.0-rc.8:多模态命令、持久 PowerShell 与 SQLite 重写
rc.7 三天之后,v0.1.0-rc.8 就来了——这次的覆盖面比通常的 rc 更大。标题是多模态,但真正的信号是 DSH 开始把 Windows 和插件分发当作一等公民来对待,而不是「先把 Linux 做好,Windows 之后再说」。
新功能
多模态不再只是聊天窗的事
DeepSeek 模型适配器现在可以配置开启原生图片请求。单看这个只是管道改造——真正有意义的是图片流到了哪里:/goal、/plan 等斜杠命令现在能接收图文混合输入,@ 菜单也支持引用文件和历史会话。
这堵上了从 rc.5 就一直烦人的一个缺口:你能在聊天里贴图片,但结构化命令只认文字。现在你可以给 /goal 贴一张截图,规划器真的能看到它。
Claude Code 和 Codex 变成 Profile Bundle
两个子代理桥接现在按需安装,走 Profile Bundle 机制,而不是内置在主程序里。Codex 还多了非交互权限模式(适合类 CI 的流水线)和命名实例(同时跑多个 Codex 代理,各自绑不同仓库)。
Bundle 化是正确的选择。不是每个人都需要这些桥接——用 Bundle 分发意味着它们和插件走同一套安装/更新生命周期,架构里少了一个特例。
Windows 上的持久 PowerShell 会话
Windows PTY 终端现在支持持久 PowerShell 会话,Minimal 预设默认启用。在这之前,每次工具调用都是开一个新 PowerShell 进程,环境变量丢了、工作目录丢了、上下文全丢了。现在它终于像一个真终端了。
如果你在 Windows 上跑 DSH,这大概是整个 rc 周期里体感最大的改进。
值得注意的修复
- 图片载荷过大 —— 尺寸超限或在长会话里累积的图片不再让模型请求崩掉了。适配器会优雅地截断或逐出。
- 取消流式生成后前缀丢失 —— 以前取消还在生成的回复,已经显示出来的那段话在后续提问和分叉里会消失。修了:显示过的前缀现在保留在上下文里。
- 自定义 OpenAI 兼容网关 —— 某些请求格式略有差异、或者不返回推理内容的网关之前用不了。两个问题都修了。
越积越多的体验优化
一串单看很小、合在一起让工具更顺手的改动:
- 布局:HOME 路径显示为
~,窄屏下输入框不再崩坏,反馈界面更干净。 - 界面交互:侧栏搜索正确抢焦点,工作流面板操作更顺,模型选择器高亮对了,本地文件打开失败可以重试。
- 工具调用:
web_search并发发出查询;子代理的reportDelivery现在会立刻唤醒父任务,不再等轮询周期。 - 安装启动:依赖包下载体积更小,本地跑
dsh web时自动打开浏览器。 - 分叉性能:对大历史会话做分叉操作的耗时有了明显下降。
破坏性变更:SQLite 存储格式
SQLite 后端做了一次重写,读写性能和分叉性能都有提升,存储体积也缩小了。代价是:存储格式与 rc.7 不兼容。 旧会话加载不了。如果你依赖历史对话,升级前先导出。
这种改动现在痛一下、一个月后就无感了。旧格式不是为频繁分叉设计的——分叉延迟随历史长度线性增长,这一直是个隐患。新布局是追加友好的,并且对共享前缀做了去重。
其他
- 品牌使用规范:「DeepSeek Harness」现在是注册商标,有了正式的使用准则。如果你在文档或推广中提到 DSH,建议看一眼规范。
- Python SDK:运行时配置现在覆盖全部四个内置 Agent 预设,以及
rg/glob搜索和 MCP stdio 工具所需的依赖。SDK 用户少了一步「再装个这个」的摩擦。
更大的图景
rc.8 是 DSH 从「Linux 优先、Windows 能跑就行」转变为「每个平台都是生产环境」的节点。持久 PowerShell、命令面全面通图片、子代理的 Bundle 分发——这些选择在说「我们预期用户真的会在各种平台上拿它干活」。
在 Release Candidate 阶段做一次存储格式不兼容,胆子不小。但旧格式的性能天花板迟早要碰到——趁用户群还处于「早期使用者预期会颠簸」的阶段改掉它,比 GA 之后再改的代价小得多。
试试看
- 获取发布:GitHub releases
- 从这里开始:快速开始