DeepSeek 过去最受关注的是模型能力,DeepSeek Harness 却把焦点移到了模型之外:一个 Agent 怎样获得上下文、调用工具、保存状态、执行长任务,并让整个过程可以检查和扩展。官方仓库公开十余天便超过 19 万 Stars 和 2 万 Forks,说明开发者正在重新认识一个事实——决定 Agent 体验的,不只是模型,还有承载模型工作的整套运行系统。

Harness 不是模型,而是模型的工作系统

模型负责理解与生成;Harness 负责让它在真实环境中持续工作。它组装系统提示、项目说明、Skills 和历史上下文,注册文件、Shell、搜索、MCP 与子 Agent 工具,维护“模型请求—工具执行—结果回传”的循环,并处理会话、权限、审批、沙箱和界面。DeepSeek 用一句话概括:Agent = Model + Harness

这也解释了为什么同一个模型放进不同 Coding Agent,体验可能相差很大。上下文怎样压缩、工具描述是否准确、失败能否恢复、写操作是否审批,都会改变最终结果。DeepSeek Harness 开源的不是另一个聊天壳,而是这些决策所在的控制平面。

“一切皆插件”到底激进在哪里

项目建立在 Cordis 上。模型适配器、工具注册表、系统提示、会话日志、存储、沙箱、Agent Loop、子 Agent、调度和 Web UI 都是插件。Cordis 内核管理插件加载、卸载、依赖、服务和事件,本身不垄断具体 Agent 能力。

Bundle 负责分发一组插件与配置,Profile 决定实际启动哪些 Bundle,后层配置还可以替换前层实现。团队因此能更换模型、存储或执行环境,而不必复制并修改整个主仓库。代价同样明显:组合顺序、依赖兼容、插件权限和回归测试都会比单体应用复杂。“可替换”是一项架构能力,不等于所有实现天然等价。

会话日志是它最有价值的设计之一

模型看到的系统提示、上下文注入、推理块、工具调用与结果、子 Agent 调度都会写入仅追加的 Session Log。Trajectory 视图从同一事件流展示过程,Resume、Fork、Search 和 Replay 也由它派生。

这让开发者能回答“模型当时看到了什么”“哪次工具返回导致了错误”,比只保留最终回复更适合调试长任务。不过 Replay 不能撤销已经发送的邮件或恢复变化后的网页;日志保存的是执行证据,不是让外部世界倒放的时间机器。

四种模式面对不同问题

  • Standard 提供文件、Shell、搜索、Skills、计划、目标、子 Agent 和工作流,适合日常开发。
  • PTC 模式允许模型用 TypeScript 组合多轮工具调用,适合批量查询、循环、过滤与聚合。
  • Minimal 只保留持久 Bash 和文件编辑器,用于减少 Harness 干预并评测模型。
  • Creator 增加运行时检查和插件实验,用来制作垂直 Agent 与自定义 Profile。

这些是四套能力组合,不是四个模型或四档订阅。

为什么它会突然爆火

第一,DeepSeek 品牌把原本偏底层的 Harness 概念带入大众开发者视野。第二,一行 npx 和完整 Web UI 降低了尝鲜成本。第三,MIT 与完整源码满足了研究、魔改和商业组合的预期。第四,模型可替换回应了团队对供应商锁定的担忧。第五,“一切皆插件”既容易传播,也确实对应清楚的架构边界。第六,极快的 Star 增长制造社交证明,视频、社群和插件项目又反过来放大热度。

我的评价是,它最重要的意义不是又多了一个 Coding Agent,而是把 Agent 的外壳从产品黑盒变成可检查、可组合的工程对象。这一方向很可能比某次模型小幅提升更持久。

热度之外必须看见的边界

官方明确标记 Developer Preview,发行版仍是 RC,并预告会有破坏性变更。生产试验必须锁定版本、保存配置并建立回归任务集。第三方插件及安装脚本属于供应链代码,应固定来源并审查权限。

Local-first 也不等于 Offline-only:会话默认保存在本机,但云模型、网页工具、MCP 和插件仍可能向各自服务发送数据。Harness 可以运行代码并操作文件,官方安全政策建议使用受限容器或虚拟机、隔离 Workspace,并为重大写操作保留人工审批。Stars 不是 Benchmark;官方资料也不足以证明它全面胜过 Codex 或 Claude Code。

如果你在开发 Agent、研究工具循环或需要可追踪的多模型运行层,现在就值得在隔离环境中试用。