Files
16gagent/tools/agent-decomposition.md
2026-06-06 10:40:48 +08:00

5.3 KiB
Raw Permalink Blame History

Agent 任务拆解规范(v2

2026-05-31 从红尘提供的拆解框架内化 + 自审迭代 本版本修复了 v1 的 6 个已知漏洞

核心原则

  1. Agent Package 是可被单个 Agent 独立完成的最小工作单元
  2. 优先考虑上下文容量,不追求任务少,追求一次能完成
  3. 禁止出现 XL 级任务(耗时 > 120分钟)
  4. 最大化并行能力,多个 Agent 同时启动
  5. 每个包必须有明确的风险评估,不能无脑分工

任务拆解流程

Step1:构建项目全景图
  ├─ 产品层 / 前端层 / 后端层 / 数据层
  ├─ 中间件层 / 基础设施层 / 运维层 / 测试层
  └─ 形成系统架构地图(8层全覆盖)

Step2:构建模块树
  └─ 按业务域划分模块(用户系统/资源系统/评论系统...)
  └─ 每模块标注:P0/P1/P2/P3 优先级

Step3:构建依赖图
  ├─ 模块依赖(模块A → 模块B)
  ├─ 数据依赖(表A → 表B)
  ├─ API依赖(接口A → 接口B)
  └─ 开发顺序依赖(必须先做什么)

Step4:任务拆解(逐层)
  模块 → Feature → Task → Agent Package
  每步检查:是否拆到可独立交付的最小粒度?

Agent Package 标准格式

## Agent-ID: P<优先级>-<序号>

### Objective
任务目标(一句话说清)

### Scope
影响范围(模块/层/文件范围)

### Inputs
需要阅读的文件(列出具体路径,≤15个)

### Outputs
需要产出的内容(代码/配置/文档/脚本)

### Dependencies
依赖哪些 Agent Package(用 ID 引用)

### Deliverables
交付物清单(具体文件路径)

### Acceptance Criteria
验收标准(可测试、可验证的条件)

### Risk Assessment
风险评估(每个包单独评估,见下方 Risk 分类)

### Estimated Complexity
复杂度评估(Small / Medium / LargeXL禁止)

### Efficiency Score
效率评分(1-10[8,10]为合格,<8 需重构边界)

Task Size 等级

等级 耗时 阅读文件 修改文件 新增代码
Small 5-15min ≤ 3 ≤ 2 ≤ 300行
Medium 15-45min ≤ 8 ≤ 5 ≤ 800行
Large 45-120min ≤ 15 ≤ 10 ≤ 1500行
XL > 120min 禁止 禁止 禁止

XL → Large 拆分策略

如果发现 XL,按以下策略拆解(不直接说"禁止"了事):

XL 任务
├─ 跨模块拆分 → 每个模块独立为一个 Medium
├─ 跨层拆分   → 前端/后端/数据库各为一个 Medium
├─ 大文件拆分 → 核心逻辑 / 辅助逻辑 / 配置 各为一个 Small
├─ 复杂业务流 → 按步骤拆为链式 Small(A→B→C)
└─ 大代码量   → 按功能切片,每片 ≤ 300 行

效率评分规则

每个 Agent Package 从 4 个维度评分,加总后 [1, 10]:

Complexity(复杂度):1=单文件修改,3=多文件联动,5=跨模块
Context Usage(上下文使用率):1=读满15个文件,3=读8个,5=读3个
Dependency Count(依赖数):1=依赖3+个包,3=依赖1-2个,5=零依赖
Parallelism(可并行度):1=阻塞链中,3=可部分并行,5=完全独立

公式: Score = (Complexity + Context + Dependencies + Parallelism) × 0.5

合格线:≥ 8。低于 8 分继续拆分或重构任务边界。

风险分析

每个 Agent Package 必须评估以下风险,写出规避方式:

风险类型 检查项
架构风险 是否引入新依赖?是否改变模块边界?
数据风险 是否改数据库结构?是否有迁移脚本?
并发风险 是否有资源竞争?是否有锁问题?
安全风险 是否涉及鉴权?是否有输入校验?
Agent 协作风险 依赖的其他包失败如何自救?
上下文超限风险 是否需要的上下文超出预算?

Large 任务审查

只有 Large 及以上需要此审查:

## Large Task Justification

1. 为什么无法继续拆分?
2. 为什么需要多个文件协同?
3. 为什么仍适合单 Agent 完成?

如果解释不成立 → 自动重新拆分。

开发路线图

等级 内容 特征
P0 核心基础设施 数据库、认证、基础框架
P1 核心业务功能 主要业务逻辑、关键 API
P2 增强功能 辅助业务、优化功能
P3 优化功能 性能、UI 打磨、文档

依赖图输出格式

P0-01: 用户模型(无依赖)
   ↓
P1-01: 注册API(依赖P0-01
   ↓(可并行)
P1-02: 文章模型(无依赖)
   ↓
P2-01: 文章CRUD(依赖P1-01, P1-02

最终自检

输出前逐项检查:

  • 所有 Agent Package 总耗时是否 > 2小时?(每包单独评估,不是总时间)
  • 是否存在 XL 任务?(不直接说"禁止"→ 给出拆分方案)
  • 是否存在上下文超限任务?(阅读 > 15 文件?修改 > 10 文件?新增 > 1500 行?)
  • 是否存在不可并行的阻塞链?(A→B→C→D→E 这种长链要优化)
  • 是否存在跨业务域任务?(→ 必须拆分)
  • 是否存在效率评分 < 8 的包?
  • 是否存在没有风险评估的包?
  • 是否存在循环依赖?

如果任意一项为"是" → 自动重新拆分 → 直到全部通过。