# T Task

> Convert technical design documents into executable phased task plans with work breakdown and dependencies.

- **Type:** Skill
- **Install:** `agentstack add skill-timzaak-web-dev-skills-t-task`
- **Verified:** Yes — security-reviewed for prompt injection and unsafe behavior
- **Seller:** [timzaak](https://agentstack.voostack.com/s/timzaak)
- **Installs:** 0
- **Category:** [Agent Skills](https://agentstack.voostack.com/c/agent-skills)
- **Latest version:** 0.1.0
- **License:** Apache-2.0
- **Upstream author:** [timzaak](https://github.com/timzaak)
- **Source:** https://github.com/timzaak/web-dev-skills/tree/main/skills/t-task

## Install

```sh
agentstack add skill-timzaak-web-dev-skills-t-task
```

Requires the [AgentStack CLI](https://agentstack.voostack.com/docs/cli). Works with Claude Code, Cursor, and any MCP-compatible agent.

## About

# 任务规划生成

运行时边界统一参考：`${CLAUDE_PLUGIN_ROOT}/protocols/runtime-boundaries.md`
需求来源边界统一参考：`${CLAUDE_PLUGIN_ROOT}/protocols/requirement-source-contract.md`

任务拆分必须服务于简单、外科式、可验证的执行；如果设计文档、guide 或 protocol 冲突，停止并说明冲突。

## Input Contract

上游输入（来自 `/t-design` 产出）：
- `.ai/design/[feature].md` — 技术设计文档（必须存在）
  - 必须包含：目标、范围、API 接口设计、数据库设计、测试策略
  - 应包含：现有实现分析、用户故事/PRD/技术预研引用、文件影响范围
  - 纯技术方案设计可只包含技术预研引用，但必须声明不涉及业务逻辑、产品规则、用户可见流程或验收目标变动

可选输入：
- `.ai/task/[feature]/.state.json` — 已有任务状态（增量生成时）
- `docs/prd/**/*.md` — PRD 文档
- `.ai/user-stories/**/*.md` — draft 用户故事
- `docs/user-stories/**/*.md` — 已发布用户故事
- `.ai/tech-research/**/*.md` — 技术预研报告
- `${CLAUDE_PLUGIN_ROOT}/guides/` — 开发规范

## Output Contract

下游产出：
- `.ai/task/[feature]/.state.json` — 任务状态文件，包含 phase/slot/item 层级状态
- `.ai/task/[feature]//index.md` — 阶段总览
- `.ai/task/[feature]//.md` — Slot manifest（导航与依赖）
- `.ai/task/[feature]///-*.md` — 可执行的 item 文件
  - 每个 item 包含：id, title, agent, scope, inputs, steps, expected_files, validation, depends_on, handoff_summary, completion_criteria
- `.ai/task/[feature]/backend/finalize.md` — backend 阶段收口流程（仅 backend）

## Purpose
- 从 `.ai/design/[feature].md` 生成 `.ai/task/[feature]/` 任务目录和 `.state.json`。
- 固定使用 `phase -> slot -> item` 模型。
- 生成串行执行的 item 文件，而不是把 manifest 当执行输入。
- backend 阶段额外生成 `finalize.md`，由 `/t-backend-finalize` 独立执行。

## Args
| 参数 | 说明 |
|---|---|
| `[feature]` | 功能名（必填） |
| `--phase ` | 指定阶段生成；未指定时自动选择第一未完成阶段 |

## Preconditions
- `.ai/design/[feature].md` 必须存在。
- 阶段依赖、slot 顺序、执行单元统一参考：`${CLAUDE_PLUGIN_ROOT}/protocols/task-phase-execution.md`
- `miniapp` 是可选阶段：仅当项目根目录存在 `miniapp/`，或设计文档明确包含小程序交付内容时启用。
- 未启用 miniapp 的项目不得自动生成 `.ai/task/[feature]/miniapp/`；显式请求 `--phase miniapp` 时应返回“当前项目未启用 miniapp 阶段”。
- 启用 miniapp 时，默认阶段顺序为 `backend -> frontend -> miniapp -> demo`。

## Output Layout
backend 阶段：
```text
.ai/task/[feature]/backend/
├── index.md
├── dev.md
├── dev/
│   ├── BE-D01-*.md
│   └── ...
├── test.md
├── test/
│   ├── BE-T01-*.md
│   └── ...
├── accept.md
├── accept/
│   ├── BE-A01-*.md
│   └── ...
└── finalize.md
```

frontend 阶段：
```text
.ai/task/[feature]/frontend/
├── index.md
├── dev.md
├── dev/FE-D01-*.md
├── test.md
├── test/FE-T01-*.md
├── accept.md
└── accept/FE-A01-*.md
```

miniapp 阶段：
```text
.ai/task/[feature]/miniapp/
├── index.md
├── dev.md
├── dev/MA-D01-*.md
├── test.md
├── test/MA-T01-*.md
├── accept.md
└── accept/MA-A01-*.md
```

demo 阶段：
```text
.ai/task/[feature]/demo/
├── index.md
├── dev.md
├── dev/DE-D01-*.md
├── accept.md
└── accept/DE-A01-*.md
```

## State Shape
`.state.json` 的完整结构、兼容性规则和状态聚合规则统一参考：

- `${CLAUDE_PLUGIN_ROOT}/protocols/task-state-contract.md`

## Generation Flow
- 校验 `.ai/design/[feature].md` 存在。
- 解析 `[feature]` 和 `--phase`；根据 `${CLAUDE_PLUGIN_ROOT}/protocols/task-phase-execution.md` 检测 active phases；未传 `--phase` 时自动选择第一未完成 active phase。
- 按 `${CLAUDE_PLUGIN_ROOT}/protocols/task-phase-execution.md` 校验阶段前置和 slot 顺序；未启用的 phase 不参与校验或生成。
- 按当前 phase 提取设计文档最小相关上下文：
   - backend：API、数据模型、后端实现、后端测试。
   - frontend：前端实现、交互与状态、前端测试。
   - miniapp：小程序页面、主题、构建与模板门禁。
   - demo：Demo/E2E、用户故事场景或技术验收场景。
   - 未命中相关章节时记录警告，但不得编造设计事实；下游 prompt 必须说明缺口。
   - 若设计文档或用户输入涉及大范围重构、替换旧架构、迁移旧模块或删除旧接口/状态/字段，下游 prompt 必须要求 agent 按 `${CLAUDE_PLUGIN_ROOT}/protocols/task-phase-execution.md` 的 Refactor And Legacy Cleanup 生成旧代码清理清单；没有真实兼容约束时，先删旧实现再写新结构。
- 按当前阶段 slot 串行调度相应 agent。每个 slot agent 必须通过 `Agent` tool 启动，`subagent_type` 按 Agent Dispatch Mapping 映射。传入 prompt 必须包含：当前 phase 的设计摘要、上游 slot handoff（如有）、guide 路径、Agent Output Contract 要求的字段列表。
   - prompt 必须引用 `${CLAUDE_PLUGIN_ROOT}/protocols/task-check-rubric.md`，要求 agent 在返回前自检 P0/P1 规则。
   - prompt 必须引用 `${CLAUDE_PLUGIN_ROOT}/protocols/task-phase-execution.md`，要求 item 字段、拆分原则、测试集中执行和 backend/test item 类型符合该协议。
   - backend/test slot prompt 必须额外要求读取 `${CLAUDE_PLUGIN_ROOT}/guides/backend/testing.md`。
- 每个 slot agent 必须返回：
   - slot manifest 正文
   - item 文件集合
   - item DAG
   - slot completion criteria
   - handoff summary
   - self_check：对必填字段、DAG、拆分阈值、backend test item 类型和 finalize 规则的自检结果
- 主流程在每个 slot 返回后先执行写入前硬校验：
   - item 必填字段齐备
   - item ID 唯一，依赖存在且无环
   - manifest 覆盖全部 items，路径与 item 文件一致
   - item 拆分、测试集中执行、backend/test item 类型符合 `${CLAUDE_PLUGIN_ROOT}/protocols/task-phase-execution.md`
- 硬校验失败时终止当前 slot，不写入成功状态，要求重新生成该 slot。
- 硬校验通过后写入当前 slot manifest 和 item 文件，再继续调用下游 slot。
- 当前阶段 slot 齐备后生成 `/index.md`。
- 写入或更新 `.state.json`。
- 返回下一步建议：`/t-task-check [feature] --phase [phase]`。

## Agent Dispatch Mapping

| phase | slot | subagent_type |
|-------|------|---------------|
| backend | dev | backend-dev |
| backend | test | backend-test |
| backend | accept | backend-accept |
| frontend | dev | frontend-dev |
| frontend | test | frontend-test |
| frontend | accept | frontend-accept |
| miniapp | dev | miniapp-dev |
| miniapp | test | miniapp-test |
| miniapp | accept | miniapp-accept |
| demo | dev | demo-dev |
| demo | accept | demo-accept |

## Slot Manifest Contract
每个 slot manifest 必须包含：
- slot 目标和边界
- item 表格：`id | title | agent | file | depends_on | status`
- item DAG 或执行顺序
- 上游输入和下游 handoff
- slot 级完成标准
- 测试或验收策略摘要

manifest 不得包含完整实现步骤；完整步骤必须写入 item 文件。

## Agent Output Contract
slot agent 输出必须至少包含：
- `slot`: `dev|test|accept`
- `manifest_target_file`
- `manifest_content`
- `items`: item 对象列表，每个 item 包含 `id/file/agent/depends_on/content`
- `item_dag`
- `completion_criteria`
- `handoff_summary`
- `self_check`: 必填字段、DAG、拆分、阶段执行规则和 P0/P1 风险自检结果

主流程必须：
- 校验 `slot` 与被调度 agent 是否匹配。
- 校验 item 依赖合法且无环。
- 校验 manifest、item 文件路径和 `.state.json` 计划一致。
- 校验 `self_check` 存在且未声明未解决 P0/P1。
- 先写入当前 slot manifest 和 item 文件，再继续调用下游 slot。
- 在当前阶段要求的 slot 结果齐备后再生成 `index.md`。
- 文档写入与 `.state.json` 更新保持同轮完成。

## Item Contract And Splitting

item 字段、backend/test item 类型、测试集中执行规则、拆分原则、Cargo package 名核验要求统一参考：

- `${CLAUDE_PLUGIN_ROOT}/protocols/task-phase-execution.md`

本 skill 只负责把 agent 返回结果校验并写入 `.ai/task/[feature]/`，不在这里维护第二套 item 结构或拆分阈值。

## Backend Finalize
- backend 阶段必须额外生成 `/finalize.md`。
- `finalize.md` 必须明确：
  - `/code-review` 目标范围
  - `cargo clippy --fix --allow-dirty --allow-staged --all-targets --all-features`
  - `cargo fmt --all`
  - OpenAPI 导出与前端 API 生成
  - 失败后从失败步骤恢复
- `finalize.md` 不拆 item，不由 `/t-run` 执行。

## Forbidden
- 生成或依赖 `agents` 根字段。
- 把 `dev.md`、`test.md`、`accept.md` 当作 `/t-run` 的直接执行输入。
- 在单个 item 中塞入跨多模块、多天或不可恢复的大任务。
- 当前阶段 slot 并行生成；slot 必须按依赖串行。
- 未写入上游 manifest 和 item 文件就调用下游 slot agent。
- backend 阶段遗漏 `finalize.md`。
- 生成缺少 `test_item_type: authoring|runner` 的 backend/test item。
- 生成 `agent: backend-test-run` 的 item。

## Failure
- 设计文档不存在：提示先运行 `/t-design [feature]`。
- 前置阶段未完成：返回阻塞阶段、当前状态、阻塞 items/slots 和下一步命令；不得修改 `.state.json`。
- 任一 slot agent 生成失败：终止本次任务生成，不写入该 slot 的成功状态，并返回失败 agent 与失败原因。
- slot agent 返回 item 缺少必填字段、依赖不存在或形成环：拒绝写入成功状态，要求重新生成该 slot。
- slot agent 返回缺失 `self_check`、manifest 覆盖不完整、backend/test 类型非法或触发必须拆分规则：拒绝写入成功状态，要求重新生成该 slot。

## Examples
```bash
# 生成 backend 阶段任务
/t-task  --phase backend

# 未指定 phase 时自动选择第一未完成阶段
/t-task 
```

期望响应：
```text
已生成 backend 阶段任务：
- index.md
- dev.md + dev/*.md
- test.md + test/*.md
- accept.md + accept/*.md
- finalize.md

状态已更新：phase=backend, phases.backend.generated_at=
下一步: /t-task-check  --phase backend
```

## Source & license

This open-source skill is cataloged on AgentStack and links to its original source — we do not rehost the code.

- **Author:** [timzaak](https://github.com/timzaak)
- **Source:** [timzaak/web-dev-skills](https://github.com/timzaak/web-dev-skills)
- **License:** Apache-2.0

Install and usage instructions live in the source repository linked above.

## Pricing

- **Free** — Free

## Security capabilities

Automated source analysis of v0.1.0 — what this tool can access:

- **Network access:** no
- **Filesystem access:** no
- **Shell / process execution:** no
- **Environment & secrets:** no
- **Dynamic code execution:** no

*"Yes" means the capability is present in the source — more access means more to trust, not that it is unsafe.*


## Versions

- **0.1.0** — security scan: passed — Imported from the upstream source.

## Links

- Listing page: https://agentstack.voostack.com/l/skill-timzaak-web-dev-skills-t-task
- Seller: https://agentstack.voostack.com/s/timzaak
- Browse the marketplace: https://agentstack.voostack.com/browse

---
Listed on AgentStack — the marketplace for AI agent skills and MCP servers. Every listing is security-reviewed. Creators keep 70%.
