---
title: "DSH 0.1.2-alpha.5：alpha.4 升级故障修复与重要变化"
seo_title: "DeepSeek Harness 0.1.2-alpha.5 更新：修复 DSH 升级启动失败与会话标题丢失"
description: "DeepSeek Harness 0.1.2-alpha.5 修复了从 rc.2 或 alpha.3 升级后无法启动、会话标题消失的问题，并整理 alpha.4 的 Agent 双向消息、web_fetch、模型目录和 Session API 变化。"
canonical: https://52dsh.com/tutorials/deepseek-harness-0-1-2-alpha-5/
authors: ["52DSH 编辑部"]
audience: ["正在判断是否评估 alpha.5 的 DSH 用户","从 rc.2 或 alpha.3 升级后遇到启动或会话标题异常的维护者","维护子 Agent、Headless、模型 Provider 或 Session 集成的开发者"]
outcomes: ["区分 alpha.4 功能变化与 alpha.5 紧急兼容修复","按来源版本和症状决定继续评估、暂停或回退","识别 Agent、网络工具、模型发现和 Session API 的兼容边界"]
prerequisites: ["已记录当前 DSH 精确版本、Profile 和重要 Session 状态","评估预发布版前已准备配置、数据与工作区副本"]
difficulty: intermediate
estimated_action_time: "12～18 分钟阅读"
next_steps: {"success":["/tutorials/dsh-update-uninstall/","/tutorials/dsh-session-guide/"],"failure":["/errors/web-ui-start-failed/"]}
published_at: 2026-09-02
updated_at: 2026-09-02
verified_on: 2026-09-02
maintenance_status: community
verification_level: source_reviewed
risk_level: medium
dsh_version: 0.1.2-alpha.5
plugin_id: null
tutorial_kind: null
related_plugin_url: null
---

# DSH 0.1.2-alpha.5：alpha.4 升级故障修复与重要变化

DeepSeek Harness 0.1.2-alpha.5 修复了从 rc.2 或 alpha.3 升级后无法启动、会话标题消失的问题，并整理 alpha.4 的 Agent 双向消息、web_fetch、模型目录和 Session API 变化。

## 先看结论：要评估这一轮变化，目标应是 alpha.5，不是 alpha.4

DeepSeek Harness（DSH）`0.1.2-alpha.5` 是官方于 **2026-09-02** 发布的预发布版，固定提交为 `db6bdc3576c2d4e7c965e8e3ed0c2a731eed87f5`。它修复了从 `0.1.1-rc.2` 或 `0.1.2-alpha.3` 升级到 alpha.4 后可能无法启动、Session 列表标题消失的问题。alpha.4 承载本轮主要功能变化，alpha.5 紧接着修复升级兼容，因此需要一起判断。

52DSH 于 2026-09-02 核对了两个 Release、固定提交、实现说明和 npm 元数据。`0.1.2-alpha.4`、`0.1.2-alpha.5` 精确包均已存在，但 npm `latest`、`next` 仍为 `0.1.1-rc.2`。所以 alpha.5 可以被明确指定用于隔离评估，却没有成为普通 `npx @deepseek-ai/dsh` 的默认安装版；本站的默认教程基线也继续保持 rc.2。

本文是第一方 Release 与固定源码审阅，**没有安装或运行 alpha.4、alpha.5，没有使用真实 Profile、Session、凭据或第三方插件，也没有执行升级和回退**。页面中的“修复”是官方声明和实现事实，不代表本站完成跨平台运行认证。

## 版本状态与症状分流

| 你当前的情况 | 先做什么 | 版本判断 |
|---|---|---|
| rc.2 正常运行，没有明确需要新功能 | 保持现状，记录版本并阅读变化 | 不因热点自动升级 |
| alpha.3 正常运行，准备评估后续功能 | 备份 Profile、Session 与工作区，在副本评估 alpha.5 | 跳过 alpha.4 |
| 从 rc.2 或 alpha.3 升到 alpha.4 后无法启动 | 保留日志和原数据，不边排障边清理 | 对照 alpha.5 官方修复范围 |
| 升级 alpha.4 后会话数量还在但标题为空 | 先区分列表投影与权威 Session 内容 | 不要把标题消失写成正文删除 |
| 已运行 alpha.4 且暂未看到异常 | 仍先完成备份与可回退验证 | alpha.5 是后续修复版 |
| 依赖 Session、子 Agent、PTC 或自定义 Provider 插件 | 对固定 API 和默认工具逐项审阅 | 不能推断第三方插件自动兼容 |

