<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:media="http://search.yahoo.com/mrss/"><channel><title>DeepSeek | Feisky</title><link>https://feisky.xyz/tags/deepseek/</link><description>极客时间专栏作者，专注于 Kubernetes、AI Infra、AI Agent 领域的深度技术分享，让 AI 成为你的第二大脑</description><generator>Hugo 0.165.0</generator><language>zh-CN</language><managingEditor>Pengfei Ni</managingEditor><webMaster>Pengfei Ni</webMaster><lastBuildDate>Fri, 14 Aug 2026 12:39:05 +0000</lastBuildDate><atom:link href="https://feisky.xyz/tags/deepseek/index.xml" rel="self" type="application/rss+xml"/><item><title>DeepSeek Harness 入门指南：一切皆插件的 Agent 到底怎么用</title><link>https://feisky.xyz/posts/2026-08-14-deepseek-harness/</link><pubDate>Fri, 14 Aug 2026 10:00:00 +0800</pubDate><dc:creator>Pengfei Ni</dc:creator><category>DeepSeek</category><category>DeepSeek Harness</category><category>AI Agent</category><category>Agent Harness</category><category>开源</category><guid>https://feisky.xyz/posts/2026-08-14-deepseek-harness/</guid><description>&lt;p&gt;昨晚 DeepSeek 发布了新模型 DeepSeek V4 Pro，虽然有些波折，但性能提升毫不意外。倒是跟着一起出来的 DeepSeek Harness 让人眼前一亮，这是 DeepSeek 的第一个 Agent 产品。刚刚开源一天，GitHub 已经 7 万多星了，增速比当初 R1 开源的时候还猛。&lt;/p&gt;</description><content:encoded>&lt;![CDATA[<p>昨晚 DeepSeek 发布了新模型 DeepSeek V4 Pro，虽然有些波折，但性能提升毫不意外。倒是跟着一起出来的 DeepSeek Harness 让人眼前一亮，这是 DeepSeek 的第一个 Agent 产品。刚刚开源一天，GitHub 已经 7 万多星了，增速比当初 R1 开源的时候还猛。</p><p>很多人以为 DeepSeek Harness 是又一个 Codex 复刻，但实际跑一下就可以发现，这东西跟 Codex 们根本不是一个思路。</p><p>简单说，Codex 就是一体机，模型、工具、循环、权限全部焊死在一起。想换模型必须使用 Codex 支持的模型格式，想去掉用不到的工具省点 token 也没门。DeepSeek Harness 则是组装机，模型是插件，工具是插件，会话是插件，连 Agent 循环等等一切皆插件。</p><p>为此，DeepSeek 还专门发了一篇 88 页的论文，把插件的装卸做成了有数学证明的形式化系统。这还是我第一次看到有人用数学证明来定义 Agent Harness 该怎么组装。</p><p>下面就从安装开始，带你一步步把它跑起来。</p><h2 id="一行命令跑起来">一行命令跑起来</h2><p>首先，机器上需要安装 Node.js （版本号要求 22.19 以上，如果没有，可以让其他的 Agent 帮你安装）。然后在命令行执行：</p><pre tabindex="0"><code>npx @deepseek-ai/dsh web</code></pre><p>稍等一下，你会看到<code>dsh web: http://127.0.0.1:3080</code>。接着，在浏览器打开这个链接就进入了 DeepSeek Harness 主界面。</p><p>在开始使用之前，它会提示你输入 API Key。到 DeepSeek 开放平台（platform.deepseek.com）创建一个：</p><p><img src="/images/2026-08-14-deepseek-harness-api-keys.jpg" alt="DeepSeek 开放平台 API Keys" loading="lazy" decoding="async"/></p><p>复制 API Key，回到 Harness 界面粘贴上就可以进入如下所示的主界面了 ：</p><p><img src="/images/2026-08-14-deepseek-harness-web-ui-main.jpg" alt="DeepSeek Harness Web UI 主界面" loading="lazy" decoding="async"/></p><p>这时候输入框还是不能输入的。你需要先选择一个工作区（就是你要让 Agent 操作的项目目录），比如我选择了 deepseek-harness 源码目录，接着输入框就可以用了。</p><h2 id="开始第一个任务">开始第一个任务</h2><p>配好之后我试了个简单的：让它总结自己的源码仓库。发了一句“总结此代码库并识别其主要工作原理”，它读了 AGENTS.md，扫了 packages 目录，阅读了设计文档，一分钟左右就给出了一份架构概览，核心包和它们的职责列得挺清楚。</p><p><img src="/images/2026-08-14-deepseek-harness-dsh-conv.jpg" alt="DeepSeek Harness 会话示例" loading="lazy" decoding="async"/></p><p>直观用下来，跟 Codex 具有明显的不同：</p><p>第一个明显感受是速度。用惯了 Codex 再切过来，对比太明显了，响应速度和工具调用的周转都非常快。当然这跟 DeepSeek V4-Flash 本身的推理速度有关，但 Harness 端的开销控制也做得不错。</p><p>另一个亮点是轨迹视图。点开“轨迹”标签页，可以看到模型每一步看到了什么、调了哪个工具、传了什么参数、返回了什么结果，连 system prompt 和 context 注入都能展开看。</p><p><img src="/images/2026-08-14-deepseek-harness-trajectory-view.jpg" alt="Trajectory 视图：会话的每个细节都可追溯" loading="lazy" decoding="async"/></p><p>所有信息都记在 append-only 的会话日志里，恢复、分叉、回放都从这里派生。这个“模型可见即已记录”的方式，在其他 Agent 工具里不常见。</p><h2 id="装备-agent-预设">装备 Agent 预设</h2><p>DeepSeek Harness 对 Agent 的灵活控制体现在它的 Agent 预设功能里。所谓 Agent 预设就是一个会话的 Agent 所运行的插件组装，包括它的工具、提示词与能力等等。</p><p>打开设置里的“Agent 预设”，可以看到它已经内置了四种预设：</p><p><img src="/images/2026-08-14-deepseek-harness-agent-presets.jpg" alt="Agent 预设：四种模式" loading="lazy" decoding="async"/></p><p>标准模式是日常默认，提供了最完整工具组合。PTC 模式让模型用 TypeScript 程序编排多步工具调用，跟 Claude Code 的 thinking tool use 一个思路。极简模式只保留 bash + 编辑器这两个工具，用于基准测试。创造模式则在标准模式的基础上又增加了自检、插件实验和预设创建功能，用来创建新的 Agent 预设。</p><p>这四种模式本身就展示了“一切皆插件”的核心：不同模式就是不同的插件组合，你也可以复制一份改成自己的。</p><p>对于入门使用来说，标准模式就够了。等你玩熟练了，想针对特定场景或项目做定制，到时候就可以切换到创造模式，让它帮你装备上你特定的工具、Skill、知识库等私有配置。</p><h2 id="一切皆插件">一切皆插件</h2><p>前面说了 DeepSeek Harness 是组装机，那具体能组装哪些东西呢？翻了一下源码，我发现整个项目由 50 多个独立的 Cordis 插件组成，每个插件负责一个具体能力。这些插件之间没有谁是核心、谁是外围的区分，官方原话是 “There is no privileged core to patch”，所有插件地位平等。</p><p>下面这张图展示了主要的服务插件和它们的可替换选项：</p><p><img src="/images/2026-08-14-deepseek-harness-dsh-plugin-system.jpg" alt="DeepSeek Harness 插件系统架构" loading="lazy" decoding="async"/></p><p>从图里可以看到，模型、工具、会话、沙箱、技能、子 Agent 这些能力全部挂在同一个 Root Context 下面，每个都可替换。下面挑几个最实用的场景说一下：</p><ul><li><p>换模型。设置页面添加自定义 OpenAI 兼容端点，指向公司网关或 vLLM，下一次请求直接生效，不用重启。</p></li><li><p>换沙箱。默认本地沙箱（Linux Landlock / macOS sandbox-exec），代码里有 E2B 云端沙箱适配器，换个配置就行。</p></li><li><p>删工具。Claude Code 每次都把几十个工具 schema 塞进提示词白吃 token。DSH 每个工具是独立插件，配置里禁用即可。</p></li><li><p>换 Agent 循环。这是跟所有现有 Agent 最大的区别。Claude Code 和 Codex 的 agent loop 都是写死在运行时里的，你可以在预留的 hook 点做定制，但循环本身换不了。DSH 的 agent loop 就是一个普通插件，写一个新的替换它就行。而且循环里的每个关键节点（模型请求前、工具执行前、轮次结束时）都是 waterfall 事件，你写一个审批插件或日志插件，监听这些事件就能拦截和改写，不需要碰循环代码本身。</p></li></ul><p>说白了，其他 Agent 能做的事 DSH 都能做。但反过来，agent loop 本身可替换这件事，是其他 Agent 加多少 hook 都做不到的，因为这是最底层的架构决定。</p><h2 id="cordis-运行时安全装卸">Cordis 运行时安全装卸</h2><p>既然一切都是插件，那就必须回答一个问题：怎么保证插件在运行时装上去、卸下来不会把其他插件搞挂？这正是 Cordis 框架要解决的核心问题。</p><p>做个对比：VSCode 也有插件系统，但卸载每个插件必须重启整个编辑器。而 Cordis 的目标是让插件可以随意热插拔，而且有数学证明保证安全。</p><p>下面这张图展示了 DeepSeek Harness 的分层架构，从上到下每一层都可以被上一层覆盖：</p><p><img src="/images/2026-08-14-deepseek-harness-dsh-architecture-overview.jpg" alt="DeepSeek Harness 分层架构" loading="lazy" decoding="async"/></p><p>论文把安全装卸拆成两个维度来解决：</p><ul><li><p>时间维度，插件卸载时所有副作用必须可撤销。每个注册的事件监听器、服务、工具 schema 都通过<code>ctx.effect()</code> 安装，运行时追踪逆操作，卸载时反序执行。</p></li><li><p>空间维度，插件间依赖自动管理。通过<code>inject</code> 声明需要哪些服务，框架等依赖就绪再激活。被依赖的服务卸了，依赖它的插件自动暂停。</p></li></ul><p>有了这些，你可以在 Agent 跑着的时候换模型、加工具、改沙箱，不丢上下文，不丢会话。论文还证明了 confluence 定理，不管你以什么顺序装卸插件，最终状态等价于把最终配置从头加载一次。</p><h2 id="还不够好的地方">还不够好的地方</h2><p>DeepSeek Harness 虽然刚开源一天，但生态已经非常丰富了。内测阶段的招募在 Twitter 上引发了一场开发者路演，964 人报名提交了 897 个项目。开源后<code>awesome-deepseek-harness</code> 等精选列表迅速冒了出来。</p><p>有意思的是，从 GitHub commit 历史可以发现，不少代码是通过 Codex worktree 提交的。DeepSeek V4 原生支持 Responses API，可以无缝接入 Codex，所以团队直接拿竞争对手的工具来开发自己的产品，挺务实的。</p><p>目前官方不接受外部 PR，但可以通过 Discussion 反馈问题，也鼓励社区做独立插件丰富生态。官方表态也挺有意思：“我们不认为官方仓库中的包比社区创建的包更重要”。</p><p>不过问题也不少。现在的 v0.1 还处在开发者预览状态，后续肯定会有破坏兼容性的变更。安全方面，已有研究者发现几个严重漏洞，包括 read-only 沙箱对读操作不设防、动态插件的 vm 沙箱存在逃逸路径等，这些安全问题在使用时一定要注意。</p><h2 id="写在最后">写在最后</h2><p>如果把 DeepSeek Harness 当产品看，它现在有没有 Codex 好用？UI 成熟吗？体验够不够顺畅？这些问题的答案都是“还差得远”。</p><p>但 DeepSeek Harness 看的可能不是当下的使用体验。在模型能力还在高速变化、Harness 的最佳范式远没有收敛的阶段，过早押注一个封闭产品，等于拿一家公司的判断去猜一个还在移动的终局。DeepSeek 的做法是把门打开，保留尽可能多的选择权，让社区来探索什么组合最有效。</p><p>某种上下文策略胜出了，它就可以成为默认插件。PTC 比传统工具调用更有效，它就可以被强化。未来模型强到不需要复杂的多 Agent 编排，那些组件就可以随时卸掉。社区跑出来的问题、插件和经验，会不断暴露模型在真实任务中哪里不够用，这些反馈既推动 Harness 迭代，也能告诉模型团队下一代该往哪个方向训练。</p><p>你不用急着把全部任务都切过来，但可以考虑把中文写作、超长上下文任务、以及日常跑量大的工作丢给它试试，等慢慢稳定后再考虑切换更多工作过来。</p><p>相关链接：</p><ul><li>官方文档：deepseek.com/harness</li><li>GitHub 仓库：github.com/deepseek-ai/deepseek-harness</li><li>Cordis 论文：github.com/cordiverse/paper</li></ul><hr><p>欢迎长按下面的二维码关注<strong>Feisky</strong> 公众号，了解更多云原生和 AI 知识。</p><p><img src="/images/mp.png" alt="Feisky 公众号二维码" loading="lazy" decoding="async"/></p>
]]></content:encoded><dc:extent>7 min read</dc:extent></item></channel></rss>