阅读,与值得关注的内容Readance

DeepSeek 四种模式,别一上来就用错

点击上方 前端Q,关注公众号

回复加群,加入前端Q技术交流群

DeepSeek Harness 的 Web UI 里,最容易让人点错的不是模型,是模式。

四个选项摆在那:Standard、Code、Minimal、Creator。看起来像产品套餐,实际上是四套完全不同的 Agent 组装方式。

我见过的典型用错是这样的:第一次上手就切 Creator,觉得"功能最全";或者把 Minimal 当成"轻量好用的日常模式";再或者听说 Code Mode 很先进,就用它去改一个小文案。

结果要么信任边界被打开,要么工具少到模型使不上劲,要么一段 TypeScript 编排把简单事搞复杂。

这一篇把四个模式拆开:各自是什么、原理差在哪、优劣势是什么、什么时候用。

四种模式一张图

先把两个词分开:Profile 不是 Preset

很多人把"模式"理解成"启动了另一套程序"。

DeepSeek Harness 里更准确的切法是两层:

Profile 是进程级图纸。dsh web 启动的是 web 这张图纸,底下已经叠好了 dsh-base 和 dsh-web-app。浏览器、工作区、持久化、沙箱、权限这些宿主能力,是整台机器共用的。

Preset 是会话级零件盒。 官方叫 agent preset。一个 preset 目录里有一份 agent.cordis.yml,挂到某个 Agent 的 scope 上,只给这一次会话提供它自己的工具和提示词片段。同一个进程里,可以同时跑几个组装方式不同的 Agent。

发行版自带的 preset 目录在 apps/cli/config/agent-presets/ 下,花名册以目录为准。内部 id 是:

UI 上的名字
内部 preset
一句话
Standard
standard
完整编码 Agent
Code
code
用 Code Mode SDK 编排工具
Minimal
minimal
只留两把工具,用来测模型
Creator
cordis
在 Standard 之上,专门用来造预设、探运行时

也就是说,Creator 不是第四套独立内核,它是 cordis 这个 preset 的产品名。

Profile 拼整台机器,Preset 给这一次会话换零件

官方还强调过一条边界:注册表和跨会话设施是进程单例,留在宿主组装里;preset 只携带"这一个 Agent 贡献什么"。如果某个 preset 想发布进程级全局服务,挂载时会被拒绝,免得和下一个会话撞车。

Standard:日常就该用这个

官网对 Standard 的定位非常满:

Full coding agent with file editing, shell, file and web search, skills, planning, goals, subagents, and workflows.

人话版:改文件、跑 shell、搜文件和网页、加载 Skill、做计划、管目标、派子 Agent、跑工作流。这就是那个"完整编码 Agent"。

原理上,它走的是 native 工具呈现:模型直接看见各个工具的 schema,按需一次次调用。read / write / edit 这类文件系统工具在,搜索在,规划相关能力也在。官方后来还做过一次简化:standardcodecordis 默认不再同时挂 str_replace_editor,避免和 read/write/edit 抢同一件事。

优势

能力最全,接近你对 Claude Code 那类产品的直觉
工具边界清晰,审批、轨迹都按单次 tool call 展开,好观察
第一次上手、日常改仓库、让它自己规划再动手,都适合

劣势

工具一多,schema 就胖,提示词表面变大
多步操作会变成很多次 round trip:读一下、改一下、跑一下、再读一下
"完整"不等于"默认全开"。比如 web_fetch 默认仍是关的

我自己的用法很简单:不确定选哪个,就 Standard。

Code:不是更会写代码,是换了一种调工具的方式

官网这句话最关键:

All Standard mode capabilities, with tools exposed through the Code Mode SDK so the model can combine multi-step operations in one TypeScript program.

注意,它不是把能力砍掉,而是 换了模型看见工具的方式

源码和设计说明里,工具呈现有三档:

native:把可见能力的 schema 直接交给模型
code:注册表只贡献保留的 run_code 通道,外加一份生成出来的 SDK .d.ts 放进 system prompt
both:两套都给

Code 模式走的是 code。模型不再面对十几二十个工具名,而是面对一份 TypeScript SDK,然后写程序,通过 run_code 一次编排多步调用。

进程级也可以用 DSH_TOOLS_MODE 选 nativecode 或 both,写错会在启动时失败。Preset 还可以按会话声明 presentAs(),所以 Code Mode 的 Agent 能和 native 的 Agent 活在同一个进程里。

Code Mode:少调很多次工具,改写一段程序

优势

多步工具流更适合一次编排完,少很多来回
模型可以用语言自己的控制流:循环、分支、错误处理,不必把每一步都暴露成一次独立 tool call
能力集合仍是 Standard 那一级,不是缩水版

劣势

执行模型更复杂。你要同时理解工具注册表、生成 SDK、以及 code runtime
出了问题更难一眼看懂"它调了哪个工具"。轨迹里先看到的是一段程序,再才是程序里打出的调用
简单任务用它,纯属杀鸡用牛刀
没有注册 code runtime 的部署,Code Mode preset 在挂载时就会响亮地失败,而不是等到第一句 prompt

什么时候用:你已经确认任务是多步工具编排,比如"扫一批文件、按规则改、再跑检查"。什么时候不用:改一个函数、解释一段报错、第一次认识这个产品。

Minimal:不是轻量好用,是刻意把帮手拿走

官网写的是:

Two-tool coding agent with persistent bash and str_replace_editor.

就两把工具:持久 bash,加一个 str_replace_editor

CLI 行为参考把这个 preset 说得更死:minimal 会保持当时部署的工具呈现,但把完整系统提示词钉成一句 You are a helpful software engineer assistant.,并且只组装这两把工具。Web 上创建会话时选极简模式,其他提示词片段和面向模型的插件都不会进这个 Agent;浏览器、工作区、持久化、沙箱、权限这些宿主能力还在。

