Hermes Agent测试驱动开发与规划模式:让AI先想清楚再动手(2026最新)

维护咨询 大模型部署 问题解决 技能定制 大模型训练

站长交流微信: aixbwz

用AI写代码最怕什么?AI噼里啪啦写了一大堆,一运行全是bug,推倒重来更费时间。

Hermes有两个机制可以解决这个问题:Test-Driven Development(TDD)模式和规划模式(Plan Mode)。它们的核心思想是一样的——先想清楚要做什么,再动手写代码。

## 为什么需要先想清楚

AI生成代码是概率模型,越复杂的任务越容易”跑偏”。在真正动手之前花30秒思考,胜过上完厕所回来发现AI写了一堆无用代码。

规划模式和TDD正是强迫AI在行动前先思考的机制。

## Test-Driven Development模式

TDD模式的核心流程:

1. 先写测试用例(描述期望的行为)
2. 运行测试,看到测试失败
3. 写最少量代码让测试通过
4. 重构优化

这个循环确保代码从一开始就是可验证的。

在Hermes里启用TDD:

在任务描述里加 –tdd 标记:

帮我写一个排序算法,用TDD模式,先写测试

或者用 /tdd 命令开启本次会话的TDD模式:

/tdd
写一个用户登录验证模块

AI会怎么做:

1. 先问你要验证哪些场景(正确密码、错误密码、空密码、SQL注入等)
2. 生成测试用例
3. 运行测试(当然会失败)
4. 写代码
5. 再次运行测试
6. 重复直到全部通过

## 规划模式(Plan Mode)

规划模式让AI在执行任务前先输出一个执行计划,等你确认再行动。

启用规划模式:

/plan
帮我重构这个项目的数据层

AI会输出这样的计划:

## 重构计划

### 目标
将数据层从直接SQL查询迁移到Repository模式

### 步骤
1. 创建Repository接口(定义数据操作方法)
2. 迁移User表相关查询到UserRepository
3. 迁移Order表相关查询到OrderRepository
4. 用Adapter包装现有SQL代码
5. 修改Service层引用新Repository
6. 写单元测试验证

### 风险
- 改动面较大,建议先在dev分支操作
- 涉及15个文件,做好备份

### 预计时间
约2小时

---
是否按此计划执行?

你可以:
– 直接确认继续
– 修改某个步骤
– 取消任务
– 追问某个步骤的细节

## TDD + 规划模式结合

最强的方式是两者结合:

/plan /tdd
写一个RESTful API,包含用户注册、登录、获取个人信息三个接口

AI会:
1. 先出完整的执行计划(TDD覆盖哪些接口)
2. 你确认后,AI先写测试
3. 测试跑通后开始写实现代码
4. 每写完一个接口运行一次测试

## 什么时候用哪种

用TDD:

– 任务目标明确,但实现细节需要探索
– 需要覆盖多个边界情况
– 后续会持续迭代的代码
– 适合:工具函数、数据处理、API客户端

用规划模式:

– 任务复杂,步骤多,容易走偏
– 需要确保AI理解你的需求
– 涉及多文件改动
– 适合:重构、架构调整、大功能开发

两者都用:

– 大型复杂项目
– 不确定AI是否理解需求
– 需要多轮review的场景

## /plan命令详解

plan命令的参数:

/plan <任务描述>           # 标准规划
/plan --abort       # 取消当前计划,说明原因
/plan --modify <调整>       # 修改计划某一步骤
/plan --expand <步骤>       # 展开某个步骤的细节
/plan --merge <步骤1+2>    # 合并相邻步骤

plan的历史:

plan执行后,计划会保存到会话状态,你可以随时问:

当前计划进展到哪一步了?
计划里有几个风险点?
跳过第3步,先做第4步

## 实际工作流示例

场景:开发一个图片处理工具

用户:/plan /tdd
写一个图片处理工具,支持:
1. 按比例缩放
2. 添加水印
3. 转换格式(jpg/png/webp)

AI:
## 执行计划

### 目标
创建图片处理工具,支持缩放、水印、格式转换

### TDD覆盖
- 缩放:正常比例、极限比例(0.01x)、超大比例
- 水印:文字水印、位置(9宫格)、透明度
- 格式转换:jpg→png、png→webp、webp→jpg

### 步骤
1. 创建项目结构(image_processor/)
2. 写测试文件 test_processor.py
3. 实现基础框架(加载图片、保存图片)
4. 实现缩放功能
5. 实现水印功能
6. 实现格式转换
7. 集成测试

### 风险
- 大图处理可能内存占用高,建议加流式处理
- 水印透明度依赖Pillow版本

---
是否按此计划执行?

用户:确认,但先不加水印功能

AI:[跳过水印相关测试和代码,从步骤4跳到步骤6]

## 常见问题

Q:TDD模式下AI写的测试质量怎么样?

A:取决于你的任务描述是否清晰。描述清楚边界情况(空输入、错误输入、极限值),AI能写出不错的测试覆盖。如果任务描述模糊,测试也会模糊。

Q:规划模式会不会让AI变笨?

A:不会。规划只是让AI先输出一个计划,不是真正执行。这个计划会作为后续对话的上下文保留,不会浪费token。

Q:可以不确认直接让AI按计划执行吗?

A:可以。用 /plan –force 或者在计划输出后直接说”执行”,AI就会跳过确认直接执行。

Q:任务中途想改计划怎么办?

A:直接说”改一下计划”或者”/plan –modify”,AI会重新输出调整后的计划。

## 相关文章

© 版权声明
THE END
喜欢就支持一下吧
点赞9 分享
评论 抢沙发

请登录后发表评论

    暂无评论内容

七天热门