3.1 KiB
3.1 KiB
模板同步边界定义
定义哪些文件属于"框架层"(跨项目复用),哪些属于"项目层"(项目特有)。 框架层导出/初始化通过
project-initSkill 按需执行(ADR-013)。
规则
框架层 = 可以复用的结构和逻辑(导出)
项目层 = 某个具体项目的内容和数据(不导出)
文件分类
框架层(导出)
| 文件/目录 | 说明 |
|---|---|
AGENTS.md |
AI 角色定义 + 权限矩阵 + 工作流 + 命名规范 |
dashboard.md |
控制面板结构(人类+Arch AI 入口) |
DECISIONS.md |
决策入口结构 |
.ai/principles.md |
架构设计原则 + 上下文管理硬约束 |
.ai/config/*.json |
AI 配置(权限路径、职责定义、工作流) |
.ai/prompts/ |
提示词模板(架构、编码、测试) |
.ai/roles/README.md |
角色工作台说明 |
.ai/roles/{arch,dev,qa}/card.md |
角色身份卡(身份、权限、启动流程) |
.ai/phases/INDEX.md |
阶段索引 + 切换规则 |
.ai/knowledge/patterns.md |
可复用模式 |
.ai/knowledge/lessons.md |
框架级经验教训 |
.ai/tasks/templates/ |
Task 模板(Coder + Tester) |
.trae/skills/ |
Skill 定义 |
docs/使用手册.md |
使用手册(框架层) |
ENVIRONMENT.md |
开发环境结构(框架层) |
TEMPLATE.yaml |
模板变量配置 |
SYNC.md |
本文档 |
项目层(不导出)
| 文件/目录 | 说明 |
|---|---|
.ai/tasks/active/ |
活跃 task 文件(项目特定) |
.ai/tasks/completed/ |
已完成 task(项目特定) |
.ai/phases/phase-*/goal.md |
阶段目标(项目特定) |
.ai/phases/phase-*/scope.md |
阶段范围(项目特定) |
.ai/phases/phase-*/architecture.md |
架构快照(项目特定) |
.ai/phases/phase-*/decisions.md |
阶段决策(项目特定) |
.ai/phases/phase-*/completion.md |
完成状态(项目特定) |
.ai/knowledge/decisions.md |
ADR 全文(项目特定) |
.ai/knowledge/journal/ |
每日日志(项目特定) |
.ai/archive/ |
归档文件 |
docs/01_*/ ~ docs/06_*/ |
项目文档(PRD、架构、数据模型等) |
docs/share/ |
对外分享内容 |
projects/ |
项目代码 |
reports/ |
测试报告 |
使用方式
通过 project-init Skill 执行,而非脚本。
Export(导出框架):
在 Claude Code 中说「导出框架」→ Skill 读取 SYNC.md + TEMPLATE.yaml → 复制框架层文件 → 替换项目值为 {{变量}} → 输出到 ../project-template/
Init(初始化新项目):
在 Claude Code 中说「套这个框架开新项目」→ Skill 询问新项目信息 → 替换 {{变量}} 为新值 → 创建新项目目录
Skill 位置: .trae/skills/project-init/SKILL.md
原则
- Skill 优于脚本 — AI 是执行者时,语义描述优于硬编码文件列表(ADR-013)
- 项目层隔离 — 任务、日志、代码、决策不受影响
- 边界定义是长期资产 — SYNC.md 定义「什么属于框架」,独立于执行方式