DeepSeek Harness(dsh)
DeepSeek Harness(dsh)
DeepSeek Harness(命令名 dsh,社区简称 DSH)是 DeepSeek AI 开源(MIT)的 agent harness(智能体框架):Agent = Model + Harness——模型负责”想”,harness 负责”做”,把模型能力接入文件系统、终端、Web 与工具链。核心理念为**”一切皆插件”(Everything is a Plugin)**:产品里没有特权核心,模型适配器、工具注册表、会话日志乃至 agent 主循环本身都是可由配置替换的插件;底层由 Cordis 插件框架驱动,设计论文为 _A Programming Paradigm for Spatiotemporal Composability_。
要点
- Cordis 五概念:插件(实现 Service 的对象,函数/对象/类三形态)、上下文(
ctx.<key>服务容器)、inject(依赖声明,决定加载顺序,加载后仍持续跟踪)、类型化事件(emit / waterfall / parallel / serial / bail 五种分发模式)、可逆注册(ctx.effect(),卸载与热重载时自动撤销)。 - 使用入口:
dsh web启动 Web UI(默认127.0.0.1:3080);dsh --profile headless "任务"跑一次性任务(stdout 只出最终文本,退出码 0/1 表成败);内置 profile:web / headless / sdk / sdk-minimal / acp。 - 配置四层叠加:bundle patch → profile → home 级 →
--patch,后层覆盖前层;patch 对配置行整体替换、非深合并;普通 patch 编辑热重载,Bundle 增删需重启 profile。 - 插件管理:
dsh plugin --profile <name> add <npm包或git spec>(底层转发 pnpm);包在package.json声明"dsh": {"bundle": {"patch": "./cordis.patch.yml"}}即自动接入配置层。 - 插件四个标准导出:
name(显示名)、inject(依赖服务)、Config(Schemastery schema,部署期校验)、apply(ctx, config)(主体);函数插件必须命名导出,默认导出会丢失 inject 元数据。 - 给模型加工具:
ctx.tools.register(defineTool({...})),schema 自动流入系统提示词;execute()只返回规范 JSON 值(供程序消费),人类可读解释交给output.render;exec.signal必须遵守取消。 - 典型坑:插件静默不加载 = inject 的服务无提供方(保持 PENDING)或模块拼写错误;waterfall 观察型监听器必须调用
next()委托,短路是策略监听器的特权。 - 状态:开发者预览(截至 2026-09),快速迭代中,未来会有破坏性变更。
与其他概念的关系
- 本库完整教程归档(使用 + 插件开发全流程):2026-09-06 DSH(DeepSeek Harness)使用及插件开发完整教程
- 原始素材(官方文档 17 篇存档):2026-09-06 DSH 官方文档存档(deepseek-harness 17篇)
来源与状态
- 官方仓库:https://github.com/deepseek-ai/deepseek-harness
- 官方文档:https://deepseek-harness.github.io/deepseek-harness/
- 本页由 2026-09-06 归档会话产出(官方 master 分支文档研读),完整教程存 qa/AI/。
DeepSeek Harness(dsh)
https://ldioif.cn/2026/09/06/2026-09-DeepSeek Harness(dsh)/