它的产品目的也很明确:在最小环境里给模型做基准测试。

优势

变量少。你看到的好坏,更接近模型自己,而不是 Harness 帮它找补
工具面极窄,适合对照实验:同样的任务,Standard 能做、Minimal 做不做得到
默认编辑器就是 str_replace_editor,和另外三个 preset 刻意区分开

劣势

日常编码会非常难受。没有完整文件系统工具箱,没有 Skill、计划、目标、子 Agent 那一套
长任务更容易把窗口堆满,因为帮手被刻意拿走了,模型得自己用 bash 和字符串替换硬刚
你如果把它当"更干净的默认模式",会误判产品能力

什么时候用:评模型、做对照、写评测脚本。什么时候不用:你真正想把活干完。

Creator:功能最猛,信任边界也最高

官网对 Creator 的定义是:

Built for creating custom agent presets, with all Standard mode capabilities plus runtime inspection, plugin experiments, and preset-authoring guidance.

内部 preset 名是 cordis。它不是"Standard 再加点皮肤",而是专门给"造新模式"用的。

官方 Skill 文档写过一条很硬的红线:永远不要编辑、删除或覆盖发行版自带的 preset。standardcodeminimalcordis 都在部署目录里。升级会覆盖它们;你如果把 cordis 自己搞坏了,连预设编写能力都会停。正确做法是 copy(from, id, name) 复制一份到用户根目录,再改副本。

Creator 还带运行时检查、在内存里试验 Cordis 插件、把插件组合成新模式。这意味着模型有机会碰到更靠近宿主的能力。社区里有个说法值得你当风险提示听:把它当成 shell 级信任,而不是普通聊天模式。官方自己的产品页也把它放在"探运行时、写预设"这个位置,不是日常编码入口。

优势

这是 DeepSeek Harness 真正区别于"又一个聊天编码工具"的入口:你可以看见运行时,并组自己的模式
带预设编写指导,复制发行版 preset 再改,是官方推荐路径
能力上覆盖 Standard,不会因为造预设就把日常工具拿走

劣势

信任边界更高。运行时检查、模型编写插件、生成的组装可能影响后续会话
心智成本最高,第一次上手完全没必要
发行版 preset 不能当草稿纸改,一升级就没

什么时候用:你已经跑通 Standard,准备写自己的 preset 或插件。什么时候不用:你只是想让它改代码。

一张图决定怎么选

别靠"哪个听起来更高级"。按任务选。

怎么选模式

我自己的口诀是:

  1. 日常改代码、查仓库、做计划:Standard
  2. 明确是多步工具编排,想一次写完控制流:Code
  3. 评模型、做最小对照:Minimal
  4. 造预设、探 Cordis 运行时:Creator

还要叠一层权限。模式决定模型看见哪些工具,权限预设决定这些工具能碰到磁盘和审批没有。新会话默认是 workspace-write 加 ask。Creator 再叠更高的运行时能力,不等于你要把权限也切到 danger-full-access

两个开关别混:

模式 / preset:模型看见什么、怎么调用
权限预设:沙箱模式 + 审批策略,比如 workspace-write 和 danger-full-access

前者换的是零件盒,后者换的是铁丝网。

优劣势对照

把四个模式放在同一张表里,差异会清楚很多:

模式
强在哪
弱在哪
默认该不该用
Standard
完整工具箱,轨迹好读
schema 胖,多步来回多
Code
多步编排效率高
调试复杂,简单任务不划算
否,任务匹配时再用
Minimal
评模型最干净
日常几乎不好用
否,只做实验
Creator
能造自己的 Agent
信任边界高,不能改发行版 preset
否,会写插件时再用

开发者预览阶段,这张表不是永久合同。内部 id、UI 文案、某个 preset 挂哪些工具,后续都以当时官方 preset 目录和文档为准。我写这篇文章时,依据的是官网产品页、packages/preset 文档、Code Mode 设计说明,以及 CLI 行为参考。

我的判断

DeepSeek 把四种模式做进产品,不是为了让选择器好看。

它其实在表达同一句架构主张:Agent 的能力集合应该是可组装的,而不是写死在循环里。

Standard 是默认产品。

Code 是一次大胆的交互实验——让模型用程序而不是用菜单调工具。

Minimal 是评测诚实性:把帮手拿走,看模型自己行不行。

Creator 才是"一切皆插件"对开发者的入口。

如果你点开 DeepSeek Harness 只是想体会官方 Coding Agent,请老老实实用 Standard。等你开始嫌工具调用来回太多、或者真的想组一套自己的 Agent,再进 Code 和 Creator。

模式选对了,这套运行时才像 Harness。选错了,它看起来只是一个很难用的聊天框。

可进一步阅读

官方产品页(四种模式):https://deepseek.com/harness/en/
Preset 包说明:https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/preset/README.md
CLI 行为参考中的 Minimal / Tools Mode:https://github.com/deepseek-ai/deepseek-harness/blob/master/apps/cli/reference/README.md
Code Mode 设计说明:https://github.com/deepseek-ai/deepseek-harness/blob/master/.agents/notes/implemented/feature/2026-06-15-code-mode.md

往期推荐

Multi-Agent Teams:让多个专家 Agent 像团队一样协作
AI Agent 是怎么"想一步做一步"的?拆解 ReAct 模式
从零开始:用 LangChain.js 构建你的第一个 Tool-Calling Agent
最后


点个在看支持我吧

前往微信阅读全文

内容来自公众号,可前往微信查看原文。

查看作者的更多文章 →