Files
ai_soc_sw/AGENTS.md
T
tupingr 3d43cd87d5 feat: 项目架构重构 - hwd32h757芯片成片测试及SDK开发
- 从errlens模板(3角色)重构为1人+Arch AI+Worker AI(2角色)
- 去掉review仓库/QA AI/Dev AI分离,Worker AI统一负责开发+测试
- 新增33个功能单元目录(Test/cases/),按P0-P6七阶段bring-up
- 新增SDK驱动层骨架(Drivers/CMSIS/HAL_Driver/BSP)
- Arch AI/Worker AI角色不绑定特定AI平台,任何AI可随时接手
- 5个ADR:测试驱动SDK演进、HAL/LL双层、分阶段bring-up、单仓库、角色可替换
- 参考errlens的分层信息架构:dashboard→card→task,token预算控制
2026-05-27 16:37:52 +08:00

112 lines
3.5 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# AI 角色定义与权限约定
> **如果你是 AI,请直接跳转到你的角色入口:**
> - Arch AI → `dashboard.md` 全文
> - Worker AI → `.ai/roles/worker/card.md` → 对应 `.ai/tasks/active/` 任务文件
>
> **如果你是人类**,请看 `dashboard.md` 顶部「人类区」。
>
> 本文档是权限矩阵的**唯一权威参考**。角色工作台中的权限描述为摘要,如有冲突以本文档为准。
---
## 团队架构
`1 人类 + 2 AI` 协作模式:
- **Arch AI** — 需求分析、架构设计、技术选型、任务分解、质量审查、勘误决策
- **Worker AI** — 代码编写、测试执行、文档生成、LL/HAL 驱动提炼
- **人类** — 需求输入、最终决策、硬件验证、成果验收
**核心理念**:测试驱动 SDK 演进。寄存器测试是 SDK 的第一用户,测试代码直接提炼为 LL 层驱动。
---
## 工作流
```
需求分析(Arch) → 架构设计(Arch) → 任务拆解(Arch)
→ 开发实现(Worker) → 自测(Worker) → 人类硬件验证
→ 勘误记录(Worker) → LL提炼(Worker) → HAL封装(Worker)
Bug修复(Worker, 最多3轮)
```
缺陷修复循环:最多 3 轮。第 3 轮仍有 BLOCKER → 升级给人类 + Arch AI 裁决。
---
## 角色职责
### Arch AI
- 可写:架构文档、验收标准、任务定义、知识库、共享资源、开发工具、SDK 设计文档
- 只读:测试代码、测试报告、勘误详情
- 指导 Worker AI 工作,分配任务队列,审查产出质量
### Worker AI
- 可写:业务代码、测试代码、测试报告、技术文档、开发工具、勘误记录、LL/HAL 驱动代码
- 只读:AI 配置、任务定义(不可修改 task 内容)
- 禁止:.ai/ 目录结构修改、dashboard.md 修改
### 人类
- 全部权限,但主要行使:需求定义、架构决策、硬件验证、成果验收
---
## 目录权限矩阵
> 图例:`-` = 禁止 `R` = 只读 `W` = 可写(含读) `RW` = 读写
| 目录路径 | Arch AI | Worker AI | 人类 |
|---------|---------|-----------|------|
| `.ai/` | `R` | `-` | `RW` |
| `dashboard.md` | `RW` | `R` | `RW` |
| `DECISIONS.md` | `RW` | `R` | `RW` |
| `Drivers/CMSIS/` | `RW` | `RW` | `RW` |
| `Drivers/HWD32H757_HAL_Driver/` | `R` | `RW` | `RW` |
| `Drivers/BSP/` | `R` | `RW` | `RW` |
| `Test/` | `R` | `RW` | `RW` |
| `Test/errata/` | `RW` | `RW` | `RW` |
| `Tools/` | `RW` | `RW` | `RW` |
| `docs/` | `RW` | `RW` | `R` |
| `Projects/` | `R` | `RW` | `RW` |
优先级:`forbidden > read_only > allowed`。未出现在表中的路径默认禁止所有 AI。
---
## 命名规范
### 任务编号
- 开发任务:`D{阶段号}-{序号}`,如 `D0-001`P0阶段第1个任务)
- 测试任务:`T{阶段号}-{序号}`,如 `T0-001`
### 分支命名
```
feature/D0-001-short-desc
bugfix/D0-001-short-desc
test/T0-001-short-desc
```
### 提交信息
```
feat(D0-001): 简短描述
fix(D0-001): 简短描述
docs(D0-001): 简短描述
test(D0-001): 简短描述
errata: GPIOx_BSRR 写入偶发失效 (D0-003)
```
---
## AI 配置文件索引
| 文件 | 说明 |
|------|------|
| `.ai/principles.md` | 设计原则 + 上下文管理规则 |
| `.ai/roles/{arch,worker}/card.md` | AI 角色身份卡 |
| `.ai/phases/INDEX.md` | 阶段索引 + 切换规则 |
| `.ai/knowledge/decisions.md` | 架构决策记录 (ADR) |
| `.ai/knowledge/lessons.md` | 经验教训 |
| `.ai/knowledge/patterns.md` | 可复用模式 |
| `.ai/tasks/templates/` | Task 模板 |