不知道大家在用DSH这类Agent开发工具时,有没有遇到同一个痛点: 明明只是改一行文案、修复一个很小的bug,AI却自动开启"全能工程师模式"。顺手重构相邻代码、补注释、新增校验逻辑、自动跑全量构建回归,附带长篇总结、待办清单。 小事被放大,处理周期拉长,Token消耗暴涨。很多时候我们不需要一份完美工程方案,只需要指哪改哪。
于是我给DSH新增了一套自定义Skill:quick-mode 快速开发模式。强制约束AI行为,杜绝多余操作。
什么是 DSH Skill
Skill(技能)是DSH提供的自定义指令能力,你可以把它理解成一套可一键激活、可复用的行为约束规则。
和一次性写在对话里的prompt不一样:
- 普通prompt:只对当前这一轮对话生效,对话清掉就失效;每次提问都要重复说明要求;
- Skill:预先写好规则保存到DSH,支持设置触发条件
whenToUse。满足关键词或者你设定的场景,DSH会自动加载这套规则,持续约束Agent的行为。
Skill里面包含3个核心部分:
name:技能名称,用来识别;description:一句话概括这个技能的作用;whenToUse:触发条件,什么时候自动启用这个技能。
💡 使用提示:复制下面全部内容(包含前后
---分隔标记),打开DSH,进入 Skills → Create Skill,粘贴后保存即可生效。 创建完成后,可将配置保存至.dsh\skills\quick-mode目录下,命名为SKILL.md。你也可以在开发过程中,把实际踩坑场景总结后交给DSH,由AI帮你自动生成对应的技能。
yaml
---
name: quick-mode
description: 快速开发模式:只改用户指明的地方,不重构、不跑全量回归、不做额外工作,交付只给结论
whenToUse: 用户说"快速模式""指哪打哪""别做额外的""直接改就行",或嫌验证/重构/总结太多时;本用户的开发类任务默认按此执行
---
# 快速开发模式
用户明确要求:**改动只做他点到的那一处**,不要做"看起来专业但没人要"的额外工作。
## 只做这些
- 只改用户指到的文件 / 方法 / 那几行;相邻代码不重构、不统一风格、不补注释、不抽公共方法。
- 不做未被要求的事:不加校验、不加日志、不新增工具类 / 接口 / 文件 / 表、不顺手修别处的bug
(真发现问题,就在回复里一句话提出,不动手改)。
- 不跑全量回归、不写端到端探针、不跑 mvn / 构建;**除非用户明确说"验证一下"**。
- 唯一例外:用户手改过 SQL / XML / 模板时,改之前读一遍、只看一眼语法
(已经出现过两次手改导致括号丢失、SQL 报错的情况)。
## 交付格式
3~5行内说清:**改了哪个文件、口径是什么、怎么调 / 怎么用**。
不贴大段 diff、不写长篇总结、不列重复的"待办清单"、不复述以前说过的内容。
## 边界
- 需要确认的口径:只问一句,不展开分析。
- 用户手改过的代码是他自己的选择:**保留,不要改回去**(也不要"顺手改回我认为对的")。
- 删文件、改数据库、动别人模块的代码:先说一句再动手。
## 反例(用户明确嫌过的)
- 改6行文案,却重跑整套端到端断言和 hash 校验。
- 每次交付都附"验证过程 + 文件清单 + 待办提醒"三件套。
- 顺手重构相邻方法、补javadoc、统一命名、加防御性判空。
⚠️ 注意:导入成功后,满足whenToUse触发条件,DSH就会自动启用这套约束;复杂重构任务时,记得手动关闭quick-mode,放开Agent完整能力。
核心设计思路
很多Agent默认系统提示词,都在引导AI:追求代码质量、完整性、健壮性。 这个目标本身没问题,但放到微小改动场景,就变成了灾难。AI会默认假设:用户想要一份高质量可上线代码,自动做很多用户根本不需要的优化。
这个quick-mode本质就是给Agent上紧箍咒,重新定义边界:
- 职责边界:用户指定范围之外,一律不动。发现其他bug只提醒,不擅自修复;
- 动作边界:没有指令,不执行构建、回归测试;
- 输出边界:精简回答,砍掉冗余总结、待办清单,减少输出Token;
- 安全边界:唯一例外,校验手写SQL/XML语法,防止低级语法错误。
触发规则: 当我提到「快速模式」「指哪打哪」「直接改就行」自动启用; 日常开发小改动,默认开启quick-mode ,只有复杂重构任务,手动关闭,让AI完整发挥。或者在对话框中输入斜杠选择对应的技能
实战效果对比
❌ 未开启quick-mode(旧体验,实测截图案例)
提示词: 帮我修改下@GetMapping("/health")接口的返回成功的文案为中文"操作成功"
AI行为:
- ✅ 完成目标:修改
HealthController.java,调整health接口返回message为"操作成功" - 🚨 大量超出需求的额外操作: 尝试执行
javac单文件编译、mvn compile构建验证;遇到沙箱目录写入报错后,自动深度排查Windows文件夹ACL权限;生成权限备份与回滚PowerShell脚本,附带完整恢复命令;还建议把会话切换到full access完全权限用于后续打包。 - 输出完整大段内容:代码预览、JSON前后对比、权限排坑日志、脚本代码、Token用量统计。
仅仅修改一行接口返回文案,AI主动做编译验证、操作系统权限排障、生成回滚脚本,额外动作拉满,本轮消耗456K token,耗时2分25秒。


✅ 开启quick-mode(新体验,实测截图案例)
提示词: /quick-mode 在帮我修改下@GetMapping("/health")接口的返回成功的文案为英文"操作成功"
AI行为:
- ✅ 精准完成目标改动:修改
HealthController.java第12行,将/api/health接口message改为Operation successful - ✅ 严格遵守快速模式约束:不执行编译、不运行mvn构建,不做权限诊断、不生成额外脚本,不做超出需求的环境排查
- ✅ 输出极简汇报:简短说明改动位置,附带接口返回JSON样例,主动标注「按快速模式未跑构建」
同样是修改一行接口文案,只做用户指定改动,砍掉全部多余工作,本轮token消耗 206K ,开销大幅下降。

说明:两组为同一场景对照实测截图,不涉及敏感业务代码。
适用与不适用场景
✅ 适合:小bug修复、文案调整、参数修改、单行/小段代码改动、临时微调。 ❌ 不适合:大型项目重构、迁移、完整模块开发、架构改造,这类场景关掉quick-mode,放开AI能力。
写在最后
Agent开发工具,能力强不代表好用。好用的关键,是可控。 DSH、Claude Code这类Agent最大的坑,就是AI过度推演、自作主张。 自定义Skill就是用来约束AI行为,按需切换模式:小改动快速模式,大重构完整模式。 不止DSH,现在很多Agent工具都在引入Skill/Rule能力,本质就是解决大模型"自作主张"的通病,把主动权交还给开发者。
如果你也经常遇到AI过度发挥的问题,可以直接把这份quick-mode导入DSH,拿来即用。
你平时使用DSH/Claude Code的时候,会不会遇到AI擅自重构代码的情况?欢迎在评论聊聊你踩过的坑。
