dev-manager-tauri/.claude/skills/splitter/SKILL.md
lanrtop 05d7673990 feat(onboarding): T2+B3 复杂度感知分支策略 + agent 按钮载体声明体系
T2 git-workflow 模板升 v1.3.0:
- 分支策略从强制 dev→main 改为复杂度感知
  (简单改动直推 main/master,功能性改动开 feat/<name> 分支+PR)
- PR 创建 MCP 示例 head 从 "dev" 改为 "feat/<name>"

B3 agent 按钮载体声明闭环:
- CONVENTIONS.md manifest.yaml 规范新增 agent_button_carrier 字段
  (tauri/http/cli/playwright,新建蓝图时必填)
- splitter SKILL.md 三级优先载体继承:manifest字段 > architect声明 > 就近推断
- 炼境自身 manifest.yaml 补 agent_button_carrier: tauri
- AGENTS.md.tmpl 项目概况 TODO 提示新增载体字段填写指引

Rules-Applied: R04,R13
2026-07-04 13:44:02 +09:00

3.1 KiB
Raw Permalink Blame History

name description allowed-tools
splitter 将 architect 的设计文档拆解为任务卡,若项目有 .blueprint/ 则写入蓝图文件。Use after /architect for L-complexity tasks. Read, Edit, Write, Glob

任务拆解

将架构设计拆解为可独立执行的任务卡。

前提

当前对话中应已有 /architect 输出的设计文档,包含受影响文件和拆解建议。

步骤

1. 确认任务管理方式

  • 若项目存在 .blueprint/manifest.yaml → 写入蓝图文件
  • 若不存在 → 以 Markdown 列表输出到对话,由用户决定放哪里

2. 拆解原则

粒度控制

  • 每张卡 complexity 必须是 SM,不允许 L
  • S单文件改动逻辑简单独立可完成
  • M跨 2-3 个文件,有业务逻辑,但边界清晰
  • 拆出来还是 L → 继续细拆

依赖顺序

  • 数据层schema / model→ 后端接口 → 前端封装 → UI 组件
  • 有依赖的卡填写 depends 字段

可派发标准(每张卡必须满足)

  • files:明确列出涉及文件的相对路径
  • acceptance可执行验证路径,格式:[载体] 调用/运行什么(参数) → 断言什么
    • 载体来源(优先级)
      1. 先读 .blueprint/manifest.yamlagent_button_carrier 字段
      2. 无此字段时,从当前对话中 /architect 的「验证路径」声明继承
      3. 两者都没有时就近推断Tauri 桌面应用 → cargo testWeb 服务 → HTTP APICLI → 命令行
    • 断言要具体(检查字段值、返回码、文件存在、数量 > 0不写模糊的"功能正常"
    • 示例:[Tauri command] apply_onboarding_pack(project_id) → 返回 written≥1磁盘上文件存在
    • 示例:[HTTP API] POST /api/projects → 201body.id 非空
    • 示例:[cargo test] cargo test parse_conventional → 6 个 case 全通过
  • complexityS 或 M

3a. 写入蓝图(有 .blueprint/ 时)

读取 .blueprint/modules/<id>.md,在末尾追加任务卡:

### 📋 <任务标题>
- status: todo
- complexity: S|M
- files: src/path/to/file.tsx, src-tauri/src/commands/xxx.rs
- depends: <依赖模块id>(可选)
- acceptance: "[载体] 调用什么(参数) → 断言什么"

然后更新 manifest.yamlstatus → plannedupdated 改为今天日期。

3b. 输出到对话(无 .blueprint/ 时)

## 任务拆解:<功能名>

### 📋 <卡名>S
- files: ...
- acceptance: "[载体] 调用什么(参数) → 断言什么"

### 📋 <卡名>M
- files: ...
- acceptance: "[载体] 调用什么(参数) → 断言什么"
- depends: 上一张卡

4. 输出拆解摘要

共 N 张任务卡,执行顺序:
1. 📋 <卡名>S— <一句话说明>
2. 📋 <卡名>M— <一句话说明>
3. 📋 <卡名>M— <一句话说明depends: 卡2>

质量检查

写完后逐张确认:

  • 每张卡有 files
  • 每张卡有 acceptance
  • complexity 全部是 S 或 M
  • 有依赖的卡填了 depends
  • 任务卡按执行顺序排列