第 7 章 模式与 Preset:同一个模型,不同工作方式
本章你会学会
- 理解 Preset 不是模型,也不是另一个软件;
- 分清标准、创造、PTC、极简四种常见模式;
- 知道什么任务该用哪种模式;
- 理解“自定义 Preset”的正确做法;
- 避免把“模式”当成“安全隔离”。
7.1 一个比喻:Preset 是“角色卡”
同一个模型,可以有不同的工作方式:
- 日常写代码、整理文件;
- 专门扩展 DSH 本身;
- 批量调用工具、做数据分析;
- 只保留最少工具,快速回答问题。
这些“工作方式”就是 Preset(预设)。
你可以把 Preset 理解成一张“角色卡”或“装备方案”:
同一个 Agent 引擎
+ 不同的工具
+ 不同的提示词
+ 不同的 Skill
+ 不同的策略
= 不同的工作模式
它不换模型,不换运行时,不换沙箱;它只换“这个 Agent 这次拿到哪些能力”。
7.2 标准模式(Standard)
这是日常默认模式。
适合:
- 写代码;
- 读写文件;
- 搜索资料;
- 整理文档;
- 做表格;
- 日常问答;
- 一般的多步任务。
它通常包含:
- 文件读写;
- 终端命令;
- 网页搜索/抓取;
- 子代理;
- 计划、待办、目标;
- 交付文件;
- 技能系统。
如果你不知道选什么,选标准模式。
7.3 创造模式(Creator)
创造模式不是“更聪明的标准模式”。它是用来扩展 DSH 本身的模式。
它通常会多出:
- 运行时检查:查看 DSH 内部的 Service、Config、Tool、Skill、界面 Slot;
- 插件管理:安装、启用、停用、卸载插件;
- 开发指引:Cordis 插件、Bundle、Preset 的写法和模板。
适合:
- 写一个 DSH 插件;
- 给 DSH 加一个工具/界面;
- 做一个自定义 Preset;
- 调试插件为什么没加载。
不适合:
- 日常写代码;
- 普通文件整理;
- 你不需要扩展 DSH 的时候。
为什么?因为它多出的工具和权限会占用上下文,也带来更高的操作风险。日常任务用标准模式更轻、更安全。
7.4 PTC 模式
PTC 是 Programmatic Tool Calling 的缩写,可以理解为“用写代码的方式组织工具调用”。
它适合:
- 批量调用工具;
- 对结果做筛选、去重、统计、汇总;
- 需要循环、条件、组合的任务;
- 数据分析类任务。
它不一定更快,也不一定更省 token;取决于任务和实现。日常任务用标准模式即可。
7.5 极简模式(Minimal)
极简模式只保留很少的工具,通常用于:
- 快速问答;
- 小规模读写;
- 想尽量减少上下文和工具干扰的场景。
它的能力边界更窄。需要复杂操作时,换回标准模式。
7.6 四种模式怎么选
| 你的任务 | 建议 |
|---|---|
| 日常写代码、整理文件 | 标准模式 |
| 做 DSH 插件、改 Preset | 创造模式 |
| 批量工具调用、数据分析 | PTC |
| 快速问答、小任务 | 极简模式 |
| 不确定 | 标准模式 |
7.7 Preset 到底是什么
在 DSH 里,Preset 是一份 Agent 的子插件列表,加上名称、描述、排序等元数据。[1]
它通常长这样:
id: standard
name: 标准模式
order: 1
plugins:
- persona
- tool-bash
- tool-fs
- tool-web
- ...
几个关键点:
- 它由
@deepseek-ai/dsh-agent-preset这个插件声明; - 由
agent-preset-registry管理; - 每个 Session 选择一个 Preset;
- 定义会提前加载,但编辑只影响新创建的 Agent;
- 运行中的 Agent 保留它启动时的版本;
- 子 Agent 通常继承父 Agent 的 Preset。
它不是
- 不是模型;
- 不是沙箱;
- 不是另一个进程;
- 不是“更高级的模型”。
它也不是安全隔离
Preset 可以隔离工具和服务,但它不是安全沙箱。
- 插件代码仍然在 Host 进程执行;
- 文件权限、审批、沙箱是另一套机制;
- 不要因为“切了模式”就认为风险消失。
7.8 自定义 Preset
你可以创建自己的模式,例如:
- “代码审查模式”:只读,先报告问题,不直接改文件;
- “写作模式”:固定文风、固定输出结构;
- “数据分析模式”:只允许读数据和跑分析脚本。
正确做法通常是:
- 在创造模式里描述你要的模式;
- 让 Agent 生成一个 Bundle 补丁;
- 通过 Plugin Manager 安装;
- 在新建任务时选择它。
不建议:
- 手动去改
~/.dsh/.agent-presets/旧目录; - 直接编辑 profile 的
package.json; - 复制一个内置 Preset 后长期不合并更新。
自定义 Preset 的“整份替换”特性意味着:你覆盖后,内置 Preset 后续新增的工具不会自动出现。要定期检查。
7.9 常见误区
- “创造模式更聪明”:不是。它只是多了扩展 DSH 的工具和知识。
- “换 Preset 就换了模型”:不是。模型由模型设置决定。
- “Preset 是安全隔离”:不是。安全靠权限/沙箱/审批。[2]
- “Preset 越多越好”:不是。多一个模式就多一份维护成本。
- “自定义 Preset 会自动跟进内置更新”:不会,覆盖是整份替换。
马上试试
- 新建任务,选择标准模式;
- 问 Agent:“你现在有哪些工具?哪些是只读的?”
- 再新建一个任务,选择创造模式;
- 问同样的问题,对比多了什么;
- 不要执行任何安装/修改,先观察差异。
小结
- Preset 是 Agent 的能力组合,不是模型/沙箱。
- 标准模式是日常默认;创造模式用于扩展 DSH;PTC 适合批量工具调用;极简模式适合小任务。
- 运行中的 Agent 保留启动时的 Preset 版本。
- 自定义 Preset 要走 Bundle + Plugin Manager,不要手改旧目录。
- Preset 不等于安全隔离。
参考
链接均为公开来源;产品行为可能随版本变化。