Catalogskills.sh · forztf

speckit-tasks-zh

基于speckit工作流的任务生成技能,用于根据可用设计文档生成可操作的、依赖有序的tasks.md。当需要基于spec.md、plan.md、data-model.md、contracts/等设计文档为功能开发生成详细任务列表时使用此技能。触发词包括"speckit tasks"、"生成任务"、"任务规划"、"功能任务分解"、"创建tasks.md"等。

Review advisedVerified hub319 installs

Savant verdict: Review advised

Security analysis or source-hub review identified patterns requiring attention.

Live evaluation

Not evaluated yet. Workspaces can request a live evaluation.

Security assessment

Scan pending.

Structure

  • Ships 1 executable scriptscripts/check-prerequisites.ps1. Review what they do before enabling the skill for agents with tool access.
  • No license declaredConfirm you may reuse this skill before importing it into your repository.
  • The source hub's security checks flagged this skillRunlayer: warn (5/5 files flagged)

SKILL.md

---
name: speckit-tasks-zh
description: 基于speckit工作流的任务生成技能,用于根据可用设计文档生成可操作的、依赖有序的tasks.md。当需要基于spec.md、plan.md、data-model.md、contracts/等设计文档为功能开发生成详细任务列表时使用此技能。触发词包括"speckit tasks"、"生成任务"、"任务规划"、"功能任务分解"、"创建tasks.md"等。
---

## 用户输入

```text
$ARGUMENTS
```

您**必须**在继续之前考虑用户输入(如果不为空)。

## 大纲

scripts:
  sh: .specify/scripts/bash/check-prerequisites.sh --json
  ps: .specify/scripts/powershell/check-prerequisites.ps1 -Json

1. **设置**:从仓库根目录运行 `{SCRIPT}` 并解析 FEATURE_DIR 和 AVAILABLE_DOCS 列表。所有路径必须是绝对的。对于参数中的单引号,如 "I'm Groot",使用转义语法:例如 'I'\''m Groot'(或者如果可能的话使用双引号:"I'm Groot")。

2. **加载设计文档**:从 FEATURE_DIR 读取:
   - **必需**:plan.md(技术栈、库、结构),spec.md(带优先级的用户故事)
   - **可选**:data-model.md(实体),contracts/(API 端点),research.md(决策),quickstart.md(测试场景)
   - 注意:并非所有项目都有所有文档。根据可用内容生成任务。

3. **执行任务生成工作流程**:
   - 加载 plan.md 并提取技术栈、库、项目结构
   - 加载 spec.md 并提取带优先级的用户故事(P1, P2, P3 等)
   - 如果存在 data-model.md:提取实体并映射到用户故事
   - 如果存在 contracts/:将端点映射到用户故事
   - 如果存在 research.md:提取决策用于设置任务
   - 生成按用户故事组织的任务(参见下面的任务生成规则)
   - 生成依赖图显示用户故事完成顺序
   - 为每个用户故事创建并行执行示例
   - 验证任务完整性(每个用户故事都有所需任务,可独立测试)

4. **生成 tasks.md**:使用 `.specify/templates/tasks-template.md` 作为结构,填充:
   - 从 plan.md 获取正确的功能名称
   - 阶段 1:设置任务(项目初始化)
   - 阶段 2:基础任务(所有用户故事的阻塞先决条件)
   - 阶段 3+:按 spec.md 中的优先级顺序排列的每个用户故事一个阶段
   - 每个阶段包括:故事目标、独立测试标准、测试(如果要求)、实现任务
   - 最终阶段:完善和跨领域关注点
   - 所有任务必须遵循严格的检查表格式(参见下面的任务生成规则)
   - 每个任务的明确文件路径
   - 依赖关系部分显示故事完成顺序
   - 每个故事的并行执行示例
   - 实现策略部分(MVP 优先、增量交付)

5. **报告**:输出生成的 tasks.md 路径和摘要:
   - 总任务数
   - 每个用户故事的任务数
   - 识别的并行机会
   - 每个故事的独立测试标准
   - 建议的 MVP 范围(通常仅为用户故事 1)
   - 格式验证:确认所有任务都遵循检查表格式(复选框、ID、标签、文件路径)

为任务生成提供上下文:{ARGS}

tasks.md 应该是立即可执行的 - 每个任务必须足够具体,以便 LLM 可以在没有额外上下文的情况下完成它。

## 任务生成规则

**关键**:任务必须按用户故事组织,以实现独立实现和测试。

**测试是可选的**:仅在功能规格中明确要求或用户要求 TDD 方法时才生成测试任务。

### 检查表格式(必需)

每个任务必须严格遵循此格式:

```text
- [ ] [任务ID] [P?] [故事?] 带文件路径的描述
```

**格式组件**:

1. **复选框**:始终以 `- [ ]` 开头(markdown 复选框)
2. **任务 ID**:按执行顺序的序列号(T001, T002, T003...)
3. **[P] 标记**:仅当任务可并行化时包含(不同文件,不依赖未完成任务)
4. **[故事] 标签**:仅用户故事阶段任务必需
   - 格式:[US1], [US2], [US3], 等(映射到 spec.md 中的用户故事)
   - 设置阶段:无故事标签
   - 基础阶段:无故事标签  
   - 用户故事阶段:必须有故事标签
   - 完善阶段:无故事标签
5. **描述**:带确切文件路径的明确操作

**示例**:

- ✅ 正确:`- [ ] T001 根据实现计划创建项目结构`
- ✅ 正确:`- [ ] T005 [P] 在 src/middleware/auth.py 中实现认证中间件`
- ✅ 正确:`- [ ] T012 [P] [US1] 在 src/models/user.py 中创建用户模型`
- ✅ 正确:`- [ ] T014 [US1] 在 src/services/user_service.py 中实现 UserService`
- ❌ 错误:`- [ ] 创建用户模型`(缺少 ID 和故事标签)
- ❌ 错误:`T001 [US1] 创建模型`(缺少复选框)
- ❌ 错误:`- [ ] [US1] 创建用户模型`(缺少任务 ID)
- ❌ 错误:`- [ ] T001 [US1] 创建模型`(缺少文件路径)

### 任务组织

1. **来自用户故事(spec.md)** - 主要组织:
   - 每个用户故事(P1, P2, P3...)都有自己的阶段
   - 将所有相关组件映射到它们的故事:
     - 该故事需要的模型
     - 该故事需要的服务
     - 该故事需要的端点/UI
     - 如果要求测试:该故事的特定测试
   - 标记故事依赖关系(大多数故事应该是独立的)

2. **来自契约**:
   - 将每个契约/端点 → 映射到它服务的用户故事
   - 如果要求测试:每个契约 → 在该故事阶段实现前的契约测试任务 [P]

3. **来自数据模型**:
   - 将每个实体映射到需要它的用户故事
   - 如果实体服务于多个故事:放在最早的故事或设置阶段
   - 关系 → 在适当的故事阶段中的服务层任务

4. **来自设置/基础设施**:
   - 共享基础设施 → 设置阶段(阶段 1)
   - 基础/阻塞任务 → 基础阶段(阶段 2)
   - 故事特定设置 → 在该故事的阶段内

### 阶段结构

- **阶段 1**:设置(项目初始化)
- **阶段 2**:基础(阻塞先决条件 - 必须在用户故事前完成)
- **阶段 3+**:按优先级顺序的用户故事(P1, P2, P3...)
  - 在每个故事内:测试(如果要求)→ 模型 → 服务 → 端点 → 集成
  - 每个阶段应该是一个完整的、可独立测试的增量
- **最终阶段**:完善和跨领域关注点