跳转至

任务简报模板

任务简报(Task Brief)是一次编码请求的完整上下文包。把它填完整后再让 AI 开始工作,能显著减少跑偏、过度重构和漏验证。

模板

背景:
当前项目在做什么,相关模块在哪里。

目标:
这次要实现或修复的具体行为。

范围:
可以修改哪些文件,哪些地方不要碰。

约束:
风格、兼容性、性能、安全、依赖和发布限制。

验收:
需要运行的命令、需要看到的结果、人工检查点。

交付:
最终回复要包含改动摘要、验证结果和残余风险。

填写示例

示例一:新功能

背景:
这是一个 Next.js 14 + Prisma 的 SaaS 项目。用户管理模块在 src/features/users/,
数据库 schema 在 prisma/schema.prisma。

目标:
为用户列表页添加按邮箱搜索的功能。输入框在列表上方,实时过滤(debounce 300ms),
不需要后端接口,直接在前端过滤已加载的数据。

范围:
只改 src/features/users/UserList.tsx 和相关的 hook。
不改后端接口、不改数据库查询、不改其他页面。

约束:
使用项目现有的 Input 组件(src/components/ui/Input.tsx)。
不引入新依赖。搜索不区分大小写。

验收:
1. pnpm tsc --noEmit 无错误
2. pnpm test users 全部通过
3. 手动验证:输入邮箱片段后列表实时过滤,清空后恢复全部

交付:
改动摘要 + 测试结果截图 + 残余风险说明

示例二:Bug 修复

背景:
src/lib/date.ts 的 formatRelativeTime() 函数在时区偏移为负数时返回错误结果。
复现:在 UTC-5 时区调用 formatRelativeTime(new Date()) 返回 "6 hours ago"。

目标:
修复时区处理逻辑,确保在任意时区返回正确的相对时间。

范围:
只改 src/lib/date.ts 中的 formatRelativeTime 函数。
不改调用方,不改其他日期工具函数。

约束:
不引入新的日期库(项目已有 date-fns,可以使用)。
保持函数签名不变。

验收:
1. 运行 pnpm test lib/date
2. 新增测试用例覆盖 UTC-5、UTC+8、UTC+0 三个时区
3. 确认现有测试全部通过

交付:
改动的函数代码 + 新增测试用例 + 验证结果

简报的长度

简报不需要很长。覆盖边界比覆盖细节更重要

  • 简单任务:背景 + 目标 + 验收,三段就够
  • 复杂任务:全部六段,每段 2-4 句话
  • 安全敏感:全部六段,约束部分要详细

判断标准:读完简报,你能预测 AI 会改哪些文件、不改哪些文件吗?如果能,简报就够了。

先写简报,再开对话

把简报作为对话的第一条消息发出去,而不是在来回几轮后才补充约束。 越早约束边界,AI 越少做无效工作。