本次已知兼容问题有明确来源版本范围，但它不是所有启动失败的统一解释。端口占用、Node 版本、损坏的 Profile、Provider 401、真实网络断开和第三方插件构建失败仍需分别排查。

## alpha.5 修复的不是权威 Session 正文迁移

固定实现说明把 `session_projcache` 分为三个磁盘代次：rc.2 使用单个 v3 文件，alpha.3 使用逐记录 v4，alpha.4 增加 lineage 字段并升级为 v5。alpha.4 读取旧缓存时存在两条问题路径：v3 记录可能被错误按当前版本解释并阻止启动；v4 投影记录会因版本不匹配被丢弃，而 Session 列表只读取投影缓存，因此标题可能暂时消失。

alpha.5 为 v3、v4 增加兼容读取，旧记录在下次写入时转为 v5；不能安全解释的可丢弃投影记录会先备份为带时间戳的 `.bak` 文件，再跳过并冷重建。这里处理的是**可重建的 Session 投影缓存**，不是证明权威 JSONL Session 正文被删除或自动迁移。自定义 SQLite 路由也不自动获得这项 JSON 兼容放宽。

因此，遇到标题异常时不要运行来源不明的“恢复标题”脚本，更不要删除唯一 Session 目录。先保存版本、启动日志、Profile、Session 数量和数据副本，再按[Web UI 启动排障](/errors/web-ui-start-failed/)与[更新、回退指南](/tutorials/dsh-update-uninstall/)分流。

## alpha.4 的子 Agent 消息：从单向 report 改为受限双向 send_message

alpha.4 删除旧 `report` 工具包，并在子 Agent 控制工具中提供 `send_message`。它允许在线 Agent 向直属、可继续的子 Agent 发送后续消息；常驻可继续的子 Agent也可以在直属父 Agent 在线时向父级发送消息。目标仍在工作时，消息会在最近的步骤边界引导当前任务；目标空闲时，会触发一轮后续处理。

这不是任意 Agent 消息总线。固定边界包括：

- 只面向直属父子，不支持跨兄弟或任意深层后代寻址；
- 冷恢复只支持直属子 Agent；
- 子 Agent 向父级发送时，父 Agent 必须保持在线；
- 没有持久化的父级邮箱，不能承诺离线必达；
- `report` 与 `send_message` 不是名字不同但语义完全相同的接口。

需要把它落到代码复核任务时，阅读[DSH 多 Agent 代码复核流程](/cases/multi-agent-code-review/)；任务合同、证据返回和人工批准仍然是主线。

## web_fetch 默认可见，意味着要重新审阅公网数据边界

alpha.4 把 `web_fetch` 默认能力移动到共享 `dsh-base`。完整 Python SDK、Headless、ACP 以及只使用 base 的自定义 Profile 会继承 `web_search` 与 `web_fetch`；独立的 `sdk-minimal` 不使用 base，因此不在这个默认范围。Web app 会覆盖 base 工具配置，再通过 Agent Preset 组合相同能力。

官方实现只允许经过验证的公开 `http:`、`https:` 目的地址，但抓取在 shell 和文件系统审批 preset 之外执行，不需要逐次文件审批。公开地址校验也不等于阻止向公网发送任务输入。因此“模型看得到工具”不代表任意 URL 都成功，更不代表可以把密钥、内网地址、签名 URL 或客户数据交给抓取工具。受限部署应在 Profile 层显式关闭或覆盖网络工具配置。

Web PTC Mode 则做了相反方向的收窄：通用 `workflow` 工具仍在工作流引擎组中，但默认标记为禁用，因为 PTC 使用 `run_code` 作为模型生成的组合入口。标准 Preset 仍保留普通 workflow 工具。看到 PTC 中缺少 workflow 时，不应把它误判为整个 DSH 删除了工作流能力。一次性任务的网络和输出边界见[DSH Headless 指南](/tutorials/dsh-headless-guide/)。

