码农知识堂 - 1000bd
  •   Python
  •   PHP
  •   JS/TS
  •   JAVA
  •   C/C++
  •   C#
  •   GO
  •   Kotlin
  •   Swift
  • 两种 Harness 哲学:从 DeepSeek Harness 的"过度抽象"争议,看 OpenClaw.NET 的另一种答案


    DeepSeek Harness 的"怪设计"未必是烂设计——它只是不是为你我设计的,而是为模型自我迭代的未来准备的。OpenClaw.NET 则证明了同一条演化路线可以用另一种方式走:不让模型直接改 Harness,而是让模型提议、留证、过回归、经人审。
    合集 - AI开源项目(61)
    1.为 openclaw.net 集成 ElBruno.MempalaceNet 记忆系统05-032.Graphify-DotNet:AI 驱动的 .NET 代码知识图谱构建工具05-023.SonnetDB:.NET 生态下的高性能嵌入式时序数据库04-284.C# 原生编码智能体运行时 SharpClawCode04-275.SharpIDE: 基于 .NET 与 Godot 引擎的跨平台开源 IDE04-266.OpenClaw.NET .NET 原生插件开发完全指南:以 Mempalace 插件为范例05-057..NET生态系统中的A2A(Agent-to-Agent)协议支持与跨平台多智能体协同05-068.Memgraph 与 Neo4j 图数据库对比及 .NET 生态适配分析05-089.OpenClaw.NET 外部 CLI 连接器 (External CLI Connectors) 详细技术总结05-1010.OpenClaw.NET:给智能以形态05-1211.架构融合:Activity Host 作为确定性编排与认知智能代理的桥梁05-1812.OpenClaw.NET 兼容性目录指南(Compatibility Catalog)05-2113.当 AgentGateway 遇上 OpenClaw.NET:企业级智能体基础设施的深度协同实战06-0614.OpenClaw.NET 上线 MetaSkills :软件工程第一性原理的工业级实践06-1715.OpenClaw.NET MetaSKILLs 系统深度解析:AI Agent 正在学会「自己给自己写技能」06-1816.OpenClaw.NET 重大更新:Goal 机制登场,让 AI Agent 不再"半途而废"06-1817.OpenClaw.NET 祭出 TokenJuice:Agent 时代的"Token 瘦身引擎",让 LLM 上下文不再膨胀06-1918.从 OpenClaw.NET 的 /loop 实现,看 Loop Engineering 如何从概念走向工程实践06-2019.将 Rust 绑定到 .NET 10:Oxigraph 的 FFI 桥接实践06-2820.Token IO 架构的设计游戏:大模型产品形态四年演进的本质06-2921.当 AI 不再只是"说话":OpenClaw.NET 率先原生支持 MCP Apps06-3022.你的 AI Agent 会在服务器上"修仙"——OpenClaw.NET 长持久会话技术解读07-0423.从 Bun 的 Rust 重写,看 C# 如何重建 AI 基础设施层07-1024.当 AI 对话里直接弹出业务界面:MCP Apps 正在改写 SaaS 的集成逻辑07-1225.MCP + A2A 融合:协议层已就绪,信任层才是硬仗07-2126.C# MCP SDK 2.0 即将发布:去会话化、去握手、去运维噩梦07-2427.数字员工的成本账:OpenClaw.NET 如何用工程化实现"成功任务的单位经济学"(下)07-2328.25家巨头联名的那封公开信,为什么数字员工架构师应该逐字读一遍07-2829.从 Harness 引擎到 MetaSkill DAG 的确定性架构07-3030.从DDD到Ontology:当数字员工不再认"限界上下文"这堵墙07-3131.把 284B 的 DeepSeek V4 Flash 装进纯 .NET:TensorSharp 用一天改写了 .NET 推理栈的位置08-0132.MCP 第五版 × OpenClaw.NET:从协议升级到生态编排08-0233.纯 C# 追平 llama.cpp?.NET 本地推理三国杀08-0334."从"前锋"到"中场":为什么 Agent 基础设施的建设者必须是系统思考者08-0435.修 Bug 的手艺与架构的艺术:从熵增到熵减08-0636.改变世界的17个方程,如何重塑 GoodCrew 的架构哲学08-0637.Agent 系统的不确定性治理:当软件工程遭遇"梯度下降"08-1138.WorkBuddy 专家团的下一步:用 MetaSkill 把「提示词约定」升级为「运行时硬约束」08-1039.JVMGuard 来了,.NET 开发者别慌:你的 dotnet-monitor 早就准备好了08-14
    40.两种 Harness 哲学:从 DeepSeek Harness 的"过度抽象"争议,看 OpenClaw.NET 的另一种答案08-15
    41.当"入门第一课"的作者开始 Vibe Coding:廖雪峰 2026 上半年 AI 编程实践深度探索08-1642.TensorSharp 最新进展研究报告:从 DeepSeek V4 Flash 到 GLM-5.2,以及等待中的 GLM-5.308-2043.AI 编程时代,.NET 的机会在哪里?08-2544.3 张卡到底能不能跑大模型推理?从 vLLM、llama.cpp 到 TensorSharp 的多卡真相08-2845.纯 .NET 手写 CUDA kernel,GLM-5.3-Flash decode 跑出 llama.cpp 的 2 倍08-2946.TensorSharp 3.3.0.0 发布,视频生成、DFlash2 投机解码、安全加固一起来了08-3147..NET 异常处理的"暗门":代码里写满 catch,你依然能抓住它——从一个 AI Agent 运行时的源码说起09-1148.MetaSkill 落地 .NET:当 Agent 从「调用工具」进化到「组织工具」09-0349.写给 Java 工程师的 OpenClaw.NET 上手指南:用你熟悉的 Spring 思维,跑起一个生产级 AI Agent09-0650.写给 Golang 工程师的 OpenClaw.NET 上手指南:用你熟悉的 Go 思维,跑起一个生产级 AI Agent09-0451.写给 Python 工程师的 OpenClaw.NET 上手指南:用你熟悉的 Python 思维,跑起一个生产级 AI Agent09-0552.写给 TypeScript 工程师的 OpenClaw.NET 上手指南:用你熟悉的 TS 思维,跑起一个生产级 AI Agent09-0553.写给 Rust 工程师的 OpenClaw.NET 上手指南:用你熟悉的 Rust 思维,跑起一个生产级 AI Agent09-0854.写给 C++ 工程师的 OpenClaw.NET 上手指南:用你熟悉的 C++ 思维,跑起一个生产级 AI Agent09-1055.写给 PHP 工程师的 OpenClaw.NET 上手指南:用你熟悉的 PHP 思维,跑起一个生产级 AI Agent09-0956.RedNb.Nacos 2.0.0 正式发布:.NET 接入 Nacos 3.2.4,AI Registry 全能力落地09-1357.把 LLM 密钥从环境变量里解放出来:OpenClaw.NET 迎来 Vault/OpenBao 密钥后端09-1658.事件风暴遇上 MetaSkill:把企业「世界模型」变成可执行的 DAG09-2159.TensorSharp 支持 Jev 模式了:一次去噪,直接读出决策09-2360.定时任务还想上 Hangfire?这个被 AI Agent 项目看上的 TickerQ,把反射全干掉了09-2461.不让模型写作文,直接从它脑子里读答案:Jev 决策在 .NET 的两条路线09-25
    收起

    1

    DeepSeek Harness 发布后在开发者社区引发了不小的争议,有资深开发者直言其设计"烂"。但事情可能没有这么简单。本文借一篇深度分析文章的透镜,对比 DeepSeek Harness 与 .NET 生态的 OpenClaw.NET,聊聊 Agent Harness 设计的两条路线。

    一、DeepSeek Harness 的设计到底"怪"在哪

    DeepSeek Harness 的核心是 Cordis 内核,主张"一切皆插件 + 插件动态装卸"。Agent Loop、Memory 这些性质完全不同的组件,全部被压平为可以随意装载、替换、卸载的插件。

    这个设计在应用开发者看来很别扭,原因有三:

    • 它不是 To C 的:普通用户不需要 Claude Code 那样的体验之外还关心插件热插拔。
    • 它不是 To Dev 的:开发者更新插件重启载入即可,根本不需要"卸载插件"这种能力;Skill 动态加载已经满足了大半需求。
    • 它也不是 To B 的:企业交付场景不关心这种运行时动态性。

    而且它犯了软件工程史上的经典错误——过度抽象。就像"一切皆文件"在今天看来应该表述为"一切皆 Handle + Trait",磁盘文件和 Socket 不该被当作只是属性略有差别的同类;Agent Loop 和 Memory 也不该被当作同等的插件。历史上追求理论优美的设计,落地时往往要么削足适履,要么对接环节的成本超过了抽象本身的价值。

    二、一个出人意料的解读:它是 To LLM 的

    公众号"孔某人的低维认知"的一篇文章给出了两个解读角度。

    第一是历史路径依赖。 Cordis 作者 Shigma(Yifan Shi)早年做聊天机器人框架 Koishi,动态装卸插件正是其基因,2023 年重构为 Cordis,2024 年进入 DeepSeek-V3 技术报告作者名单。而 Harness 团队负责人崔添翼在 Jane Street 做了九年量化,又创业做过量化公司——量化交易系统恰好也偏爱动态插件架构。两条路径在 DeepSeek 汇合,做出这样的设计并不奇怪。

    第二是逆向 RL 推导:这个设计是 To LLM 自己的。 如果目标是让 Agent 在执行或 RL post-train 过程中自主优化自己的 Harness,那么"灵活性、一切皆可被修改、可以被彻底卸载"就突然合理了。需要"卸载插件"这个能力,恰恰是最好的分析切入点——只有模型要亲手改造自己的运行环境时,卸载才是刚需。目前这个功能被标记为 deliberate opt-in,也印证了它偏自用研究场景、顺便开源的定位。

    三、OpenClaw.NET:同一个问题,时间轴另一端的答案

    OpenClaw.NET 是 .NET 生态的 Agent 运行时与网关(NativeAOT 友好,自托管,兼容 OpenClaw 的 TS/JS 插件与 SKILL.md 生态)。它和 DeepSeek Harness 面对同一个问题——"Agent 与它的 Harness 之间应该是什么关系"——但给出了几乎相反的答案。

    1. 动态性:内核原语 vs 边界隔离

    Cordis 让动态性渗透整个内核。OpenClaw.NET 则把能力分成四条通道:Core / Optional / Experimental / JIT-only——动态插件(channels、commands、hooks、providers、原生 .NET 插件)被明确划进 JIT-only 通道,核心运行时保持 NativeAOT 友好、静态可裁剪。

    这正好规避了对 DeepSeek Harness 的批评:类型信息留在类型层面,不降级为运行时属性。动态性被承认,但被隔离在边界上。

    2. Harness 自演化:模型直改 vs 治理流水线

    这是两者最深层的分歧:

    • DeepSeek Harness 赌的是模型即将有能力安全地修改自己的 Harness,所以把"可修改性"做成内核原语。
    • OpenClaw.NET 假设模型暂时没这个能力,于是把自演化做成一条"审查优先"的治理流水线:
      • Passive Harness Contracts / Evidence Bundles:Agent 的工作计划、证据、风险全程可检查,但不干预默认行为;
      • Plan-Execute-Verify:高风险工具执行的受治理通道;
      • Harness Evolution Proposals:Agent 可以提议改进自己的 Harness 策略、路由、记忆检索、工具治理,但落地要过人审;
      • Harness Regression Suite(openclaw harness test):任何 harness 变更在获得信任之前,先过离线回归测试。

    一句话:DeepSeek Harness 是"未来模型能力下 To LLM 的赌注",OpenClaw.NET 是"当前模型能力下 To Dev 的务实形态"。

    3. 可检查性:黑盒插件 vs 结构化投影

    还有一个常被忽视的差异。Cordis 的插件是可热替换的黑盒单元;而 OpenClaw.NET 的 Shared Harness State(参与方、动作、读写集、假设、验证义务、证据链接、冲突)加上 Codebase Harness Map(仓库的静态结构投影),实际上把 Agent 的工作流投影成了可检查的 DAG 结构——动作与读写集是节点,依赖与验证义务是边。

    这很关键:一切治理、回归测试、人机协作的前提都是结构可观察,而不是可热插拔。从这个角度看,"被动可检查"(Passive-first)反而比"内核可替换"更接近 Agent 自演化真正需要的基础设施。

    四、结语

    DeepSeek Harness 的"怪设计"未必是烂设计——它只是不是为你我设计的,而是为模型自我迭代的未来准备的。OpenClaw.NET 则证明了同一条演化路线可以用另一种方式走:不让模型直接改 Harness,而是让模型提议、留证、过回归、经人审。

    两条路线谁对谁错,取决于一个尚未有答案的问题:模型什么时候才配得上修改自己的 Harness?在那一天到来之前,把动态性隔离在边界、把演化关进治理流水线,也许才是对开发者和运维者真正负责任的设计。


    本文基于"孔某人的低维认知"《DeepSeek Harness是服务于Agent自主优化Harness的,不是To C/Dev的原创》一文及 OpenClaw.NET 开源仓库整理分析。

    欢迎大家扫描下面二维码成为我的客户,扶你上云

  • 相关阅读:
    快速统计文本数字之和
    element ui el-select修改样式
    @Repository详解
    HBR推荐 丨验证决策、回归产品——2022年企业需要适应这两大转变
    节省时间,创造价值:人工智能在工作中的实际应用
    Hello Playwright:(2)简化部署方式
    MOS晶体管单元电路的最佳二维公共质心布局生成
    万物皆可集成系列:低代码释放用友U8+深度价值(3)— 数据融合应用
    Cookie/Session
    Eureka介绍和使用
  • 原文地址:https://www.cnblogs.com/shanyou/p/22485002
  • 最新文章
  • 【FHE】我们如何实现同态加密推理(八):SiLU 的密文化——两条路径,和一个 8 字节的开关
    SQLcl 中 c/old/new 替换变量为何失效?先定位再替换
    不让模型写作文,直接从它脑子里读答案:Jev 决策在 .NET 的两条路线
    Halo插件:支持GitHub的图床附件策略
    电视投屏界的“一股清流”!SimpleTVCast 6.0.0-beta 抢先体验:无需TV端App,界面大换血!✨
    华三VXLAN集中式网关实战指南:Spine多活网关 + 双活接入(M-LAG)
    软件更好写之后口碑会更重要
    大 O、大 Omega、大 Theta 的区别,O(n) 复杂度是什么意思
    Java标签跳转:一个鲜为人知但却很实用的小技巧
    多智能体系统论文速读
  • 热门文章
  • 十款代码表白小特效 一个比一个浪漫 赶紧收藏起来吧!!!
    奉劝各位学弟学妹们,该打造你的技术影响力了!
    五年了,我在 CSDN 的两个一百万。
    Java俄罗斯方块,老程序员花了一个周末,连接中学年代!
    面试官都震惊,你这网络基础可以啊!
    你真的会用百度吗?我不信 — 那些不为人知的搜索引擎语法
    心情不好的时候,用 Python 画棵樱花树送给自己吧
    通宵一晚做出来的一款类似CS的第一人称射击游戏Demo!原来做游戏也不是很难,连憨憨学妹都学会了!
    13 万字 C 语言从入门到精通保姆级教程2021 年版
    10行代码集2000张美女图,Python爬虫120例,再上征途
小工具 小游戏
Copyright © 2022 侵权请联系2656653265@qq.com    京ICP备2022015340号-1

京公网安备 11010502049817号