DeepSeek‑Harness Agent 预设深度解析:4 种官方模式选型 + 自定义 Preset 完整实战

AI 时代程序员必备技能

Codex、Claude Code、Cursor、Hermes Agent、OpenClaw等工程化实战专栏 ,讲透 AI 如何接管脏活累活

很多新手会误以为 Standard、PTC、Minimal、Creator 是 4 个不同大模型。它们不是模型,是会话级插件组合预设 (Preset)。同一套 Cordis 内核,通过加载不同插件集合、系统提示词、工具集,形成完全不一样 Agent 行为。

本文拆解 4 种内置模式底层差异、真实业务场景,手把手演示自定义 Agent 预设两种实现路径,WebUI 可视化操作 + 手动修改agent.cordis.yml配置文件,同时讲清楚 Preset 与 Profile 核心区别,避开大量新手踩坑点。

​ GitHub 官方仓库https://github.com/deepseek‑ai/deepseek‑harness

一、什么是 Agent Preset(Agent 预设)

1.1 Preset 核心概念

Preset = 一组绑定到会话的插件集合 + 角色提示词 + 工具白名单 + Agent 运行参数。

  • Profile:进程全局配置,Web/Headless,全局安装插件,整个服务生效。
  • Agent Preset会话级别配置。同一个 dsh web 服务,新建会话可以切换不同 Preset,每个会话拥有独立工具集、角色设定,互不干扰。
  • 底层实现:每次新建会话,DSH 会读取 Preset 的agent.cordis.yml,把里面的插件 id、配置注入当前会话的隔离 Scope;不会修改全局 Profile,关闭会话即销毁该运行环境。

关键认知:模型还是你配置那一个模型;改变 Preset,改变的是模型可以调用什么工具、拥有什么角色、Agent 循环如何工作,不是切换大模型。

预设文件存放路径:

# 用户自定义预设目录
~/.dsh/.agent‑presets/
├── standard/
├── code/
├── minimal/
├── creator/
└── my‑custom‑agent/ # 我们自己新建的自定义预设
    └── agent.cordis.yml

官方内置预设源码位置:仓库内 apps/cli/config/agent‑presets/

二、四大官方内置 Preset 全方位解析

预设名称别名加载插件集合核心能力最佳适用场景不适合场景
Standard 标准模式standard全套插件:文件编辑、持久 Shell、文件检索、Web 搜索、Skills、规划、Goal 目标追踪、子 Agent、工作流开箱即用完整 VibeCoding Agent;具备规划、子 Agent 拆解复杂任务,支持第三方 Skill 插件(如 dsh‑workspace‑enhance)日常开发、完整项目重构、调研、写新项目、普通用户默认选择简单单文件小修改(工具太多,token 开销偏大)
PTC 代码模式codeStandard 全部插件 + Code‑Mode SDK(Programmatic Tool Calling)模型生成 TypeScript 脚本,在沙箱执行脚本编排批量工具调用,减少 LLM 往返轮次,中间变量保存在脚本环境,不污染上下文批量文件处理、多步骤链式任务、数据库迁移、大量文件重构、脚本自动化简单 CRUD、小 bug 修复(会过度写复杂 TS 脚本,增加耗时)
Minimal 极简模式minimal仅 2 个插件:persistent‑shell持久终端、filesystem文件编辑器 (str_replace_editor)剔除搜索、规划、子 Agent、Skills,最小工具集,上下文干净模型基准跑分、最小复现 bug、简单文件修改,控制 token 消耗需要网页搜索、子任务拆解、调用第三方 Skill 插件的复杂项目
Creator 创造模式creatorStandard 全部插件 + 运行时自省、内存插件实验、Preset 创作指导高信任模式。允许 Agent 读取运行时状态、内存中测试插件、直接编写 agent.cordis.yml 生成新 Preset插件开发、自定义 Agent 预设制作、调试 Cordis 插件普通业务编码,风险提示:该模式允许模型操作运行时,只在可信本地环境使用,禁止公网部署开启DeepS...

2.1 Standard 标准模式(绝大多数人首选)

底层加载完整工具链,和 Codex、Claude Code 体验对齐。 业务场景举例:

  • 从零开发 UniApp 小程序、完整后端项目;
  • 阅读大型仓库,做项目重构、Bug 排查;
  • 结合社区插件 dsh‑workspace‑enhance做完整 VibeCoding 开发。

注意:工具越多,每一轮模型输入上下文越长;小任务可以切 Minimal 节省 token。

2.2 PTC / Code 模式(程序化工具调用)

传统工具调用:LLM → 调用工具A → 返回结果给LLM →调用工具B,多次往返。 PTC 模式:模型输出一段 TS 脚本,脚本内部连续调用多个工具,中间数据保存在沙箱 Worker,只把最终结果返回给大模型,极大减少轮次和 token 消耗。

