• 请不要在回答技术问题时复制粘贴 AI 生成的内容
cloud369
V2EX  ›  程序员

DeepSeek Harness 来了,一切皆插件的 Agent 框架

  •  
  •   cloud369 · 3h 35m ago · 1843 views

    DeepSeek Harness 技术拆解,一切皆插件的 Agent 框架

    DeepSeek Harness 的开发者预览版上线了,代码已经开源,仓库在 github.com/deepseek-ai/deepseek-harness 。圈内习惯叫它 dsh 。

    它是 DeepSeek 做的开源 Agent 框架,和 Claude Code 是一类东西,跑在本地,让模型替你真干活。上线前它内测了一阵,这篇按技术脉络把最要紧的设计讲清楚,想快速了解它,看这篇就够。

    它是什么

    dsh 是一个装在你机器上的编程智能体。装了 Node 开发环境,一行命令 npx @deepseek-ai/dsh web 就能把 Web UI 拉起来,浏览器打开(默认 127.0.0.1:3080 )就能对话、审批、切换模式。

    模型在里面做的事比陪聊多得多,改文件、跑命令、查资料,最后把活干完。最值得看的是它的设计方式。

    一切皆插件

    这个框架的第一设计原则是 everything is a plugin ,一切皆插件。

    多数软件把核心逻辑写死,用户只能在预留的少数接口上做有限定制。dsh 反过来,模型接入、工具注册表、会话日志、审批策略,连驱动智能体运转的主循环本身,全部都是插件。

    想换搜索引擎、接自己公司的模型服务,改配置就行,不用动框架代码。给系统加功能就是挂一个新插件,卸载时注册的一切自动撤销,不留残余。

    技术上它站在 Cordis 之上,这是 Koishi 生态一直在用的插件与上下文内核,只负责插件的加载、卸载和依赖关系。dsh 的所有具体组件都是不同插件,靠服务与事件协作,在配置层自由组合。开发者不改 dsh 源码,就能独立选择、替换、扩展任意一项能力。

    分层组装与能力接缝

    运行中的 dsh 是一棵插件树,由多层配置按固定顺序叠加。组合包 bundle 是官方发布的成套插件配置,Profile 是你机器上的具名组装清单,Patch 是你的覆盖层,能精确定位到任意一个插件条目并替换。上层配置始终覆盖下层。

    每种能力还拆成三个独立角色。服务定义规定接口规范,提供方负责实现,消费方负责使用,三者相互独立,模型看到的接口恒定不变。

    拿 bash 工具举例,接口定义、本地实现、工具暴露是三个独立包,想换执行后端,只换提供方就行。

    四种随附模式

    界面顶部有个模式选择器,每个模式对应一份 Agent Preset ,决定当前会话的智能体由哪些插件组成。选一个模式就是选一套完整配置。

    标准模式是默认项,文件编辑、Shell 命令、检索、Skills 、计划、子代理、工作流全都有,适合最广大的用户。

    PTC 模式的全称是程序化工具调用。它拥有标准模式全部能力,但工具的呈现方式不同,由模型生成一段代码来组合多轮工具调用,工具调用不再逐次发起。

    标准模式下,一个五步任务要经历五次"模型调用工具、等结果、再决定下一步"的往返。PTC 模式把五步写进一段程序,一次执行完。任务步骤越多、中间数据量越大,它越快,上下文消耗也越少。

    极简模式只有两个工具,一个保持状态的命令行终端和一个文本编辑工具,系统提示词只有一句话。适合基准测试、教学演示。

    创造模式用来创建自定义预设。你可以直接提需求,比如"创建一个只能读、不能写的代码审查模式",它会起草配置、验证、保存成新 preset 。它还能执行模型编写的代码并修改运行时,信任等级等同于 shell 访问权限,建议只在受信任环境中使用。

    四个随附模式是只读的系统预设,可以复制后修改成自定义预设。有一个限制要记住,会话一旦产生内容就不能再切换模式。模式决定工具集,中途切换会让新工具集解释不了会话历史里的旧工具调用,破坏会话的可复现性。

    Code Mode

    Code Mode 是 PTC 模式的技术基础。它把全部工具生成一套 TypeScript SDK ,模型通过 run_code 工具交一段程序,在程序里直接调用各种工具,写循环、条件判断、并发执行,还能在中间过滤结果。

    只有程序最终打印或返回的内容会进入模型上下文,中间过程不占空间。统计所有包里的 TODO 并汇总排序,这种活常规方式需要几十次工具往返,Code Mode 下一段程序一次跑完。

    安全性没有打折。程序里每一次工具调用都重新走完整的执行流水线,审批、沙箱、超时、日志记录照常生效。

    步骤、轮次与会话日志

    一个任务怎么执行,框架用两个概念定义。步骤是一次模型请求加上它这次回复里要求执行的工具调用。轮次是从接到用户任务开始,到所有事情做完为止的零到多个步骤。

    每个关键位置,步骤开始前、工具执行前后、模型请求发出前,都是可拦截的扩展点。插件可以在这些位置插入审批、改写、记录逻辑。

    每个会话对应一份只增不改的事件日志。模型看到的一切都会落进日志,包括系统提示词、思维链、工具调用与结果、子代理调度、每一次上下文注入。

    Trajectory 视图按来源展示这些信息,内测参与者认为这是同类框架里做得最好的审查工具。同一份事件流还支撑了会话恢复、自动标题、上下文压缩和跨会话检索。

    长任务会拆成清单逐项推进。要用户拍板的事,智能体暂停,抛出带选项的问题,收到回答再继续。

    多智能体协作

    一个智能体可以把工作分派给多个子智能体。subagent 是可续跑的后台子代理,完成后结果自动送回父级会话,中途还能给它发消息。subagent_fork 是一次性子代理,继承当前上下文启动,做完就结束。

    工作流引擎通过脚本确定性编排多个子代理,顺序、并行、汇总都由脚本定义,适合迁移、审计、批量改造这类需要固定流程的任务。

    Ralph 循环每一轮启动一个全新的子代理执行同一个目标,每轮不带上一轮上下文,适合反复试到通过的任务,比如把测试修到全绿。长期目标的创建和修改需要人类用户的根权限,智能体不能自行变更目标。

    安全与治理

    智能体执行的命令可以跑在沙箱里。三大桌面平台都用操作系统原生的隔离机制,Linux 用 bwrap 或 Landlock ,macOS 用 Seatbelt ,Windows 用 ACL 受限令牌。

    沙箱分三档。read-only 只能读不能写,workspace-write 可以写工作区目录,danger-full-access 完全放开。沙箱后端如实上报隔离执行情况,系统条件只能覆盖部分承诺时,后端就报 partial ,不虚报安全边界。

    需要授权的操作,界面会先请求用户批准。两个自动纠偏插件常驻,一个检测重复无效动作,一个强制中断超时的工具调用。

    API Key 这类凭据走独立通道传递,会话日志里只有引用,没有明文。

    生态兼容

    任何 MCP 服务器都可以接入,数据库、办公系统、企业内部服务都能变成工具,和内置工具走同一条流水线,同样受审批和守卫约束。

    给 Claude Code 和 Codex 写好的钩子脚本,通过 Hooks 桥直接复用。内置 ACP 服务端实现,支持 ACP 的编辑器和客户端可以直接把它当后端智能体用。

    模型接入除了 DeepSeek 官方 API ,还支持任意 OpenAI 兼容端点,企业自建推理服务或别的云服务商都行,设置页填完立刻生效。

    五种使用方式

    Web UI 在浏览器里对话、审批、切换模式。Headless CLI 无界面执行单个任务,跑完打印结果就退出,适合 CI/CD 。

    Python SDK 自带打包运行时,提供高层 turns API 和底层 JSON-RPC 客户端。TypeScript SDK 提供 JSON-RPC 协议、服务器与客户端,适合深度集成的团队。ACP 自动化协议服务器面向编辑器和工具链厂商。

    面向开发者

    仓库提供完整的插件开发文档,覆盖工具编写、配置、事件与服务、发布全流程。工程约定写得明确,注册必须是可逆副作用,配置错误必须在加载时报错,不能静默跳过,跨边界标识符必须用品牌类型。这些约定由自动化门禁强制执行,质量门禁做到逐文件 100% 单元测试覆盖,文档与代码同步检查,文档过期直接阻断 CI 。

    还有一项自我修改能力,显式开启后智能体可以检查并热挂载自己运行时的插件,创造模式就是基于这个能力搭的。

    临时插件只存在进程内存里,不写文件、不装包、不改配置、不自动转正,重启即消失。它不是安全边界,只能在受信任环境用。

    内测期间的社区

    框架内测期间,生态先长成了。截至调研时点,内测组织 dsh-external 下有 251 个仓库,反馈板攒了 545 条 issue ,单日最多新增过 14 个。社区自建了包管理器、hub 索引和兼容性监控。

    内测群里流传一句话,官方做得越少,社区越繁荣。

    快速体验

    内测参与者给了一条实在的提醒,dsh 要配合相应的模型效果才好,框架和模型的协同训练才刚刚起步。

    它把 Thinking 思维链折叠成一行展示,配合 DeepSeek 自家模型,输出速度快得让人产生错觉,当然它本身也不慢。

    想自己试试,装了 Node 开发工具链,一行命令 npx @deepseek-ai/dsh web 就能启动 Web UI 。

    DeepSeek Harness 现在还是 v0.1 ,核心插件和基础接口预计还会快速迭代。

    内测者反复讲的一个判断值得记住,Agent 等于 Model 加 Harness 。模型是灵魂,Harness 是身体,让模型能理解环境、使用工具,在真实场景里持续干活。插件这套设计,就是给这具身体留了最自由的改装接口。

    16 replies    2026-08-13 22:49:43 +08:00
    loggerhead
        1
    loggerhead  
       3h 31m ago
    404 是因为还没开源吗?
    psllll
        2
    psllll  
       3h 30m ago via Android
    404
    sillydaddy
        4
    sillydaddy  
       3h 25m ago
    是不是 AISlop ??网上丁点消息也没搜到。
    GeruzoniAnsasu
        5
    GeruzoniAnsasu  
       3h 20m ago   ❤️ 1
    /go/aislop

    > 模型在里面做的事比陪聊多得多,改文件、跑命令、查资料,最后把活干完。最值得看的是它的设计方式。


    最值得看的只有一个链接,只发链接完全够了,谢谢
    另外链接是写在介绍页的,但是看起来又手忙脚乱地把 public 关了不知道在修什么
    https://www.npmjs.com/package/@deepseek-ai/dsh
    cloud369
        6
    cloud369  
    OP
       3h 19m ago
    @GeruzoniAnsasu 确实手忙脚乱 公测这几分钟发了个 rc
    GeorgeV
        7
    GeorgeV  
       3h 7m ago
    这文案是 DS 的模型深度润色过的吧
    tianyi
        8
    tianyi  
       2h 59m ago
    现在的 0.1 版本还很不完善,恳请大家多提提意见。
    cobiao
        9
    cobiao  
       2h 57m ago
    一切皆插件这个特性挺有意思,把 agent 的能力拆成可复用、可自由拼装的模块。明显就是为了以后 agent 自我进化在铺路。
    accacc
        10
    accacc  
       2h 52m ago
    @tianyi 支持
    beginor
        11
    beginor  
       2h 49m ago via Android
    没命令行?
    GeorgeV
        12
    GeorgeV  
       2h 5m ago
    @tianyi

    出现了这个警告。。。

    npm warn deprecated [email protected]: Use your platform's native DOMException instead
    JackyYang
        13
    JackyYang  
       1h 52m ago
    有了 AI ,出分析文档的速度就像石器时代与工业时代的差别
    fkysly
        14
    fkysly  
       1h 50m ago
    整理了一个 DeepSeek Harness 插件精选列表:
    https://github.com/awesome-dsh-plugin/awesome-dsh-plugin
    SiWXie
        15
    SiWXie  
       1h 48m ago
    测试了下,目前有些简陋,和 OpenCode 、Coedx 、Claude Code 还有 ZCode 比,优势是很快,但你说的模型应该和 Harness 一起训练想法挺好的,共同进化
    weixiangzhe
        16
    weixiangzhe  
       1h 24m ago
    那不是和 pi 一个理念了
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Solana   ·   1938 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 43ms · UTC 16:14 · PVG 00:14 · LAX 09:14 · JFK 12:14
    ♥ Do have faith in what you're doing.