Agent = LLM(大脑) + 规划编排层(Harness/Orchestration) + 工具(Tools) + 记忆(Memory)

harness的概念

harness在业界通常是编排层(Orchestration Layer),它不仅仅是调用API,而是包含以下几个核心模块。

维度 单纯的 LLM + Api调用 完整的Agent(含Harness)
决策模式 一次性推理,生成结果即结束 循环推理(ReAct、Plan-and-Execute),直到任务完成为止
工具调用 用户指定调用哪个工具 自主选择工具,并根据返回结果动态调整下一步
错误处理 报错即停止 自我反思(Self-Reflection),遇到错误会重试或换策略
记忆管理 仅当前对话上下文 包含短期记忆(上下文窗口)和长期记忆(向量数据库)

具体来说,这个“Harness”通常包含以下三层“脚手架”:

  1. 提示工程框架(Prompt Framework):如 ReAct、CoT(思维链)的模板,告诉LLM何时“思考”、何时“行动”、何时“观察”。
  2. 解析与验证器(Parser & Validator):LLM输出的是自然语言或JSON,Harness负责将其解析为具体的函数调用(如 execute_python),并校验参数格式是否正确。
  3. 状态机与循环控制器(State Machine):控制最大迭代步数(Max Steps),管理中间步骤的日志,决定何时将最终结果返回给用户。

不过,这里有一个重要的认知陷阱:
如果缺少“规划与反思”能力,即使给LLM挂载了100个工具,它也只能算是一个“增强型聊天机器人”,而不是真正的Agent。例如,当你说“帮我订机票并安排行程”时,真Agent会自主拆解任务,而伪Agent只会问“请提供航班号”。

deepseek Harness和claude code对比

DeepSeek Harness 和 Claude Code 虽然都遵循 Model + Harness = Agent 的公式,但它们的本质截然不同。
简单来说:Claude Code 是 Anthropic 出品的“精装成品车”,而 DeepSeek Harness 是一套“可自由拼装的乐高积木”
下表从几个关键维度进行了对比:

维度 DeepSeek Harness Claude Code
核心定位 开源的、可任意拆装的 Agent 运行时框架 商业化的、开箱即用的 终端 AI 编程助手
设计哲学 “一切皆插件” (Everything is a Plugin),所有组件均可替换 “应用层治理”,通过钩子(Hooks)进行扩展
模型绑定 模型无关,官方支持接入约 40 家模型厂商 深度绑定 Anthropic 自家模型
开源与协议 MIT 协议,代码完全开源 闭源,核心为商业产品
产品形态 Web UI / 命令行,以 npx @deepseek-ai/dsh web 启动 终端原生 (CLI),桌面 App,Web App,IDE 插件
可扩展性 内核级替换:可更换 Agent Loop、会话日志、沙箱等核心组件 应用级扩展:通过 Skills、MCP 和 26 个生命周期钩子扩展
成熟度 开发者预览版 (v0.1),尚在早期,可能有破坏性更新 成熟商业产品,用户量大,文档完善,有企业级支持

DeepSeek Harness:Agent 界的“乐高”

它的核心是 “一切皆插件” 。这意味着从模型适配器、工具,到最核心的Agent循环(Agent Loop) 和会话日志,全部都是可以自由拆卸和替换的插件。

  • 终极灵活性:你可以轻松更换底层大模型(如从DeepSeek换成OpenAI或本地Ollama模型),甚至可以修改 Agent 的思考和决策流程本身。
  • 完全可观测:它提供了“Trajectory(轨迹)”功能,能完整记录和回放 Agent 的每一步思考和行动,像一个“黑匣子”,方便调试和优化。
  • 生态雏形:凭借其开源和插件化理念,发布后社区迅速涌现出大量第三方插件。
  • 当前局限:作为一个 v0.1 开发者预览版,其成熟度和稳定性与商业产品有差距,上手门槛也相对较高。

Claude Code:Agent 界的“成品车”

它是一款为开发者打磨好的商业产品。你无需关心底层实现,安装后即可通过自然语言与它协作编程。

  • 开箱即用:它深度集成了文件读写、命令执行、代码搜索等能力,提供流畅的终端体验。
  • 应用层扩展:虽然不能修改内核,但Claude Code通过 MCP(模型上下文协议) 和 26个生命周期钩子(Hooks) 提供了强大的扩展能力,例如在代码提交前自动运行测试。
  • 成熟可靠:作为一款拥有庞大用户群的成熟产品,它经过了大量实践检验,有完善的官方文档和商业支持。
  • 生态绑定:其核心价值与Anthropic的模型深度绑定,你购买的是其背后的强大模型与工程实现的完美结合。

