第 05 章 · 四种模式不是等级,是四种用途

本篇目标:按任务性质选模式,而不是按熟练度。 原文最值得保留的一句判断:标准模式做事,PTC 模式编排,极简模式测量,创造模式改造。


5.1 先对齐命名(版本差异,别踩坑)

官方 官网中文页当前写「PTC 模式」;英文页仍保留 Code mode 的措辞,描述为「uses model-generated code to orchestrate multiple rounds of tool calls」。原文提到「Code 模式改名成 PTC 那次伴随了 session API 变化和 SQLite 后端移除」原文。

本文档统一称 PTC(Programmatic Tool Calling),对应早期文档里的 Code mode。读到 code 配置值时,指的就是它。native → code 是工具呈现模式的切换 原文。


5.2 四模式全表

官方 官网 + 原文 高阶指南,合并如下:

Standard 标准 PTC 编排 Minimal 极简 Creator 创造
用途 做事 编排 测量 改造
工作对象 你的任务 你的多步流程 模型本身 Harness 本身
工具集 全套:文件、shell、搜索、Skills、规划、目标、子 Agent、工作流 全套 + run_code / Code Mode SDK 仅 2 个 全套 + 运行时检查 + 内存插件试验
系统提示词 完整拼装 完整拼装 + SDK 说明 锁死为 "You are a helpful software engineer assistant" 完整 + 预设创作指引
上下文开销 高(原文 说「你好」约 1 万+ token) 单轮高、总量低 低(约 1 千+) 高
被砍掉的能力 — — 压缩、规划、Skills、子 Agent、联网搜索、定时任务、时钟上下文 —
并发 逐步调用 独立只读调用可并行,默认上限 10 路 不适用 不适用
典型任务 改代码、重构、查资料、写文档 批量重命名、数据流水线、128 文件归档 模型跑分、环境排障 写插件、造侧边栏、造新模式

判据 6:四种模式是四套不同的 Harness 配置,不是同一个 Harness 的四个挡位。切换模式等于换掉模型所处的整个环境——这正是第 15 章「Harness 是评测变量」的直观证据。


5.3 标准模式:真正的高阶用法是「加刹车」

原文 给出的重构 + 测试闭环模板,价值在于四个人工刹车,可直接复制:

先读代码,不要修改任何文件。

第一步:运行测试套件,把当前失败/报错的测试完整列出来,作为基线。
第二步:定位导致这些失败的根因,逐个说明涉及哪些文件和函数。
第三步:给出重构方案,等我确认后再动手。

确认后执行时,每改完一个模块,必须重新运行一次相关测试。
如果测试没有从"失败"变成"通过",立刻停下来告诉我,不要继续改下一个模块。

最后:输出一份改动清单,包含每个文件的改动原因和验证方式。
刹车 修掉的模型通病
先读不改 方案没确认就动手,方向错了前面全白花
失败测试作基线 没有基线就没有「修好了」,只有「看起来对」
每模块重跑 改十个文件最后跑一次,倒查是哪个引入 bug
不绿就停 模型倾向「把任务做完」而不是「把任务做对」

原文 标准模式的三个隐藏能力:

命令 作用
/goal 挂长期目标,跨轮不丢;/goal edit / pause / resume / clear
/plan 计划模式,先确认再动手;/plan off 退出
/compact 主动压缩上下文

自定义斜杠命令本质:把每周都要重复描述的流程写成一条命令。原文给的 /repo 例子(显示当前分支与最近 3 次提交,非 Git 仓库给友好提示)。官方 架构表里有对应的正规入口:ctx.commands 注册,dsh 无需模型回合即可派发一个 human command。


5.4 PTC:省上下文的全部秘密在 return

原文 配置上只差一行:工具呈现模式 native → code,模型拿到 run_code 与生成的 SDK,通过 await tools.工具名(参数) 调用工具。

最小示意(沿用原文):

// 通过 run_code 一次提交,在独立托管进程中执行
const readme = await tools.read_file({ path: "runoob-demo/README.md" }); // 只读,可并行
const intro  = await tools.web_search({ query: "RUNOOB 入门教程" });     // 与上一行无依赖

return {                       // ← 只有 return 的内容回到模型上下文
  brand: "RUNOOB",
  introCount: intro.results.length,
  readmeHead: readme.text.slice(0, 120),
};

两条执行语义 原文:

  1. 程序运行在会话沙箱策略之下的独立托管进程,子调用仍走统一工具流水线,审批与钩子照常生效;
  2. 独立只读调用可并行重叠(默认上限 10 路),会改动状态的操作按提交顺序单独执行。

判据 7(上下文经济学):标准模式下,每一步的中间结果都要回到上下文,模型为它们付费;PTC 下中间过程在托管进程里跑完,只有 return 与日志回到模型。省 token 的不是代码,是「不把噪音送回模型」这个决定。

实测数据(实测)

模式 耗时 轮次 输入 Token 成品质量
标准 33 min — 约 520 万 好
极简 23 min — — 差别不大
PTC 26 min 1 轮 18 步 约 150 万 三组最好

原文注明任务为 3D 射击游戏。此表仅说明量级,不作为性能承诺;你必须在自己的题面上复现(第 15 章)。

