handoff

产品介绍

handoff 是 Matt Pocock Skills 中「协作类」的 4 个 Skill 之一,安装在 ~/.trae-cn/skills/handoff/SKILL.md。用户手动调用 /handoff 时触发,AI 会生成一份交接文档,打包当前上下文给下一个 AI。

为什么需要 handoff

AI 编程助手有一个根本限制:它不记得上次对话。每次开新会话,AI 都是空白的。这意味着:

  • 你不能「去开会儿,回来继续」——AI 不知道你之前在做什么
  • 你不能「换一个 AI 接手」——新的 AI 不知道进度
  • 你不能「让 AI 自己继续」——它需要你把上下文重新讲一遍

handoff 就是解决这个问题的。它把当前对话的上下文打包成一份文档,下一个 AI 读了就能接手,不需要你重新讲一遍。

handoff 文档包含什么

一份好的 handoff 文档包含四个部分:

1. 当前进度

现在做到了哪一步?有什么成果?

例子:

## 当前进度

- ✅ 已完成:用户登录功能(用户名密码 + 第三方登录)
- 🔄 进行中:用户个人中心页面,完成了 70%,还差头像上传和地址管理
- ⏸ 未开始:订单列表、购物车、结算流程

2. 待办事项

下一步做什么?按优先级排列。

例子:

## 待办事项

### 高优先级
1. 完成用户个人中心页面(头像上传 + 地址管理)
2. 接入支付 SDK

### 中优先级
3. 设计订单状态机
4. 编写订单列表接口

### 低优先级
5. 优化图片上传压缩算法
6. 添加操作日志

3. 关键决策

做过了什么决定?为什么这么决定?

例子:

## 关键决策

- **认证方式选 JWT 而不是 Session**:服务端是微服务架构,JWT 无状态更适合
- **数据库选 PostgreSQL 而不是 MongoDB**:团队熟悉 SQL,查询复杂度高
- **图片存储用 OSS 而不是本地**:阿里云 OSS 便宜,CDN 集成方便

为什么重要:下一个 AI 不知道为什么这么选,可能会推翻重来。记录决策理由,避免重复讨论。

4. 相关文件

改了哪些文件?每个文件做了什么?

例子:

## 相关文件

### 新建
- `src/pages/UserCenter.tsx` - 用户个人中心页面
- `src/api/user.ts` - 用户相关接口
- `src/store/user.ts` - 用户状态管理

### 修改
- `src/router.tsx` - 添加了用户中心路由
- `package.json` - 添加了新的依赖

核心原则

不重复已有内容

引用文件路径,不要复制粘贴。

为什么:handoff 文档的目的是让下一个 AI 快速理解上下文,不是让它读一遍整个代码库。引用文件路径,需要时 AI 自己去读。

反例:把 UserCenter.tsx 的完整代码贴到 handoff 文档里 正例:写 src/pages/UserCenter.tsx - 用户个人中心页面

脱敏

移除 API Key、密码等敏感信息。

为什么:handoff 文档可能会被分享、被存储、被多个 AI 读取。敏感信息一旦进去就收不回来了。

例子:

// 不要这样
API_KEY = "sk-abcd1234..."

// 要这样
API_KEY = "环境变量中的 OPENAI_API_KEY"

建议下一步

告诉下一个 AI 应该做什么,不要只是罗列现状。

为什么:handoff 不是「项目现状报告」,它是「下一个 AI 的行动指南」。有明确的下一步,AI 才知道从哪里开始。

使用场景

  • TraeWork 里干到一半的活儿打包给 openclaw/Butler 接棒
  • 换设备继续工作时
  • 多人协作时交接任务
  • 一个 AI 做不下去了,换另一个 AI 继续

与 to-questionnaire 的关系

handoffto-questionnaire
给谁给下一个 AI给能拍板的人
目的传递上下文获取外部信息
内容进度、待办、决策、文件问题列表

相关笔记

相关日记