Files
ai_soc_sw/.trae/skills/ai-collab-setup/SKILL.md
T
tupingr 3491827fbc feat(skill): 更新 Skill 文件为 v2.0 新框架结构
- ai-collab-setup/SKILL.md: 升级为 v2.0
  - 采用 R/W/RW/- 四态权限体系
  - 新增 read_only_paths 和 forbidden_paths 配置
  - 工作流增加 retry 和 escalation 机制
  - 新增提示词模板(code-style.md、doc-template.md、bug-report.md)
  - 目录结构新增 src/server/、src/config/、src/types/

- add-subproject/SKILL.md: 升级为 v2.0
  - 目录结构新增 src/server/、src/config/、src/types/ 子目录
  - 示例任务增加完整的 feedback/round1.md 格式
  - impact.md 增加影响的功能模块和环境依赖变更段落
  - 脚本兼容 Windows PowerShell 和 Linux/macOS
  - ENVIRONMENT.md 默认使用 pnpm 包管理器
2026-05-23 21:20:39 +08:00

30 KiB
Raw Blame History

name, description
name description
ai-collab-setup Creates complete '1 Human + 2 AI' collaboration framework with directory structure and AI constitution. Invoke when starting a new AI-assisted programming project.

AI 协作框架快速搭建

功能

