DeepSeek Harness(DSH)采用插件化架构,但仅列出插件列表往往不足以复现环境。插件加载顺序、版本漂移以及配置补丁的差异,都会导致环境行为不同。dsh-stack 旨在捕获这些完整的上下文,生成一个单一、可移植的配置文件。
这是一个由 weivwang 维护的插件。它通过一个 JSON Stackfile 来声明环境,包含插件顺序、安装的注册表版本、Git 源码的 commit 锁定,以及配置补丁。该文件可用于项目、发布说明或团队手册中,在允许它接触配置文件之前,任何人都可以检查它。
核心功能¶
- 捕获完整配置:记录插件顺序、版本和配置补丁。
- 生成 Stackfile:导出为可移植的 JSON 文件。
- 密钥管理:使用占位符管理密钥,而不是明文凭证。
- 完整性验证:包含摘要校验。
- inspect 工具:提供
stack_inspect模型工具。
安装与启用¶
首先安装 CLI:
npm install --global dsh-stack
安装后,将 bundle 添加到 Harness 配置中。
典型用法¶
导出环境:
dsh-stack export --profile web --name "research-workbench"
检查文件:
dsh-stack inspect web.dsh-stack.json
规划变更:
dsh-stack plan web.dsh-stack.json --profile research
应用配置:
dsh-stack apply web.dsh-stack.json --profile research --yes
从 URL 规划:
dsh-stack plan https://example.com/research.dsh-stack.json --profile research
注意事项¶
- 版本要求:需要 DeepSeek Harness 0.1.0-rc.6 和 Node.js 22.19+。
- Apply 行为:
apply命令需要--yes标志,并且绝不移除目标独有的插件。现有未在 Stackfile 中命名的 bundle 在声明层之后仍然保留。 - 排除项:Stackfile 排除会话历史记录、凭据、全局状态和本地工作区文件。
- 安全性:Inspect 列出所需变量。在应用之前,请检查 Stackfile。建议使用托管凭证或环境引用,以防止原始密钥进入配置补丁。
总结¶
dsh-stack 通过将 Harness 环境的完整契约(包括顺序、版本和配置)打包为单一文件,解决了环境不可复现的问题。它通过 inspect、plan 和 apply 命令提供了安全的读/写路径,并通过占位符管理密钥。