示例任务适合 PTC:

遍历工作区全部 md 文档,每篇生成摘要,汇总输出 summary.md;批量修改 100 个前端文件导入路径。

2.3 Minimal 极简模式

agent.cordis.yml核心片段,整个预设只启用两个工具:

‑ id: persona
  config:
    text: "你是一名软件工程师,精简输出,只使用提供工具完成任务。"
‑ id: persistent‑shell
‑ id: filesystem

没有网页搜索,没有 skills,没有规划器。适合做模型评测,复现问题。

2.4 Creator 创造模式【高信任模式】

⚠️安全警告:不要在服务器公网环境开启 Creator 模式! 该模式可以让 Agent 直接读取 Cordis 运行时,让 AI 帮你写、调试、生成新的 Agent 预设。 典型用法:开启 Creator 会话,直接提示词: "帮我创建一个专门做前端 UniApp 开发的 Agent 预设,关闭 web 搜索,开启文件树增强插件 dsh‑workspace‑enhance,角色设定为 uni‑app 专家" Agent 会直接生成完整agent.cordis.yml配置,保存到.agent‑presets目录,立刻可以选用。

三、WebUI 如何切换 Agent 预设

  1. 启动 dsh web:dsh web,访问 http://127.0.0.1:3080
  2. 点击【设置】→【Agent 预设】
  3. 列表会展示 4 个官方预设 + 你自定义的全部预设
  4. 新建会话才会生效;已经打开的会话修改预设不生效,每个会话绑定创建时选择的 Preset。

很多新手踩坑:已经打开聊天窗口再修改预设,不会变化,必须新开会话。

四、自定义 Agent Preset 两种实战方案

自定义 Preset 两种路线: 方案 A:Creator 创造模式,AI 辅助生成(简单快速,推荐新手) 方案 B:手动复制官方预设模板,修改 agent.cordis.yml(可控,硬核开发者)

方案 A:Creator 模式,AI 一键生成自定义预设(零手写 yaml)

  1. WebUI 设置,Agent 预设选择 Creator 创造模式,新建会话;
  2. 直接输入提示词示例(UniApp 前端专用 Agent):
请为我生成一个自定义Agent预设,名字叫uniapp‑dev。
需求:
1、继承standard基础能力;
2、默认加载dsh‑workspace‑enhance插件;
3、禁用web网页搜索插件;
4、角色persona设定:你是UniApp全栈开发专家,优先兼容小程序、H5、App多端,输出代码必须考虑多端兼容;
5、输出完整agent.cordis.yml,保存到~/.dsh/.agent‑presets/uniapp‑dev/下面。
完成之后告诉我,之后我新建会话就可以直接选用。
  1. Agent 自动创建目录与 yaml 文件;刷新 WebUI 设置页面,就出现uniapp‑dev自定义预设。

方案 B:手动编写 agent.cordis.yml(完全掌控配置)

步骤 1:创建预设目录
# 创建自定义预设文件夹
mkdir -p ~/.dsh/.agent‑presets/uniapp‑dev
cd ~/.dsh/.agent‑presets/uniapp‑dev
步骤 2:新建 agent.cordis.yml
# uniapp‑dev 自定义Agent预设示例
‑ id: persona
  config:
    text: |
你是UniApp全栈开发专家,做跨端开发,输出代码优先兼容微信小程序、H5、App端。
编写代码主动规避uniapp多端兼容坑,注意生命周期,样式兼容,API兼容性。
不要调用web搜索工具,优先读取本地项目文件。

# 基础标准模式插件集
‑ id: planning
‑ id: goals
‑ id: sub‑agent
‑ id: filesystem
‑ id: persistent‑shell
‑ id: workspace‑enhance # dsh‑workspace‑enhance第三方插件
# ‑ id: web‑search  # 注释掉,禁用网页搜索

# 关闭不需要的插件,只需要注释id,会话就不会加载

保存文件,不需要重启 dsh web 服务,直接打开设置‑Agent 预设,即可看到自定义预设。

原理:DSH 读取.agent‑presets下全部子文件夹,读取每个目录内agent.cordis.yml,自动注册为可选 Agent 预设。

4.1 如何在自定义预设启用第三方社区插件

比如我们想把dsh‑workspace‑enhance内置到自定义预设。

  1. 先在 web profile 安装插件:
dsh plugin --profile web add git+https://github.com/luis1232023/dsh‑workspace‑enhance
  1. 在你的agent.cordis.yml增加一行:
‑ id: workspace‑enhance

新建会话选择该预设,会话自动加载这个第三方插件。

区分:profile 安装插件是全局下载包;preset 控制这个会话要不要启用该插件。包需要 profile 安装,是否启用由 preset 控制。

