architext 0.0.2
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 +63 -0
- package/LICENSE +21 -0
- package/README.md +326 -0
- package/README.zh-CN.md +326 -0
- package/dist/index.d.ts +1 -0
- package/dist/index.js +46 -0
- package/dist/templates/en/briefs/_base.md +115 -0
- package/dist/templates/en/briefs/_modules.md +173 -0
- package/dist/templates/en/docs/global/data_snapshot.json +31 -0
- package/dist/templates/en/docs/global/design_tokens.json +150 -0
- package/dist/templates/en/docs/global/dictionary.json +35 -0
- package/dist/templates/en/docs/global/error_codes.json +19 -0
- package/dist/templates/en/docs/global/map.json +94 -0
- package/dist/templates/en/docs/global/roadmap.json +39 -0
- package/dist/templates/en/docs/global/vision.md +82 -0
- package/dist/templates/en/docs/prompts/audit.md +150 -0
- package/dist/templates/en/docs/prompts/code.md +160 -0
- package/dist/templates/en/docs/prompts/edit.md +87 -0
- package/dist/templates/en/docs/prompts/fix.md +86 -0
- package/dist/templates/en/docs/prompts/help.md +69 -0
- package/dist/templates/en/docs/prompts/inherit.md +270 -0
- package/dist/templates/en/docs/prompts/map.md +131 -0
- package/dist/templates/en/docs/prompts/plan.md +252 -0
- package/dist/templates/en/docs/prompts/remove.md +162 -0
- package/dist/templates/en/docs/prompts/revise.md +160 -0
- package/dist/templates/en/docs/prompts/scope.md +198 -0
- package/dist/templates/en/docs/prompts/start.md +258 -0
- package/dist/templates/en/docs/templates/plan.template.json +113 -0
- package/dist/templates/en/docs/templates/scope-brief.template.md +58 -0
- package/dist/templates/en/docs/templates/spec.template.md +51 -0
- package/dist/templates/en/docs/templates/ui.template.md +51 -0
- package/dist/templates/en/rules/00_system.md +123 -0
- package/dist/templates/en/rules/01_workflow.md +93 -0
- package/dist/templates/en/rules/02_tech_stack.md +197 -0
- package/dist/templates/en/rules/03_data_governance.md +102 -0
- package/dist/templates/en/rules/04_cli_tools.md +50 -0
- package/dist/templates/en/rules/90_custom_rules.md +22 -0
- package/dist/templates/en/rules/99_context_glue.md +53 -0
- package/dist/templates/en/skills/archi-decompose-roadmap/SKILL.md +292 -0
- package/dist/templates/en/skills/archi-interview-protocol/SKILL.md +86 -0
- package/dist/templates/en/skills/archi-plan-options/SKILL.md +364 -0
- package/dist/templates/en/skills/archi-ui-wireframe/SKILL.md +342 -0
- package/dist/templates/zh/briefs/_base.md +116 -0
- package/dist/templates/zh/briefs/_modules.md +173 -0
- package/dist/templates/zh/docs/global/data_snapshot.json +31 -0
- package/dist/templates/zh/docs/global/design_tokens.json +135 -0
- package/dist/templates/zh/docs/global/dictionary.json +35 -0
- package/dist/templates/zh/docs/global/error_codes.json +19 -0
- package/dist/templates/zh/docs/global/map.json +94 -0
- package/dist/templates/zh/docs/global/roadmap.json +39 -0
- package/dist/templates/zh/docs/global/vision.md +82 -0
- package/dist/templates/zh/docs/prompts/audit.md +150 -0
- package/dist/templates/zh/docs/prompts/code.md +160 -0
- package/dist/templates/zh/docs/prompts/edit.md +87 -0
- package/dist/templates/zh/docs/prompts/fix.md +86 -0
- package/dist/templates/zh/docs/prompts/help.md +69 -0
- package/dist/templates/zh/docs/prompts/inherit.md +270 -0
- package/dist/templates/zh/docs/prompts/map.md +131 -0
- package/dist/templates/zh/docs/prompts/plan.md +253 -0
- package/dist/templates/zh/docs/prompts/remove.md +162 -0
- package/dist/templates/zh/docs/prompts/revise.md +160 -0
- package/dist/templates/zh/docs/prompts/scope.md +198 -0
- package/dist/templates/zh/docs/prompts/start.md +258 -0
- package/dist/templates/zh/docs/templates/plan.template.json +88 -0
- package/dist/templates/zh/docs/templates/scope-brief.template.md +58 -0
- package/dist/templates/zh/docs/templates/spec.template.md +51 -0
- package/dist/templates/zh/docs/templates/ui.template.md +51 -0
- package/dist/templates/zh/rules/00_system.md +123 -0
- package/dist/templates/zh/rules/01_workflow.md +93 -0
- package/dist/templates/zh/rules/02_tech_stack.md +192 -0
- package/dist/templates/zh/rules/03_data_governance.md +102 -0
- package/dist/templates/zh/rules/04_cli_tools.md +50 -0
- package/dist/templates/zh/rules/90_custom_rules.md +21 -0
- package/dist/templates/zh/rules/99_context_glue.md +53 -0
- package/dist/templates/zh/skills/archi-decompose-roadmap/SKILL.md +293 -0
- package/dist/templates/zh/skills/archi-interview-protocol/SKILL.md +86 -0
- package/dist/templates/zh/skills/archi-plan-options/SKILL.md +364 -0
- package/dist/templates/zh/skills/archi-ui-wireframe/SKILL.md +339 -0
- package/dist/templates/zh-Hant/briefs/_base.md +115 -0
- package/dist/templates/zh-Hant/briefs/_modules.md +173 -0
- package/dist/templates/zh-Hant/docs/global/data_snapshot.json +31 -0
- package/dist/templates/zh-Hant/docs/global/design_tokens.json +135 -0
- package/dist/templates/zh-Hant/docs/global/dictionary.json +35 -0
- package/dist/templates/zh-Hant/docs/global/error_codes.json +19 -0
- package/dist/templates/zh-Hant/docs/global/map.json +94 -0
- package/dist/templates/zh-Hant/docs/global/roadmap.json +39 -0
- package/dist/templates/zh-Hant/docs/global/vision.md +82 -0
- package/dist/templates/zh-Hant/docs/prompts/audit.md +150 -0
- package/dist/templates/zh-Hant/docs/prompts/code.md +160 -0
- package/dist/templates/zh-Hant/docs/prompts/edit.md +87 -0
- package/dist/templates/zh-Hant/docs/prompts/fix.md +86 -0
- package/dist/templates/zh-Hant/docs/prompts/help.md +69 -0
- package/dist/templates/zh-Hant/docs/prompts/inherit.md +270 -0
- package/dist/templates/zh-Hant/docs/prompts/map.md +131 -0
- package/dist/templates/zh-Hant/docs/prompts/plan.md +252 -0
- package/dist/templates/zh-Hant/docs/prompts/remove.md +162 -0
- package/dist/templates/zh-Hant/docs/prompts/revise.md +160 -0
- package/dist/templates/zh-Hant/docs/prompts/scope.md +198 -0
- package/dist/templates/zh-Hant/docs/prompts/start.md +258 -0
- package/dist/templates/zh-Hant/docs/templates/plan.template.json +88 -0
- package/dist/templates/zh-Hant/docs/templates/scope-brief.template.md +58 -0
- package/dist/templates/zh-Hant/docs/templates/spec.template.md +51 -0
- package/dist/templates/zh-Hant/docs/templates/ui.template.md +51 -0
- package/dist/templates/zh-Hant/rules/00_system.md +123 -0
- package/dist/templates/zh-Hant/rules/01_workflow.md +93 -0
- package/dist/templates/zh-Hant/rules/02_tech_stack.md +192 -0
- package/dist/templates/zh-Hant/rules/03_data_governance.md +102 -0
- package/dist/templates/zh-Hant/rules/04_cli_tools.md +50 -0
- package/dist/templates/zh-Hant/rules/90_custom_rules.md +21 -0
- package/dist/templates/zh-Hant/rules/99_context_glue.md +53 -0
- package/dist/templates/zh-Hant/skills/archi-decompose-roadmap/SKILL.md +293 -0
- package/dist/templates/zh-Hant/skills/archi-interview-protocol/SKILL.md +86 -0
- package/dist/templates/zh-Hant/skills/archi-plan-options/SKILL.md +364 -0
- package/dist/templates/zh-Hant/skills/archi-ui-wireframe/SKILL.md +337 -0
- package/package.json +85 -0
|
@@ -0,0 +1,135 @@
|
|
|
1
|
+
{
|
|
2
|
+
"_comment": "由 /archi.start 基於 Brief「風格與調性」和「視覺參考」生成。所有值須從 Brief 推導,禁直接複用任何範本預設值。",
|
|
3
|
+
"scope": "[?UI]",
|
|
4
|
+
"status": "drafting",
|
|
5
|
+
|
|
6
|
+
"aestheticDirection": {
|
|
7
|
+
"preset": "",
|
|
8
|
+
"_presetOptions": "saas-dark | saas-light | dashboard | marketing | mobile-app | editorial | brutalist | custom",
|
|
9
|
+
"customDescription": ""
|
|
10
|
+
},
|
|
11
|
+
|
|
12
|
+
"primitivePalette": {
|
|
13
|
+
"neutral": {
|
|
14
|
+
"50": "",
|
|
15
|
+
"100": "",
|
|
16
|
+
"200": "",
|
|
17
|
+
"300": "",
|
|
18
|
+
"400": "",
|
|
19
|
+
"500": "",
|
|
20
|
+
"600": "",
|
|
21
|
+
"700": "",
|
|
22
|
+
"800": "",
|
|
23
|
+
"900": "",
|
|
24
|
+
"950": ""
|
|
25
|
+
},
|
|
26
|
+
"brand": {}
|
|
27
|
+
},
|
|
28
|
+
|
|
29
|
+
"semanticTokens": {
|
|
30
|
+
"colors": [
|
|
31
|
+
{ "token": "Background", "light": "", "dark": "", "usage": "頁面背景" },
|
|
32
|
+
{
|
|
33
|
+
"token": "Surface",
|
|
34
|
+
"light": "",
|
|
35
|
+
"dark": "",
|
|
36
|
+
"usage": "卡片, 彈窗, 側邊欄"
|
|
37
|
+
},
|
|
38
|
+
{
|
|
39
|
+
"token": "Primary",
|
|
40
|
+
"light": "Brand-?00",
|
|
41
|
+
"dark": "Brand-?00",
|
|
42
|
+
"usage": "主按鈕, 激活狀態"
|
|
43
|
+
},
|
|
44
|
+
{ "token": "Text-Main", "light": "", "dark": "", "usage": "正文, 標題" },
|
|
45
|
+
{
|
|
46
|
+
"token": "Text-Muted",
|
|
47
|
+
"light": "",
|
|
48
|
+
"dark": "",
|
|
49
|
+
"usage": "次要資訊, 註解"
|
|
50
|
+
},
|
|
51
|
+
{ "token": "Border", "light": "", "dark": "", "usage": "邊框, 分隔線" },
|
|
52
|
+
{
|
|
53
|
+
"token": "Destructive",
|
|
54
|
+
"light": "",
|
|
55
|
+
"dark": "",
|
|
56
|
+
"usage": "刪除, 錯誤提示"
|
|
57
|
+
}
|
|
58
|
+
],
|
|
59
|
+
"typography": [
|
|
60
|
+
{
|
|
61
|
+
"role": "H1",
|
|
62
|
+
"fontFamily": "",
|
|
63
|
+
"size": "",
|
|
64
|
+
"weight": "",
|
|
65
|
+
"lineHeight": ""
|
|
66
|
+
},
|
|
67
|
+
{
|
|
68
|
+
"role": "H2",
|
|
69
|
+
"fontFamily": "",
|
|
70
|
+
"size": "",
|
|
71
|
+
"weight": "",
|
|
72
|
+
"lineHeight": ""
|
|
73
|
+
},
|
|
74
|
+
{
|
|
75
|
+
"role": "Body",
|
|
76
|
+
"fontFamily": "",
|
|
77
|
+
"size": "",
|
|
78
|
+
"weight": "",
|
|
79
|
+
"lineHeight": ""
|
|
80
|
+
},
|
|
81
|
+
{
|
|
82
|
+
"role": "Small",
|
|
83
|
+
"fontFamily": "",
|
|
84
|
+
"size": "",
|
|
85
|
+
"weight": "",
|
|
86
|
+
"lineHeight": ""
|
|
87
|
+
}
|
|
88
|
+
]
|
|
89
|
+
},
|
|
90
|
+
|
|
91
|
+
"layout": {
|
|
92
|
+
"radius": {
|
|
93
|
+
"sm": "",
|
|
94
|
+
"md": "",
|
|
95
|
+
"lg": "",
|
|
96
|
+
"full": "9999px"
|
|
97
|
+
},
|
|
98
|
+
"shadow": {
|
|
99
|
+
"sm": "",
|
|
100
|
+
"md": ""
|
|
101
|
+
},
|
|
102
|
+
"spacing": {
|
|
103
|
+
"unit": "4px",
|
|
104
|
+
"scale": [1, 2, 3, 4, 6, 8, 12, 16]
|
|
105
|
+
}
|
|
106
|
+
},
|
|
107
|
+
|
|
108
|
+
"mode": {
|
|
109
|
+
"default": "",
|
|
110
|
+
"support": []
|
|
111
|
+
},
|
|
112
|
+
|
|
113
|
+
"motion": {
|
|
114
|
+
"preference": "",
|
|
115
|
+
"easing": {
|
|
116
|
+
"standard": "",
|
|
117
|
+
"decelerate": "",
|
|
118
|
+
"accelerate": ""
|
|
119
|
+
},
|
|
120
|
+
"duration": {
|
|
121
|
+
"instant": "",
|
|
122
|
+
"fast": "",
|
|
123
|
+
"normal": "",
|
|
124
|
+
"slow": "",
|
|
125
|
+
"pageTransition": ""
|
|
126
|
+
},
|
|
127
|
+
"patterns": {}
|
|
128
|
+
},
|
|
129
|
+
|
|
130
|
+
"illustration": {
|
|
131
|
+
"style": "",
|
|
132
|
+
"iconLibrary": "",
|
|
133
|
+
"emptyStateAsset": ""
|
|
134
|
+
}
|
|
135
|
+
}
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
{
|
|
2
|
+
"entities": [
|
|
3
|
+
{
|
|
4
|
+
"term": "[業務術語]",
|
|
5
|
+
"definition": "[一句話定義]",
|
|
6
|
+
"codeName": "[PascalCase / camelCase]",
|
|
7
|
+
"forbiddenSynonyms": [],
|
|
8
|
+
"reference": "[來源: spec / vision / task ID]"
|
|
9
|
+
}
|
|
10
|
+
],
|
|
11
|
+
"verbs": [
|
|
12
|
+
{
|
|
13
|
+
"verb": "[業務動作]",
|
|
14
|
+
"definition": "[一句話定義]",
|
|
15
|
+
"codeName": "[camelCase]",
|
|
16
|
+
"context": "[使用場景]",
|
|
17
|
+
"reference": "[來源]"
|
|
18
|
+
}
|
|
19
|
+
],
|
|
20
|
+
"utilities": [
|
|
21
|
+
{
|
|
22
|
+
"name": "[工具名, 如 logger]",
|
|
23
|
+
"path": "[檔案路徑, 如 src/utils/logger.ts]",
|
|
24
|
+
"purpose": "[用途說明]",
|
|
25
|
+
"replaces": "[替代的原始 API, 如 console.log]"
|
|
26
|
+
}
|
|
27
|
+
],
|
|
28
|
+
"components [?UI]": [
|
|
29
|
+
{
|
|
30
|
+
"name": "[元件名]",
|
|
31
|
+
"path": "[檔案路徑]",
|
|
32
|
+
"purpose": "[用途說明]"
|
|
33
|
+
}
|
|
34
|
+
]
|
|
35
|
+
}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
{
|
|
2
|
+
"protocolMapping [?API]": [
|
|
3
|
+
{
|
|
4
|
+
"statusCode": "[400 | EXIT_1 | ...]",
|
|
5
|
+
"code": "[ERR_VALIDATION]",
|
|
6
|
+
"meaning": "[含義]",
|
|
7
|
+
"action": "[呼叫方行為: Toast / Exit / Retry / ...]"
|
|
8
|
+
}
|
|
9
|
+
],
|
|
10
|
+
"businessErrors": [
|
|
11
|
+
{
|
|
12
|
+
"module": "[MODULE]",
|
|
13
|
+
"code": "ERR_[MODULE]_[REASON]",
|
|
14
|
+
"statusCode": "",
|
|
15
|
+
"message": "[使用者/開發者可見的錯誤描述]",
|
|
16
|
+
"recovery": "[恢復建議]"
|
|
17
|
+
}
|
|
18
|
+
]
|
|
19
|
+
}
|
|
@@ -0,0 +1,94 @@
|
|
|
1
|
+
{
|
|
2
|
+
"governance": {
|
|
3
|
+
"coreRules": [
|
|
4
|
+
{
|
|
5
|
+
"file": "00_system.md",
|
|
6
|
+
"role": "System Role",
|
|
7
|
+
"when": "每次對話開始時 (身份設定, 核心原則)"
|
|
8
|
+
},
|
|
9
|
+
{
|
|
10
|
+
"file": "01_workflow.md",
|
|
11
|
+
"role": "SOP",
|
|
12
|
+
"when": "決定當前任務流程 (Task vs Fix) 與驗收標準"
|
|
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": "觸碰程式碼時,自動關聯上下文檔案"
|
|
33
|
+
}
|
|
34
|
+
],
|
|
35
|
+
"globalReference": [
|
|
36
|
+
{
|
|
37
|
+
"file": "roadmap.json",
|
|
38
|
+
"role": "Roadmap",
|
|
39
|
+
"content": "進度追蹤、里程碑、技術債管理"
|
|
40
|
+
},
|
|
41
|
+
{
|
|
42
|
+
"file": "vision.md",
|
|
43
|
+
"role": "Vision",
|
|
44
|
+
"content": "願景、北極星指標、設計哲學"
|
|
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
|
+
},
|
|
73
|
+
"featureDocs": [
|
|
74
|
+
{
|
|
75
|
+
"file": "spec.md",
|
|
76
|
+
"category": "Specification",
|
|
77
|
+
"purpose": "業務邏輯、演算法、驗收標準 (Logic)"
|
|
78
|
+
},
|
|
79
|
+
{
|
|
80
|
+
"file": "ui.md",
|
|
81
|
+
"category": "UI/UX",
|
|
82
|
+
"purpose": "任務級 UI 範圍聲明 — 引用 ui_context.md 中的畫面 ID,指定本任務涵蓋的畫面/元件範圍"
|
|
83
|
+
},
|
|
84
|
+
{
|
|
85
|
+
"file": "plan.json",
|
|
86
|
+
"category": "Plan",
|
|
87
|
+
"purpose": "詳細步驟拆解與測試案例 (Execution)"
|
|
88
|
+
}
|
|
89
|
+
],
|
|
90
|
+
"directoryMapping": [],
|
|
91
|
+
"logicalTopology": [],
|
|
92
|
+
"criticalUserJourneys": [],
|
|
93
|
+
"featureRelations": []
|
|
94
|
+
}
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 1,
|
|
3
|
+
"projectStatus": "planning",
|
|
4
|
+
"lastUpdated": "YYYY-MM-DD",
|
|
5
|
+
"phases": [
|
|
6
|
+
{
|
|
7
|
+
"id": "phase-1",
|
|
8
|
+
"name": "Infrastructure",
|
|
9
|
+
"tasks": [
|
|
10
|
+
{
|
|
11
|
+
"id": "INF-01",
|
|
12
|
+
"title": "Project Scaffolding",
|
|
13
|
+
"status": "pending",
|
|
14
|
+
"description": "",
|
|
15
|
+
"goal": "",
|
|
16
|
+
"deps": [],
|
|
17
|
+
"tag": "Infra",
|
|
18
|
+
"slug": "Project_Scaffolding"
|
|
19
|
+
}
|
|
20
|
+
]
|
|
21
|
+
},
|
|
22
|
+
{
|
|
23
|
+
"id": "phase-2",
|
|
24
|
+
"name": "Core Features",
|
|
25
|
+
"tasks": [
|
|
26
|
+
{
|
|
27
|
+
"id": "FEAT-01",
|
|
28
|
+
"title": "Example Task",
|
|
29
|
+
"status": "blocked",
|
|
30
|
+
"description": "",
|
|
31
|
+
"goal": "",
|
|
32
|
+
"deps": ["INF-01"],
|
|
33
|
+
"tag": "Core",
|
|
34
|
+
"slug": "Example_Task"
|
|
35
|
+
}
|
|
36
|
+
]
|
|
37
|
+
}
|
|
38
|
+
]
|
|
39
|
+
}
|
|
@@ -0,0 +1,82 @@
|
|
|
1
|
+
---
|
|
2
|
+
description: Project Constitution: Vision, Personas, Principles & Boundaries.
|
|
3
|
+
---
|
|
4
|
+
|
|
5
|
+
# Product Vision: [項目名稱]
|
|
6
|
+
|
|
7
|
+
> **Version:** 1.0.0
|
|
8
|
+
> **Status:** Active
|
|
9
|
+
> **Role:** The "Constitution" of the project. All Tasks and Specs must align with this.
|
|
10
|
+
|
|
11
|
+
## 1. Core Vision (核心願景)
|
|
12
|
+
|
|
13
|
+
**Elevator Pitch:**
|
|
14
|
+
[產品名稱] 是一個 [目標市場/類別] 平台,旨在幫助 [目標用戶] 解決 [核心痛點],通過 [核心解決方案/獨特點] 實現 [最終價值]。
|
|
15
|
+
|
|
16
|
+
**North Star Metric (北極星指標):**
|
|
17
|
+
|
|
18
|
+
* [指標名稱]: [描述 - 例如:用戶每日專注時長]
|
|
19
|
+
|
|
20
|
+
---
|
|
21
|
+
|
|
22
|
+
## 2. Target Audience (目標用戶與畫像)
|
|
23
|
+
|
|
24
|
+
### Primary Persona (核心用戶)
|
|
25
|
+
|
|
26
|
+
* **Role:** [例如:備考的學生]
|
|
27
|
+
* **Key Traits:** [關鍵詞]
|
|
28
|
+
* **Pain Points:**
|
|
29
|
+
* [痛點 1]
|
|
30
|
+
* [痛點 2]
|
|
31
|
+
* **Goals:**
|
|
32
|
+
* [希望達成的結果]
|
|
33
|
+
|
|
34
|
+
---
|
|
35
|
+
|
|
36
|
+
## 3. Product Principles (產品原則)
|
|
37
|
+
|
|
38
|
+
* **[原則 1]:** [例如:極簡優先 - 任何增加點擊的操作都需要額外理由]
|
|
39
|
+
* **[原則 2]:** [例如:鼓勵而非懲罰 - 完不成任務時給鼓勵,而不是紅色的警告]
|
|
40
|
+
|
|
41
|
+
---
|
|
42
|
+
|
|
43
|
+
## 4. Design & Experience (設計與體驗語言) [?UI]
|
|
44
|
+
|
|
45
|
+
> **Note:** 本節僅適用於有 UI 的專案。具體色值和圓角定義請嚴格參閱 `[[__DOCS_DIR__]]/global/design_tokens.json`。
|
|
46
|
+
|
|
47
|
+
### Visual Style (視覺風格)
|
|
48
|
+
|
|
49
|
+
* **Keywords:** [例如:溫暖、專注、無干擾]
|
|
50
|
+
* **Density:** [例如:大留白,沉浸式]
|
|
51
|
+
* **Animation:** [例如:輕微的微交互,不要花哨的轉場]
|
|
52
|
+
|
|
53
|
+
### Tone of Voice (文案語調)
|
|
54
|
+
|
|
55
|
+
* **Personality:** [例如:像一個陪讀的夥伴,而不是嚴厲的老師]
|
|
56
|
+
* **Do's:** [例如:用"我們一起"代替"你應該"]
|
|
57
|
+
* **Don'ts:** [例如:不要使用機械的錯誤碼報錯]
|
|
58
|
+
|
|
59
|
+
---
|
|
60
|
+
|
|
61
|
+
## 5. Boundaries (邊界與反目標)
|
|
62
|
+
|
|
63
|
+
### In Scope (核心範圍)
|
|
64
|
+
|
|
65
|
+
* [核心功能 A]
|
|
66
|
+
* [核心功能 B]
|
|
67
|
+
|
|
68
|
+
### Out of Scope (明確不做)
|
|
69
|
+
|
|
70
|
+
* **[反目標 1]:** [例如:不做社交排行榜]
|
|
71
|
+
* **[反目標 2]:** [例如:不提供深色模式切換(默認即深色)]
|
|
72
|
+
|
|
73
|
+
---
|
|
74
|
+
|
|
75
|
+
## 🤖 AI Maintenance Guide
|
|
76
|
+
|
|
77
|
+
**Trigger**: 僅在項目初始化 (`/archi.start`) 或重大戰略轉型 (`/archi.revise`) 時修改。
|
|
78
|
+
|
|
79
|
+
**Action**:
|
|
80
|
+
1. **Alignment**: 確保 Section 3 (Principles) 與 `02_tech_stack.md` 中的技術選型不衝突。
|
|
81
|
+
2. **Completeness**: 必須填滿所有 `[ ]` 佔位符,嚴禁保留 "Example" 字樣。
|
|
82
|
+
3. **Consistency**: 所有的 Task Spec (`.spec.md`) 都必須引用此文件的 Vision 以確保不跑題。
|
|
@@ -0,0 +1,150 @@
|
|
|
1
|
+
<protocol_audit>
|
|
2
|
+
**Trigger**: `/archi.audit [id]`
|
|
3
|
+
**Goal**: 獨立深度程式碼審查。帶 `<id>` 審查該任務的程式碼實現;無 `<id>` 執行專案級體檢。不修改程式碼,僅輸出審查報告與修復工單。
|
|
4
|
+
|
|
5
|
+
<meta>
|
|
6
|
+
<style>Investigative, Thorough, Evidence-Based</style>
|
|
7
|
+
<language>繁體中文</language>
|
|
8
|
+
<principles>
|
|
9
|
+
1. **Read-Only**: 禁改任何程式碼檔案。審查 ≠ 修復。
|
|
10
|
+
2. **Evidence-Based**: 每個發現須附檔案路徑、行號、程式碼片段。
|
|
11
|
+
3. **Actionable Output**: 每個問題須附推薦修復命令(`/archi.fix`, `/archi.edit` 等)。
|
|
12
|
+
4. **Vision Anchored**: 始終以 `vision.md` 為方向基準,偵測偏離。
|
|
13
|
+
5. **Report Persistence**: 審查結果須寫入檔案 — 任務級 → `tasks/<id>_*/audit.md`(覆蓋),專案級 → `audits/YYYY-MM-DD.md`(按日期存檔,同日覆蓋)。
|
|
14
|
+
</principles>
|
|
15
|
+
</meta>
|
|
16
|
+
|
|
17
|
+
<step_1_resolve>
|
|
18
|
+
**Role**: 系統分析師
|
|
19
|
+
**Mode Gate**:
|
|
20
|
+
|
|
21
|
+
| 輸入 | 模式 | 後續步驟 |
|
|
22
|
+
|:---|:---|:---|
|
|
23
|
+
| `/archi.audit <id>` | 任務級深度審查 | step_2_task → step_3_report |
|
|
24
|
+
| `/archi.audit` | 專案級體檢 | step_2_project → step_3_report |
|
|
25
|
+
|
|
26
|
+
**任務級 — Resolve ID**:
|
|
27
|
+
1. 從 `[[__DOCS_DIR__]]/global/roadmap.json` 解析 `<id>` → Task Name、Slug、狀態。
|
|
28
|
+
2. **Status Gate** — 僅 `active` 或 `done` 可審查:
|
|
29
|
+
|
|
30
|
+
| 狀態 | 處理 |
|
|
31
|
+
|:---|:---|
|
|
32
|
+
| `active` / `done` | 通過 |
|
|
33
|
+
| `pending` | 拒絕 — 無程式碼可審查,先執行 `/archi.plan` + `/archi.code` |
|
|
34
|
+
| `blocked` | 拒絕 — 前置依賴未完成 |
|
|
35
|
+
|
|
36
|
+
3. **Load Context**:
|
|
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. 讀取該任務對應的所有程式碼檔案。
|
|
48
|
+
|
|
49
|
+
**專案級 — Load Overview**:
|
|
50
|
+
1. 讀取 `[[__DOCS_DIR__]]/global/vision.md`、`roadmap.json`、`map.json`。
|
|
51
|
+
2. 讀取 `02_tech_stack.md`。
|
|
52
|
+
3. 掃描 `[[__DOCS_DIR__]]/tasks/` 目錄結構。
|
|
53
|
+
4. 讀取專案程式碼入口檔案與關鍵模組。
|
|
54
|
+
|
|
55
|
+
**Output**: 審查範圍與上下文清單。
|
|
56
|
+
</step_1_resolve>
|
|
57
|
+
|
|
58
|
+
<step_2_task>
|
|
59
|
+
**Role**: 首席審計官
|
|
60
|
+
**Scope**: 任務級深度程式碼審查(僅 `/archi.audit <id>` 時執行)。
|
|
61
|
+
|
|
62
|
+
逐維度審查,每個發現須附 `檔案:行號` + 程式碼片段 + 嚴重級別:
|
|
63
|
+
|
|
64
|
+
| # | 維度 | 審查要點 |
|
|
65
|
+
|:---|:---|:---|
|
|
66
|
+
| 1 | **Vision 對齊** | 實現方向與 `vision.md` 有無衝突或偏離 |
|
|
67
|
+
| 2 | **Spec 完整性** | 程式碼是否覆蓋 `spec.md` 全部場景與邊界 |
|
|
68
|
+
| 3 | **Plan 真實性** | 標記 `done` 的任務是否在程式碼中落地(防虛標) |
|
|
69
|
+
| 4 | **邏輯正確性** | 業務邏輯錯誤、矛盾、遺漏分支、狀態機缺陷 |
|
|
70
|
+
| 5 | **Bug 獵殺** | 空值/undefined、競態、資源洩漏、死迴圈、off-by-one |
|
|
71
|
+
| 6 | **錯誤處理** | 吞錯、靜默失敗、錯誤傳播鏈完整性、使用者可見回饋 |
|
|
72
|
+
| 7 | **Tech Stack 合規** | 對照 `02_tech_stack.md`:違禁模式、過時 API、硬編碼 |
|
|
73
|
+
| 8 | **安全性** | 敏感資訊洩露、輸入未校驗、注入風險、權限檢查 |
|
|
74
|
+
| 9 | **效能** | 不必要全量匯入/大迴圈/無用計算/記憶體洩漏/N+1 查詢 |
|
|
75
|
+
| 10 | [?UI] **Design 合規** | 樣式是否用 Token 定義的視覺模式;無硬編碼魔法值;實現與 `ui_concept.html` 對應畫面視覺一致 |
|
|
76
|
+
| 11 | [?Data] **資料一致性** | 欄位名/型別與 `data_snapshot.json` 是否一致 |
|
|
77
|
+
| 12 | [?I18n] **I18n 合規** | 無硬編碼字串;須用 Key/字典引用 |
|
|
78
|
+
| 13 | **Orphan .gitkeep** | 目錄已有其他檔案時仍存在 `.gitkeep` — 須刪除 |
|
|
79
|
+
| 14 | **Spec-Code 漂移** | 程式碼中的介面/型別/行為是否與 `spec.md` 一致;手動變更是否已同步到文件 |
|
|
80
|
+
| 15 | [?UI] **UI 引用完整性** | `ui.md` 中的 `ref: ui_concept.html#S-XX` 指針是否仍然有效;被引用的畫面/元件是否因 edit/revise 後已改名或刪除 |
|
|
81
|
+
|
|
82
|
+
**Output**: 按維度分組的發現列表,每項含級別、位置、描述。
|
|
83
|
+
</step_2_task>
|
|
84
|
+
|
|
85
|
+
<step_2_project>
|
|
86
|
+
**Role**: 首席審計官
|
|
87
|
+
**Scope**: 專案級健康體檢(僅 `/archi.audit` 無參數時執行)。
|
|
88
|
+
|
|
89
|
+
| # | 檢查項 | 說明 |
|
|
90
|
+
|:---|:---|:---|
|
|
91
|
+
| 1 | **Vision 漂移** | `roadmap.json` 任務方向與 `vision.md` 是否一致 |
|
|
92
|
+
| 2 | **架構一致性** | `map.json` vs 實際目錄結構,有無漂移或未註冊模組 |
|
|
93
|
+
| 3 | **Roadmap 健康度** | 一致性 + 進度統計 + 長期 blocked 任務 + 依賴環偵測 |
|
|
94
|
+
| 4 | **檔案完整度** | 各 Task 是否有 spec.md + plan.json;有無孤兒目錄 |
|
|
95
|
+
| 5 | **Tech Stack 全域合規** | 抽查關鍵入口與模組,偵測全域性違規 |
|
|
96
|
+
| 6 | **跨 Task 一致性** | 重複邏輯、命名衝突、介面不一致 |
|
|
97
|
+
| 7 | **Orphan .gitkeep** | 目錄已有其他檔案時仍存在 `.gitkeep` — 須刪除 |
|
|
98
|
+
|
|
99
|
+
掃描後標註優先級,推薦需深度審查的 Task:
|
|
100
|
+
- `done` 但 plan 未全部完成的
|
|
101
|
+
- 程式碼量大但無測試的
|
|
102
|
+
- 長期 `active` 未推進的
|
|
103
|
+
|
|
104
|
+
**Output**: 專案健康概覽 + 深度審查推薦列表。
|
|
105
|
+
</step_2_project>
|
|
106
|
+
|
|
107
|
+
<step_3_report>
|
|
108
|
+
**Role**: 報告撰寫員
|
|
109
|
+
**Action**:
|
|
110
|
+
|
|
111
|
+
**Issue Classification**:
|
|
112
|
+
|
|
113
|
+
| 級別 | 含義 | 範例 |
|
|
114
|
+
|:---|:---|:---|
|
|
115
|
+
| `CRITICAL` | 須修復,阻塞發布 | 邏輯錯誤、安全漏洞、資料損壞風險 |
|
|
116
|
+
| `WARNING` | 應修復,有風險 | 缺少錯誤處理、效能隱患、Spec 覆蓋不全 |
|
|
117
|
+
| `INFO` | 建議最佳化 | 命名不規範、缺少註解、可簡化的程式碼 |
|
|
118
|
+
|
|
119
|
+
**Issue Format** (每項須包含):
|
|
120
|
+
```
|
|
121
|
+
[LEVEL] 檔案路徑:行號 — 維度名
|
|
122
|
+
描述:具體問題
|
|
123
|
+
-> 推薦修復:/archi.fix <ID> <描述> 或 /archi.edit <ID> <描述>
|
|
124
|
+
```
|
|
125
|
+
|
|
126
|
+
**Action Routing** (根據問題型別推薦命令):
|
|
127
|
+
|
|
128
|
+
| 問題型別 | 推薦命令 |
|
|
129
|
+
|:---|:---|
|
|
130
|
+
| Bug(邏輯錯誤、邊界遺漏) | `/archi.fix <ID> <描述>` |
|
|
131
|
+
| Spec 缺漏(功能未完整實現) | `/archi.edit <ID> <補充描述>` |
|
|
132
|
+
| 架構級問題(全域違規) | `/archi.revise <描述>` |
|
|
133
|
+
| 功能未完成(plan 虛標 done) | `/archi.code <ID>` |
|
|
134
|
+
| 小問題(命名、註解、簡化) | 下次 `/archi.code` 時一併處理 |
|
|
135
|
+
|
|
136
|
+
**Report Structure**:
|
|
137
|
+
1. 審查概要(模式、範圍、日期)
|
|
138
|
+
2. 發現列表(按級別排序:CRITICAL → WARNING → INFO)
|
|
139
|
+
3. 統計摘要(各級別數量)
|
|
140
|
+
4. 修復工單彙總(可直接執行的命令列表)
|
|
141
|
+
5. Next Steps 表格
|
|
142
|
+
|
|
143
|
+
**Write Report File**:
|
|
144
|
+
- 任務級 → `[[__DOCS_DIR__]]/tasks/<id>_<Slug>/audit.md`(覆蓋式)
|
|
145
|
+
- 專案級 → `[[__DOCS_DIR__]]/audits/YYYY-MM-DD.md`(按日期存檔,同日覆蓋)
|
|
146
|
+
|
|
147
|
+
**Output**: 完整審查報告(同時輸出到對話和寫入檔案)。
|
|
148
|
+
</step_3_report>
|
|
149
|
+
|
|
150
|
+
</protocol_audit>
|