architext 0.0.4 → 0.0.6
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +55 -1
- package/README.md +93 -14
- package/README.zh-CN.md +92 -14
- package/dist/index.js +53 -39
- package/dist/templates/en/briefs/_base.md +53 -13
- package/dist/templates/en/briefs/_modules.md +31 -4
- package/dist/templates/en/docs/global/error_memory.json +40 -0
- package/dist/templates/en/docs/global/map.json +46 -90
- package/dist/templates/en/{rules/04_cli_tools.md → docs/global/references/cli_reference.md} +6 -13
- package/dist/templates/en/{rules/02_tech_stack.md → docs/global/tech_stack.md} +7 -18
- package/dist/templates/en/docs/global/vision.md +1 -1
- package/dist/templates/en/docs/prompts/audit.md +80 -94
- package/dist/templates/en/docs/prompts/code.md +99 -89
- package/dist/templates/en/docs/prompts/edit.md +61 -51
- package/dist/templates/en/docs/prompts/fix.md +59 -43
- package/dist/templates/en/docs/prompts/help.md +23 -31
- package/dist/templates/en/docs/prompts/inherit.md +97 -117
- package/dist/templates/en/docs/prompts/map.md +48 -69
- package/dist/templates/en/docs/prompts/plan.md +141 -240
- package/dist/templates/en/docs/prompts/recover.md +19 -34
- package/dist/templates/en/docs/prompts/ref.md +43 -138
- package/dist/templates/en/docs/prompts/remove.md +63 -110
- package/dist/templates/en/docs/prompts/revise.md +71 -106
- package/dist/templates/en/docs/prompts/scope.md +78 -117
- package/dist/templates/en/docs/prompts/script.md +102 -0
- package/dist/templates/en/docs/prompts/start.md +98 -132
- package/dist/templates/en/docs/prompts/ui.md +113 -0
- package/dist/templates/en/docs/shared/ui-redlines.md +7 -0
- package/dist/templates/en/docs/templates/spec.template.md +1 -1
- package/dist/templates/en/docs/templates/ui.template.md +8 -8
- package/dist/templates/en/rules/00_system.md +268 -117
- package/dist/templates/en/rules/90_custom_rules.md +3 -1
- package/dist/templates/en/skills/archi-data-sync/SKILL.md +37 -23
- package/dist/templates/en/skills/archi-decompose-roadmap/SKILL.md +138 -240
- package/dist/templates/en/skills/archi-design-patterns/SKILL.md +6 -1
- package/dist/templates/en/skills/archi-feature-relations/SKILL.md +10 -6
- package/dist/templates/en/skills/archi-interview-protocol/SKILL.md +2 -2
- package/dist/templates/en/skills/archi-plan-options/SKILL.md +77 -301
- package/dist/templates/en/skills/archi-silent-audit/SKILL.md +24 -25
- package/dist/templates/en/skills/archi-ui-wireframe/SKILL.md +175 -305
- package/dist/templates/icon.svg +16 -0
- package/dist/templates/zh/briefs/_base.md +56 -17
- package/dist/templates/zh/briefs/_modules.md +28 -1
- package/dist/templates/zh/docs/global/error_memory.json +40 -0
- package/dist/templates/zh/docs/global/map.json +39 -109
- package/dist/templates/zh/{rules/04_cli_tools.md → docs/global/references/cli_reference.md} +0 -7
- package/dist/templates/zh/{rules/02_tech_stack.md → docs/global/tech_stack.md} +9 -20
- package/dist/templates/zh/docs/global/vision.md +1 -1
- package/dist/templates/zh/docs/prompts/audit.md +43 -57
- package/dist/templates/zh/docs/prompts/code.md +66 -56
- package/dist/templates/zh/docs/prompts/edit.md +52 -42
- package/dist/templates/zh/docs/prompts/fix.md +39 -29
- package/dist/templates/zh/docs/prompts/help.md +13 -21
- package/dist/templates/zh/docs/prompts/inherit.md +67 -86
- package/dist/templates/zh/docs/prompts/map.md +28 -50
- package/dist/templates/zh/docs/prompts/plan.md +100 -199
- package/dist/templates/zh/docs/prompts/recover.md +9 -24
- package/dist/templates/zh/docs/prompts/ref.md +11 -106
- package/dist/templates/zh/docs/prompts/remove.md +39 -74
- package/dist/templates/zh/docs/prompts/revise.md +47 -88
- package/dist/templates/zh/docs/prompts/scope.md +52 -91
- package/dist/templates/zh/docs/prompts/script.md +102 -0
- package/dist/templates/zh/docs/prompts/start.md +75 -110
- package/dist/templates/zh/docs/prompts/ui.md +113 -0
- package/dist/templates/zh/docs/shared/ui-redlines.md +7 -0
- package/dist/templates/zh/docs/templates/spec.template.md +1 -1
- package/dist/templates/zh/docs/templates/ui.template.md +8 -8
- package/dist/templates/zh/rules/00_system.md +252 -131
- package/dist/templates/zh/rules/90_custom_rules.md +2 -1
- package/dist/templates/zh/skills/archi-data-sync/SKILL.md +27 -13
- package/dist/templates/zh/skills/archi-decompose-roadmap/SKILL.md +133 -235
- package/dist/templates/zh/skills/archi-design-patterns/SKILL.md +6 -1
- package/dist/templates/zh/skills/archi-feature-relations/SKILL.md +6 -2
- package/dist/templates/zh/skills/archi-interview-protocol/SKILL.md +2 -2
- package/dist/templates/zh/skills/archi-plan-options/SKILL.md +77 -301
- package/dist/templates/zh/skills/archi-silent-audit/SKILL.md +4 -5
- package/dist/templates/zh/skills/archi-ui-wireframe/SKILL.md +174 -301
- package/package.json +3 -1
- package/dist/templates/en/rules/01_workflow.md +0 -93
- package/dist/templates/en/rules/03_data_governance.md +0 -102
- package/dist/templates/en/rules/99_context_glue.md +0 -53
- package/dist/templates/zh/rules/01_workflow.md +0 -94
- package/dist/templates/zh/rules/03_data_governance.md +0 -133
- package/dist/templates/zh/rules/99_context_glue.md +0 -53
|
@@ -6,7 +6,7 @@
|
|
|
6
6
|
|
|
7
7
|
## 项目概述
|
|
8
8
|
|
|
9
|
-
**项目名称**:
|
|
9
|
+
**项目名称**:
|
|
10
10
|
**一句话描述**: [项目是什么、为谁服务、解决什么问题]
|
|
11
11
|
**问题陈述**: [目标用户遇到的核心痛点?现有方案哪里不足?]
|
|
12
12
|
|
|
@@ -18,25 +18,40 @@
|
|
|
18
18
|
|
|
19
19
|
---
|
|
20
20
|
|
|
21
|
-
##
|
|
21
|
+
## 功能需求
|
|
22
22
|
|
|
23
|
-
>
|
|
24
|
-
>
|
|
23
|
+
> 必须实现的核心能力,描述"做什么"而非"怎么做"。
|
|
24
|
+
> AI 会据此分解为具体的实现任务,此处只需明确业务目标。
|
|
25
25
|
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
26
|
+
-
|
|
27
|
+
-
|
|
28
|
+
-
|
|
29
|
+
|
|
30
|
+
---
|
|
31
|
+
|
|
32
|
+
## 业务流程
|
|
33
|
+
|
|
34
|
+
> 如果你的项目有明确的用户旅程或核心工作流,在此描述。
|
|
35
|
+
> 不需要画图——用文字描述步骤即可,AI 会据此理解系统行为。
|
|
36
|
+
> 没有的话留空,AI 会从核心功能中推导。
|
|
37
|
+
|
|
38
|
+
<!-- 写法参考:
|
|
39
|
+
### [流程名称]
|
|
40
|
+
1. 用户 [动作] → 系统 [响应]
|
|
41
|
+
2. 用户 [动作] → 系统 [响应]
|
|
42
|
+
3. ...
|
|
43
|
+
-->
|
|
29
44
|
|
|
30
45
|
---
|
|
31
46
|
|
|
32
47
|
## 已有设计决策
|
|
33
48
|
|
|
34
|
-
>
|
|
49
|
+
> 如果你对某些功能/页面/流程已有明确想法,在此描述。AI 在后续 plan 阶段会以此为准,不会推翻。
|
|
35
50
|
> 没有的话留空即可。
|
|
36
51
|
>
|
|
37
52
|
> 写法参考:
|
|
38
|
-
> - **[
|
|
39
|
-
> -
|
|
53
|
+
> - **[功能/页面名]**: 描述具体行为、流程、约束
|
|
54
|
+
> - 可附截图/草图(见下方"设计资产")
|
|
40
55
|
|
|
41
56
|
---
|
|
42
57
|
|
|
@@ -62,13 +77,20 @@
|
|
|
62
77
|
|
|
63
78
|
## 工程规范
|
|
64
79
|
|
|
65
|
-
>
|
|
80
|
+
> 已有的工程约定。不确定的留空,AI 会基于技术栈推荐合理默认值。
|
|
66
81
|
|
|
67
82
|
**仓库形态**: [Monorepo (Turborepo/Nx/pnpm workspaces) / 单体仓库]
|
|
68
83
|
**架构模式**: [例:MFA / FSD / Clean Architecture / 分层架构 / 无偏好(AI 推荐)]
|
|
69
84
|
**目录结构**: [已有明确结构 → 简述关键目录 / 无(AI 基于架构模式生成)]
|
|
70
85
|
**分支策略**: [例:Trunk-based / Git Flow / GitHub Flow]
|
|
71
86
|
**Commit 规范**: [例:Conventional Commits (feat/fix/chore) / 自定义 → 简述]
|
|
87
|
+
|
|
88
|
+
**AI Git 工作流** (AI 执行 `/archi.code` 时的提交约定):
|
|
89
|
+
- **自动提交**: [是 - 每个 Task 完成后自动 git commit / 否 - 仅生成 commit message,用户手动提交]
|
|
90
|
+
- **提交粒度**: [Per Task - 每个 Task 一个 commit / Per Phase - 每个 Phase 一个 commit / 按需]
|
|
91
|
+
- **分支策略**: [直接在 main 分支工作 / 每个 Task 新建分支 `feat/{task-id}`]
|
|
92
|
+
- **自动推送**: [是 / 否]
|
|
93
|
+
|
|
72
94
|
**测试偏好**: [例:Vitest / Jest / pytest / 无特殊要求]
|
|
73
95
|
|
|
74
96
|
---
|
|
@@ -78,14 +100,33 @@
|
|
|
78
100
|
> AI 需要知道哪些东西已经存在——避免重复造轮子或做出冲突决策。
|
|
79
101
|
|
|
80
102
|
**项目起点**: [全新项目 / 基于已有代码库(简述现状和技术债)]
|
|
81
|
-
**设计资产**: [Figma 链接 / 设计稿截图 / 无(AI 自行设计)]
|
|
82
|
-
**品牌规范**: [已有 Logo/配色/字体 → 描述或附链接 / 无]
|
|
83
103
|
**已有 API/后端**: [接口文档链接 / 简述可用端点 / 无(需从零搭建)]
|
|
84
104
|
**第三方服务**: [已确定使用的服务,例:Auth0, Stripe, AWS S3, Resend...]
|
|
85
105
|
**现有数据**: [已有数据库/数据源?格式?需要迁移?/ 无]
|
|
86
106
|
|
|
87
107
|
---
|
|
88
108
|
|
|
109
|
+
## 设计资产
|
|
110
|
+
|
|
111
|
+
> 为 AI 提供视觉/设计输入,直接影响项目的 UI 和架构决策质量。
|
|
112
|
+
> 两种方式提供文件:
|
|
113
|
+
> 1. **本地文件**: 将文件放入 `brief-assets/` 目录,按下方格式引用
|
|
114
|
+
> 2. **外部链接**: 直接填写 URL
|
|
115
|
+
>
|
|
116
|
+
> 引用格式: `- [语义标签] ./brief-assets/文件名`
|
|
117
|
+
>
|
|
118
|
+
> 写法参考:
|
|
119
|
+
> - [竞品参考-首页] ./brief-assets/linear-dashboard.png
|
|
120
|
+
> - [我的草图] ./brief-assets/sketch-v1.png
|
|
121
|
+
> - [品牌色板] ./brief-assets/brand-colors.pdf
|
|
122
|
+
> - [API 文档] ./brief-assets/api-spec.yaml
|
|
123
|
+
> - [数据库 Schema] ./brief-assets/schema.sql
|
|
124
|
+
|
|
125
|
+
**设计稿/截图**: [按上方格式引用本地文件 / Figma 链接 / 无(AI 自行设计)]
|
|
126
|
+
**品牌规范**: [已有 Logo/配色/字体 → 引用文件或描述 / 无]
|
|
127
|
+
|
|
128
|
+
---
|
|
129
|
+
|
|
89
130
|
<!-- @slot:style -->
|
|
90
131
|
|
|
91
132
|
## 边界与约束
|
|
@@ -94,7 +135,6 @@
|
|
|
94
135
|
- [例:本期不做国际化 / 不做移动端适配 / 不做付费功能]
|
|
95
136
|
|
|
96
137
|
**硬性约束**:
|
|
97
|
-
- **时间**: [例:4 周 MVP / 无硬性 deadline]
|
|
98
138
|
- **兼容性**: [例:Chrome 90+ / Node 18+ / iOS 15+]
|
|
99
139
|
- **性能**: [例:首屏 < 2s / API P99 < 500ms / 无特殊要求]
|
|
100
140
|
- **合规/无障碍**: [例:WCAG 2.1 AA / GDPR / 无]
|
|
@@ -105,12 +145,11 @@
|
|
|
105
145
|
|
|
106
146
|
| 参考项目 | 参考维度 |
|
|
107
147
|
|:---|:---|
|
|
108
|
-
| [例:Linear] | [
|
|
148
|
+
| [例:Linear] | [交互体验、功能管理逻辑] |
|
|
109
149
|
| | |
|
|
110
150
|
|
|
111
151
|
---
|
|
112
152
|
|
|
113
153
|
## 补充说明
|
|
114
154
|
|
|
115
|
-
>
|
|
116
|
-
|
|
155
|
+
> 任何上述未涵盖的信息:背景故事、特殊需求、已有决策的原因等。
|
|
@@ -5,10 +5,37 @@
|
|
|
5
5
|
<!-- @tech:data -->
|
|
6
6
|
**数据库**: [例:PostgreSQL / MongoDB / SQLite]
|
|
7
7
|
**ORM / Query Builder**: [例:Prisma / Drizzle / TypeORM]
|
|
8
|
+
|
|
9
|
+
### 数据模型草案
|
|
10
|
+
|
|
11
|
+
> 如果你已经知道核心数据实体和关系,在此描述。不需要写完整 Schema——列出实体名和关键字段即可。
|
|
12
|
+
> AI 会在 `/archi.plan` 阶段据此生成详细的数据模型,此处只需明确"有什么数据"。
|
|
13
|
+
> 没有的话留空,AI 会从核心功能中推导。
|
|
14
|
+
|
|
15
|
+
<!-- 写法参考:
|
|
16
|
+
- **用户 (User)**: email, name, role (admin/user), avatar
|
|
17
|
+
- **文章 (Post)**: title, content, status (draft/published), author → User
|
|
18
|
+
- **评论 (Comment)**: body, author → User, post → Post
|
|
19
|
+
- User 1:N Post, Post 1:N Comment
|
|
20
|
+
-->
|
|
21
|
+
|
|
8
22
|
<!-- @end -->
|
|
9
23
|
|
|
10
24
|
<!-- @tech:api -->
|
|
11
25
|
**API 风格**: [例:RESTful / GraphQL / gRPC / tRPC]
|
|
26
|
+
|
|
27
|
+
### 已有 API 端点
|
|
28
|
+
|
|
29
|
+
> 如果已有后端 API(自建或第三方),在此列出核心端点。也可将完整文档放入 `brief-assets/`。
|
|
30
|
+
> 没有的话留空。
|
|
31
|
+
|
|
32
|
+
<!-- 写法参考:
|
|
33
|
+
- `POST /auth/login` → 返回 JWT token
|
|
34
|
+
- `GET /users/:id` → 用户详情
|
|
35
|
+
- `POST /posts` → 创建文章(需认证)
|
|
36
|
+
- 完整文档: [API 文档] ./brief-assets/api-spec.yaml
|
|
37
|
+
-->
|
|
38
|
+
|
|
12
39
|
<!-- @end -->
|
|
13
40
|
|
|
14
41
|
<!-- @tech:cli -->
|
|
@@ -44,7 +71,7 @@
|
|
|
44
71
|
|
|
45
72
|
### 视觉参考 (Visual Reference)
|
|
46
73
|
|
|
47
|
-
> 为 AI 提供审美输入,直接影响 `
|
|
74
|
+
> 为 AI 提供审美输入,直接影响 `screens/` 目录下各屏幕原型的视觉质量。
|
|
48
75
|
> 以下任填一项即有效,填得越多 AI 越能还原你的期望风格。
|
|
49
76
|
|
|
50
77
|
**竞品/灵感截图**: [可粘贴图片 / Figma 链接 / URL]
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
{
|
|
2
|
+
"errorPatterns": {
|
|
3
|
+
"_comment": "错误模式:{ id: 唯一标识, watchFor: [执行前需警惕的场景], matchWhen: [报错后匹配的关键词], cause: 根本原因, solution: 解决方案, lesson: 教训/原则 }。AI解决错误后在此追加",
|
|
4
|
+
"examples": [
|
|
5
|
+
{
|
|
6
|
+
"id": "build-vite-config-missing",
|
|
7
|
+
"watchFor": ["运行 npm run build", "修改 vite.config.ts"],
|
|
8
|
+
"matchWhen": ["ENOENT", "vite.config", "Cannot find module"],
|
|
9
|
+
"cause": "配置文件被误删或 node_modules 未安装",
|
|
10
|
+
"solution": "检查文件是否存在,运行 npm install 重装依赖",
|
|
11
|
+
"lesson": "修改配置前备份,定期确认 node_modules 完整"
|
|
12
|
+
},
|
|
13
|
+
{
|
|
14
|
+
"id": "type-import-assertion-deprecated",
|
|
15
|
+
"watchFor": ["导入 JSON 文件"],
|
|
16
|
+
"matchWhen": ["assert", "SyntaxError", "import", "type"],
|
|
17
|
+
"cause": "Node.js 18+ 废弃了 import assert 语法,改用 import attributes",
|
|
18
|
+
"solution": "assert { type: 'json' } 改为 with { type: 'json' }",
|
|
19
|
+
"lesson": "关注 Node.js 版本更新,import JSON 时确认语法版本"
|
|
20
|
+
}
|
|
21
|
+
]
|
|
22
|
+
},
|
|
23
|
+
"checkpoints": {
|
|
24
|
+
"_comment": "检查点:{ before: 执行前匹配的操作描述, check: [要检查的 errorPatterns.id 列表] }。AI根据 watchFor 场景自动生成",
|
|
25
|
+
"examples": [
|
|
26
|
+
{
|
|
27
|
+
"before": "运行 npm run build",
|
|
28
|
+
"check": ["build-vite-config-missing"]
|
|
29
|
+
},
|
|
30
|
+
{
|
|
31
|
+
"before": "修改配置文件",
|
|
32
|
+
"check": ["build-vite-config-missing"]
|
|
33
|
+
},
|
|
34
|
+
{
|
|
35
|
+
"before": "导入 JSON 文件",
|
|
36
|
+
"check": ["type-import-assertion-deprecated"]
|
|
37
|
+
}
|
|
38
|
+
]
|
|
39
|
+
}
|
|
40
|
+
}
|
|
@@ -1,119 +1,49 @@
|
|
|
1
1
|
{
|
|
2
|
-
"
|
|
3
|
-
"
|
|
2
|
+
"directoryMapping": {
|
|
3
|
+
"_comment": "代码目录 ↔ 模块映射:{ path: 目录路径, module: 模块名, responsibility: 职责描述 }",
|
|
4
|
+
"examples": [
|
|
4
5
|
{
|
|
5
|
-
"
|
|
6
|
-
"
|
|
7
|
-
"
|
|
6
|
+
"path": "src/features/auth",
|
|
7
|
+
"module": "auth",
|
|
8
|
+
"responsibility": "用户认证、登录、注册"
|
|
8
9
|
},
|
|
9
10
|
{
|
|
10
|
-
"
|
|
11
|
-
"
|
|
12
|
-
"
|
|
13
|
-
},
|
|
14
|
-
{
|
|
15
|
-
"file": "02_tech_stack.md",
|
|
16
|
-
"role": "Tech Stack",
|
|
17
|
-
"when": "技术选型、代码规范、工程治理标准"
|
|
18
|
-
},
|
|
19
|
-
{
|
|
20
|
-
"file": "03_data_governance.md",
|
|
21
|
-
"role": "Data Governance",
|
|
22
|
-
"when": "读写全局 JSON 数据文件时"
|
|
23
|
-
},
|
|
24
|
-
{
|
|
25
|
-
"file": "04_cli_tools.md",
|
|
26
|
-
"role": "CLI Reference",
|
|
27
|
-
"when": "执行 Terminal Gate 命令时 (npx archi task/plan/render 语法速查)"
|
|
28
|
-
},
|
|
29
|
-
{
|
|
30
|
-
"file": "99_context_glue.md",
|
|
31
|
-
"role": "Context Bridge",
|
|
32
|
-
"when": "触碰代码时,自动关联上下文文档"
|
|
11
|
+
"path": "src/features/todos",
|
|
12
|
+
"module": "todo",
|
|
13
|
+
"responsibility": "待办事项 CRUD"
|
|
33
14
|
}
|
|
34
|
-
]
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
}
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
{
|
|
47
|
-
"file": "map.json",
|
|
48
|
-
"role": "Map (本文件)",
|
|
49
|
-
"content": "目录结构、文件索引、逻辑拓扑"
|
|
50
|
-
},
|
|
51
|
-
{
|
|
52
|
-
"file": "dictionary.json",
|
|
53
|
-
"role": "Dictionary",
|
|
54
|
-
"content": "业务术语、公共组件注册表"
|
|
55
|
-
},
|
|
56
|
-
{
|
|
57
|
-
"file": "design_tokens.json",
|
|
58
|
-
"role": "Visuals (仅ui项目)",
|
|
59
|
-
"content": "颜色、字体、间距变量"
|
|
60
|
-
},
|
|
61
|
-
{
|
|
62
|
-
"file": "data_snapshot.json",
|
|
63
|
-
"role": "Data (仅data项目)",
|
|
64
|
-
"content": "数据库 Schema 镜像"
|
|
65
|
-
},
|
|
66
|
-
{
|
|
67
|
-
"file": "error_codes.json",
|
|
68
|
-
"role": "Errors",
|
|
69
|
-
"content": "业务错误码注册表"
|
|
70
|
-
},
|
|
71
|
-
{
|
|
72
|
-
"file": "api_snapshot.json",
|
|
73
|
-
"role": "API (仅api项目)",
|
|
74
|
-
"content": "HTTP 端点注册表与协议映射"
|
|
75
|
-
},
|
|
76
|
-
{
|
|
77
|
-
"file": "env_registry.json",
|
|
78
|
-
"role": "Env (仅api项目)",
|
|
79
|
-
"content": "运行时环境变量清单"
|
|
80
|
-
},
|
|
81
|
-
{
|
|
82
|
-
"file": "command_api.json",
|
|
83
|
-
"role": "Commands (仅cli项目)",
|
|
84
|
-
"content": "CLI 命令签名注册表"
|
|
85
|
-
},
|
|
15
|
+
]
|
|
16
|
+
},
|
|
17
|
+
"logicalTopology": {
|
|
18
|
+
"_comment": "逻辑拓扑:{ module: 模块名, layer: 层(layer/domain/interface/infrastructure), depends: [依赖模块] }",
|
|
19
|
+
"examples": [
|
|
20
|
+
{ "module": "auth", "layer": "domain", "depends": ["user-repo"] },
|
|
21
|
+
{ "module": "todo", "layer": "domain", "depends": ["auth", "todo-repo"] }
|
|
22
|
+
]
|
|
23
|
+
},
|
|
24
|
+
"criticalUserJourneys": {
|
|
25
|
+
"_comment": "关键用户旅程:{ journey: 旅程名, steps: [步骤], owner: 归属任务ID }",
|
|
26
|
+
"examples": [
|
|
86
27
|
{
|
|
87
|
-
"
|
|
88
|
-
"
|
|
89
|
-
"
|
|
28
|
+
"journey": "用户注册登录",
|
|
29
|
+
"steps": ["访问首页", "点击注册", "填写表单", "提交验证", "登录成功"],
|
|
30
|
+
"owner": "FEAT-AUTH"
|
|
90
31
|
}
|
|
91
32
|
]
|
|
92
33
|
},
|
|
93
|
-
"
|
|
94
|
-
{
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
},
|
|
109
|
-
{
|
|
110
|
-
"file": "plan.json",
|
|
111
|
-
"category": "Plan",
|
|
112
|
-
"purpose": "详细步骤拆解与测试用例 (Execution)"
|
|
113
|
-
}
|
|
114
|
-
],
|
|
115
|
-
"directoryMapping": [],
|
|
116
|
-
"logicalTopology": [],
|
|
117
|
-
"criticalUserJourneys": [],
|
|
118
|
-
"featureRelations": []
|
|
34
|
+
"featureRelations": {
|
|
35
|
+
"_comment": "影响关联关系,以网状结构组织:{ group: 网名, members: [成员文件], rule: 变更规则 }",
|
|
36
|
+
"examples": [
|
|
37
|
+
{
|
|
38
|
+
"group": "UI 协议",
|
|
39
|
+
"members": [
|
|
40
|
+
"prompts/ui.md",
|
|
41
|
+
"skills/archi-ui-wireframe/SKILL.md",
|
|
42
|
+
"prompts/start.md",
|
|
43
|
+
"prompts/inherit.md"
|
|
44
|
+
],
|
|
45
|
+
"rule": "UI 协议与 Skill 强关联,变更需互相检查"
|
|
46
|
+
}
|
|
47
|
+
]
|
|
48
|
+
}
|
|
119
49
|
}
|
|
@@ -1,10 +1,3 @@
|
|
|
1
|
-
---
|
|
2
|
-
description: CLI Reference Manual. Working directory rule and command syntax for npx archi task/plan/render.
|
|
3
|
-
globs: **/*
|
|
4
|
-
applyTo: **/*
|
|
5
|
-
alwaysApply: true
|
|
6
|
-
---
|
|
7
|
-
|
|
8
1
|
# CLI Reference
|
|
9
2
|
|
|
10
3
|
> **Role**: 命令速查手册。提供 `npx archi` 系列命令的语法与参数,供 Terminal Gate 执行时查阅。
|
|
@@ -1,10 +1,3 @@
|
|
|
1
|
-
---
|
|
2
|
-
description: Technical Standards & Technology Stack. Contains language versions, framework choices, coding conventions, naming rules, and forbidden patterns. Consult when writing code.
|
|
3
|
-
globs: **/*
|
|
4
|
-
applyTo: **/*
|
|
5
|
-
alwaysApply: true
|
|
6
|
-
---
|
|
7
|
-
|
|
8
1
|
# Tech Stack & Engineering Standards: [项目名称]
|
|
9
2
|
|
|
10
3
|
> **Role:** The "Law" of the codebase. Defines tools, structure, and engineering workflows.
|
|
@@ -15,7 +8,7 @@ alwaysApply: true
|
|
|
15
8
|
## 1. Global Mandates (全局红线)
|
|
16
9
|
* **No Hardcoding:** 所有的密钥、API地址必须使用环境变量,严禁硬编码。
|
|
17
10
|
* **No Dead Code:** 提交的代码必须是干净的,严禁保留注释掉的代码块或无用的 `TODO`。
|
|
18
|
-
* **Comments for Why:**
|
|
11
|
+
* **Comments for Why:** 注释解释"为什么这么做"(业务背景),而不仅仅是"做了什么"。
|
|
19
12
|
|
|
20
13
|
---
|
|
21
14
|
|
|
@@ -51,23 +44,19 @@ alwaysApply: true
|
|
|
51
44
|
---
|
|
52
45
|
|
|
53
46
|
<!-- ═══════ 以下为固定协议(禁修改) ═══════ -->
|
|
54
|
-
## 4. UI Protocol: ITP v3.0 (
|
|
47
|
+
## 4. UI Protocol: ITP v3.0 (Tri-Artifact) [可选 - 仅适用于有 UI 的项目]
|
|
55
48
|
<!-- 核心 UI 描述协议 -->
|
|
56
49
|
> **Note:** 如果项目没有 UI(如 CLI、Backend API、Library),可以删除此章节。
|
|
57
50
|
|
|
58
|
-
### 4.1
|
|
59
|
-
|
|
60
|
-
UI 制品层级:
|
|
51
|
+
### 4.1 Tri-Artifact Strategy (三制品策略)
|
|
61
52
|
|
|
62
53
|
| 制品 | 格式 | 读者 | 职责 |
|
|
63
54
|
|:---|:---|:---|:---|
|
|
64
|
-
| `
|
|
65
|
-
| `ui_context.md` | 结构化 Markdown | AI (plan/code/audit/edit) | **AI 屏幕索引** —
|
|
66
|
-
| `ui.md` | ITP v3.0 DSL | AI (code/audit) | 任务级 UI 范围声明 —
|
|
67
|
-
|
|
68
|
-
- `
|
|
69
|
-
- `ui.md` 仅声明"本任务负责 ui_context.md 中的哪些屏幕/状态",禁重定义全局布局
|
|
70
|
-
- code 阶段以 `ui.md`(任务设计)+ `ui_context.md`(结构/导航)+ `design_tokens.json`(视觉约束)为准;同时以 `ui_concept.html` 为**只读视觉参考**校准布局,用**项目自身技术栈**实现等价视觉效果
|
|
55
|
+
| `screens/` | 多文件 HTML (`index.html` + `S-XX.html` + `_shared.css`) | 人类 (浏览器) | **全局视觉真相源** — `/archi.ui` 触发 Skill 生成;每个屏幕独立预览 |
|
|
56
|
+
| `ui_context.md` | 结构化 Markdown | AI (plan/code/audit/edit) | **AI 屏幕索引** — AI 读取 UI 结构的唯一入口;由同一 Skill 同步生成;禁手动修改 |
|
|
57
|
+
| `ui.md` | ITP v3.0 DSL | AI (code/audit) | 任务级 UI 范围声明 — 仅声明本任务负责的屏幕/状态,禁重定义全局布局 |
|
|
58
|
+
|
|
59
|
+
- code 阶段以 `ui.md` + `ui_context.md` + `design_tokens.json` 为准;`screens/S-XX.html` 为**只读视觉参考**,用**项目自身技术栈**实现等价效果
|
|
71
60
|
|
|
72
61
|
### 4.2 Naming (PrefixFunction)
|
|
73
62
|
组件命名须遵循 `前缀+功能` 格式:
|
|
@@ -190,4 +179,4 @@ UI 制品层级:
|
|
|
190
179
|
|
|
191
180
|
### Auth & Access (认证与权限) (仅ui或api项目)
|
|
192
181
|
* **Mechanism:** [例如:JWT + RBAC / Session + Owner Only / API Key]
|
|
193
|
-
* **Rationale:** [例如:多角色后台管理系统,需细粒度权限控制]
|
|
182
|
+
* **Rationale:** [例如:多角色后台管理系统,需细粒度权限控制]
|
|
@@ -77,6 +77,6 @@ description: Project Constitution: Vision, Personas, Principles & Boundaries.
|
|
|
77
77
|
**Trigger**: 仅在项目初始化 (`/archi.start`) 或重大战略转型 (`/archi.revise`) 时修改。
|
|
78
78
|
|
|
79
79
|
**Action**:
|
|
80
|
-
1. **Alignment**: 确保 Section 3 (Principles) 与 `
|
|
80
|
+
1. **Alignment**: 确保 Section 3 (Principles) 与 `tech_stack.md` 中的技术选型不冲突。
|
|
81
81
|
2. **Completeness**: 必须填满所有 `[ ]` 占位符,严禁保留 "Example" 字样。
|
|
82
82
|
3. **Consistency**: 所有的 Task Spec (`.spec.md`) 都必须引用此文件的 Vision 以确保不跑题。
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
<protocol_audit>
|
|
2
|
-
**Trigger**: `/archi.audit [id]`
|
|
2
|
+
**Trigger**: `/archi.audit [id]` | 自然语言触发时由 Workflow Dispatch 自动加载
|
|
3
3
|
**Goal**: 独立深度代码审查。带 `<id>` 审查该任务的代码实现;无 `<id>` 执行项目级体检。不修改代码,仅输出审查报告与修复工单。
|
|
4
4
|
|
|
5
5
|
<meta>
|
|
@@ -10,52 +10,40 @@
|
|
|
10
10
|
2. **Evidence-Based**: 每个发现须附文件路径、行号、代码片段。
|
|
11
11
|
3. **Actionable Output**: 每个问题须附推荐修复命令(`/archi.fix`, `/archi.edit` 等)。
|
|
12
12
|
4. **Vision Anchored**: 始终以 `vision.md` 为方向基准,检测偏离。
|
|
13
|
-
5. **Report Persistence**: 审查结果须写入文件 — 任务级 → `tasks/<id>_*/audit.md`(覆盖),项目级 → `audits/YYYY-MM-DD.md
|
|
13
|
+
5. **Report Persistence**: 审查结果须写入文件 — 任务级 → `tasks/<id>_*/audit.md`(覆盖),项目级 → `audits/YYYY-MM-DD.md`(按日期存档)。
|
|
14
|
+
6. **IDE-Native First**: 利用 IDE 原生能力驱动执行节奏,本协议定义质量标准和检查点,不对抗 IDE 的规划/执行机制。
|
|
14
15
|
</principles>
|
|
15
16
|
</meta>
|
|
16
17
|
|
|
17
18
|
<step_1_resolve>
|
|
18
|
-
**Role**: 系统分析师
|
|
19
19
|
**Mode Gate**:
|
|
20
20
|
|
|
21
21
|
| 输入 | 模式 | 后续步骤 |
|
|
22
22
|
|:---|:---|:---|
|
|
23
|
-
| `/archi.audit <id>` | 任务级深度审查 |
|
|
24
|
-
| `/archi.audit` | 项目级体检 |
|
|
23
|
+
| `/archi.audit <id>` | 任务级深度审查 | step_2a_task → step_3_report |
|
|
24
|
+
| `/archi.audit` | 项目级体检 | step_2b_project → step_3_report |
|
|
25
25
|
|
|
26
26
|
**任务级 — Resolve ID**:
|
|
27
|
-
1. 从
|
|
27
|
+
1. 从 roadmap.json 解析 `<id>` → Task Name、Slug、状态。
|
|
28
28
|
2. **Status Gate** — 仅 `active` 或 `done` 可审查:
|
|
29
29
|
|
|
30
30
|
| 状态 | 处理 |
|
|
31
31
|
|:---|:---|
|
|
32
32
|
| `active` / `done` | 通过 |
|
|
33
|
-
| `pending` | 拒绝 —
|
|
33
|
+
| `pending` | 拒绝 — 无代码可审查 |
|
|
34
34
|
| `blocked` | 拒绝 — 前置依赖未完成 |
|
|
35
35
|
|
|
36
|
-
3. **Load
|
|
37
|
-
- `[[__DOCS_DIR__]]/global/vision.md` — 项目方向基准
|
|
38
|
-
- `[[__DOCS_DIR__]]/tasks/<id>_<Slug>/spec.md` — 功能逻辑
|
|
39
|
-
- `[[__DOCS_DIR__]]/tasks/<id>_<Slug>/plan.json` — 任务清单
|
|
40
|
-
- `[[__DOCS_DIR__]]/tasks/<id>_<Slug>/ui.md` — 任务 UI 范围声明(如存在)
|
|
41
|
-
- (仅ui项目) `[[__DOCS_DIR__]]/global/ui_context.md` — AI 屏幕索引(定位对应屏幕 ID)
|
|
42
|
-
- (仅ui项目) `[[__DOCS_DIR__]]/global/ui_concept.html` — 只读视觉参考(#10 合规对比的视觉标准源)
|
|
43
|
-
- `[[__DOCS_DIR__]]/tasks/<id>_<Slug>/audit.md` — 上次审计报告(如存在,用于对比)
|
|
44
|
-
- `02_tech_stack.md` — 技术红线
|
|
45
|
-
- (仅ui项目) `[[__DOCS_DIR__]]/global/design_tokens.json`
|
|
46
|
-
- (仅data项目) `[[__DOCS_DIR__]]/global/data_snapshot.json`
|
|
47
|
-
4. 读取该任务对应的所有代码文件。
|
|
36
|
+
3. **Load**: vision.md(方向基准)+ task docs (spec/plan/ui) + 前次 audit.md(对比用)+ project context (tech_stack/design_tokens/data_snapshot/ui_context/screens/)。读取该任务对应的所有代码文件。
|
|
48
37
|
|
|
49
38
|
**项目级 — Load Overview**:
|
|
50
|
-
1.
|
|
51
|
-
2.
|
|
52
|
-
3.
|
|
53
|
-
4. 读取项目代码入口文件与关键模块。
|
|
39
|
+
1. 读取项目上下文(vision、roadmap、tech_stack、map),详见 00_system.md 数据治理规则。
|
|
40
|
+
2. 扫描 tasks/ 目录结构。
|
|
41
|
+
3. 读取项目代码入口文件与关键模块。
|
|
54
42
|
|
|
55
|
-
**Output**:
|
|
43
|
+
**Output**: 审查范围与上下文清单。进入 step_2a_task 或 step_2b_project。
|
|
56
44
|
</step_1_resolve>
|
|
57
45
|
|
|
58
|
-
<
|
|
46
|
+
<step_2a_task>
|
|
59
47
|
**Role**: 首席审计官
|
|
60
48
|
**Scope**: 任务级深度代码审查(仅 `/archi.audit <id>` 时执行)。
|
|
61
49
|
|
|
@@ -69,20 +57,20 @@
|
|
|
69
57
|
| 4 | **逻辑正确性** | 业务逻辑错误、矛盾、遗漏分支、状态机缺陷 |
|
|
70
58
|
| 5 | **Bug 猎杀** | 空值/undefined、竞态、资源泄漏、死循环、off-by-one |
|
|
71
59
|
| 6 | **错误处理** | 吞错、静默失败、错误传播链完整性、用户可见反馈 |
|
|
72
|
-
| 7 | **Tech Stack 合规** | 对照 `
|
|
60
|
+
| 7 | **Tech Stack 合规** | 对照 `tech_stack.md`:违禁模式、过时 API、硬编码 |
|
|
73
61
|
| 8 | **安全性** | 敏感信息泄露、输入未校验、注入风险、权限检查 |
|
|
74
62
|
| 9 | **性能** | 不必要全量导入/大循环/无用计算/内存泄漏/N+1 查询 |
|
|
75
|
-
| 10 | (本任务涉及ui时) **Design 合规** |
|
|
76
|
-
| 11 | (本任务涉及data时) **数据一致性** | 字段名/类型与 `data_snapshot.json`
|
|
63
|
+
| 10 | (本任务涉及ui时) **Design 合规** | Token 使用;无硬编码魔法值;与 `screens/S-XX.html` 视觉一致 |
|
|
64
|
+
| 11 | (本任务涉及data时) **数据一致性** | 字段名/类型与 `data_snapshot.json` 一致 |
|
|
77
65
|
| 12 | (仅i18n项目) **I18n 合规** | 无硬编码字符串;须用 Key/字典引用 |
|
|
78
66
|
| 13 | **Orphan .gitkeep** | 目录已有其他文件时仍存在 `.gitkeep` — 须删除 |
|
|
79
|
-
| 14 | **Spec-Code 漂移** |
|
|
80
|
-
| 15 | (本任务涉及ui时) **UI 引用完整性** | `ui.md`
|
|
67
|
+
| 14 | **Spec-Code 漂移** | 接口/类型/行为与 `spec.md` 一致;手动变更已同步文档 |
|
|
68
|
+
| 15 | (本任务涉及ui时) **UI 引用完整性** | `ui.md` 中 `ref: screens/S-XX.html` 指针是否仍有效 |
|
|
81
69
|
|
|
82
|
-
**Output**:
|
|
83
|
-
</
|
|
70
|
+
**Output**: 按维度分组的发现列表,每项含级别、位置、描述。进入 step_3_report。
|
|
71
|
+
</step_2a_task>
|
|
84
72
|
|
|
85
|
-
<
|
|
73
|
+
<step_2b_project>
|
|
86
74
|
**Role**: 首席审计官
|
|
87
75
|
**Scope**: 项目级健康体检(仅 `/archi.audit` 无参数时执行)。
|
|
88
76
|
|
|
@@ -90,22 +78,18 @@
|
|
|
90
78
|
|:---|:---|:---|
|
|
91
79
|
| 1 | **Vision 漂移** | `roadmap.json` 任务方向与 `vision.md` 是否一致 |
|
|
92
80
|
| 2 | **架构一致性** | `map.json` vs 实际目录结构,有无漂移或未注册模块 |
|
|
93
|
-
| 3 | **Roadmap 健康度** | 一致性 + 进度统计 + 长期 blocked
|
|
81
|
+
| 3 | **Roadmap 健康度** | 一致性 + 进度统计 + 长期 blocked + 依赖环检测 |
|
|
94
82
|
| 4 | **文档完整度** | 各 Task 是否有 spec.md + plan.json;有无孤儿目录 |
|
|
95
|
-
| 5 | **Tech Stack 全局合规** |
|
|
83
|
+
| 5 | **Tech Stack 全局合规** | 抽查关键入口与模块 |
|
|
96
84
|
| 6 | **跨 Task 一致性** | 重复逻辑、命名冲突、接口不一致 |
|
|
97
|
-
| 7 | **Orphan .gitkeep** | 目录已有其他文件时仍存在 `.gitkeep`
|
|
85
|
+
| 7 | **Orphan .gitkeep** | 目录已有其他文件时仍存在 `.gitkeep` |
|
|
98
86
|
|
|
99
|
-
|
|
100
|
-
- `done` 但 plan 未全部完成的
|
|
101
|
-
- 代码量大但无测试的
|
|
102
|
-
- 长期 `active` 未推进的
|
|
87
|
+
扫描后推荐需深度审查的 Task(`done` 但 plan 未全完成 / 代码量大无测试 / 长期 `active`)。
|
|
103
88
|
|
|
104
|
-
**Output**: 项目健康概览 +
|
|
105
|
-
</
|
|
89
|
+
**Output**: 项目健康概览 + 深度审查推荐列表。进入 step_3_report。
|
|
90
|
+
</step_2b_project>
|
|
106
91
|
|
|
107
92
|
<step_3_report>
|
|
108
|
-
**Role**: 报告撰写员
|
|
109
93
|
**Action**:
|
|
110
94
|
|
|
111
95
|
**Issue Classification**:
|
|
@@ -123,26 +107,28 @@
|
|
|
123
107
|
-> 推荐修复:/archi.fix <ID> <描述> 或 /archi.edit <ID> <描述>
|
|
124
108
|
```
|
|
125
109
|
|
|
126
|
-
**Action Routing
|
|
110
|
+
**Action Routing**:
|
|
127
111
|
|
|
128
112
|
| 问题类型 | 推荐命令 |
|
|
129
113
|
|:---|:---|
|
|
130
|
-
| Bug
|
|
131
|
-
| Spec
|
|
132
|
-
|
|
|
133
|
-
|
|
|
134
|
-
|
|
|
135
|
-
|
|
136
|
-
**
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
114
|
+
| Bug | `/archi.fix <ID> <描述>` |
|
|
115
|
+
| Spec 缺漏 | `/archi.edit <ID> <补充描述>` |
|
|
116
|
+
| 架构级问题 | `/archi.revise <描述>` |
|
|
117
|
+
| 功能未完成 | `/archi.code <ID>` |
|
|
118
|
+
| 小问题 | 下次 `/archi.code` 时一并处理 |
|
|
119
|
+
|
|
120
|
+
**Pre-signoff Checklist** (写入文件前须逐项确认):
|
|
121
|
+
□ (任务级)15 个审查维度全部覆盖,不适用项标注 N/A(非静默跳过)
|
|
122
|
+
□ (项目级)7 个检查项全部评估
|
|
123
|
+
□ 每个 CRITICAL/WARNING 发现已附 `文件:行号` + 代码片段
|
|
124
|
+
□ 每个发现已附推荐修复命令(/archi.fix / /archi.edit 等)
|
|
125
|
+
□ 报告已写入对应文件(任务级: tasks/<id>/audit.md;项目级: audits/YYYY-MM-DD.md)
|
|
126
|
+
|
|
127
|
+
**Report Structure**: 审查概要 → 发现列表(CRITICAL → WARNING → INFO)→ 统计摘要 → 修复工单汇总 → Next Steps。
|
|
142
128
|
|
|
143
129
|
**Write Report File**:
|
|
144
130
|
- 任务级 → `[[__DOCS_DIR__]]/tasks/<id>_<Slug>/audit.md`(覆盖式)
|
|
145
|
-
- 项目级 → `[[__DOCS_DIR__]]/audits/YYYY-MM-DD.md
|
|
131
|
+
- 项目级 → `[[__DOCS_DIR__]]/audits/YYYY-MM-DD.md`(按日期存档)
|
|
146
132
|
|
|
147
133
|
**Output**: 完整审查报告(同时输出到对话和写入文件)。
|
|
148
134
|
</step_3_report>
|