## 模型发现：复用部署请求头，同时增加目录搜索

对于已经配置并命名的自定义 Provider，alpha.4 的模型发现会在 Host 侧读取已存凭据与 Profile `headers`。浏览器的 Models 页面仍不负责编辑或回显这些部署请求头；页面输入的新 Key 优先于已存凭据，而 Profile headers 继续随 `GET /models` 请求发送。

模型候选选择器同时支持按模型 ID 或显示名称搜索。全选、取消全选只影响当前可见结果，并保留被筛掉项目的勾选状态。该变化能改善大型模型目录操作，但只适用于相应发现协议和合法配置；它不表示所有 Provider 都提供 `/models`，也不表示自定义 Header 会让不兼容协议自动工作。配置方法和 401 分流见[模型、API Key 与 Provider 指南](/tutorials/deepseek-harness-model-provider/)。

## Session 开发 API：事件身份和日志偏移不再混用

alpha.4 用 `seq`、`eventAt()`、`snapshotEvents()` 等按需接口替代直接读取 `Session.events` 的模式，并区分两种以前都表现为普通数字的含义：

- `SessionSeq` 指向一条已经存在的事件；
- `SessionLogOffset` 指向事件之间的间隙、前缀长度或读取切点，可以等于事件总数。

这主要影响直接使用 Session API 的插件与集成。普通用户的 Resume、Fork、Compaction 概念没有因此变成另一套产品功能；但开发者不能继续把事件身份、事件数量和读取偏移随意互传，也不能只把 TypeScript 报错强制断言掉。磁盘 v0 JSONL 和公共 wire 仍保持普通数字表示，由各适配器在进入进程领域代码时验证并加上品牌类型。更多数据角色见[DSH Session 使用与恢复指南](/tutorials/dsh-session-guide/)。

## 三阶段升级检查表

### 升级前

1. 记录来源版本、启动命令、Profile、Node.js、模型 Provider 和必要插件版本；
2. 等待当前 turn 结束并正常停止 DSH；
3. 按部署制度备份配置、重要 Session 与工作区，凭据使用独立安全方案；
4. 保存 Session 列表的数量和标题快照，并确认至少一个重要旧会话可打开；
5. 为预发布评估准备隔离 Profile、可丢弃工作区和明确回退版本。

### 升级到 alpha.5 后

1. 确认实际版本是 `0.1.2-alpha.5`，不是移动标签或缓存中的旧构建；
2. 检查进程能否启动、Session 数量和标题是否符合升级前快照；
3. 只读打开一个旧会话，再新建一个不含敏感数据的低风险会话；
4. 根据实际使用范围检查模型目录、Headless 网络能力、子 Agent 后续消息或 Session 插件；
5. 保存脱敏日志、退出码和工作区 Diff，不把一次成功写成全平台兼容。

### 失败或准备回退时

1. 停止继续写入，不删除缓存、Session、Profile 或数据库来“试试”；
2. 保留失败版本、日志和数据副本，确认问题发生阶段；
3. 在另一个副本恢复升级前版本与匹配配置；
4. 验证旧版本能否读取自身格式，不假设版本回退等于数据结构自动回退；
5. 官方证据不足时暂停，请勿使用未经审阅的迁移或修复脚本。

## 谁适合隔离评估，谁应暂缓

| 条件 | 建议 |
|---|---|
| 明确需要双向持续子 Agent 消息、模型目录搜索或新的 base 工具组合 | 在隔离环境评估 alpha.5，并只验证目标能力 |
| 曾在 alpha.4 遇到启动或标题异常 | 保留现场证据，对照 alpha.5 修复；不要先清理数据 |
| 维护直接读取 `Session.events` 的插件 | 先做固定 API 差异审查和类型适配，再考虑运行 |
| 依赖 PTC 通用 workflow 工具 | 核对 Preset 与工具组合，不能假设旧工具仍默认可见 |
| 环境正常且没有新能力需求 | 继续使用 npm 默认通道，不必追逐预发布版 |
| 无备份、无法识别 Profile 或重要 Session 位置 | 暂缓升级，先补资产清单与恢复路径 |