五、Preset 常见踩坑清单

  1. ❌ 修改预设,当前会话不生效

Preset 绑定会话生命周期,必须新建会话

  1. ❌ 自定义预设看不到
  • 确认文件夹放在 ~/.dsh/.agent‑presets/
  • 文件名严格 agent.cordis.yml,yml 语法不能有缩进错误;
  • yaml 缩进必须使用空格,禁止 tab 制表符。
  1. ❌ 自定义 Preset 写了插件 id,但是工具不生效

插件包需要在当前 profile 执行dsh plugin install下载;Preset 只是开启开关,不会自动下载 npm 包。

  1. ❌ Creator 模式直接在公网服务器部署

Creator 拥有运行时修改能力,存在安全风险,仅限本地可信环境使用。

  1. ❌ Preset 和 Profile 概念混淆

Profile:全局服务;Preset:单次会话。 举例:同一个 web profile,可以同时跑 Standard 会话、Minimal 会话、自定义 uniapp‑dev 会话,互不干扰。

六、选型决策树(直接照抄选择)

  1. 普通开发、写完整项目、VibeCoding 日常干活 → Standard 标准模式
  2. 批量处理文件、多步骤自动化脚本、大量文件重构 → PTC (Code) 模式
  3. 简单小修改、模型性能测试、最小问题复现、节省 Token → Minimal 极简模式
  4. 开发 DSH 插件、制作自定义 Agent 预设,调试 Preset 配置 → Creator 创造模式(本地)
  5. 固定业务场景(UniApp 开发、后端 Java 开发)→ 复制 Standard,自定义 Preset

七、总结

DeepSeek‑Harness 的 Agent Preset 是整个框架的灵魂,体现 “一切皆插件” 的设计理念:不需要修改框架源码,只通过配置文件,就能组装完全不同行为的 Agent

很多使用者只知道切换大模型,忽略 Preset 带来能力差异:同样 DeepSeek‑V4‑Flash 模型,Minimal 模式和 Standard 模式的产出效果完全不一样。

业务落地最佳实践:

  • 通用任务直接使用官方 4 套预设;
  • 团队固定业务场景,直接产出自定义 Preset 模板分享,统一 Agent 角色、工具白名单,减少每个人反复写系统提示词。

扩展思考:你甚至可以写一套用于代码评审的 Preset,关闭文件写入权限,只保留文件读取,专门做代码审计。

AI 时代程序员必备技能

Codex、Claude Code、Cursor、Hermes Agent、OpenClaw等工程化实战专栏 ,讲透 AI 如何接管脏活累活

