# dsh-workstate

**用于在不同 AI Coding Agent 之间交接任务的结构化工作状态协议。**

`dsh-workstate` 是 [DeepSeek Harness](https://github.com/deepseek-ai/deepseek-harness) 的本地优先插件。它保存任务目标、进度、决策、失败、验证结果、变更路径、下一步以及 Git 完整性指纹，而不是导出聊天记录。

## 安装

要求 Node.js 22.19+ 和 DeepSeek Harness `0.1.0-rc.6`。

```bash
dsh plugin --profile web add dsh-workstate
```

在 `~/.dsh/profiles/web/cordis.patch.yml` 中保留已有配置并加入：

```yaml
- insert:
    - id: workstate
      name: dsh-workstate
```

重启 DSH 后即可使用。

## 命令

```text
/workstate checkpoint [备注]
/workstate transfer [接收目标]
/workstate list
/workstate inspect [id]
/workstate diff <from> <to>
/workstate validate [id]
/workstate resume [id]
/workstate resume [id] --allow-diverged
```

## 设计原则

- Packet 只有 `checkpoint` 和 `transfer` 两种；`resume` 是操作。
- 默认拒绝恢复到已经分叉的工作区；只有用户显式输入 `--allow-diverged` 才能继续。
- 不保存源码、Diff、终端全文或环境变量，只保存路径和摘要。
- 检测到常见凭据格式时拒绝写入。
- 永不自动 checkout、reset、stash、stage、commit 或 push。

## 开发

```bash
npm install
npm run check
```

MIT License。