## 常见问题

### alpha.5 是稳定版吗？

不是。GitHub 将它标记为 Pre-release，npm 精确包虽已存在，但 `latest`、`next` 在 2026-09-02 仍是 `0.1.1-rc.2`。

### 默认执行 `npx @deepseek-ai/dsh` 会安装 alpha.5 吗？

不能这样推断。默认解析受 npm dist-tag 和本机缓存等因素影响；本文核对时默认标签未切换。需要可复核环境时应记录并明确指定经过审核的版本。

### Session 标题消失是否表示会话正文已删除？

不是同一结论。alpha.5 固定说明将该现象定位到可重建的 Session 投影缓存跨版本读取；权威 Session 内容与列表投影不是同一数据域。仍应先备份和确认实际内容，不可凭此假设所有个案都安全。

### 旧教程是否都已经适配 alpha.5？

没有。52DSH 保留每篇教程自己的 `dsh_version` 与核验日期，只定向更新受本轮变化影响的页面。默认基线仍为 rc.2，第三方插件也必须单独核对。

上一轮长会话、图片和 SQLite Session 风险可查阅[alpha.3 历史更新说明](/tutorials/deepseek-harness-0-1-2-alpha-3/)；如果还需要先确认 DSH 的官方身份、能力与默认通道，阅读[DeepSeek Harness 是什么](/tutorials/what-is-deepseek-harness/)。准备实际更新前，继续阅读[DSH 更新、回退与卸载指南](/tutorials/dsh-update-uninstall/)。

## 原始来源

- https://github.com/deepseek-ai/deepseek-harness/releases/tag/dsh-v0.1.2-alpha.5
- https://github.com/deepseek-ai/deepseek-harness/commit/db6bdc3576c2d4e7c965e8e3ed0c2a731eed87f5
- https://github.com/deepseek-ai/deepseek-harness/compare/dsh-v0.1.2-alpha.4...dsh-v0.1.2-alpha.5
- https://github.com/deepseek-ai/deepseek-harness/releases/tag/dsh-v0.1.2-alpha.4
- https://github.com/deepseek-ai/deepseek-harness/commit/4e84901e6471b79ec0338099867ebb4606d12bb5
- https://github.com/deepseek-ai/deepseek-harness/compare/dsh-v0.1.2-alpha.3...dsh-v0.1.2-alpha.4
- https://registry.npmjs.org/-/package/@deepseek-ai%2Fdsh/dist-tags
- https://registry.npmjs.org/@deepseek-ai%2Fdsh/0.1.2-alpha.5
- https://github.com/deepseek-ai/deepseek-harness/blob/db6bdc3576c2d4e7c965e8e3ed0c2a731eed87f5/.agents/notes/implemented/architecture/2026-09-02-projcache-cross-version-read-compat.zh.md
- https://github.com/deepseek-ai/deepseek-harness/blob/db6bdc3576c2d4e7c965e8e3ed0c2a731eed87f5/packages/session/session-projection-cache/src/spec.ts
- https://github.com/deepseek-ai/deepseek-harness/blob/db6bdc3576c2d4e7c965e8e3ed0c2a731eed87f5/packages/storage/storage-json/src/per-record-unit.ts
- https://github.com/deepseek-ai/deepseek-harness/blob/4e84901e6471b79ec0338099867ebb4606d12bb5/packages/subagent/tool-subagent-control/README.zh.md
- https://github.com/deepseek-ai/deepseek-harness/blob/4e84901e6471b79ec0338099867ebb4606d12bb5/.agents/notes/implemented/feature/2026-09-01-shared-base-web-fetch-default.zh.md
- https://github.com/deepseek-ai/deepseek-harness/blob/4e84901e6471b79ec0338099867ebb4606d12bb5/.agents/notes/implemented/architecture/2026-08-04-draft-provider-endpoint-interrogation.zh.md
- https://github.com/deepseek-ai/deepseek-harness/blob/4e84901e6471b79ec0338099867ebb4606d12bb5/.agents/notes/implemented/architecture/2026-08-31-session-sequence-and-log-offset-brands.zh.md
