名称: 任务分解 描述: 当特征涉及4个或更多文件、多个组件,或有可以并行运行的子任务时使用。 上下文: fork 代理: 任务管理器
任务分解
概述
将复杂特征分解为原子、可验证的子任务,并跟踪依赖关系。每个子任务都有自己的JSON文件,包含清晰的验收标准和交付物。
开始时宣布: “我正在使用任务分解技能为[特征]创建执行计划。”
过程
步骤 1: 分析特征
识别这些元素:
- 核心目标和范围
- 技术风险和依赖
- 自然任务边界
- 可以并行运行的任务
步骤 2: 创建任务计划
写入 .tmp/tasks/{feature}/task.json:
{
"id": "jwt-auth",
"name": "JWT 认证系统",
"status": "active",
"objective": "实现基于JWT的认证,带刷新令牌",
"context_files": [
".opencode/context/core/standards/code-quality.md",
".opencode/context/core/standards/security-patterns.md"
],
"reference_files": [
"src/middleware/auth.middleware.ts"
],
"exit_criteria": [
"所有测试通过",
"JWT 令牌使用 RS256 签名"
],
"subtask_count": 3,
"completed_count": 0,
"created_at": "2026-02-16T02:00:00Z"
}
规则:
- 特征 ID: 烤肉串式
- 目标: 最多 200 字符
context_files: 仅标准/约定reference_files: 仅项目源文件- 退出标准: 二进制通过/失败
步骤 3: 生成子任务
写入 .tmp/tasks/{feature}/subtask_01.json, subtask_02.json 等:
{
"id": "jwt-auth-01",
"seq": "01",
"title": "创建JWT服务,带令牌生成",
"status": "pending",
"depends_on": [],
"parallel": true,
"suggested_agent": "CoderAgent",
"context_files": [
".opencode/context/core/standards/security-patterns.md"
],
"reference_files": [],
"acceptance_criteria": [
"JWT 令牌使用 RS256 算法签名",
"访问令牌在 15 分钟后过期"
],
"deliverables": [
"src/auth/jwt.service.ts",
"src/auth/jwt.service.test.ts"
]
}
规则:
- 顺序编号: 01, 02, 03…
- 原子任务: 可在1-2小时内完成
- 依赖: 通过
depends_on数组映射 - 并行任务: 为独立工作设置
parallel: true - 代理分配: CoderAgent, TestEngineer, CodeReviewer, OpenFrontendSpecialist
- 验收标准: 仅二进制通过/失败
- 交付物: 特定文件路径或端点
步骤 4: 验证结构
验证:
- ✅ 所有JSON文件有效
- ✅ 依赖引用存在
- ✅ 上下文文件与参考文件分开
- ✅ 验收标准是二进制的
- ✅ 交付物是具体的
步骤 5: 返回摘要
## 任务创建
位置: .tmp/tasks/jwt-auth/
文件: task.json + 3 子任务
子任务:
- 01: 创建JWT服务 (并行: true, 代理: CoderAgent)
- 02: 创建密码哈希工具 (并行: true, 代理: CoderAgent)
- 03: 集成中间件 (并行: false, 代理: CoderAgent)
下一步:
- 按依赖顺序执行子任务
- 任务 01 和 02 可以并行运行
- 任务 03 依赖于 01 和 02 的完成
红色标志
如果您认为任何这些,停止并重新阅读此技能:
- “我可以直接实现它,没那么复杂”
- “分解会比直接做花费更长”
- “我已经知道需要做什么”
- “这里真的只有一个任务”
常见合理化
| 借口 | 现实 |
|---|---|
| “只有3-4个文件,我不需要分解” | 3-4个文件 = 多个有依赖的子任务。跳过跟踪意味着在失败时失去进度。 |
| “我会在脑子里跟踪” | 子代理不共享内存。JSON文件是唯一可靠的状态。 |
| “任务很明显,不需要记录” | 明显的任务仍然需要验收标准。没有二进制标准的“完成”不是完成。 |
| “并行执行不值得为此” | 并行任务将执行时间减半。JSON开销是2分钟。时间节省是20+。 |
记住
- 每个子任务可在1-2小时内完成(原子)
context_files= 仅标准,reference_files= 仅源代码- 验收标准必须是二进制的(通过/失败)
- 标记独立任务为
parallel: true - 为每个子任务分配适当的代理
- 交付物必须是特定的文件路径
相关
- 上下文发现
- 代码执行
- 并行执行
任务: 将此特征分解为原子子任务: $ARGUMENTS