oh-my-codex-cli 0.1.0

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.
Files changed (292) hide show
  1. package/.agent/skills/agent-kb/HOW_TO_USE.md +428 -0
  2. package/.agent/skills/agent-kb/README.md +46 -0
  3. package/.agent/skills/agent-kb/SKILL.md +128 -0
  4. package/.agent/skills/agent-kb/references/intelligent-analysis-explained.md +333 -0
  5. package/.agent/skills/agent-kb/references/query-optimization.md +225 -0
  6. package/.agent/skills/aireview/SKILL.md +704 -0
  7. package/.agent/skills/analyze/SKILL.md +81 -0
  8. package/.agent/skills/architect-planner/HOW_TO_USE.md +238 -0
  9. package/.agent/skills/architect-planner/README.md +41 -0
  10. package/.agent/skills/architect-planner/SKILL.md +539 -0
  11. package/.agent/skills/auto-mbti/SKILL.md +291 -0
  12. package/.agent/skills/autopilot/SKILL.md +222 -0
  13. package/.agent/skills/backend-patterns/SKILL.md +602 -0
  14. package/.agent/skills/bdd-generator/README.md +78 -0
  15. package/.agent/skills/bdd-generator/SKILL.md +436 -0
  16. package/.agent/skills/brainstorming/HOW_TO_USE.md +289 -0
  17. package/.agent/skills/brainstorming/README.md +41 -0
  18. package/.agent/skills/brainstorming/SKILL.md +165 -0
  19. package/.agent/skills/build-fix/SKILL.md +190 -0
  20. package/.agent/skills/cancel/SKILL.md +658 -0
  21. package/.agent/skills/checkpoint/SKILL.md +94 -0
  22. package/.agent/skills/code-review/SKILL.md +273 -0
  23. package/.agent/skills/coding-standards/SKILL.md +535 -0
  24. package/.agent/skills/conductor/SKILL.md +128 -0
  25. package/.agent/skills/conductor/commands/conductor/implement.toml +358 -0
  26. package/.agent/skills/conductor/commands/conductor/newTrack.toml +142 -0
  27. package/.agent/skills/conductor/commands/conductor/revert.toml +123 -0
  28. package/.agent/skills/conductor/commands/conductor/setup.toml +429 -0
  29. package/.agent/skills/conductor/commands/conductor/status.toml +57 -0
  30. package/.agent/skills/conductor/scripts/install.sh +89 -0
  31. package/.agent/skills/conductor/templates/code_styleguides/csharp.md +115 -0
  32. package/.agent/skills/conductor/templates/code_styleguides/dart.md +238 -0
  33. package/.agent/skills/conductor/templates/code_styleguides/general.md +23 -0
  34. package/.agent/skills/conductor/templates/code_styleguides/go.md +48 -0
  35. package/.agent/skills/conductor/templates/code_styleguides/html-css.md +49 -0
  36. package/.agent/skills/conductor/templates/code_styleguides/javascript.md +51 -0
  37. package/.agent/skills/conductor/templates/code_styleguides/python.md +37 -0
  38. package/.agent/skills/conductor/templates/code_styleguides/typescript.md +43 -0
  39. package/.agent/skills/conductor/templates/rules/README.md +23 -0
  40. package/.agent/skills/conductor/templates/rules/agents.md +49 -0
  41. package/.agent/skills/conductor/templates/rules/coding-style.md +70 -0
  42. package/.agent/skills/conductor/templates/rules/dev.md +20 -0
  43. package/.agent/skills/conductor/templates/rules/git-workflow.md +45 -0
  44. package/.agent/skills/conductor/templates/rules/hooks.md +6 -0
  45. package/.agent/skills/conductor/templates/rules/patterns.md +55 -0
  46. package/.agent/skills/conductor/templates/rules/performance.md +47 -0
  47. package/.agent/skills/conductor/templates/rules/research.md +26 -0
  48. package/.agent/skills/conductor/templates/rules/review.md +22 -0
  49. package/.agent/skills/conductor/templates/rules/security.md +36 -0
  50. package/.agent/skills/conductor/templates/rules/testing.md +30 -0
  51. package/.agent/skills/conductor/templates/workflow.md +333 -0
  52. package/.agent/skills/consensus/HOW_TO_USE.md +191 -0
  53. package/.agent/skills/consensus/README.md +41 -0
  54. package/.agent/skills/consensus/SKILL.md +317 -0
  55. package/.agent/skills/content-research-writer/SKILL.md +537 -0
  56. package/.agent/skills/debug-analysis/SKILL.md +331 -0
  57. package/.agent/skills/deepinit/SKILL.md +347 -0
  58. package/.agent/skills/deepsearch/SKILL.md +56 -0
  59. package/.agent/skills/doctor/SKILL.md +158 -0
  60. package/.agent/skills/drawio/EXAMPLES.md +382 -0
  61. package/.agent/skills/drawio/QUICK_START.md +237 -0
  62. package/.agent/skills/drawio/README.md +315 -0
  63. package/.agent/skills/drawio/SETUP_GUIDE.md +254 -0
  64. package/.agent/skills/drawio/SKILL.md +1176 -0
  65. package/.agent/skills/e2e/SKILL.md +396 -0
  66. package/.agent/skills/ecomode/SKILL.md +160 -0
  67. package/.agent/skills/electron-driver/SKILL.md +144 -0
  68. package/.agent/skills/electron-driver/scripts/driver-template.js +71 -0
  69. package/.agent/skills/eval/SKILL.md +140 -0
  70. package/.agent/skills/eval-harness/SKILL.md +242 -0
  71. package/.agent/skills/evolve/SKILL.md +213 -0
  72. package/.agent/skills/frontend-design/SKILL.md +42 -0
  73. package/.agent/skills/frontend-patterns/SKILL.md +646 -0
  74. package/.agent/skills/frontend-ui-ux/SKILL.md +70 -0
  75. package/.agent/skills/git-master/SKILL.md +75 -0
  76. package/.agent/skills/help/SKILL.md +89 -0
  77. package/.agent/skills/iterative-retrieval/SKILL.md +217 -0
  78. package/.agent/skills/local-skills-setup/SKILL.md +483 -0
  79. package/.agent/skills/log-analyzer/SKILL.md +187 -0
  80. package/.agent/skills/mcp-setup/SKILL.md +226 -0
  81. package/.agent/skills/multi-model-research/HOW_TO_USE.md +614 -0
  82. package/.agent/skills/multi-model-research/README.md +233 -0
  83. package/.agent/skills/multi-model-research/SKILL.md +541 -0
  84. package/.agent/skills/multi-model-research/references/troubleshooting.md +415 -0
  85. package/.agent/skills/note/SKILL.md +80 -0
  86. package/.agent/skills/omc-setup/SKILL.md +219 -0
  87. package/.agent/skills/orchestrate/SKILL.md +620 -0
  88. package/.agent/skills/patent-workflow/IMPLEMENTATION_SUMMARY.md +500 -0
  89. package/.agent/skills/patent-workflow/README.md +455 -0
  90. package/.agent/skills/patent-workflow/SKILL.md +1036 -0
  91. package/.agent/skills/patent-workflow/tools/irr_checker.py +260 -0
  92. package/.agent/skills/patent-workflow/tools/sample_terminology.json +49 -0
  93. package/.agent/skills/patent-workflow/tools/term_checker.py +355 -0
  94. package/.agent/skills/pattern-recognition/SKILL.md +792 -0
  95. package/.agent/skills/pipeline/SKILL.md +448 -0
  96. package/.agent/skills/plan/SKILL.md +309 -0
  97. package/.agent/skills/planning-methodology/SKILL.md +370 -0
  98. package/.agent/skills/planning-with-files/SKILL.md +210 -0
  99. package/.agent/skills/planning-with-files/examples.md +202 -0
  100. package/.agent/skills/planning-with-files/reference.md +218 -0
  101. package/.agent/skills/planning-with-files/scripts/check-complete.ps1 +42 -0
  102. package/.agent/skills/planning-with-files/scripts/check-complete.sh +44 -0
  103. package/.agent/skills/planning-with-files/scripts/init-session.ps1 +120 -0
  104. package/.agent/skills/planning-with-files/scripts/init-session.sh +120 -0
  105. package/.agent/skills/planning-with-files/scripts/session-catchup.py +208 -0
  106. package/.agent/skills/planning-with-files/templates/findings.md +95 -0
  107. package/.agent/skills/planning-with-files/templates/progress.md +114 -0
  108. package/.agent/skills/planning-with-files/templates/task_plan.md +132 -0
  109. package/.agent/skills/project-analyze/CLAUDE.md +18 -0
  110. package/.agent/skills/project-analyze/HOW_TO_USE.md +145 -0
  111. package/.agent/skills/project-analyze/README.md +42 -0
  112. package/.agent/skills/project-analyze/SKILL.md +289 -0
  113. package/.agent/skills/project-analyze/SKILL.md.backup +287 -0
  114. package/.agent/skills/project-analyze/SKILL.md.backup_20260105_093646 +287 -0
  115. package/.agent/skills/project-analyze/assets/analysis-report-template.md +433 -0
  116. package/.agent/skills/project-analyze/references/analysis-patterns.md +422 -0
  117. package/.agent/skills/project-analyze/references/projectmind-explained.md +535 -0
  118. package/.agent/skills/project-session-manager/SKILL.md +428 -0
  119. package/.agent/skills/project-session-manager/lib/config.sh +86 -0
  120. package/.agent/skills/project-session-manager/lib/parse.sh +121 -0
  121. package/.agent/skills/project-session-manager/lib/session.sh +132 -0
  122. package/.agent/skills/project-session-manager/lib/tmux.sh +103 -0
  123. package/.agent/skills/project-session-manager/lib/worktree.sh +171 -0
  124. package/.agent/skills/project-session-manager/psm.sh +629 -0
  125. package/.agent/skills/project-session-manager/templates/feature.md +56 -0
  126. package/.agent/skills/project-session-manager/templates/issue-fix.md +57 -0
  127. package/.agent/skills/project-session-manager/templates/pr-review.md +65 -0
  128. package/.agent/skills/project-session-manager/templates/projects.json +19 -0
  129. package/.agent/skills/quality-check/HOW_TO_USE.md +171 -0
  130. package/.agent/skills/quality-check/README.md +50 -0
  131. package/.agent/skills/quality-check/SKILL.md +240 -0
  132. package/.agent/skills/quality-check/SKILL.md.backup +238 -0
  133. package/.agent/skills/quality-check/SKILL.md.backup_20260105_093646 +238 -0
  134. package/.agent/skills/quality-check/assets/quality-report-template.md +437 -0
  135. package/.agent/skills/quality-check/references/refactoring-patterns.md +550 -0
  136. package/.agent/skills/quality-check/references/scoring-criteria.md +454 -0
  137. package/.agent/skills/quality-validation/SKILL.md +519 -0
  138. package/.agent/skills/quality-validation/SKILL.md.backup +573 -0
  139. package/.agent/skills/quality-validation/SKILL.md.backup_20260105_093646 +573 -0
  140. package/.agent/skills/ralph/SKILL.md +236 -0
  141. package/.agent/skills/ralph-init/SKILL.md +78 -0
  142. package/.agent/skills/ralplan/SKILL.md +58 -0
  143. package/.agent/skills/refactor-clean/SKILL.md +49 -0
  144. package/.agent/skills/release/SKILL.md +84 -0
  145. package/.agent/skills/research/SKILL.md +526 -0
  146. package/.agent/skills/research-methodology/SKILL.md +268 -0
  147. package/.agent/skills/review/SKILL.md +53 -0
  148. package/.agent/skills/security-review/SKILL.md +509 -0
  149. package/.agent/skills/security-review/cloud-infrastructure-security.md +361 -0
  150. package/.agent/skills/setup-pm/SKILL.md +102 -0
  151. package/.agent/skills/skill/SKILL.md +424 -0
  152. package/.agent/skills/skill-create/SKILL.md +209 -0
  153. package/.agent/skills/skill-debugger/HOW_TO_USE.md +244 -0
  154. package/.agent/skills/skill-debugger/README.md +44 -0
  155. package/.agent/skills/skill-debugger/SKILL.md +326 -0
  156. package/.agent/skills/skill-debugger/diagnostic_checklist.md +115 -0
  157. package/.agent/skills/skill-development/SKILL.md +661 -0
  158. package/.agent/skills/skill-development/references/skill-creator-original.md +209 -0
  159. package/.agent/skills/skill-doc-generator/README.md +37 -0
  160. package/.agent/skills/skill-doc-generator/SKILL.md +331 -0
  161. package/.agent/skills/skill-quality-analyzer/HOW_TO_USE.md +243 -0
  162. package/.agent/skills/skill-quality-analyzer/README.md +61 -0
  163. package/.agent/skills/skill-quality-analyzer/SKILL.md +247 -0
  164. package/.agent/skills/skill-quality-analyzer/analyzer.py +209 -0
  165. package/.agent/skills/skill-quality-analyzer/expected_output.json +81 -0
  166. package/.agent/skills/skill-quality-analyzer/sample_input.json +9 -0
  167. package/.agent/skills/skill-tester/README.md +46 -0
  168. package/.agent/skills/skill-tester/SKILL.md +345 -0
  169. package/.agent/skills/start-dev/SKILL.md +701 -0
  170. package/.agent/skills/swarm/SKILL.md +691 -0
  171. package/.agent/skills/task-kb-lookup/SKILL.md +211 -0
  172. package/.agent/skills/task-kb-record/SKILL.md +417 -0
  173. package/.agent/skills/tdd/SKILL.md +446 -0
  174. package/.agent/skills/tdd-generator/DEMO.md +516 -0
  175. package/.agent/skills/tdd-generator/README.md +89 -0
  176. package/.agent/skills/tdd-generator/SKILL.md +278 -0
  177. package/.agent/skills/tdd-workflow/SKILL.md +424 -0
  178. package/.agent/skills/test-coverage/SKILL.md +48 -0
  179. package/.agent/skills/thinkdeep/HOW_TO_USE.md +183 -0
  180. package/.agent/skills/thinkdeep/README.md +41 -0
  181. package/.agent/skills/thinkdeep/SKILL.md +343 -0
  182. package/.agent/skills/ui-ux-pro-max/SKILL.md +228 -0
  183. package/.agent/skills/ui-ux-pro-max/data/charts.csv +26 -0
  184. package/.agent/skills/ui-ux-pro-max/data/colors.csv +97 -0
  185. package/.agent/skills/ui-ux-pro-max/data/landing.csv +31 -0
  186. package/.agent/skills/ui-ux-pro-max/data/products.csv +97 -0
  187. package/.agent/skills/ui-ux-pro-max/data/prompts.csv +24 -0
  188. package/.agent/skills/ui-ux-pro-max/data/stacks/flutter.csv +53 -0
  189. package/.agent/skills/ui-ux-pro-max/data/stacks/html-tailwind.csv +56 -0
  190. package/.agent/skills/ui-ux-pro-max/data/stacks/nextjs.csv +53 -0
  191. package/.agent/skills/ui-ux-pro-max/data/stacks/react-native.csv +52 -0
  192. package/.agent/skills/ui-ux-pro-max/data/stacks/react.csv +54 -0
  193. package/.agent/skills/ui-ux-pro-max/data/stacks/svelte.csv +54 -0
  194. package/.agent/skills/ui-ux-pro-max/data/stacks/swiftui.csv +51 -0
  195. package/.agent/skills/ui-ux-pro-max/data/stacks/vue.csv +50 -0
  196. package/.agent/skills/ui-ux-pro-max/data/styles.csv +59 -0
  197. package/.agent/skills/ui-ux-pro-max/data/typography.csv +58 -0
  198. package/.agent/skills/ui-ux-pro-max/data/ux-guidelines.csv +100 -0
  199. package/.agent/skills/ui-ux-pro-max/scripts/core.py +236 -0
  200. package/.agent/skills/ui-ux-pro-max/scripts/search.py +61 -0
  201. package/.agent/skills/ultrapilot/SKILL.md +647 -0
  202. package/.agent/skills/ultraqa/SKILL.md +152 -0
  203. package/.agent/skills/ultrawork/SKILL.md +123 -0
  204. package/.agent/skills/update-codemaps/SKILL.md +38 -0
  205. package/.agent/skills/update-docs/SKILL.md +52 -0
  206. package/.agent/skills/verification-loop/SKILL.md +140 -0
  207. package/.agent/skills/verify/SKILL.md +80 -0
  208. package/.agent/skills/writer-memory/SKILL.md +459 -0
  209. package/.agent/skills/writer-memory/lib/character-tracker.ts +338 -0
  210. package/.agent/skills/writer-memory/lib/memory-manager.ts +804 -0
  211. package/.agent/skills/writer-memory/lib/relationship-graph.ts +400 -0
  212. package/.agent/skills/writer-memory/lib/scene-organizer.ts +544 -0
  213. package/.agent/skills/writer-memory/lib/synopsis-builder.ts +339 -0
  214. package/.agent/skills/writer-memory/templates/synopsis-template.md +46 -0
  215. package/.governance/skill-lint.allowlist +4 -0
  216. package/.governance/skill-llm.allowlist +4 -0
  217. package/AGENTS.md +59 -0
  218. package/LICENSE +21 -0
  219. package/README.md +169 -0
  220. package/README.zh.md +145 -0
  221. package/bin/omcodex.js +8 -0
  222. package/commands/conductor/implement.toml +358 -0
  223. package/commands/conductor/newTrack.toml +142 -0
  224. package/commands/conductor/revert.toml +123 -0
  225. package/commands/conductor/setup.toml +429 -0
  226. package/commands/conductor/status.toml +57 -0
  227. package/docs/ALIGNMENT.md +40 -0
  228. package/docs/CODEX.md +133 -0
  229. package/docs/NOTIFY.md +81 -0
  230. package/docs/SKILL_GOVERNANCE.md +72 -0
  231. package/docs/SKILL_GOVERNANCE_FRAMEWORK.md +182 -0
  232. package/docs/SKILL_GOVERNANCE_FRAMEWORK.zh.md +170 -0
  233. package/package.json +50 -0
  234. package/prompts/architect.md +105 -0
  235. package/prompts/executor.md +134 -0
  236. package/prompts/planner.md +113 -0
  237. package/scripts/check-skill-governance.sh +84 -0
  238. package/scripts/check-skill-llm-governance.js +302 -0
  239. package/scripts/eval-skills.js +217 -0
  240. package/scripts/generate-catalog-docs.js +95 -0
  241. package/scripts/generate-codex-mcp-config.sh +22 -0
  242. package/scripts/install-codex-force.sh +5 -0
  243. package/scripts/install-codex-incremental.sh +5 -0
  244. package/scripts/install-codex.sh +79 -0
  245. package/scripts/notify-dispatch.js +15 -0
  246. package/scripts/setup-package-manager.js +137 -0
  247. package/src/catalog/generated/public-catalog.json +547 -0
  248. package/src/catalog/manifest.json +542 -0
  249. package/src/catalog/reader.js +43 -0
  250. package/src/catalog/schema.js +79 -0
  251. package/src/cli/doctor.js +62 -0
  252. package/src/cli/index.js +85 -0
  253. package/src/cli/notify.js +127 -0
  254. package/src/cli/route.js +43 -0
  255. package/src/cli/setup.js +155 -0
  256. package/src/cli/team.js +125 -0
  257. package/src/config/generator.js +119 -0
  258. package/src/mcp/memory-server.js +241 -0
  259. package/src/mcp/state-server.js +112 -0
  260. package/src/mcp/trace-server.js +168 -0
  261. package/src/notify/dispatch.js +74 -0
  262. package/src/notify/extensibility/dispatcher.js +113 -0
  263. package/src/notify/extensibility/events.js +15 -0
  264. package/src/notify/extensibility/loader.js +54 -0
  265. package/src/router/skill-router.js +90 -0
  266. package/src/team/auto-advance.js +72 -0
  267. package/src/team/orchestrator.js +82 -0
  268. package/src/team/state-store.js +33 -0
  269. package/src/utils/paths.js +33 -0
  270. package/templates/AGENTS.md +15 -0
  271. package/templates/catalog-manifest.json +542 -0
  272. package/templates/code_styleguides/csharp.md +115 -0
  273. package/templates/code_styleguides/dart.md +238 -0
  274. package/templates/code_styleguides/general.md +23 -0
  275. package/templates/code_styleguides/go.md +48 -0
  276. package/templates/code_styleguides/html-css.md +49 -0
  277. package/templates/code_styleguides/javascript.md +51 -0
  278. package/templates/code_styleguides/python.md +37 -0
  279. package/templates/code_styleguides/typescript.md +43 -0
  280. package/templates/rules/README.md +23 -0
  281. package/templates/rules/agents.md +49 -0
  282. package/templates/rules/coding-style.md +70 -0
  283. package/templates/rules/dev.md +20 -0
  284. package/templates/rules/git-workflow.md +45 -0
  285. package/templates/rules/notify.md +6 -0
  286. package/templates/rules/patterns.md +55 -0
  287. package/templates/rules/performance.md +47 -0
  288. package/templates/rules/research.md +26 -0
  289. package/templates/rules/review.md +22 -0
  290. package/templates/rules/security.md +36 -0
  291. package/templates/rules/testing.md +30 -0
  292. package/templates/workflow.md +333 -0