一键创建"1 人+2AICoder+Tester"协作框架,包括:

  • 完整的目录结构
  • AI 角色定义与权限约定(AGENTS.md)—— R/W/RW/- 四态权限体系
  • AI 配置文件(含 read_only_paths、forbidden_paths、description
  • 提示词模板(code-style.md、doc-template.md、bug-report.md
  • 工作流配置(4 阶段 + retry + escalation
  • 示例任务模板
  • README 文档

使用方法

在新项目根目录执行:

# 调用此 skill
# skill 会自动创建所有必要的目录和文件

创建的内容

目录结构

.
├── AGENTS.md                      # AI 宪法(角色定义 + 权限约定 + R/W/RW/- 矩阵)
├── README.md                      # 项目说明
├── .gitignore
├── .ai/
│   ├── config/
│   │   ├── coder.json             # Dev AI 配置(含 read_only_paths
│   │   ├── tester.json            # QA AI 配置(含 read_only_paths
│   │   └── workflow.json          # 工作流配置(含 retry + escalation
│   └── prompts/
│       ├── coding/                # 编码提示词
│       │   ├── README.md
│       │   ├── code-style.md      # 代码风格规范
│       │   └── doc-template.md    # impact.md / acceptance.md 模板
│       └── testing/               # 测试提示词
│           ├── README.md
│           └── bug-report.md      # Bug 报告模板(BLOCKER/HIGH/MEDIUM/LOW
├── projects/
│   ├── P01_app/
│   │   ├── src/                   # Dev AI 工作区(前端 + 后端 + 配置)
│   │   │   ├── server/            # NestJS 后端
│   │   │   ├── config/            # 构建配置
│   │   │   └── types/             # 全局类型
│   │   ├── tests/                 # QA AI 工作区
│   │   ├── docs/
│   │   │   ├── 01_需求概要.md
│   │   │   ├── 02_架构设计.md
│   │   │   └── 03_接口定义.md
│   │   └── ENVIRONMENT.md
│   └── P02_training/
│       ├── src/
│       ├── tests/
│       ├── docs/
│       └── ENVIRONMENT.md
├── review/
│   ├── active/                    # 活跃任务
│   │   ├── P01-001/
│   │   │   ├── task.md            # 任务描述(人类创建,AI 只读)
│   │   │   ├── acceptance.md      # 验收标准
│   │   │   ├── impact.md          # 变更影响范围
│   │   │   └── feedback/          # 测试反馈
│   │   │       └── round1.md
│   │   ├── P01-002/
│   │   └── CROSS-001/
│   └── archived/                  # 归档任务(按季度)
│       └── 2026-Q2/
├── shared/
│   ├── scripts/
│   ├── templates/
│   └── utils/
├── reports/
│   ├── test-results/              # 测试结果
│   └── quality-reports/           # 质量评审报告
└── .github/workflows/

核心文件

AGENTS.md - AI 宪法:

  • 三个角色定义(人类、Dev AI、QA AI)
  • R/W/RW/- 四态权限矩阵
  • 工作流程(4 阶段 + 缺陷修复循环)
  • retry 配置(max_rounds=3escalation 规则)
  • 沟通规范
  • 命名规范

AI 配置文件

  • .ai/config/coder.json - Dev AI 权限和职责(含 read_only_paths、forbidden_paths
  • .ai/config/tester.json - QA AI 权限和职责(含 read_only_paths、forbidden_paths
  • .ai/config/workflow.json - 工作流配置(含 retry + escalation

提示词模板

  • .ai/prompts/coding/code-style.md - 代码风格、命名规范、目录组织
  • .ai/prompts/coding/doc-template.md - impact.md / acceptance.md 标准化模板
  • .ai/prompts/testing/bug-report.md - Bug 报告模板,严重程度定义

示例任务

  • review/active/P01-001/ - 示例任务(包含 task、acceptance、impact、feedback
  • review/active/CROSS-001/ - 跨项目任务示例

执行命令

# 1. 创建目录结构
mkdir -p .ai/{config,prompts/{coding,testing}} \
  projects/{P01_app,P02_training}/{src/{server,config,types},tests,docs} \
  review/{active/{P01-001,P01-002,CROSS-001},archived/2026-Q2}/feedback \
  shared/{scripts,templates,utils} \
  reports/{test-results,quality-reports} \
  .github/workflows

# 2. 创建 AGENTS.md
cat > AGENTS.md << 'EOF'
# AI 角色定义与权限约定

## 团队架构

┌─────────────────────────────────────────────┐ │ 人类负责人 │ │ 需求分析 · 架构设计 · 最终决策 │ └───────────────────┬─────────────────────────┘ │ ┌───────────┴───────────┐ ▼ ▼ ┌───────────────┐ ┌───────────────┐ │ Dev AI │ │ QA AI │ │ 代码编写 │ │ 测试设计 │ │ 文档生成 │ │ 测试执行 │ │ 影响评估 │ │ 质量保障 │ └───────────────┘ └───────────────┘


---

## 角色职责

### Dev AI (编码AI)
**职责范围:**
- ✅ 编写业务代码 (`projects/*/src/`)
- ✅ 生成技术文档 (`projects/*/docs/`)
- ✅ 定义验收标准 (`review/*/acceptance.md`)
- ✅ 评估变更影响 (`review/*/impact.md`)
- ✅ 维护共享资源 (`shared/`)

**可读但不可写:**
- 👁 任务描述 (`review/*/task.md`) —— 只读,不可修改
- 👁 测试反馈 (`review/*/feedback/`) —— 只读,用于修 Bug

**禁止操作:**
- ❌ 修改测试代码 (`projects/*/tests/`)
- ❌ 修改测试报告 (`reports/`)

### QA AI (测试AI)
**职责范围:**
- ✅ 编写测试用例 (`projects/*/tests/`)
- ✅ 执行测试并生成报告 (`reports/`)
- ✅ 补充验收标准 (`review/*/acceptance.md`)
- ✅ 提交测试反馈 (`review/*/feedback/`)

**可读但不可写:**
- 👁 任务描述 (`review/*/task.md`) —— 只读,了解测试目标

**禁止操作:**
- ❌ 修改业务代码 (`projects/*/src/`)
- ❌ 修改技术文档 (`projects/*/docs/`)
- ❌ 修改共享资源 (`shared/`)
- ❌ 修改影响评估 (`review/*/impact.md`)

### 人类负责人
**职责范围:**
- ✅ 可以修改所有目录
- ✅ 审核 AI 输出质量
- ✅ 解决 AI 之间的冲突
- ✅ 最终决策和验收

---

## 工作流程

┌──────────────┐ ┌──────────────┐ ┌──────────────┐ ┌──────────────┐ │ 需求分析 │ ───→ │ 开发实现 │ ───→ │ 测试验证 │ ───→ │ 验收确认 │ │ (人类) │ │ (Dev AI) │ │ (QA AI) │ │ (人类) │ └──────────────┘ └──────────────┘ └──────────────┘ └──────────────┘ ↑ │ │ Bug → 修复 │ └──────────────────────┘ (最多 2 轮)


### 详细流程说明

**1. 需求分析阶段**
- 人类负责人创建任务单
- 输出: `review/{task_id}/task.md`

**2. 开发实现阶段**
- Dev AI 读取任务描述,编写代码 + 文档
- 同时输出验收标准和变更影响范围
- 输出: `projects/*/src/`, `projects/*/docs/`, `review/{task_id}/impact.md`, `review/{task_id}/acceptance.md`

**3. 测试验证阶段**
- QA AI 根据验收标准编写测试,执行测试,生成报告
- 测试反馈写入 `review/{task_id}/feedback/round{round}.md`
- 输出: `projects/*/tests/`, `reports/test-results/`, `review/{task_id}/feedback/`

### 缺陷修复循环

| 规则 | 说明 |
|------|------|
| 最大轮次 | 3 轮(初始测试 + 最多 2 轮修复复查) |
| 循环范围 | 测试失败 → Dev AI 修复 → QA AI 复查 |
| 跳过项 | 修复轮次中 Dev AI **只修 Bug**,不重新写 acceptance/impact |
| 触发升级 | 第 3 轮仍有 BLOCKER 或 HIGH 级别 Bug → 暂停流转,待人类裁决 |

Round 1: Dev 开发 → QA 测试 → 3 个 Bug Round 2: Dev 修复 → QA 复查 → 1 个 BugMEDIUM Round 3: Dev 修复 → QA 复查 → 0 个 Bug → 提交人类验收


如果 Round 3 仍有 BLOCKER/HIGH

Round 3: Dev 修复 → QA 复查 → 仍 1 个 HIGH → ⚠️ 升级给人类裁决


**4. 验收确认阶段**
- 人类审核测试报告,确认任务完成或驳回
- 确认后任务状态更新为 DONE,移入 `review/archived/`

---

## 目录权限矩阵

> **图例**`-` = 无权访问 &nbsp;&nbsp; `R` = 只读 &nbsp;&nbsp; `W` = 可写(含读) &nbsp;&nbsp; `RW` = 读写

| 目录路径 | Dev AI | QA AI | 人类 |
|---------|--------|-------|------|
| `.ai/` | `-` | `-` | `RW` |
| `shared/` | `RW` | `-` | `RW` |
| `projects/*/src/` | `RW` | `-` | `RW` |
| `projects/*/tests/` | `-` | `RW` | `RW` |
| `projects/*/docs/` | `RW` | `-` | `RW` |
| `review/*/task.md` | `R` | `R` | `RW` |
| `review/*/acceptance.md` | `RW` | `RW` | `RW` |
| `review/*/impact.md` | `RW` | `-` | `RW` |
| `review/*/feedback/` | `R` | `RW` | `RW` |
| `reports/` | `-` | `RW` | `RW` |
| `.github/` | `-` | `-` | `RW` |

> **解析优先级**:当同一条路径被多个规则匹配时,`forbidden > read_only > allowed`。禁止规则永远优先。
> 
> **默认行为**:任何未出现在上表中的路径,默认禁止所有 AI 访问(等效于 `-`)。

---

## 沟通规范

### Dev AI → QA AI
在 `review/{task_id}/` 目录提交:
- **验收标准** (`acceptance.md`) - 明确测试目标
- **变更影响范围** (`impact.md`) - 指导回归测试
- **环境准备** 参考项目级 `ENVIRONMENT.md`

### QA AI → Dev AI
在 `review/{task_id}/feedback/` 目录提交:
- **测试结果报告** (`round{round}.md`)
- **Bug清单** - 列出问题和严重程度
- **改进建议** - 代码优化建议

---

## 命名规范

### 项目命名

P01_项目名称 # P01 表示项目编号


### 任务编号

P01-001 # P01 项目编号 + 001 任务编号


### 分支命名

feature/P01-001-login # 功能开发 bugfix/P01-001-password # Bug修复 test/P01-001-testcases # 测试用例


### 提交信息

feat(P01-001): 实现用户登录功能 fix(P01-001): 修复密码验证问题 docs(P01-001): 更新接口文档 test(P01-001): 添加登录测试用例


---

## AI 配置文件说明

| 文件 | 说明 |
|------|------|
| `.ai/config/coder.json` | Dev AI 配置(权限、职责) |
| `.ai/config/tester.json` | QA AI 配置(权限、职责) |
| `.ai/config/workflow.json` | 工作流配置(阶段、触发器) |
| `.ai/prompts/coding/` | 编码提示词模板 |
| `.ai/prompts/testing/` | 测试提示词模板 |
EOF

# 3. 创建 README.md
cat > README.md << 'EOF'
# AI 协作项目

一个"人+2AI"协作模式的 AI 辅助编程项目仓库。

---

## 目录结构

. ├── AGENTS.md # AI角色定义+权限约定+工作流 ├── README.md ├── .gitignore ├── .ai/ # AI协作核心配置 │ ├── config/ │ │ ├── coder.json # Dev AI 配置 │ │ ├── tester.json # QA AI 配置 │ │ └── workflow.json # 工作流配置 │ └── prompts/ │ ├── coding/ # 编码提示词模板 │ └── testing/ # 测试提示词模板 ├── projects/ # 项目代码 │ ├── P01_app/ # 主应用项目 │ │ ├── src/ # 业务代码 (Dev AI) │ │ ├── tests/ # 测试代码 (QA AI) │ │ ├── docs/ # 项目文档 (Dev AI) │ │ └── ENVIRONMENT.md # 项目级环境准备 │ └── P02_training/ # AI训练项目 │ ├── src/ │ ├── tests/ │ ├── docs/ │ └── ENVIRONMENT.md ├── review/ # 交接中心 │ ├── active/ # 活跃任务 │ └── archived/ # 已完成任务(按季度归档) ├── shared/ # 共享资源 │ ├── scripts/ │ ├── templates/ │ └── utils/ ├── reports/ # 统一报告 │ ├── test-results/ │ └── quality-reports/ └── .github/ # CI/CD配置 └── workflows/


---

## 团队角色

| 角色 | 是谁 | 干什么 | 不干什么 |
|------|------|--------|----------|
| **人类负责人** | 你 | 下指令、审阅、做决策、定验收标准 | 不写代码、不写测试 |
| **Dev AI** | Claude/TRAE/元宝等 | 写业务代码+文档、修bug、写impact | 不动tests/、不跑测试 |
| **QA AI** | 扣子编程AI | 写测试、跑测试、写反馈 | 不动src/、不改业务代码 |

---

## 工作流程

1. **你**在 `review/active/P01-001/` 下写 `task.md`(要做什么)
2. **你或Dev AI**补充 `acceptance.md`(怎么算做完了)
3. **Dev AI** 在 `projects/P01_app/src/` 写代码,在 `docs/` 写文档,写 `impact.md`
4. **你**审一眼,没问题就触发QA AI
5. **QA AI** 读 `task.md` + `acceptance.md` + `impact.md`,按 `ENVIRONMENT.md` 准备环境,在 `tests/` 写测试并执行,写 `feedback/round1.md`
6. **有bug** → 你看反馈 → 让Dev AI修 → 回到步骤3round2)
   **通过** → 你确认 → 任务关闭,报告归档到 `reports/`

---

## 任务状态流转

TODO → IN_PROGRESS → REVIEW → DONE → ARCHIVED(移入archived/季度目录)


`task.md` 中添加状态字段:

status: TODO | IN_PROGRESS | REVIEW | DONE | ARCHIVED

EOF

# 4. 创建 .gitignore
cat > .gitignore << 'EOF'
# Dependencies
node_modules/
vendor/
__pycache__/
*.pyc
*.pyo
venv/

# Build outputs
dist/
build/
*.log
*.out

# IDE
.vscode/
.idea/
*.swp
*.swo

# OS
Thumbs.db
.DS_Store

# Environment variables
.env
.env.local
.env.*.local
.env.production

# Test reports
reports/test-results/*.json
reports/test-results/*.xml

# Model files
models/
*.pt
*.pth
*.onnx

# Data files
data/
*.csv
*.jsonl

# Temporary files
*.tmp
*.temp
*.bak
EOF

# 5. 创建 AI 配置文件(新版:含 read_only_paths、forbidden_paths、description
cat > .ai/config/coder.json << 'EOF'
{
  "name": "Dev AI",
  "role": "代码开发者",
  "description": "allowed_paths = 可写路径(含读);read_only_paths = 只读路径;不在二者中的路径禁止访问。详细权限见 AGENTS.md 权限矩阵。",
  "responsibilities": [
    "编写业务代码",
    "生成技术文档",
    "定义验收标准",
    "评估变更影响",
    "维护共享资源"
  ],
  "allowed_paths": [
    "projects/*/src/",
    "projects/*/docs/",
    "shared/",
    "review/*/acceptance.md",
    "review/*/impact.md"
  ],
  "read_only_paths": [
    "review/*/task.md",
    "review/*/feedback/"
  ],
  "forbidden_paths": [
    "projects/*/tests/",
    "reports/"
  ],
  "prompt_templates": {
    "coding": ".ai/prompts/coding/",
    "documentation": ".ai/prompts/coding/"
  }
}
EOF

cat > .ai/config/tester.json << 'EOF'
{
  "name": "QA AI",
  "role": "测试工程师",
  "description": "allowed_paths = 可写路径(含读);read_only_paths = 只读路径;不在二者中的路径禁止访问。详细权限见 AGENTS.md 权限矩阵。",
  "responsibilities": [
    "编写测试用例",
    "执行测试",
    "生成测试报告",
    "提供反馈"
  ],
  "allowed_paths": [
    "projects/*/tests/",
    "reports/",
    "review/*/acceptance.md",
    "review/*/feedback/"
  ],
  "read_only_paths": [
    "review/*/task.md"
  ],
  "forbidden_paths": [
    "projects/*/src/",
    "projects/*/docs/",
    "shared/",
    "review/*/impact.md"
  ],
  "prompt_templates": {
    "testing": ".ai/prompts/testing/"
  }
}
EOF

cat > .ai/config/workflow.json << 'EOF'
{
  "workflow": "human-ai-collaboration",
  "roles": ["human", "dev-ai", "qa-ai"],
  "stages": [
    {
      "name": "需求分析",
      "actor": "human",
      "output": "review/{task_id}/task.md"
    },
    {
      "name": "开发实现",
      "actor": "dev-ai",
      "input": "review/{task_id}/task.md",
      "output": ["projects/*/src/", "projects/*/docs/", "review/{task_id}/impact.md", "review/{task_id}/acceptance.md"]
    },
    {
      "name": "测试验证",
      "actor": "qa-ai",
      "input": ["review/{task_id}/task.md", "review/{task_id}/acceptance.md"],
      "output": ["projects/*/tests/", "reports/test-results/", "review/{task_id}/feedback/round{round}.md"]
    },
    {
      "name": "验收确认",
      "actor": "human",
      "input": ["review/{task_id}/feedback/", "reports/test-results/"]
    }
  ],
  "retry": {
    "max_rounds": 3,
    "loop": ["测试验证", "开发实现"],
    "escalation": {
      "trigger": "第 3 轮测试仍有 BLOCKER 或 HIGH 级别 Bug",
      "action": "暂停任务流转,等待人类负责人裁决"
    },
    "skip_acceptance_on_retry": true
  },
  "ci_triggers": {
    "on_push_to_main": ["run-tests", "generate-reports"],
    "on_pr_open": ["run-tests", "code-review"],
    "on_task_update": ["notify-qa-ai"]
  }
}
EOF

# 6. 创建提示词模板
cat > .ai/prompts/coding/README.md << 'EOF'
# Dev AI 提示词库

| 文件 | 说明 |
|------|------|
| [code-style.md](code-style.md) | 代码风格、命名规范、目录组织 |
| [doc-template.md](doc-template.md) | impact.md / acceptance.md 等文档模板 |
EOF

cat > .ai/prompts/testing/README.md << 'EOF'
# QA AI 提示词库

| 文件 | 说明 |
|------|------|
| [bug-report.md](bug-report.md) | 测试反馈 / Bug 报告模板与格式规范 |
EOF

cat > .ai/prompts/coding/code-style.md << 'EOF'
# Dev AI 代码风格规范

## 适用技术栈

| 层 | 技术 | 语言 |
|-----|------|------|
| 前端 | Taro 4 + React 18 | TypeScript 5.x |
| 样式 | Tailwind CSS 4 | — |
| 后端 | NestJS 10 | TypeScript 5.x |
| 训练 | PyTorch 2.0 | Python 3.10+ |

---

## 1. 文件命名

| 类型 | 规则 | 示例 |
|------|------|------|
| 页面组件 | kebab-case | `error-detail.tsx` |
| UI 组件 | kebab-case | `button.tsx` |
| 工具函数 | kebab-case | `format-date.ts` |
| 类型定义 | kebab-case | `error-entry.d.ts` |
| NestJS 模块 | kebab-case | `auth.module.ts` |
| Python 模块 | snake_case | `data_loader.py` |

## 2. 目录组织(前端)

src/ ├── pages/{page-name}/ # 页面 —— 一个目录一个页面 │ ├── index.tsx │ ├── index.config.ts │ └── index.css ├── components/ # 通用组件 │ └── {component-name}/ │ └── index.tsx ├── lib/ # 工具函数、hooks ├── types/ # 全局类型声明 ├── server/ # NestJS 后端 └── config/ # Taro 构建配置


## 3. 目录组织(NestJS 后端)

src/server/src/ ├── modules/{name}/ # 一个模块一个目录 │ ├── {name}.module.ts │ ├── {name}.controller.ts │ ├── {name}.service.ts │ ├── dto/ │ └── entities/ ├── common/ # 共享:拦截器、守卫、管道 └── main.ts


## 4. 命名风格

**TypeScript**
- 组件:PascalCase —— `ErrorCard`
- 函数/变量:camelCase —— `getUserProfile`
- 常量:UPPER_SNAKE —— `MAX_PAGE_SIZE`
- 接口/类型:PascalCase —— `ErrorEntry`

**Python**
- 类:PascalCase —— `DataLoader`
- 函数/变量:snake_case —— `load_dataset`
- 常量:UPPER_SNAKE —— `BATCH_SIZE`

## 5. 导入顺序(TypeScript

  1. 第三方库
  2. Taro 相关
  3. 项目内部(@/ 别名)
  4. 相对路径
  5. 样式文件

## 6. 组件规范

- 优先使用函数组件,不用 class 组件
- 一个文件只有一个 export default 组件
- 组件 props 必须声明类型接口
- 跨端兼容:避免使用 `document`、`window`(用 Taro API 代替)

## 7. API 调用规范

- 前端统一使用 `@/network.ts` 中的 `Network.request`,不要直接调用 `Taro.request`
- 后端Controller 只做参数校验和路由,业务逻辑放在 Service
- API 响应统一使用 Envelope 格式 `{ code, msg, data }`

## 8. 不能做的事

- 不要在 `src/` 下写测试文件(测试在 `tests/`
- 不要引入未经 package.json 声明的依赖
- 不要在组件中硬编码后端地址(用 `PROJECT_DOMAIN` 全局变量)
EOF

cat > .ai/prompts/coding/doc-template.md << 'EOF'
# Dev AI 文档模板

下面三个模板用于 Dev AI 在 `review/{task_id}/` 下产出标准化文件。

---

## A. impact.md 模板(变更影响范围)

```markdown
# {TASK_ID} - 变更影响范围

## 修改的文件
| 文件路径 | 修改类型 | 影响等级 |
|---------|---------|---------|
| projects/P01_errlens_app/src/server/src/modules/auth/auth.service.ts | 新增 | HIGH |
| projects/P01_errlens_app/src/server/src/modules/auth/dto/login.dto.ts | 新增 | MEDIUM |

> 影响等级:HIGH=核心逻辑变更 | MEDIUM=新增文件 | LOW=注释/格式

## 影响的功能模块
- [x] 用户认证模块
- [ ] 错题管理模块(无影响)

## 需要回归测试的场景
- 场景1: 用户登录成功流程
- 场景2: 密码错误返回 401
- 场景3: Token 过期后刷新

## 环境依赖变更
- 新增依赖: bcrypt, @nestjs/jwt
- 数据库迁移: 新增 users 表

要点:

  • 修改的文件 必须使用从仓库根目录开始的完整路径
  • 影响等级要实事求是,不要全写 HIGH
  • 需要回归测试的场景 要写用户视角的场景,不是代码内部细节

B. acceptance.md 模板(验收标准)

# {TASK_ID} - 验收标准

## 功能验收
- [ ] 用户可以注册新账户(邮箱+密码)
- [ ] 密码强度不足时提示明确错误信息
- [ ] 登录成功返回有效 JWT Token

## 非功能验收
- [ ] API 响应时间 < 200ms
- [ ] 密码使用 bcrypt 加密存储
- [ ] JWT Token 有效期 24 小时

## 测试覆盖要求
- 单元测试覆盖率: >= 80%
- 集成测试覆盖率: >= 60%
- E2E 测试场景: >= 3 个

## 验收通过条件
- 所有功能点验证通过
- 测试覆盖率达标
- 无重大安全漏洞

要点:

  • 功能验收用「用户可以…」句式,让 QA AI 和人类都能看懂
  • 每个功能点对应 task.md 里的一项交付物
  • 非功能验收写具体的可测量指标,不要写「性能好」「代码整洁」

C. 没有 task.md 模板

task.md 由人类负责人创建,Dev AI 只读不写。Dev AI 如需补充技术细节,写在 impact.md 的「技术备注」段落中,不要直接修改 task.md。 EOF

cat > .ai/prompts/testing/bug-report.md << 'EOF'

QA AI Bug 报告模板

以下模板用于 QA AI 在 review/{task_id}/feedback/round{round}.md 中提交测试反馈。


模板

# {TASK_ID} - 第 {N} 轮测试反馈

## 基本信息
- 测试时间: YYYY-MM-DD
- 测试项目: P01_errlens_app / P02_errlens_training / P03_errlens_web
- 测试环境: Node 20.x / Python 3.10

## 测试结果概览
| 指标 | 数值 |
|------|------|
| 测试用例总数 | N |
| 通过 | N |
| 失败 | N |
| 跳过 | N |
| 代码覆盖率 | XX% |

## 失败用例清单

### Bug #1: {简短标题}
- **严重程度**: BLOCKER / HIGH / MEDIUM / LOW
- **涉及文件**: `projects/...`(完整路径)
- **测试场景**: 用户登录时输入正确密码
- **预期结果**: 返回 200 和 JWT Token
- **实际结果**: 返回 500 Internal Server Error
- **复现步骤**:
  1. POST /api/auth/login
  2. body: {"email": "test@example.com", "password": "correct"}
- **建议修复**: 检查 auth.service.ts 第 42 行的异常处理

### Bug #2: ...
(同上格式)

## 改进建议(非 Bug
- 建议 1: 登录接口缺少限流保护
- 建议 2: 密码重置的邮件模板可以更友好

## 下一步
- [ ] Dev AI 修复上述 Bug 后,QA AI 进行第 {N+1} 轮测试
- [ ] 如第 3 轮仍未通过,升级给人类负责人裁决

严重程度定义

级别 含义 举例
BLOCKER 核心功能不可用,无法继续测试 登录接口直接崩溃、数据库连不上
HIGH 功能逻辑错误,用户无法正常使用 登录成功但不返回 Token
MEDIUM 功能可用但与预期有偏差 返回的日期格式不对、错误码不对
LOW 不影响功能的瑕疵 提示文案不友好、缺少空值校验

规则

  1. 每轮反馈用新文件round1.mdround2.mdround3.md
  2. 最多 3 轮:第 3 轮仍有 BLOCKER/HIGH Bug → 在报告中标注「建议人类负责人介入」
  3. 涉及文件必须用完整路径:从仓库根目录开始,方便 Dev AI 定位
  4. 改进建议不要超过 3 条:聚焦最重要的 EOF

7. 创建示例任务

cat > review/active/P01-001/task.md << 'EOF'

P01-001 - 示例任务

任务信息

  • 任务编号:P01-001
  • 项目:P01_app
  • 创建时间:2026-05-22
  • 负责人:Dev AI
  • 状态:TODO

任务描述

这是一个示例任务,展示任务单的结构。实际使用时请替换为真实需求。

交付物

  • projects/P01_app/src/ 下的业务代码
  • projects/P01_app/docs/ 下的技术文档 EOF

cat > review/active/P01-001/acceptance.md << 'EOF'

P01-001 - 验收标准

功能验收

  • 功能点 1
  • 功能点 2

非功能验收

  • API 响应时间 < 200ms

测试覆盖要求

  • 单元测试覆盖率: >= 80%

验收通过条件

  • 所有功能点验证通过
  • 测试覆盖率达标 EOF

cat > review/active/P01-001/impact.md << 'EOF'

P01-001 - 变更影响范围

修改的文件

文件路径 修改类型 影响等级
projects/P01_app/src/example.ts 新增 HIGH

影响的功能模块

  • 示例模块

需要回归测试的场景

  • 场景1: 示例功能正常使用

环境依赖变更

  • 无 EOF

cat > review/active/P01-001/feedback/round1.md << 'EOF'

P01-001 - 第一轮测试反馈

基本信息

  • 测试时间: 2026-05-22
  • 测试项目: P01_app
  • 测试环境: 待配置

测试结果概览

指标 数值
测试用例总数 0
通过 0
失败 0
跳过 0
代码覆盖率 0%

反馈

待 Dev AI 完成开发后执行测试 EOF

8. 创建 P01-002 示例任务(占位)

mkdir -p review/active/P01-002/feedback

cat > review/active/P01-002/task.md << 'EOF'

P01-002 - 待创建

任务信息

  • 任务编号:P01-002
  • 项目:P01_app
  • 状态:TODO

任务描述

待人类负责人创建 EOF

cat > review/active/P01-002/acceptance.md << 'EOF'

P01-002 - 验收标准

待 Dev AI 补充 EOF

cat > review/active/P01-002/impact.md << 'EOF'

P01-002 - 变更影响范围

待 Dev AI 补充 EOF

echo "# feedback" > review/active/P01-002/feedback/README.md

9. 创建 CROSS-001 跨项目任务(占位)

mkdir -p review/active/CROSS-001/feedback

cat > review/active/CROSS-001/task.md << 'EOF'

CROSS-001 - 跨项目任务

任务信息

  • 任务编号:CROSS-001
  • 项目:多个项目
  • 状态:TODO

任务描述

待人类负责人创建 EOF

cat > review/active/CROSS-001/acceptance.md << 'EOF'

CROSS-001 - 验收标准

待 Dev AI 补充 EOF

cat > review/active/CROSS-001/impact.md << 'EOF'

CROSS-001 - 变更影响范围

待 Dev AI 补充 EOF

echo "# feedback" > review/active/CROSS-001/feedback/README.md

10. 创建项目环境文件

cat > projects/P01_app/ENVIRONMENT.md << 'EOF'

P01_app - 环境准备

依赖

  • Node.js >= 20.x
  • pnpm >= 9.0.0

安装

pnpm install

运行

pnpm dev EOF

cat > projects/P02_training/ENVIRONMENT.md << 'EOF'

P02_training - 环境准备

依赖

  • Python >= 3.10
  • PyTorch >= 2.0
  • CUDA >= 11.8 (GPU训练)

安装

pip install -r requirements.txt EOF

11. 创建占位文件

echo "# src" > projects/P01_app/src/README.md echo "# tests" > projects/P01_app/tests/README.md echo "# docs" > projects/P01_app/docs/README.md

echo "# src" > projects/P02_training/src/README.md echo "# tests" > projects/P02_training/tests/README.md echo "# docs" > projects/P02_training/docs/README.md

echo "# scripts" > shared/scripts/README.md echo "# templates" > shared/templates/README.md echo "# utils" > shared/utils/README.md

echo "# test-results" > reports/test-results/README.md echo "# quality-reports" > reports/quality-reports/README.md

echo "# workflows" > .github/workflows/README.md

echo "# 2026-Q2 archived tasks" > review/archived/2026-Q2/README.md

echo " AI 协作框架创建成功!" echo "📖 请阅读 AGENTS.md 了解协作规则" echo "🚀 在 review/active/ 下创建你的第一个真实任务开始开发"


## 使用场景

**何时调用此 skill:**
- ✅ 启动新的 AI 辅助编程项目
- ✅ 需要建立标准化的 AI 协作流程
- ✅ 团队开始使用"1 人+2AI"模式

**不适用场景:**
- ❌ 纯人工开发项目
- ❌ 已有现成的协作框架

## 后续步骤

skill 执行后:
1. 阅读 `AGENTS.md` 了解协作规则和权限体系
2. 检查 `review/active/P01-001/` 示例任务结构
3. 根据实际需求修改 `AGENTS.md` 中的技术栈说明
4. 在 `review/active/` 下创建第一个真实任务
5. 开始协作开发

---

**Version**: 2.0  
**Created**: 2026-05-23  
**Updated**: 2026-05-23  
**Based On**: ErrLens AI Programming Project  
**Changes from v1**: 
- 权限体系从 ✅/❌ 升级为 R/W/RW/- 四态
- 新增 read_only_paths、forbidden_paths 配置
- 工作流从线性升级为 4 阶段 + retry + escalation
- 新增提示词模板(code-style.md、doc-template.md、bug-report.md
- JSON 配置新增 description 语义定义
- 目录结构新增 src/server/、src/config/、src/types/ 子目录