DeepSeek Harness想做平台底座,这是最近我听到最多的评价。它把Agent的模型、工具、上下文、Session和执行循环全部拆成插件,同时规定“模型看过的东西必须可记录、可重放”,把Harness做成了一套可替换、可追溯的Agent基础设施。Harness不只是一个loop,而是loop+tools+context+session+runtime state一套外围系统。
1.它没有把日志当成 Agent 运行后的录像,而是反过来让日志成为 Agent 的事实源:先记录发生了什么,再从记录生成模型上下文,因此模型看到的每一条信息,事后都能够被完整还原。
2.Agent最常见的失控之一,是不断重复同一个无效工具调用。DeepSeek Harness 没有粗暴禁止重试,而是监控重复行为,在模型连续犯同一个错误时逐步加强提醒,把“你正在原地打转”这个系统级信息重新告诉模型,让模型自己决定是继续、换路还是退出。
3.Agent经常不是因为推理能力不够而犯错,而是因为它不知道自己看到的信息并不完整。DeepSeek Harness做法是,只要搜索结果被截断,就明确告诉模型还有多少内容没展示,并保留完整结果供它继续读取;只要命令因为安全策略被拒绝,也明确告诉模型这不是命令写错了,继续换方法没有意义。它解决的其实是一个很基础的问题:模型可以不知道某些信息,但必须知道自己不知道。
4.为了让Agent调工具更快,允许模型自己写一小段程序,一次调用很多工具,此后,最容易出现的风险就是这段程序绕过原来的权限系统;DeepSeek Harness的 run_code设计重点就在于,哪怕模型自己写程序批量调用工具,每一次真正的工具调用仍然必须重新经过原来的权限检查。
5.长期Agent真正需要持久化的不是聊天历史,而是工作状态;DeepSeek Harness通过“清空上下文,保留工作区”,让每一轮Agent都从干净脑子重新开始,同时靠文件和结构化交接维持任务连续性。