aico-cli 2.0.28 → 2.0.30

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 (210) hide show
  1. package/bin/cli/LICENSE.md +1 -0
  2. package/bin/cli/cli.js +2920 -2457
  3. package/bin/cli/package.json +1 -1
  4. package/bin/cli/sdk-tools.d.ts +1216 -3
  5. package/dist/chunks/simple-config.mjs +527 -43
  6. package/dist/cli.mjs +126 -481
  7. package/dist/index.mjs +1 -0
  8. package/package.json +11 -3
  9. package/templates/agents/agent-capability-map.json +598 -0
  10. package/templates/agents/agent-selector.ts +991 -0
  11. package/templates/agents/auto-task-executor.ts +222 -0
  12. package/templates/agents/bonus/studio-coach.md +133 -0
  13. package/templates/agents/core/code-archaeologist.md +89 -0
  14. package/templates/agents/core/code-reviewer.md +88 -0
  15. package/templates/agents/core/documentation-specialist.md +100 -0
  16. package/templates/agents/core/performance-optimizer.md +67 -0
  17. package/templates/agents/databases/customer-support.md +34 -0
  18. package/templates/agents/databases/data-engineer.md +31 -0
  19. package/templates/agents/databases/data-scientist.md +28 -0
  20. package/templates/agents/databases/database-admin.md +31 -0
  21. package/templates/agents/databases/database-optimizer.md +31 -0
  22. package/templates/agents/deployment/debugger.md +29 -0
  23. package/templates/agents/deployment/deployment-engineer.md +31 -0
  24. package/templates/agents/deployment/devops-troubleshooter.md +31 -0
  25. package/templates/agents/deployment/dx-optimizer.md +62 -0
  26. package/templates/agents/deployment/error-detective.md +31 -0
  27. package/templates/agents/deployment/legacy-modernizer.md +31 -0
  28. package/templates/agents/deployment/network-engineer.md +31 -0
  29. package/templates/agents/deployment/payment-integration.md +31 -0
  30. package/templates/agents/deployment/performance-engineer.md +31 -0
  31. package/templates/agents/deployment/prompt-engineer.md +58 -0
  32. package/templates/agents/deployment/quant-analyst.md +31 -0
  33. package/templates/agents/deployment/refactor-agent.md +77 -0
  34. package/templates/agents/deployment/risk-manager.md +40 -0
  35. package/templates/agents/deployment/sales-automator.md +34 -0
  36. package/templates/agents/deployment/search-specialist.md +96 -0
  37. package/templates/agents/deployment/security-auditor.md +31 -0
  38. package/templates/agents/design/brand-guardian.md +278 -0
  39. package/templates/agents/design/frontend-analyst.md +42 -0
  40. package/templates/agents/design/ui-designer.md +157 -0
  41. package/templates/agents/design/ui-ux-master.md +568 -0
  42. package/templates/agents/design/ux-researcher.md +210 -0
  43. package/templates/agents/design/visual-storyteller.md +271 -0
  44. package/templates/agents/design/whimsy-injector.md +148 -0
  45. package/templates/agents/engineering/backend/ai-engineer.md +118 -0
  46. package/templates/agents/engineering/backend/backend-architect.md +95 -0
  47. package/templates/agents/engineering/backend/senior-backend-architect.md +554 -0
  48. package/templates/agents/engineering/frontend/frontend-developer.md +105 -0
  49. package/templates/agents/engineering/frontend/mobile-app-builder.md +108 -0
  50. package/templates/agents/engineering/frontend/rapid-prototyper.md +114 -0
  51. package/templates/agents/engineering/frontend/senior-frontend-architect.md +573 -0
  52. package/templates/agents/engineering/middlend/api-documenter.md +31 -0
  53. package/templates/agents/engineering/middlend/architect-review.md +41 -0
  54. package/templates/agents/engineering/middlend/cloud-architect.md +31 -0
  55. package/templates/agents/engineering/middlend/code-reviewer.md +28 -0
  56. package/templates/agents/engineering/middlend/devops-automator.md +118 -0
  57. package/templates/agents/marketing/app-store-optimizer.md +180 -0
  58. package/templates/agents/marketing/business-analyst.md +34 -0
  59. package/templates/agents/marketing/content-creator.md +209 -0
  60. package/templates/agents/marketing/growth-hacker.md +218 -0
  61. package/templates/agents/marketing/instagram-curator.md +154 -0
  62. package/templates/agents/marketing/reddit-community-builder.md +197 -0
  63. package/templates/agents/marketing/tiktok-strategist.md +151 -0
  64. package/templates/agents/marketing/twitter-engager.md +175 -0
  65. package/templates/agents/orchestrators/context-manager.md +63 -0
  66. package/templates/agents/orchestrators/project-analyst.md +66 -0
  67. package/templates/agents/orchestrators/team-configurator.md +52 -0
  68. package/templates/agents/orchestrators/tech-lead-orchestrator.md +103 -0
  69. package/templates/agents/product/feedback-synthesizer.md +174 -0
  70. package/templates/agents/product/sprint-prioritizer.md +128 -0
  71. package/templates/agents/product/trend-researcher.md +133 -0
  72. package/templates/agents/project-management/experiment-tracker.md +165 -0
  73. package/templates/agents/project-management/project-shipper.md +190 -0
  74. package/templates/agents/project-management/studio-producer.md +203 -0
  75. package/templates/agents/specialist/spec-analyst.md +228 -0
  76. package/templates/agents/specialist/spec-architect.md +375 -0
  77. package/templates/agents/specialist/spec-developer.md +544 -0
  78. package/templates/agents/specialist/spec-orchestrator.md +465 -0
  79. package/templates/agents/specialist/spec-planner.md +497 -0
  80. package/templates/agents/specialist/spec-reviewer.md +487 -0
  81. package/templates/agents/specialist/spec-task-reviewer.md +50 -0
  82. package/templates/agents/specialist/spec-tester.md +652 -0
  83. package/templates/agents/specialist/spec-validator.md +441 -0
  84. package/templates/agents/specialized/C++/cpp-pro.md +37 -0
  85. package/templates/agents/specialized/Golang/golang-pro.md +31 -0
  86. package/templates/agents/specialized/JavaScript/javascript-pro.md +34 -0
  87. package/templates/agents/specialized/Python/python-pro.md +31 -0
  88. package/templates/agents/specialized/databases/sql-pro.md +34 -0
  89. package/templates/agents/specialized/django/django-api-developer.md +804 -0
  90. package/templates/agents/specialized/django/django-backend-expert.md +875 -0
  91. package/templates/agents/specialized/django/django-orm-expert.md +828 -0
  92. package/templates/agents/specialized/laravel/laravel-backend-expert.md +174 -0
  93. package/templates/agents/specialized/laravel/laravel-eloquent-expert.md +75 -0
  94. package/templates/agents/specialized/rails/rails-activerecord-expert.md +690 -0
  95. package/templates/agents/specialized/rails/rails-api-developer.md +943 -0
  96. package/templates/agents/specialized/rails/rails-backend-expert.md +876 -0
  97. package/templates/agents/specialized/react/react-component-architect.md +41 -0
  98. package/templates/agents/specialized/react/react-nextjs-expert.md +141 -0
  99. package/templates/agents/specialized/vue/vue-component-architect.md +98 -0
  100. package/templates/agents/specialized/vue/vue-nuxt-expert.md +720 -0
  101. package/templates/agents/specialized/vue/vue-state-manager.md +33 -0
  102. package/templates/agents/studio-operations/analytics-reporter.md +204 -0
  103. package/templates/agents/studio-operations/finance-tracker.md +293 -0
  104. package/templates/agents/studio-operations/infrastructure-maintainer.md +219 -0
  105. package/templates/agents/studio-operations/legal-compliance-checker.md +259 -0
  106. package/templates/agents/studio-operations/support-responder.md +166 -0
  107. package/templates/agents/task-execution-agent.ts +160 -0
  108. package/templates/agents/testing/api-tester.md +214 -0
  109. package/templates/agents/testing/integration-test-fixer.md +52 -0
  110. package/templates/agents/testing/performance-benchmarker.md +277 -0
  111. package/templates/agents/testing/test-automator.md +31 -0
  112. package/templates/agents/testing/test-results-analyzer.md +273 -0
  113. package/templates/agents/testing/test-writer-fixer.md +129 -0
  114. package/templates/agents/testing/tool-evaluator.md +184 -0
  115. package/templates/agents/testing/workflow-optimizer.md +239 -0
  116. package/templates/agents/universal/api-architect.md +84 -0
  117. package/templates/agents/universal/backend-developer.md +95 -0
  118. package/templates/agents/universal/frontend-developer.md +66 -0
  119. package/templates/agents/universal/tailwind-css-expert.md +84 -0
  120. package/templates/cursor.md +20 -14
  121. package/templates/hooks/claude-code-hooks.json +13 -9
  122. package/templates/hooks/hook-wrapper.ts +173 -0
  123. package/templates/hooks/install-hooks.ts +201 -0
  124. package/templates/hooks/scripts/Notification/desktop-notifier.ts +268 -0
  125. package/templates/hooks/scripts/Notification/notification.ts +28 -0
  126. package/templates/hooks/scripts/PostToolUse/code-formatter.ts +182 -0
  127. package/templates/hooks/scripts/PostToolUse/post-tool-use.ts +27 -0
  128. package/templates/hooks/scripts/PreToolUse/command-logger.ts +107 -0
  129. package/templates/hooks/scripts/PreToolUse/file-protection.ts +109 -0
  130. package/templates/hooks/scripts/PreToolUse/pre-tool-use.ts +42 -0
  131. package/templates/hooks/scripts/Stop/session-summary.ts +150 -0
  132. package/templates/hooks/scripts/Stop/stop.ts +17 -0
  133. package/templates/hooks/scripts/UserPromptSubmit/input-notifier.ts +139 -0
  134. package/templates/hooks/scripts/UserPromptSubmit/user-prompt-submit.ts +16 -0
  135. package/templates/hooks/test-hook.ts +171 -0
  136. package/templates/hooks/tsconfig.json +27 -0
  137. package/templates/hooks/utils/execution-utils.ts +176 -0
  138. package/templates/hooks/utils/file-utils.ts +256 -0
  139. package/templates/hooks/utils/hook-utils.ts +86 -0
  140. package/templates/hooks/utils/index.ts +42 -0
  141. package/templates/personality.md +19 -14
  142. package/templates/settings.json +27 -4
  143. package/dist/chunks/run-command.mjs +0 -48
  144. package/templates/agents/base/frontend-designer.md +0 -193
  145. package/templates/commands/base//344/270/223/345/256/266/347/273/204/345/210/206/346/236/220/346/231/272/350/203/275/344/275/223.md +0 -82
  146. package/templates/hooks/scripts/Notification/bash/desktop-notifier.sh +0 -63
  147. package/templates/hooks/scripts/Notification/powershell/desktop-notifier.ps1 +0 -67
  148. package/templates/hooks/scripts/PostToolUse/bash/code-formatter.sh +0 -73
  149. package/templates/hooks/scripts/PostToolUse/powershell/code-formatter.ps1 +0 -90
  150. package/templates/hooks/scripts/PreToolUse/bash/command-logger.sh +0 -38
  151. package/templates/hooks/scripts/PreToolUse/bash/file-protection.sh +0 -55
  152. package/templates/hooks/scripts/PreToolUse/powershell/command-logger.ps1 +0 -34
  153. package/templates/hooks/scripts/PreToolUse/powershell/file-protection.ps1 +0 -46
  154. package/templates/hooks/scripts/Stop/bash/session-summary.sh +0 -83
  155. package/templates/hooks/scripts/Stop/powershell/session-summary.ps1 +0 -125
  156. package/templates/hooks/scripts/UserPromptSubmit/bash/input-notifier.sh +0 -58
  157. package/templates/hooks/scripts/UserPromptSubmit/powershell/input-notifier.ps1 +0 -85
  158. package/templates/skills/slack-gif-creator/LICENSE.txt +0 -202
  159. package/templates/skills/slack-gif-creator/SKILL.md +0 -646
  160. package/templates/skills/slack-gif-creator/core/color_palettes.py +0 -302
  161. package/templates/skills/slack-gif-creator/core/easing.py +0 -230
  162. package/templates/skills/slack-gif-creator/core/frame_composer.py +0 -469
  163. package/templates/skills/slack-gif-creator/core/gif_builder.py +0 -246
  164. package/templates/skills/slack-gif-creator/core/typography.py +0 -357
  165. package/templates/skills/slack-gif-creator/core/validators.py +0 -264
  166. package/templates/skills/slack-gif-creator/core/visual_effects.py +0 -494
  167. package/templates/skills/slack-gif-creator/requirements.txt +0 -4
  168. package/templates/skills/slack-gif-creator/templates/bounce.py +0 -106
  169. package/templates/skills/slack-gif-creator/templates/explode.py +0 -331
  170. package/templates/skills/slack-gif-creator/templates/fade.py +0 -329
  171. package/templates/skills/slack-gif-creator/templates/flip.py +0 -291
  172. package/templates/skills/slack-gif-creator/templates/kaleidoscope.py +0 -211
  173. package/templates/skills/slack-gif-creator/templates/morph.py +0 -329
  174. package/templates/skills/slack-gif-creator/templates/move.py +0 -293
  175. package/templates/skills/slack-gif-creator/templates/pulse.py +0 -268
  176. package/templates/skills/slack-gif-creator/templates/shake.py +0 -127
  177. package/templates/skills/slack-gif-creator/templates/slide.py +0 -291
  178. package/templates/skills/slack-gif-creator/templates/spin.py +0 -269
  179. package/templates/skills/slack-gif-creator/templates/wiggle.py +0 -300
  180. package/templates/skills/slack-gif-creator/templates/zoom.py +0 -312
  181. package/templates/skills/swimlane-diagram/README.md +0 -373
  182. package/templates/skills/swimlane-diagram/SKILL.md +0 -242
  183. package/templates/skills/swimlane-diagram/examples.md +0 -405
  184. package/templates/skills/swimlane-diagram/generators.mjs +0 -258
  185. package/templates/skills/swimlane-diagram/package.json +0 -126
  186. package/templates/skills/swimlane-diagram/reference.md +0 -368
  187. package/templates/skills/swimlane-diagram/swimlane-diagram.mjs +0 -215
  188. package/templates/skills/swimlane-diagram/swimlane-diagram.test.mjs +0 -358
  189. package/templates/skills/swimlane-diagram/validators.mjs +0 -291
  190. package/templates/skills/theme-factory/LICENSE.txt +0 -202
  191. package/templates/skills/theme-factory/SKILL.md +0 -59
  192. package/templates/skills/theme-factory/theme-showcase.pdf +0 -0
  193. package/templates/skills/theme-factory/themes/arctic-frost.md +0 -19
  194. package/templates/skills/theme-factory/themes/botanical-garden.md +0 -19
  195. package/templates/skills/theme-factory/themes/desert-rose.md +0 -19
  196. package/templates/skills/theme-factory/themes/forest-canopy.md +0 -19
  197. package/templates/skills/theme-factory/themes/golden-hour.md +0 -19
  198. package/templates/skills/theme-factory/themes/midnight-galaxy.md +0 -19
  199. package/templates/skills/theme-factory/themes/modern-minimalist.md +0 -19
  200. package/templates/skills/theme-factory/themes/ocean-depths.md +0 -19
  201. package/templates/skills/theme-factory/themes/sunset-boulevard.md +0 -19
  202. package/templates/skills/theme-factory/themes/tech-innovation.md +0 -19
  203. /package/templates/agents/{code//346/240/271/346/234/254/345/216/237/345/233/240/345/210/206/346/236/220/345/270/210.md" → core/root-cause-analyst.md} +0 -0
  204. /package/templates/agents/{code//346/212/200/346/234/257/346/226/207/346/241/243/345/267/245/347/250/213/345/270/210.md" → core/technical-writer.md} +0 -0
  205. /package/templates/agents/{code//346/200/247/350/203/275/345/210/206/346/236/220/344/270/223/345/256/266.md" → deployment/performance-analyst.md} +0 -0
  206. /package/templates/agents/{code//345/256/211/345/205/250/346/274/217/346/264/236/350/257/206/345/210/253/344/270/223/345/256/266.md" → deployment/security-engineer.md} +0 -0
  207. /package/templates/agents/{code//347/263/273/347/273/237/346/236/266/346/236/204/345/270/210.md" → engineering/middlend/architect.md} +0 -0
  208. /package/templates/agents/{code/python/345/274/200/345/217/221/344/270/223/345/256/266.md" → specialized/Python/python-expert.md} +0 -0
  209. /package/templates/agents/{code//350/264/250/351/207/217/350/257/204/344/274/260/345/267/245/347/250/213/345/270/210.md" → testing/quality-engineer.md} +0 -0
  210. /package/templates/agents/{base → universal}/panel-experts.md +0 -0
@@ -1,242 +0,0 @@
1
- ---
2
- name: 泳道图生成器
3
- description: 专业生成系统架构和业务流程的泳道图。使用场景:系统架构设计、业务流程分析、跨系统交互流程、时序图、工作流可视化、多角色协作流程。支持用户旅程图、时序图、多角色协作流程。
4
- allowed-tools: Read, Write, Edit, Glob, Grep
5
- ---
6
-
7
- # 泳道图生成器
8
-
9
- ## 概述
10
-
11
- 泳道图生成器是一个专业的可视化工具,用于创建系统架构和业务流程的泳道图。基于支付宝碰一碰支付系统的示例,本技能支持Mermaid中的用户旅程图(User Journey)和时序图(Sequence Diagram)等真正的泳道图语法。
12
-
13
- ## 核心功能
14
-
15
- ### 1. 用户旅程图(User Journey Diagram)
16
- - **水平泳道**: 用户在不同阶段的体验流程
17
- - **垂直维度**: 时间轴或阶段划分
18
- - **多角色协作**: 展示用户与系统的交互过程
19
- - **情感曲线**: 支持用户情感状态的可视化
20
-
21
- ### 2. 时序图(Sequence Diagram)
22
- - **垂直泳道**: 系统参与者的生命线
23
- - **消息传递**: 参与者间的交互消息
24
- - **时间顺序**: 严格的时间先后关系
25
- - **激活期**: 参与者的活跃时间段
26
-
27
- ### 3. 输出格式
28
- - **Mermaid语法**: 标准Mermaid用户旅程图和时序图语法
29
- - **实时预览**: 支持在支持Mermaid的环境中实时预览
30
- - **HTML预览**: 生成交互式HTML预览页面
31
- - **Markdown导出**: 一键导出为Markdown文档
32
- - **兼容性**: 兼容GitHub、GitLab、Markdown编辑器等平台
33
-
34
- ## 工作流程
35
-
36
- ### 1. 需求分析
37
- - 分析用户描述的业务流程或系统架构
38
- - 识别关键参与者和系统角色
39
- - 确定主要流程和交互关系
40
-
41
- ### 2. 泳道设计
42
- - 根据参与者数量设计水平泳道
43
- - 为每个泳道分配适当的标签和描述
44
- - 确定泳道间的交互关系
45
-
46
- ### 3. 流程设计
47
- - 设计用户旅程的阶段和步骤
48
- - 添加交互消息和系统响应
49
- - 设计异常处理和错误流程
50
-
51
- ### 4. 样式定制
52
- - 定义参与者样式和颜色方案
53
- - 设置消息类型和箭头样式
54
- - 添加注释和说明文字
55
-
56
- ### 5. 生成输出
57
- - 生成标准的Mermaid语法
58
- - 提供完整的Markdown文档
59
- - 包含使用说明和预览方法
60
-
61
- ## 使用指令
62
-
63
- ### 用户旅程图语法结构
64
- ```mermaid
65
- journey
66
- title 用户支付流程
67
- section 支付准备
68
- 用户打开应用: 5: 用户
69
- 选择商品: 4: 用户
70
- 进入支付页面: 3: 用户
71
- section 支付过程
72
- 输入支付信息: 5: 用户
73
- 系统验证: 4: 系统
74
- 完成支付: 5: 用户
75
- section 支付完成
76
- 显示支付结果: 3: 系统
77
- 更新订单状态: 4: 系统
78
- ```
79
-
80
- ### 时序图语法结构
81
- ```mermaid
82
- sequenceDiagram
83
- participant 用户
84
- participant 前端系统
85
- participant 支付网关
86
- participant 银行系统
87
-
88
- 用户->>前端系统: 提交支付请求
89
- 前端系统->>支付网关: 转发支付信息
90
- 支付网关->>银行系统: 验证支付
91
- 银行系统-->>支付网关: 支付成功
92
- 支付网关-->>前端系统: 返回结果
93
- 前端系统-->>用户: 显示支付成功
94
- ```
95
-
96
- ### 节点类型和样式
97
- - **用户旅程图**: 使用阶段(section)和步骤描述
98
- - **时序图**: 使用参与者(participant)和消息传递
99
- - **情感曲线**: 在用户旅程图中显示用户满意度
100
-
101
- ## 示例模板
102
-
103
- ### 支付系统用户旅程图(基于支付宝示例)
104
- ```mermaid
105
- journey
106
- title 支付宝碰一碰支付用户旅程
107
- section 设备准备阶段
108
- 用户打开支付宝应用: 5: 用户
109
- POS终端设备初始化: 4: POS终端
110
- 系统检测设备状态: 3: 系统
111
- section 触碰交互阶段
112
- 用户选择碰一碰功能: 5: 用户
113
- 用户触碰POS设备: 5: 用户
114
- POS检测触碰信号: 4: POS终端
115
- 系统验证设备合法性: 4: 系统
116
- section 支付处理阶段
117
- 生成支付请求: 5: POS终端
118
- 系统验证用户身份: 4: 系统
119
- 银行系统处理支付: 4: 银行系统
120
- 风险控制检查: 3: 风控系统
121
- section 结果返回阶段
122
- 返回支付结果: 5: 系统
123
- POS显示支付状态: 4: POS终端
124
- 用户确认支付结果: 5: 用户
125
- 更新订单状态: 3: 商户系统
126
- ```
127
-
128
- ### 支付系统时序图
129
- ```mermaid
130
- sequenceDiagram
131
- participant 用户
132
- participant POS终端
133
- participant 支付宝系统
134
- participant 银行系统
135
- participant 风控系统
136
- participant 商户系统
137
-
138
- 用户->>POS终端: 打开支付宝并触碰设备
139
- POS终端->>支付宝系统: 发送支付请求
140
- 支付宝系统->>银行系统: 验证支付信息
141
- 支付宝系统->>风控系统: 风险控制检查
142
- 银行系统-->>支付宝系统: 支付成功
143
- 风控系统-->>支付宝系统: 风险检查通过
144
- 支付宝系统-->>POS终端: 返回支付结果
145
- POS终端-->>用户: 显示支付成功
146
- 支付宝系统->>商户系统: 更新订单状态
147
- 商户系统-->>支付宝系统: 订单更新完成
148
- ```
149
-
150
- ## 最佳实践
151
-
152
- ### 1. 用户旅程图设计原则
153
- - **阶段划分**: 按照时间或逻辑将流程划分为清晰的阶段
154
- - **情感曲线**: 使用评分(1-5)表示用户在每个阶段的满意度
155
- - **用户视角**: 从用户角度描述体验过程
156
- - **简洁明了**: 每个阶段的步骤描述要简洁易懂
157
-
158
- ### 2. 时序图设计原则
159
- - **参与者定义**: 明确定义每个参与者的角色和职责
160
- - **消息流向**: 使用正确的箭头表示消息方向(-> 同步,-->> 异步)
161
- - **时间顺序**: 严格按照时间顺序排列消息
162
- - **激活期**: 使用activate/deactivate表示参与者的活跃状态
163
-
164
- ### 3. 样式设计原则
165
- - **一致性**: 相同类型的参与者使用相同样式
166
- - **可读性**: 确保图表在各种尺寸下都清晰可读
167
- - **专业性**: 使用专业的配色方案和布局
168
-
169
- ## 工具集成
170
-
171
- ### 支持的平台
172
- - **GitHub/GitLab**: 原生支持Mermaid语法
173
- - **VS Code**: 通过Mermaid插件预览
174
- - **Obsidian**: 内置Mermaid支持
175
- - **Typora**: 支持实时预览
176
-
177
- ### 预览方法
178
- ```bash
179
- # 在支持Mermaid的Markdown编辑器中预览
180
- # 或使用在线工具:https://mermaid.live/
181
- ```
182
-
183
- ## 故障排除
184
-
185
- ### 常见问题
186
- 1. **语法错误**: 检查journey和sequenceDiagram的正确语法
187
- 2. **渲染问题**: 确保使用支持Mermaid的平台版本
188
- 3. **布局混乱**: 调整阶段划分和参与者顺序
189
-
190
- ### 调试技巧
191
- - 使用Mermaid Live Editor验证语法
192
- - 分步骤构建复杂的泳道图
193
- - 先设计主干流程,再添加细节和异常处理
194
-
195
- ## 技术实现
196
-
197
- ### 核心模块
198
- - **`swimlane-diagram.mjs`**: 主要实现类,提供图表生成功能
199
- - **`validators.mjs`**: 参数验证模块,确保输入数据的有效性
200
- - **`generators.mjs`**: 图表生成器模块,支持各种图表类型
201
- - **`swimlane-diagram.test.mjs`**: 完整的测试套件
202
-
203
- ### API接口
204
- ```javascript
205
- import SwimlaneDiagramGenerator from './swimlane-diagram.mjs';
206
-
207
- const generator = new SwimlaneDiagramGenerator();
208
- const mermaidCode = generator.generate({
209
- type: 'journey', // 或 'sequence'
210
- title: '图表标题',
211
- data: [/* 数据结构 */]
212
- });
213
- ```
214
-
215
- ### 使用方式
216
- 1. **编程方式**: 通过JavaScript API调用
217
- 2. **命令行**: 使用npm scripts执行生成
218
- 3. **预览模式**: 生成HTML预览页面
219
- 4. **导出模式**: 导出为Markdown文档
220
-
221
- ## 语法参考
222
-
223
- ### 用户旅程图语法
224
- - `journey`: 声明用户旅程图
225
- - `title`: 设置图表标题
226
- - `section`: 定义阶段
227
- - `步骤描述: 评分: 参与者`: 定义具体步骤
228
-
229
- ### 时序图语法
230
- - `sequenceDiagram`: 声明时序图
231
- - `participant 参与者`: 定义参与者
232
- - `A->>B: 消息`: 同步消息传递
233
- - `A-->>B: 消息`: 异步消息传递
234
- - `activate A`: 激活参与者
235
- - `deactivate A`: 停用参与者
236
-
237
- ## 相关文件
238
-
239
- - **`README.md`**: 详细的使用说明和API文档
240
- - **`reference.md`**: 完整的语法参考手册
241
- - **`examples.md`**: 丰富的使用示例集
242
- - **`package.json`**: 项目配置和依赖管理
@@ -1,405 +0,0 @@
1
- # 泳道图示例集
2
-
3
- ## 概述
4
-
5
- 本示例集展示了真正的泳道图在不同业务场景下的应用,包括用户旅程图和时序图两种类型。每个示例都包含完整的Mermaid语法和详细说明,帮助用户快速理解和应用泳道图技术。
6
-
7
- ## 示例1:电商支付系统时序图
8
-
9
- ### 业务场景描述
10
- 电商平台的完整支付流程,涉及用户、前端系统、支付网关、银行系统和商户系统的协作。
11
-
12
- ### 时序图实现
13
-
14
- ```mermaid
15
- sequenceDiagram
16
- participant 用户
17
- participant 前端系统
18
- participant 支付网关
19
- participant 银行系统
20
- participant 商户系统
21
- participant 风控系统
22
-
23
- 用户->>前端系统: 选择商品并下单
24
- activate 前端系统
25
- 前端系统->>用户: 显示支付页面
26
- 用户->>前端系统: 提交支付信息
27
- 前端系统->>支付网关: 发送支付请求
28
- deactivate 前端系统
29
- activate 支付网关
30
-
31
- 支付网关->>风控系统: 风险检查
32
- activate 风控系统
33
- 风控系统-->>支付网关: 风险检查通过
34
- deactivate 风控系统
35
-
36
- 支付网关->>银行系统: 验证支付信息
37
- activate 银行系统
38
- 银行系统-->>支付网关: 支付成功
39
- deactivate 银行系统
40
-
41
- 支付网关->>商户系统: 更新订单状态
42
- activate 商户系统
43
- 商户系统-->>支付网关: 订单更新完成
44
- deactivate 商户系统
45
-
46
- 支付网关-->>前端系统: 返回支付结果
47
- deactivate 支付网关
48
- activate 前端系统
49
- 前端系统-->>用户: 显示支付成功
50
- deactivate 前端系统
51
- ```
52
-
53
- ### 技术特点
54
- 1. **异步处理**: 支付网关并行处理风控检查和银行验证
55
- 2. **多层验证**: 风险检查、银行验证、商户通知
56
- 3. **状态管理**: 使用activate/deactivate管理参与者状态
57
- 4. **时序严格**: 严格按照时间顺序排列消息传递
58
-
59
- ## 示例2:用户注册流程用户旅程图
60
-
61
- ### 业务场景描述
62
- 新用户注册账号的完整流程,包括信息验证、账户创建和确认流程。
63
-
64
- ### 用户旅程图实现
65
-
66
- ```mermaid
67
- journey
68
- title 用户注册体验旅程
69
- section 访问阶段
70
- 用户访问注册页面: 4: 用户
71
- 查看注册说明: 3: 用户
72
- 决定注册: 4: 用户
73
- section 信息填写阶段
74
- 选择注册方式: 4: 用户
75
- 填写基本信息: 3: 用户
76
- 设置密码: 2: 用户
77
- 验证邮箱格式: 4: 系统
78
- section 验证阶段
79
- 发送验证邮件: 4: 系统
80
- 检查邮箱收件: 3: 用户
81
- 点击验证链接: 5: 用户
82
- 验证链接有效: 4: 系统
83
- section 完成阶段
84
- 账户激活成功: 5: 用户
85
- 自动登录系统: 4: 用户
86
- 查看欢迎页面: 5: 用户
87
- 完善个人资料: 3: 用户
88
- ```
89
-
90
- ### 用户体验分析
91
- 1. **情感曲线**: 2-5分波动,密码设置体验较差,激活成功体验最佳
92
- 2. **关键节点**: 邮箱验证是关键转折点
93
- 3. **优化建议**: 简化密码设置流程,优化验证邮件体验
94
-
95
- ## 示例3:数据同步系统时序图
96
-
97
- ### 业务场景描述
98
- 企业级数据同步系统,支持多数据源之间的数据同步和转换。
99
-
100
- ### 时序图实现
101
-
102
- ```mermaid
103
- sequenceDiagram
104
- participant 调度服务
105
- participant 抽取服务
106
- participant 转换服务
107
- participant 加载服务
108
- participant 监控服务
109
- participant 源数据库
110
- participant 目标数据库
111
-
112
- 调度服务->>抽取服务: 启动同步任务
113
- activate 抽取服务
114
- 抽取服务->>源数据库: 连接数据源
115
- activate 源数据库
116
- 源数据库-->>抽取服务: 连接成功
117
- deactivate 源数据库
118
-
119
- 抽取服务->>源数据库: 执行数据查询
120
- activate 源数据库
121
- 源数据库-->>抽取服务: 返回数据集
122
- deactivate 源数据库
123
-
124
- 抽取服务->>转换服务: 发送原始数据
125
- deactivate 抽取服务
126
- activate 转换服务
127
-
128
- 转换服务->>转换服务: 数据清洗
129
- 转换服务->>转换服务: 格式转换
130
- 转换服务->>转换服务: 数据验证
131
-
132
- alt 验证通过
133
- 转换服务->>加载服务: 发送转换后数据
134
- deactivate 转换服务
135
- activate 加载服务
136
-
137
- 加载服务->>目标数据库: 连接目标库
138
- activate 目标数据库
139
- 目标数据库-->>加载服务: 连接成功
140
- deactivate 目标数据库
141
-
142
- 加载服务->>目标数据库: 批量插入数据
143
- activate 目标数据库
144
- 目标数据库-->>加载服务: 插入成功
145
- deactivate 目标数据库
146
-
147
- 加载服务->>监控服务: 同步完成通知
148
- deactivate 加载服务
149
- activate 监控服务
150
- 监控服务-->>调度服务: 任务完成
151
- deactivate 监控服务
152
- else 验证失败
153
- 转换服务->>监控服务: 数据验证失败
154
- deactivate 转换服务
155
- activate 监控服务
156
- 监控服务-->>调度服务: 任务失败
157
- deactivate 监控服务
158
- end
159
- ```
160
-
161
- ### 架构特点
162
- 1. **模块化设计**: 抽取、转换、加载三个独立服务
163
- 2. **异步通信**: 服务间通过消息传递实现异步处理
164
- 3. **错误处理**: 完整的异常处理和通知机制
165
- 4. **监控集成**: 全程监控和状态报告
166
-
167
- ## 示例4:微服务调用链时序图
168
-
169
- ### 业务场景描述
170
- 微服务架构下的服务调用链,展示服务间的依赖关系和调用流程。
171
-
172
- ### 时序图实现
173
-
174
- ```mermaid
175
- sequenceDiagram
176
- participant 客户端
177
- participant API网关
178
- participant 用户服务
179
- participant 订单服务
180
- participant 商品服务
181
- participant 支付服务
182
- participant 通知服务
183
- participant 缓存系统
184
- participant 数据库
185
-
186
- 客户端->>API网关: 发起下单请求
187
- activate API网关
188
-
189
- API网关->>缓存系统: 检查用户会话
190
- activate 缓存系统
191
- 缓存系统-->>API网关: 会话有效
192
- deactivate 缓存系统
193
-
194
- API网关->>用户服务: 验证用户信息
195
- activate 用户服务
196
- 用户服务->>数据库: 查询用户数据
197
- activate 数据库
198
- 数据库-->>用户服务: 返回用户信息
199
- deactivate 数据库
200
- 用户服务-->>API网关: 用户验证通过
201
- deactivate 用户服务
202
-
203
- API网关->>商品服务: 检查商品库存
204
- activate 商品服务
205
- 商品服务->>数据库: 查询库存信息
206
- activate 数据库
207
- 数据库-->>商品服务: 库存充足
208
- deactivate 数据库
209
- 商品服务-->>API网关: 库存检查通过
210
- deactivate 商品服务
211
-
212
- par 并行处理
213
- API网关->>订单服务: 创建订单
214
- and
215
- API网关->>支付服务: 处理支付
216
- end
217
-
218
- activate 订单服务
219
- activate 支付服务
220
-
221
- 订单服务->>数据库: 保存订单数据
222
- activate 数据库
223
- 数据库-->>订单服务: 订单创建成功
224
- deactivate 数据库
225
- 订单服务-->>API网关: 订单创建完成
226
- deactivate 订单服务
227
-
228
- 支付服务->>数据库: 记录支付信息
229
- activate 数据库
230
- 数据库-->>支付服务: 支付记录成功
231
- deactivate 数据库
232
- 支付服务-->>API网关: 支付处理完成
233
- deactivate 支付服务
234
-
235
- API网关->>通知服务: 发送通知
236
- activate 通知服务
237
- 通知服务->>通知服务: 发送邮件通知
238
- 通知服务->>通知服务: 发送短信通知
239
- 通知服务-->>API网关: 通知发送完成
240
- deactivate 通知服务
241
-
242
- API网关-->>客户端: 返回下单结果
243
- deactivate API网关
244
- ```
245
-
246
- ### 微服务特性
247
- 1. **并行处理**: 订单创建和支付处理并行执行
248
- 2. **服务解耦**: 通过API网关实现服务解耦
249
- 3. **缓存优化**: 使用缓存系统提升性能
250
- 4. **异步通知**: 通知服务异步处理邮件和短信
251
-
252
- ## 示例5:企业级部署流程用户旅程图
253
-
254
- ### 业务场景描述
255
- 企业级软件系统的完整部署流程,涉及多个角色和阶段的协作。
256
-
257
- ### 用户旅程图实现
258
-
259
- ```mermaid
260
- journey
261
- title 企业系统部署流程
262
- section 需求分析阶段
263
- 业务需求收集: 5: 产品经理
264
- 技术可行性评估: 4: 架构师
265
- 资源需求评估: 3: 运维工程师
266
- 部署方案设计: 4: 架构师
267
- section 环境准备阶段
268
- 开发环境搭建: 3: 开发工程师
269
- 测试环境配置: 4: 测试工程师
270
- 预生产环境准备: 4: 运维工程师
271
- 生产环境规划: 3: 运维工程师
272
- section 开发测试阶段
273
- 功能开发实现: 4: 开发工程师
274
- 单元测试执行: 4: 测试工程师
275
- 集成测试验证: 5: 测试工程师
276
- 性能测试评估: 3: 测试工程师
277
- section 部署上线阶段
278
- 代码审查通过: 4: 架构师
279
- 部署脚本执行: 4: 运维工程师
280
- 系统监控配置: 5: 运维工程师
281
- 上线验证测试: 5: 测试工程师
282
- section 运维监控阶段
283
- 系统性能监控: 4: 运维工程师
284
- 日志分析处理: 3: 开发工程师
285
- 问题快速响应: 4: 运维团队
286
- 用户培训支持: 5: 产品经理
287
- ```
288
-
289
- ### 流程特点
290
- 1. **多角色协作**: 产品经理、架构师、开发、测试、运维等多个角色参与
291
- 2. **阶段清晰**: 从需求分析到运维监控的完整流程
292
- 3. **质量保证**: 多层测试和验证机制
293
- 4. **持续优化**: 部署后的监控和改进
294
-
295
- ## 示例6:移动应用用户体验时序图
296
-
297
- ### 业务场景描述
298
- 移动应用的完整用户交互流程,包括客户端、服务器、第三方服务的交互。
299
-
300
- ### 时序图实现
301
-
302
- ```mermaid
303
- sequenceDiagram
304
- participant 用户
305
- participant 移动客户端
306
- participant API网关
307
- participant 认证服务
308
- participant 业务服务
309
- participant 第三方服务
310
- participant 推送服务
311
- participant 数据库
312
-
313
- 用户->>移动客户端: 启动应用
314
- activate 移动客户端
315
- 移动客户端->>API网关: 请求初始化数据
316
- activate API网关
317
-
318
- API网关->>认证服务: 验证用户令牌
319
- activate 认证服务
320
- 认证服务->>数据库: 查询令牌信息
321
- activate 数据库
322
- 数据库-->>认证服务: 令牌有效
323
- deactivate 数据库
324
- 认证服务-->>API网关: 认证通过
325
- deactivate 认证服务
326
-
327
- API网关->>业务服务: 获取用户数据
328
- activate 业务服务
329
- 业务服务->>数据库: 查询用户信息
330
- activate 数据库
331
- 数据库-->>业务服务: 返回用户数据
332
- deactivate 数据库
333
- 业务服务-->>API网关: 返回业务数据
334
- deactivate 业务服务
335
-
336
- API网关-->>移动客户端: 返回初始化数据
337
- deactivate API网关
338
- 移动客户端-->>用户: 显示主界面
339
-
340
- 用户->>移动客户端: 执行业务操作
341
- 移动客户端->>API网关: 提交操作请求
342
- activate API网关
343
-
344
- API网关->>第三方服务: 调用外部接口
345
- activate 第三方服务
346
- 第三方服务-->>API网关: 返回处理结果
347
- deactivate 第三方服务
348
-
349
- API网关->>业务服务: 处理业务逻辑
350
- activate 业务服务
351
- 业务服务->>数据库: 更新业务数据
352
- activate 数据库
353
- 数据库-->>业务服务: 更新成功
354
- deactivate 数据库
355
- 业务服务-->>API网关: 处理完成
356
- deactivate 业务服务
357
-
358
- API网关->>推送服务: 发送推送通知
359
- activate 推送服务
360
- 推送服务->>推送服务: 构建推送消息
361
- 推送服务-->>移动客户端: 推送通知
362
- deactivate 推送服务
363
-
364
- API网关-->>移动客户端: 返回操作结果
365
- deactivate API网关
366
- 移动客户端-->>用户: 显示操作结果
367
- ```
368
-
369
- ### 技术亮点
370
- 1. **多层认证**: 令牌验证和用户状态检查
371
- 2. **第三方集成**: 与外部服务的无缝集成
372
- 3. **实时推送**: 即时通知用户操作结果
373
- 4. **状态管理**: 完善的激活状态管理
374
-
375
- ## 使用指南
376
-
377
- ### 如何选择合适的泳道图类型
378
-
379
- #### 用户旅程图适用于:
380
- - **用户体验分析**: 分析用户在各个环节的体验感受
381
- - **服务设计**: 优化服务流程和触点设计
382
- - **多角色协作**: 展示不同角色在流程中的参与情况
383
- - **情感曲线分析**: 通过评分系统分析用户情感变化
384
-
385
- #### 时序图适用于:
386
- - **系统架构设计**: 展示系统间的交互关系
387
- - **API设计**: 定义接口调用时序和参数
388
- - **问题排查**: 分析系统调用链中的问题点
389
- - **性能优化**: 识别系统瓶颈和优化机会
390
-
391
- ### 定制建议
392
-
393
- 1. **参与者命名**: 使用简洁明了的参与者名称
394
- 2. **消息描述**: 消息描述要具体且易于理解
395
- 3. **阶段划分**: 用户旅程图的阶段要符合业务逻辑
396
- 4. **评分系统**: 评分要真实反映用户体验
397
-
398
- ### 最佳实践
399
-
400
- 1. **保持简洁**: 避免过多的参与者和复杂的交互
401
- 2. **逻辑清晰**: 确保时序逻辑和业务逻辑一致
402
- 3. **完整覆盖**: 覆盖主要的业务流程和异常情况
403
- 4. **持续迭代**: 根据反馈持续优化泳道图设计
404
-
405
- 通过这些示例,您可以快速掌握真正的泳道图设计技巧,并将其应用到实际的系统设计和业务流程分析中。每个示例都经过精心设计,确保语法正确性和实用性。