标题基于SpringBoot的学生读书笔记共享平台设计研究AI更换标题第1章引言介绍学生读书笔记共享平台的研究背景、意义、国内外研究现状、论文方法以及创新点。1.1研究背景与意义阐述学生读书笔记共享平台在当前教育环境下的重要性。1.2国内外研究现状分析国内外学生读书笔记共享平台的研究进展与现状。1.3研究方法及创新点概述本文的研究方法与平台设计的创新点。第2章相关理论总结和评述与SpringBoot及读书笔记共享平台相关的理论。2.1SpringBoot框架介绍阐述SpringBoot框架的特点、优势及其在Web开发中的应用。2.2读书笔记共享平台相关理论介绍读书笔记共享平台的设计原则、功能需求及用户体验理论。2.3数据库设计与优化理论简述数据库设计的基本原则及优化策略。第3章平台设计详细介绍基于SpringBoot的学生读书笔记共享平台的设计方案。3.1平台架构设计平台的整体架构,包括前端、后端及数据库的设计。3.2功能模块设计阐述平台的主要功能模块,如用户管理、笔记上传、笔记分享等。3.3数据库设计介绍数据库的设计方案,包括表结构、索引及关系设计。第4章平台实现详细描述平台的具体实现过程,包括技术选型、开发环境搭建等。4.1技术选型与开发环境介绍开发平台所采用的技术栈及开发环境配置。4.2关键代码实现展示平台实现过程中的关键代码片段,如用户登录、笔记上传等功能的实现。4.3平台测试与优化平台的测试过程及优化策略,确保平台的稳定性和性能。第5章平台应用与分析对平台的应用效果进行分析,包括用户反馈、使用数据等。5.1用户反馈收集与分析收集用户反馈,分析用户对平台的满意度及改进建议。5.2使用数据分析通过数据分析工具,分析平台的使用情况,如用户活跃度、笔记分享量等。5.3对比方法分析对比其他类似平台,分析本平台的优势与不足。第6章结论与展望总结本文的研究成果,并对未来研究方向
内容概要:本文针对多渗透率电动汽车接入对配电网的影响,开展承载能力评估研究,提出了一套融合多类型分布式资源的综合评估体系。研究构建了包含电动汽车、分布式光伏及静止无功补偿器(SVC)的配电网协同运行基础模型,建立了涵盖一次设备安全性、负荷平稳性、电能质量与系统运行效率的多维度评价指标体系,并采用熵权法与模糊综合评价相结合的双层模型实现指标客观赋权与系统承载能力的量化评分。通过Matlab仿真平台,系统分析了不同电动汽车渗透率下各项指标的演变规律与敏感性特征,揭示了高比例电动汽车接入对配电网的潜在压力,从而为电网的规划决策、扩容改造以及电动汽车的有序充电管理提供了科学、量化的技术支撑。; 适合人群:具备电力系统、电气工程或相关领域基础知识,从事新能源并网、智能配电网、电动汽车与电网互动(V2G)等方向研究的研究生、科研人员及电力系统工程技术人员。; 使用场景及目标:①评估大规模电动汽车无序或有序接入对配电网安全稳定运行的综合影响;②为配电网络的升级改造、设备选型及电动汽车充电基础设施布局提供决策依据;③学习并复现基于熵权-模糊综合评价法的多指标体系构建与量化评估方法,掌握其在复杂电力系统分析中的应用。; 阅读建议:建议结合文中提供的Matlab代码进行仿真复现,重点理解算例参数设置、多维指标体系的设计逻辑以及双层评价模型的具体实现步骤,通过调整渗透率等关键参数进行对比实验,以深化对评估方法原理与实际应用效果的理解。
内容概要:本文围绕电力系统状态估计问题,深入研究了加权最小二乘法(WLSM)与因子分解法(FDM)在状态估计中的应用,并提供了完整的Matlab代码实现。文章系统阐述了电力系统状态估计的基本原理、数学建模过程以及两种算法的核心流程,通过仿真实验全面对比了WLSM与FDM在估计精度、计算效率、收敛性等方面的表现。研究发现,FDM在处理大规模稀疏矩阵时展现出更高的计算效率,更适合实时性要求较高的场景;而WLSM在估计精度上更具优势,适用于对准确性要求严格的场合。两者各有侧重,可根据实际系统需求灵活选用。配套的Matlab代码有助于读者深入理解算法细节并进行实践复现。; 适合人群:具备电力系统分析基础知识和Matlab编程能力的高校研究生、科研人员,以及从事电力系统运行、调度与控制等相关领域的工程技术人员。; 使用场景及目标:①系统学习电力系统状态估计的理论基础与主流算法实现;②对比分析WLSM与FDM在不同电网规模下的性能差异;③借助Matlab代码进行算法仿真与优化,提升科研能力与工程实践水平。; 阅读建议:建议读者结合经典电力系统状态估计教材,按照文中所述理论推导与代码结构逐步实现算法,并在标准测试系统(如IEEE 14、30节点系统)上进行验证,以深入掌握算法特性及其适用边界。
内容概要:本文详细阐述了基于Flowable 6.8.0的企业级工作流(审批流)完整实现方案,旨在解决传统硬编码审批逻辑存在的代码冗余、流程固化、不可视化等问题。方案采用SpringBoot + MyBatis-Plus + MySQL技术栈,集成Flowable工作流引擎支持BPMN 2.0标准,结合Spring Security或Sa-Token实现权限控制,并通过Flowable Modeler实现流程的可视化拖拽设计。系统覆盖单人审批、会签、或签、条件分支、驳回、加签、抄送等99%的企业审批场景,支持流程动态配置、审批溯源、超时提醒与异步通知(RabbitMQ),确保流程可扩展、可审计、可追溯。架构上实现业务系统与工作流引擎解耦,通过biz_approval_form和biz_approval_record两张业务表实现流程与数据的关联绑定,保障系统的灵活性与复用性。; 适合人群:具备Java开发基础,熟悉SpringBoot、MyBatis、MySQL的中高级研发人员,尤其是参与企业内部管理系统、OA、ERP等涉及复杂审批流程开发的开发者;1-5年工作经验的技术人员尤为适用。; 使用场景及目标:①构建可配置化、可视化的通用审批流程平台;②实现业务系统与工作流引擎的解耦设计;③掌握Flowable在SpringBoot项目中的集成方式与核心表结构应用;④实现审批流程的动态管理、操作溯源与审计合规;⑤支持多角色、多节点、复杂条件流转的审批业务落地。; 阅读建议:学习本方案时应结合实际项目进行流程建模与代码实践,重点关注流程定义部署、运行时任务处理、历史数据归档以及业务表与Flowable表的关联设计,同时调试核心API调用与权限集成逻辑,深入理解工作流引擎与业务系统的协作机制。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值