@@ -0,0 +1,539 @@
1
+ ---
2
+ name: architect-planner
3
+ description: 架构规划专家 - 使用 Gemini CLI (1M 上下文) 进行大型系统架构设计和规划,支持会话延续。
4
+ auto_invoke: true
5
+ tags: [architecture, planning, gemini, system-design]
6
+ ---
7
+
8
+ # Architect Planner - 架构规划专家 Skill
9
+
10
+ ## 🎯 核心功能
11
+
12
+ 使用 Gemini CLI 的 **1M 上下文能力**进行大型系统架构设计和规划。
13
+
14
+ **替代**: PAL MCP clink gemini planner
15
+
16
+ **核心优势**: Gemini 1M 上下文可以同时分析大量代码和文档。
17
+
18
+ ## 📋 触发场景
19
+
20
+ **自动触发**:
21
+ - "架构设计"
22
+ - "系统规划"
23
+ - "架构评审"
24
+ - "技术架构方案"
25
+ - "planner"
26
+
27
+ **手动触发**:
28
+ ```
29
+ 使用 architect-planner 设计:<架构需求>
30
+ ```
31
+
32
+ ## 🔄 Workflow
33
+
34
+ ### Step 1: 需求收集
35
+
36
+ 收集架构设计需要的信息:
37
+ - 业务需求
38
+ - 非功能需求 (性能、可用性、扩展性)
39
+ - 约束条件 (预算、团队、时间)
40
+ - 现有系统情况
41
+
42
+ ### Step 2: Gemini 架构设计 (1M 上下文)
43
+
44
+ **⚠️ 重要: 优先使用 `gemp` (长任务优化版),`gemini` CLI 作为备用**
45
+
46
+ ```bash
47
+ # Step 1: 写入 prompt 到临时文件
48
+ cat > /tmp/gemini_architect_prompt.txt << 'PROMPT_EOF'
49
+ 作为资深架构师 (20年经验),设计以下系统架构:
50
+
51
+ 【业务需求】
52
+ <业务需求>
53
+
54
+ 【非功能需求】
55
+ - 并发: <并发量>
56
+ - 可用性: <SLA 要求>
57
+ - 数据量: <数据规模>
58
+ - 响应时间: <性能要求>
59
+
60
+ 【约束条件】
61
+ - 团队规模: <人数>
62
+ - 技术栈偏好: <技术栈>
63
+ - 预算: <预算范围>
64
+ - 时间: <上线时间>
65
+
66
+ 请提供完整的架构设计:
67
+
68
+ 1. **系统架构图**
69
+ - 核心组件
70
+ - 数据流向
71
+ - 技术选型
72
+
73
+ 2. **模块划分**
74
+ - 各模块职责
75
+ - 接口定义
76
+ - 依赖关系
77
+
78
+ 3. **数据架构**
79
+ - 数据模型
80
+ - 存储方案
81
+ - 数据流转
82
+
83
+ 4. **部署架构**
84
+ - 服务拓扑
85
+ - 网络规划
86
+ - 高可用方案
87
+
88
+ 5. **扩展性设计**
89
+ - 水平扩展方案
90
+ - 性能瓶颈预判
91
+ - 容量规划
92
+
93
+ 6. **安全架构**
94
+ - 认证授权
95
+ - 数据加密
96
+ - 安全边界
97
+
98
+ 7. **监控运维**
99
+ - 监控指标
100
+ - 日志收集
101
+ - 告警策略
102
+
103
+ 8. **实施路线**
104
+ - 分阶段计划
105
+ - 关键里程碑
106
+ - 风险评估
107
+
108
+ 使用 Markdown + Mermaid 图表展示。
109
+ PROMPT_EOF
110
+
111
+ # Step 2: 优先使用 gemp (20分钟超时,输出纯净)
112
+ cat /tmp/gemini_architect_prompt.txt | node ~/.gemini/long_task_runner.js 2>&1
113
+ ```
114
+
115
+ **备用方案** (如果 gemp 失败):
116
+ ```bash
117
+ cat /tmp/gemini_architect_prompt.txt | gemini --yolo 2>&1 | grep -v "STARTUP\|YOLO\|Load"
118
+ ```
119
+
120
+ ### Step 3: Claude 补充和优化
121
+
122
+ Claude 基于 Gemini 的设计:
123
+ 1. 补充具体技术选型建议
124
+ 2. 提供代码框架示例
125
+ 3. 指出潜在风险和缓解措施
126
+
127
+ ## 📊 输出格式
128
+
129
+ ```markdown
130
+ ## 🏛️ 系统架构设计方案
131
+
132
+ **项目**: [项目名称]
133
+ **设计目标**: [核心目标]
134
+
135
+ ---
136
+
137
+ ### 📐 系统架构图
138
+
139
+ ```mermaid
140
+ graph TB
141
+ subgraph "客户端层"
142
+ Web[Web应用]
143
+ Mobile[移动应用]
144
+ end
145
+
146
+ subgraph "接入层"
147
+ Gateway[API网关]
148
+ CDN[CDN]
149
+ end
150
+
151
+ subgraph "应用层"
152
+ Auth[认证服务]
153
+ Business[业务服务]
154
+ Search[搜索服务]
155
+ end
156
+
157
+ subgraph "数据层"
158
+ MySQL[(MySQL)]
159
+ Redis[(Redis)]
160
+ ES[(ElasticSearch)]
161
+ end
162
+
163
+ Web --> Gateway
164
+ Mobile --> Gateway
165
+ Gateway --> Auth
166
+ Gateway --> Business
167
+ Business --> MySQL
168
+ Business --> Redis
169
+ Search --> ES
170
+ ```
171
+
172
+ **技术选型理由**:
173
+ - API网关: Kong (高性能、插件丰富)
174
+ - 缓存: Redis (支持多种数据结构)
175
+ - 搜索: ElasticSearch (全文检索)
176
+ - 数据库: MySQL (ACID保证)
177
+
178
+ ---
179
+
180
+ ### 🧩 模块划分
181
+
182
+ #### 1. 认证服务 (Auth Service)
183
+
184
+ **职责**:
185
+ - 用户认证 (JWT)
186
+ - 权限管理 (RBAC)
187
+ - SSO 集成
188
+
189
+ **接口**:
190
+ ```typescript
191
+ interface AuthService {
192
+ login(username: string, password: string): Promise<Token>;
193
+ verify(token: string): Promise<User>;
194
+ refresh(refreshToken: string): Promise<Token>;
195
+ }
196
+ ```
197
+
198
+ **依赖**:
199
+ - Redis (token 存储)
200
+ - MySQL (用户数据)
201
+
202
+ ---
203
+
204
+ #### 2. 业务服务 (Business Service)
205
+
206
+ **职责**:
207
+ - 核心业务逻辑
208
+ - 数据CRUD
209
+ - 事件发布
210
+
211
+ **接口**:
212
+ ```typescript
213
+ interface BusinessService {
214
+ createOrder(order: Order): Promise<OrderId>;
215
+ updateOrder(id: OrderId, data: Partial<Order>): Promise<void>;
216
+ getOrder(id: OrderId): Promise<Order>;
217
+ }
218
+ ```
219
+
220
+ **依赖**:
221
+ - MySQL (持久化)
222
+ - Redis (缓存)
223
+ - MQ (事件)
224
+
225
+ ---
226
+
227
+ ### 💾 数据架构
228
+
229
+ #### 数据模型
230
+
231
+ ```sql
232
+ -- 用户表
233
+ CREATE TABLE users (
234
+ id BIGINT PRIMARY KEY AUTO_INCREMENT,
235
+ username VARCHAR(50) UNIQUE NOT NULL,
236
+ email VARCHAR(100) UNIQUE NOT NULL,
237
+ created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
238
+ INDEX idx_email (email)
239
+ );
240
+
241
+ -- 订单表 (分表策略: 按用户ID hash)
242
+ CREATE TABLE orders (
243
+ id BIGINT PRIMARY KEY,
244
+ user_id BIGINT NOT NULL,
245
+ amount DECIMAL(10,2),
246
+ status ENUM('pending', 'paid', 'cancelled'),
247
+ created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
248
+ INDEX idx_user_id (user_id),
249
+ INDEX idx_created_at (created_at)
250
+ );
251
+ ```
252
+
253
+ #### 存储方案
254
+
255
+ | 数据类型 | 存储方案 | 理由 |
256
+ |---------|---------|------|
257
+ | 用户数据 | MySQL | 强一致性需求 |
258
+ | 会话数据 | Redis | 高频读写 |
259
+ | 订单数据 | MySQL (分表) | 数据量大,按用户分片 |
260
+ | 搜索索引 | ElasticSearch | 全文检索 |
261
+ | 日志数据 | ClickHouse | 大数据量分析 |
262
+
263
+ #### 缓存策略
264
+
265
+ ```typescript
266
+ // Cache-Aside 模式
267
+ async function getUser(id: string): Promise<User> {
268
+ // 1. 查缓存
269
+ const cached = await redis.get(`user:${id}`);
270
+ if (cached) return JSON.parse(cached);
271
+
272
+ // 2. 查数据库
273
+ const user = await db.query('SELECT * FROM users WHERE id = ?', [id]);
274
+
275
+ // 3. 写缓存 (TTL 1小时)
276
+ await redis.setex(`user:${id}`, 3600, JSON.stringify(user));
277
+
278
+ return user;
279
+ }
280
+ ```
281
+
282
+ ---
283
+
284
+ ### 🚀 部署架构
285
+
286
+ ```mermaid
287
+ graph TB
288
+ subgraph "外网"
289
+ Client[客户端]
290
+ end
291
+
292
+ subgraph "DMZ区"
293
+ LB[负载均衡]
294
+ Gateway1[Gateway-1]
295
+ Gateway2[Gateway-2]
296
+ end
297
+
298
+ subgraph "应用区"
299
+ Auth1[Auth-1]
300
+ Auth2[Auth-2]
301
+ Business1[Business-1]
302
+ Business2[Business-2]
303
+ end
304
+
305
+ subgraph "数据区"
306
+ MySQLMaster[(MySQL-Master)]
307
+ MySQLSlave[(MySQL-Slave)]
308
+ RedisCluster[(Redis-Cluster)]
309
+ end
310
+
311
+ Client --> LB
312
+ LB --> Gateway1
313
+ LB --> Gateway2
314
+ Gateway1 --> Auth1
315
+ Gateway1 --> Business1
316
+ Gateway2 --> Auth2
317
+ Gateway2 --> Business2
318
+ Business1 --> MySQLMaster
319
+ Business2 --> MySQLMaster
320
+ MySQLMaster --> MySQLSlave
321
+ ```
322
+
323
+ **高可用方案**:
324
+ - API网关: 2个实例 + LVS负载均衡
325
+ - 应用服务: 至少2个实例 (跨机房)
326
+ - MySQL: 主从复制 + MHA自动切换
327
+ - Redis: Cluster模式 (3主3从)
328
+
329
+ **容灾策略**:
330
+ - RTO (恢复时间目标): < 5分钟
331
+ - RPO (数据丢失目标): < 1分钟
332
+ - 异地备份: 每天全量 + 实时增量
333
+
334
+ ---
335
+
336
+ ### 📈 扩展性设计
337
+
338
+ #### 水平扩展方案
339
+
340
+ **应用层**:
341
+ - 无状态设计 (session 存 Redis)
342
+ - 支持动态扩容 (K8s HPA)
343
+ - 目标: 支持 10x 流量增长
344
+
345
+ **数据层**:
346
+ - MySQL: 读写分离 + 分库分表
347
+ - 按用户ID hash 分16个库
348
+ - 每个库按时间分表 (月表)
349
+ - Redis: Cluster 水平扩展
350
+ - 消息队列: Kafka 分区扩展
351
+
352
+ #### 性能瓶颈预判
353
+
354
+ | 场景 | 瓶颈点 | 缓解方案 |
355
+ |------|--------|---------|
356
+ | 高并发读 | 数据库 | 增加 Redis 缓存 + 读写分离 |
357
+ | 高并发写 | 数据库 | 分库分表 + 异步写入 |
358
+ | 大查询 | 网络带宽 | 分页 + CDN + 数据压缩 |
359
+ | 复杂计算 | CPU | 异步队列 + 结果缓存 |
360
+
361
+ #### 容量规划
362
+
363
+ **当前容量** (100万 DAU):
364
+ - API网关: 4核8G × 2 = 2万QPS
365
+ - 业务服务: 4核8G × 4 = 4万QPS
366
+ - MySQL: 16核32G × 1主2从 = 2万QPS
367
+ - Redis: 8核16G × 6节点 = 20万QPS
368
+
369
+ **扩展目标** (1000万 DAU):
370
+ - API网关: 扩展到 10 实例
371
+ - 业务服务: 扩展到 20 实例
372
+ - MySQL: 分库到 16 个库
373
+ - Redis: 扩展到 30 节点
374
+
375
+ ---
376
+
377
+ ### 🔒 安全架构
378
+
379
+ #### 认证授权
380
+
381
+ ```typescript
382
+ // JWT Token 结构
383
+ interface JWTPayload {
384
+ userId: string;
385
+ role: 'admin' | 'user';
386
+ permissions: string[];
387
+ exp: number; // 过期时间
388
+ }
389
+
390
+ // RBAC 权限检查
391
+ async function checkPermission(userId: string, resource: string, action: string): Promise<boolean> {
392
+ const user = await getUser(userId);
393
+ const role = await getRole(user.roleId);
394
+ return role.permissions.includes(`${resource}:${action}`);
395
+ }
396
+ ```
397
+
398
+ #### 安全边界
399
+
400
+ ```
401
+ 外网 → [WAF] → LB → [API限流] → Gateway → [JWT验证] → Service → [SQL防注入] → DB
402
+ ↓ ↓ ↓
403
+ DDoS防护 Token黑名单 参数化查询
404
+ ```
405
+
406
+ #### 数据加密
407
+
408
+ - **传输加密**: HTTPS/TLS 1.3
409
+ - **存储加密**: 敏感字段 AES-256 加密
410
+ - **密钥管理**: KMS (Key Management Service)
411
+
412
+ ---
413
+
414
+ ### 📊 监控运维
415
+
416
+ #### 监控指标
417
+
418
+ **黄金指标**:
419
+ - 延迟 (Latency): p50, p95, p99
420
+ - 流量 (Traffic): QPS, 带宽
421
+ - 错误 (Errors): 错误率, 5xx比例
422
+ - 饱和度 (Saturation): CPU, 内存, 磁盘
423
+
424
+ **业务指标**:
425
+ - 订单转化率
426
+ - 支付成功率
427
+ - 用户活跃度
428
+
429
+ #### 日志收集
430
+
431
+ ```
432
+ 应用日志 → Filebeat → Kafka → Logstash → ElasticSearch → Kibana
433
+
434
+ 告警规则
435
+ ```
436
+
437
+ #### 告警策略
438
+
439
+ | 级别 | 触发条件 | 通知方式 |
440
+ |------|---------|---------|
441
+ | P0 | 服务不可用 | 电话 + 短信 + IM |
442
+ | P1 | 错误率 >1% | IM + 邮件 |
443
+ | P2 | 延迟 p99 >1s | IM |
444
+ | P3 | 磁盘 >80% | 邮件 |
445
+
446
+ ---
447
+
448
+ ### 🛣️ 实施路线
449
+
450
+ #### Phase 1: MVP (2个月)
451
+
452
+ **目标**: 核心功能上线
453
+
454
+ - [ ] Week 1-2: 基础架构搭建
455
+ - 搭建 K8s 集群
456
+ - 配置 MySQL 主从
457
+ - 部署 Redis Cluster
458
+
459
+ - [ ] Week 3-4: 核心服务开发
460
+ - 认证服务
461
+ - 业务服务 API
462
+ - 基础前端页面
463
+
464
+ - [ ] Week 5-6: 测试上线
465
+ - 压测 (目标 5000 QPS)
466
+ - 灰度发布
467
+ - 正式上线
468
+
469
+ **验收标准**:
470
+ - 核心功能可用
471
+ - QPS 支持 5000+
472
+ - p99 延迟 < 500ms
473
+
474
+ ---
475
+
476
+ #### Phase 2: 优化 (1个月)
477
+
478
+ **目标**: 性能和稳定性优化
479
+
480
+ - [ ] Week 1: 性能优化
481
+ - 增加缓存层
482
+ - SQL 慢查询优化
483
+ - CDN 接入
484
+
485
+ - [ ] Week 2-3: 高可用
486
+ - 数据库主从切换演练
487
+ - 应用多实例部署
488
+ - 监控告警完善
489
+
490
+ - [ ] Week 4: 压测验证
491
+ - 压测到 20000 QPS
492
+ - 故障演练
493
+ - 性能报告
494
+
495
+ **验收标准**:
496
+ - QPS 支持 20000+
497
+ - 可用性 99.9%
498
+ - 主从切换 < 30s
499
+
500
+ ---
501
+
502
+ #### Phase 3: 扩展 (持续)
503
+
504
+ **目标**: 支持业务增长
505
+
506
+ - 分库分表实施
507
+ - 微服务拆分
508
+ - 多机房部署
509
+ - 国际化支持
510
+
511
+ ---
512
+
513
+ ### ⚠️ 风险评估
514
+
515
+ | 风险 | 影响 | 概率 | 缓解措施 |
516
+ |------|------|------|---------|
517
+ | MySQL 单点故障 | 高 | 中 | 主从复制 + MHA |
518
+ | Redis 数据丢失 | 中 | 低 | AOF持久化 + 定期备份 |
519
+ | 第三方服务不可用 | 中 | 中 | 熔断降级 + 本地缓存 |
520
+ | 团队技术储备不足 | 高 | 高 | 培训 + 外部顾问 |
521
+
522
+ ---
523
+
524
+ **📅 设计时间**: [时间戳]
525
+ **🤖 架构师**: Gemini (1M 上下文) + Claude (补充)
526
+ **📐 架构评分**: [评分] / 10
527
+ ```
528
+
529
+ ---
530
+
531
+ ### 🎯 Claude 补充建议
532
+
533
+ [Claude 基于 Gemini 的架构设计,补充具体技术实现建议]
534
+
535
+ ---
536
+
537
+ **创建时间**: 2025-12-19
538
+ **版本**: v1.0
539
+ **替代**: PAL MCP clink gemini planner