该选哪个

总的来说,DeepSeek Harness 的出现,为开发者提供了一个强大的 “造车”平台,而 Claude Code 则是一辆性能优异的 “成品跑车”。
选择 DeepSeek Harness,如果:

  • 你是一位开发者或研究员,希望深入研究 Agent 的内部机制。
  • 你需要高度定制化的 Agent,比如更换核心模型或修改决策逻辑。
  • 你希望构建自己独特的 Agent 应用,并从内核层掌控一切。

选择 Claude Code,如果:

  • 你是一位软件工程师,核心目标是高效完成编码任务,而非研究 Agent 本身。
  • 你追求稳定、流畅、开箱即用的开发体验。
  • 你愿意为成熟的产品和强大的模型能力付费。

DeepSeek Harness可以想象成一个Agent的“操作系统”

  1. 它提供了运行环境(Harness内核)
  2. 你可以自由地“安装”(通过插件)不同的“大脑”(LLM)、“手脚”(Tools)和“记忆”(Memory)
  3. 你甚至可以修改这个“操作系统”本身的运行规则(Agent Loop)

DeepSeek Harness并非一个包含所有功能的“成品Agent”,而是一个高度灵活、可定制的Agent组装平台
它的价值在于提供了一个标准化、模块化的框架,让开发者可以像搭乐高一样,根据自己的需求,自由选择和组合不同的LLM、工具和记忆模块,从而构建出独一无二的AI Agent

运行 deepseek Harness

1
npx @deepseek-ai/dsh web

npx是把依赖安装到全局缓存里,不会安装到项目的node_modules里,也不会写到package.json里。

在终端执行上述命令后,启动了一个服务,可以在浏览器输入http://127.0.0.1:3080打开deepseek Harness界面

图片

设置里可以设置要调用的大模型

图片

选好工作区以后就可以开始让AI干活了

不仅能看到对话内容,还能看到dsh工作的轨迹,可以研究agent的内部机制
图片

一些思考

DSH确实有可能重塑AI Agent开发的行业规则

“拼装式开发”:DSH带来的范式转变。dsh提供可自由组装的“乐高积木”,任何组件(模型、工具、存储、循环)都是可插拔的插件。
创新门槛变低,开发者可通过组合、开发插件来创造新Agent。
赋予Agent“自进化”能力:DSH允许Agent在运行时动态生成、验证并加载新插件来补齐自身能力短板。这意味着Agent可以“自我升级”,而无需等待人工干预。

但DSH目前仍处于开发者预览版(v0.1) 阶段,距离“改写行业规则”尚有距离。

降低了AI agent的开发难度,安装相应插件可以快速搭建行业agent?

门槛确实大幅降低了,但如果你认为“安装插件就等于完成业务Agent”,那可能会踩进一个常见的认知陷阱
更准确的说法是:DSH把难度从“造车”(底层工程)降级为了“开车和改车”(业务组装与调教),但并没有变成“按个按钮就自动驾驶”。

我们可以把搭建领域Agent的过程,类比为组装一台高性能PC:

  • 以前(无DSH):你需要自己焊主板、写BIOS、设计散热系统(写Agent循环、解析器、状态机)。
  • 现在(有DSH):主板、电源、机箱都做好了。你只需要插上CPU(选模型)、插上显卡(装插件)、装上硬盘(挂载业务数据)。

但在“插上显卡”之后,还有两个核心难点并没有消失:

  1. “安装插件”不等于“融入业务逻辑”
    插件解决的是“能不能做”(Capability)的问题,而业务Agent解决的是“怎么做对、做快、做安全”(Quality & Compliance)的问题。
  2. 难度从“写代码”转移到了“调教数据与提示词”
    开发难度没有消失,而是转移了:
  • 以前的难点:如何用代码实现工具调用(Parse JSON、处理异步)。
  • 现在的难点:如何用自然语言和少量代码定义Agent的“人格”和“决策流”。比如,如何在DSH里配置Agent Loop(循环逻辑),让它在5步内必须给出结论,否则触发人工介入。这种“控制论”层面的调参,远比装插件要复杂。
  1. “特定领域”的核心在于“私有数据”(RAG),而非插件
    对于特定业务领域(如医疗、法律、工业),最关键的不是通用插件(搜索、计算),而是领域私有的知识库(Memory/Vector DB)。
  • 你可以一键安装“连接数据库插件”,但要把公司过去10年的技术文档、行业黑话、内部规范清洗、切片、嵌入向量并灌入记忆系统,这个过程(即RAG,检索增强生成)占据了Agent开发70%的工作量,而这部分DSH虽然提供了接口,但具体内容的处理质量完全取决于你。