该用 / 别用

✅ 该用 ❌ 别用
步骤多、逻辑固定(批量改名、流水线) 目标明确、步骤不多的日常任务
中间结果不需要你看 需要中途介入决策(一个脚本跑到底插不进去)
只读操作多,能并行 大量有状态修改(并发优势用不上)
上下文已经很长,/compact 救不回来 —

原文定位:PTC 是「步骤多」任务的加速器,不是日常默认选项。


5.5 极简模式:受控环境,不是低配版

原文 常见误解对照:

误解 实际
给低配电脑用的轻量版 刻意收窄的环境,只保留持久化 bash + str_replace_editor
环境越全效果越好 Harness 帮得越少,越能看到模型本身,结果可复现、可公平比较

保留的两个工具有讲究:持久化 bash(cd 一次状态保留,不用每次 cd xxx && ...)+ str_replace_editor(字符串替换式编辑)。

原文 引用 DataCamp:

"A benchmark score partly reflects the harness used for the test, not only the model."

并称 DeepSeek V4 Pro 官方跑分即用此模式作为框架。原文

第二用途:排查「到底是模型的问题还是环境的问题」——

在极简里能做、在标准里做不了  → 问题在环境(工具 schema 歧义 / 提示词冲突 / 压缩搞乱)
在极简里也做不了              → 问题在模型

第 06 章把这条展开成完整决策表。

原文结论:图快用极简,图稳用标准。


5.6 创造模式:工作对象是 Harness 自己

原文 四项能力:

能力 干什么 解决什么
检查运行时 inspect 看当前加载了哪些插件、有哪些服务与依赖 写插件前先摸清能往哪接
内存中试验插件 新插件先在当前会话内存里加载测试 不改源码、不重启,试错成本近零
自然语言生成插件 描述需求,AI 查文档、验接口、写代码并加载 不会编程也能定制
组合成新模式 把成功的插件组合固化为可复用预设 造出「第五种模式」

官方 官网给出的 Creator 定义与此一致:inspect the current runtime, test Cordis plugins in memory, and combine them into new modes。

标准工作流 原文:

需求 → 调研运行时 → 写插件 → 内存试跑 → 你反馈 → 再改 → 固化为预设

反馈纪律:出问题时描述现象、别下结论。「点击没反应」✅ /「你写错了」❌。这与第 07 章「记录 exact symptom」是同一条方法论。

固化后的例子:写作模式、数据分析模式。第 13 章给出 cordis.patch.yml 的真实做法。


5.7 选型决策树

这个任务的目的是什么?
├─ 改代码 / 查资料 / 写文档 ──────────────→ Standard
├─ 评测模型能力 / 排查模型还是环境 ────────→ Minimal
├─ 造插件 / 造界面 / 造新模式 ────────────→ Creator
└─ 多步骤、逻辑固定、中间结果不用看?
    ├─ 只读多、可并行、上下文已很长 ──────→ PTC
    └─ 需要中途决策 / 大量有状态写操作 ──→ Standard
        并叠加:/plan 先确认,/goal 挂目标,/compact 控上下文

每天自动出报告?
└─ Standard + subagent 并行抓取 + schedule_create 定时投递(见第 14 章)

5.8 本章产出与验收

核心产出:四个模式各跑一个真实任务,记录耗时、工具调用数、输入 token、结果是否达标。

验收点:

  • 能解释为什么「四种模式」不是难度等级
  • 能说出 PTC 省 token 的机制,而不只是背「快 7 分钟」
  • 能列出极简模式砍掉的 7 项能力,并解释为什么连「时钟上下文」都要砍
  • 能用那套二分法,判断一次失败属于模型还是环境
  • 能说出 native / code 与 Code mode / PTC 的对应关系

延伸阅读

来源 URL 等级
官网 · 多种运行模式 https://www.deepseek.com/harness/zh/ 官方
官网英文(Code mode 措辞) https://deepseek.com/harness/en/ 官方
官方文档 · PTC 运行时 https://deepseek-harness.github.io/deepseek-harness/reference/subsystems/ptc-runtime 官方
官方文档 · 权限预设 / 计划 / 目标 https://deepseek-harness.github.io/deepseek-harness/reference/subsystems/permission-presets 官方
官方站 llms.txt(全部 subsystem 页面) https://deepseek-harness.github.io/deepseek-harness/llms.txt 官方
原文(五个场景与实测数据) https://mp.weixin.qq.com/s/rsfp0Kie5xlDOKDsE3Fqvw 原文
本系列为本站原创教程,基线为微信公众号《DeepSeek Harness 最新高阶指南》(2026-11-05),并汇总 DeepSeek 官方仓库与文档站、Cordis / arXiv:2608.25512、以及 OpenAI / Anthropic / LangChain / Martin Fowler 等一手资料。每条引用均标证据等级,完整清单见 附录 B;未定位到一手来源的线索单列,未编造补位。DeepSeek Harness 为 developer preview,官方 SAFETY.md 明确「未经过安全审计、不得视为生产就绪」,命令与配置键可能随版本失效。资料截止 2026-11-06。姊妹篇:《FDE 入门到精通》。