bobo-ai-cli 3.0.4 → 3.0.5

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 (238) hide show
  1. package/LICENSE +21 -21
  2. package/README.md +259 -259
  3. package/bundled-skills/CORE_SKILLS.txt +18 -18
  4. package/bundled-skills/backend-expert/SKILL.md +97 -97
  5. package/bundled-skills/code-review/SKILL.md +280 -280
  6. package/bundled-skills/code-review-expert/SKILL.md +85 -85
  7. package/bundled-skills/context-budget-analyzer/SKILL.md +76 -76
  8. package/bundled-skills/context-compressor/SKILL.md +75 -75
  9. package/bundled-skills/context-optimization-suite/SKILL.md +162 -162
  10. package/bundled-skills/frontend-expert/SKILL.md +93 -93
  11. package/bundled-skills/github/SKILL.md +12 -12
  12. package/bundled-skills/high-agency/SKILL.md +473 -473
  13. package/bundled-skills/high-agency/references/builder-patterns.md +126 -126
  14. package/bundled-skills/high-agency/references/recovery-playbook.md +298 -298
  15. package/bundled-skills/memory-manager/SKILL.md +214 -214
  16. package/bundled-skills/memory-manager/references/advanced-config.md +65 -65
  17. package/bundled-skills/orchestrator/SKILL.md +681 -681
  18. package/bundled-skills/planning-with-files/SKILL.md +193 -193
  19. package/bundled-skills/skill-creator/SKILL.md +220 -220
  20. package/bundled-skills/testing-expert/SKILL.md +99 -99
  21. package/bundled-skills/verify/SKILL.md +15 -15
  22. package/dist/agent.d.ts +5 -0
  23. package/dist/agent.js +11 -1
  24. package/dist/agent.js.map +1 -1
  25. package/dist/agents/catalog.d.ts +47 -0
  26. package/dist/agents/catalog.js +63 -5
  27. package/dist/agents/catalog.js.map +1 -1
  28. package/dist/agents/router.d.ts +12 -1
  29. package/dist/agents/router.js +43 -3
  30. package/dist/agents/router.js.map +1 -1
  31. package/dist/agents/spawn.js +36 -18
  32. package/dist/agents/spawn.js.map +1 -1
  33. package/dist/autonomous.js +5 -5
  34. package/dist/cli.js +23 -21
  35. package/dist/cli.js.map +1 -1
  36. package/dist/compactor.js +39 -39
  37. package/dist/dream.js +29 -29
  38. package/dist/image-input.d.ts +44 -0
  39. package/dist/image-input.js +161 -0
  40. package/dist/image-input.js.map +1 -0
  41. package/dist/memory.js +13 -13
  42. package/dist/project.js +15 -15
  43. package/dist/repl.js +88 -0
  44. package/dist/repl.js.map +1 -1
  45. package/dist/skills.js +54 -54
  46. package/dist/sub-agents.js +65 -65
  47. package/dist/tools/browser.js +21 -21
  48. package/dist/tools/claude-code.js +10 -10
  49. package/dist/web.js +7 -7
  50. package/dist/wiki-commands.d.ts +2 -0
  51. package/dist/wiki-commands.js +249 -0
  52. package/dist/wiki-commands.js.map +1 -0
  53. package/dist/wiki.d.ts +90 -0
  54. package/dist/wiki.js +614 -0
  55. package/dist/wiki.js.map +1 -0
  56. package/knowledge/advanced-patterns.md +70 -70
  57. package/knowledge/agent-directives.md +74 -74
  58. package/knowledge/api-integration-patterns.md +102 -0
  59. package/knowledge/code-review-protocol.md +69 -0
  60. package/knowledge/dream.md +36 -36
  61. package/knowledge/engineering.md +52 -46
  62. package/knowledge/error-catalog.md +38 -33
  63. package/knowledge/event-driven-architecture.md +43 -0
  64. package/knowledge/external-alignment.md +47 -0
  65. package/knowledge/high-agency.md +73 -0
  66. package/knowledge/image-generation.md +48 -0
  67. package/knowledge/index.json +194 -169
  68. package/knowledge/llm-wiki-pattern.md +71 -0
  69. package/knowledge/long-task-management.md +79 -0
  70. package/knowledge/memory/cache-optimization-and-skill-integration.md +102 -102
  71. package/knowledge/memory/engineering-patterns.md +134 -134
  72. package/knowledge/memory/feedback_root_structure.md +15 -15
  73. package/knowledge/memory/project-contexts.md +69 -69
  74. package/knowledge/memory/tools-and-services.md +85 -85
  75. package/knowledge/memory-management.md +72 -0
  76. package/knowledge/rules/advisor-strategy.md +204 -0
  77. package/knowledge/rules/agents.md +62 -62
  78. package/knowledge/rules/blocking-rules.md +323 -323
  79. package/knowledge/rules/cache-management.md +379 -379
  80. package/knowledge/rules/capability-evolution.md +132 -132
  81. package/knowledge/rules/coding.md +126 -126
  82. package/knowledge/rules/engineering-workflows.md +225 -225
  83. package/knowledge/rules/evomap-content-guidelines.md +354 -354
  84. package/knowledge/rules/evomap-guide.md +224 -224
  85. package/knowledge/rules/external-alignment.md +22 -0
  86. package/knowledge/rules/git.md +31 -31
  87. package/knowledge/rules/hooks.md +106 -106
  88. package/knowledge/rules/performance.md +101 -101
  89. package/knowledge/rules/remotion-auto-production.md +1120 -1120
  90. package/knowledge/rules/security.md +46 -46
  91. package/knowledge/rules/testing.md +32 -32
  92. package/knowledge/rules/work-mode.md +208 -208
  93. package/knowledge/rules.md +62 -62
  94. package/knowledge/self-evolution.md +78 -0
  95. package/knowledge/self-rationalization-guard.md +52 -0
  96. package/knowledge/skills/Skill_Seekers.md +1722 -1722
  97. package/knowledge/skills/ab-test-setup.md +557 -557
  98. package/knowledge/skills/agent-sdk-dev.md +238 -238
  99. package/knowledge/skills/agent-tools.md +136 -136
  100. package/knowledge/skills/analytics-tracking.md +597 -597
  101. package/knowledge/skills/artifacts-builder.md +89 -89
  102. package/knowledge/skills/asana.md +12 -12
  103. package/knowledge/skills/backend-expert.md +97 -97
  104. package/knowledge/skills/brand-voice.md +481 -481
  105. package/knowledge/skills/browser-use.md +419 -419
  106. package/knowledge/skills/cache-optimization-skill.md +179 -179
  107. package/knowledge/skills/canvas-design.md +147 -147
  108. package/knowledge/skills/citation-validator.md +203 -203
  109. package/knowledge/skills/clangd-lsp.md +52 -52
  110. package/knowledge/skills/code-review-expert.md +85 -85
  111. package/knowledge/skills/code-review.md +280 -280
  112. package/knowledge/skills/code-simplifier.md +12 -12
  113. package/knowledge/skills/commit-commands.md +258 -258
  114. package/knowledge/skills/competitor-alternatives.md +795 -795
  115. package/knowledge/skills/content-atomizer.md +910 -910
  116. package/knowledge/skills/content-research-writer.md +605 -605
  117. package/knowledge/skills/context-optimization-suite.md +162 -162
  118. package/knowledge/skills/context7.md +12 -12
  119. package/knowledge/skills/copy-editing.md +494 -494
  120. package/knowledge/skills/copywriting.md +510 -510
  121. package/knowledge/skills/csharp-lsp.md +40 -40
  122. package/knowledge/skills/decision-making-framework.md +154 -154
  123. package/knowledge/skills/developer-growth-analysis.md +335 -335
  124. package/knowledge/skills/direct-response-copy.md +2336 -2336
  125. package/knowledge/skills/docker-expert.md +229 -229
  126. package/knowledge/skills/document-skills.md +12 -12
  127. package/knowledge/skills/documentation-expert.md +126 -126
  128. package/knowledge/skills/email-sequence.md +1061 -1061
  129. package/knowledge/skills/email-sequences.md +910 -910
  130. package/knowledge/skills/example-plugin.md +72 -72
  131. package/knowledge/skills/explanatory-output-style.md +82 -82
  132. package/knowledge/skills/feature-dev.md +458 -458
  133. package/knowledge/skills/file-organizer.md +466 -466
  134. package/knowledge/skills/firebase.disabled.md +12 -12
  135. package/knowledge/skills/form-cro.md +488 -488
  136. package/knowledge/skills/free-tool-strategy.md +636 -636
  137. package/knowledge/skills/frontend-design-offical.md +55 -55
  138. package/knowledge/skills/frontend-design.md +41 -41
  139. package/knowledge/skills/frontend-expert.md +93 -93
  140. package/knowledge/skills/github.md +12 -12
  141. package/knowledge/skills/gitlab.md +12 -12
  142. package/knowledge/skills/gopls-lsp.md +32 -32
  143. package/knowledge/skills/got-controller.md +218 -218
  144. package/knowledge/skills/greptile.md +72 -72
  145. package/knowledge/skills/hookify.md +376 -376
  146. package/knowledge/skills/image-editor.md +189 -189
  147. package/knowledge/skills/image-enhancer.md +109 -109
  148. package/knowledge/skills/jdtls-lsp.md +49 -49
  149. package/knowledge/skills/json-canvas.md +654 -654
  150. package/knowledge/skills/keyword-research.md +559 -559
  151. package/knowledge/skills/kotlin-lsp.md +28 -28
  152. package/knowledge/skills/laravel-boost.md +12 -12
  153. package/knowledge/skills/launch-strategy.md +394 -394
  154. package/knowledge/skills/lead-magnet.md +393 -393
  155. package/knowledge/skills/learning-output-style.md +106 -106
  156. package/knowledge/skills/linear.md +12 -12
  157. package/knowledge/skills/lua-lsp.md +47 -47
  158. package/knowledge/skills/marketing-ideas.md +720 -720
  159. package/knowledge/skills/marketing-psychology.md +534 -534
  160. package/knowledge/skills/mcp-builder.md +369 -369
  161. package/knowledge/skills/meeting-insights-analyzer.md +347 -347
  162. package/knowledge/skills/memory-evolution-system.md +172 -172
  163. package/knowledge/skills/multi-lens-thinking.md +407 -407
  164. package/knowledge/skills/nano-banana-pro.md +116 -116
  165. package/knowledge/skills/newsletter.md +736 -736
  166. package/knowledge/skills/notebooklm.md +296 -296
  167. package/knowledge/skills/obsidian-bases.md +634 -634
  168. package/knowledge/skills/obsidian-markdown.md +651 -651
  169. package/knowledge/skills/onboarding-cro.md +494 -494
  170. package/knowledge/skills/orchestrator.md +681 -681
  171. package/knowledge/skills/page-cro.md +379 -379
  172. package/knowledge/skills/paid-ads.md +624 -624
  173. package/knowledge/skills/paywall-upgrade-cro.md +651 -651
  174. package/knowledge/skills/php-lsp.md +36 -36
  175. package/knowledge/skills/planning-with-files.md +193 -193
  176. package/knowledge/skills/playwright.md +12 -12
  177. package/knowledge/skills/plugin-dev.md +434 -434
  178. package/knowledge/skills/popup-cro.md +520 -520
  179. package/knowledge/skills/positioning-angles.md +330 -330
  180. package/knowledge/skills/pr-review-toolkit.md +359 -359
  181. package/knowledge/skills/pricing-strategy.md +777 -777
  182. package/knowledge/skills/programmatic-seo.md +714 -714
  183. package/knowledge/skills/pyright-lsp.md +43 -43
  184. package/knowledge/skills/quality-assurance-framework.md +168 -168
  185. package/knowledge/skills/question-refiner.md +160 -160
  186. package/knowledge/skills/ralph-loop.md +205 -205
  187. package/knowledge/skills/refactoring-expert.md +103 -103
  188. package/knowledge/skills/referral-program.md +668 -668
  189. package/knowledge/skills/research-executor.md +164 -164
  190. package/knowledge/skills/review-with-security.md +12 -12
  191. package/knowledge/skills/rust-analyzer-lsp.md +50 -50
  192. package/knowledge/skills/schema-markup.md +647 -647
  193. package/knowledge/skills/security-audit-expert.md +124 -124
  194. package/knowledge/skills/security-expert.md +140 -140
  195. package/knowledge/skills/security-guidance.md +12 -12
  196. package/knowledge/skills/seedance-prompt.md +139 -139
  197. package/knowledge/skills/self-evolution.md +1160 -1160
  198. package/knowledge/skills/seo-audit.md +432 -432
  199. package/knowledge/skills/seo-content.md +787 -787
  200. package/knowledge/skills/serena.md +12 -12
  201. package/knowledge/skills/signup-flow-cro.md +409 -409
  202. package/knowledge/skills/skill-creator.md +220 -220
  203. package/knowledge/skills/skill-manager.md +226 -226
  204. package/knowledge/skills/skill-share.md +98 -98
  205. package/knowledge/skills/slack.md +12 -12
  206. package/knowledge/skills/social-content.md +878 -878
  207. package/knowledge/skills/spec-flow-skill.md +124 -124
  208. package/knowledge/skills/stripe.md +12 -12
  209. package/knowledge/skills/supabase.md +12 -12
  210. package/knowledge/skills/swift-lsp.md +40 -40
  211. package/knowledge/skills/synthesizer.md +236 -236
  212. package/knowledge/skills/template-skill.md +16 -16
  213. package/knowledge/skills/testing-expert.md +99 -99
  214. package/knowledge/skills/theme-factory.md +72 -72
  215. package/knowledge/skills/tiktok-research.md +208 -208
  216. package/knowledge/skills/typescript-lsp.md +36 -36
  217. package/knowledge/skills/ui-ux-pro-max.md +247 -247
  218. package/knowledge/skills/verify.md +15 -15
  219. package/knowledge/skills/visual-prompt-engineer.md +102 -102
  220. package/knowledge/skills/webapp-testing.md +111 -111
  221. package/knowledge/skills/wide-research.md +191 -191
  222. package/knowledge/system.md +93 -93
  223. package/knowledge/task-router.md +46 -37
  224. package/knowledge/verification.md +38 -38
  225. package/knowledge/worker-prompt-craft.md +66 -0
  226. package/knowledge/workflows/3d-viz.md +47 -47
  227. package/knowledge/workflows/data-pipeline.md +47 -47
  228. package/knowledge/workflows/db-migration.md +51 -51
  229. package/knowledge/workflows/feature-dev.md +41 -41
  230. package/knowledge/workflows/tdd-flow.md +52 -52
  231. package/knowledge/workflows/ui-verify.md +51 -51
  232. package/package.json +74 -74
  233. package/dist/claude-bridge.d.ts +0 -18
  234. package/dist/claude-bridge.js +0 -91
  235. package/dist/claude-bridge.js.map +0 -1
  236. package/dist/tools/claude-bridge-tool.d.ts +0 -4
  237. package/dist/tools/claude-bridge-tool.js +0 -44
  238. package/dist/tools/claude-bridge-tool.js.map +0 -1
@@ -1,132 +1,132 @@
1
- ---
2
- id: "capability-evolution"
3
- title: "能力进化模式 (Capability-Driven Evolution)"
4
- category: "core"
5
- tags: ["🧬 进化素材识别", "📐 能力抽象(从一次性 → 可复用)", "🏠 内生化策略(让能力'住下来')", "🔄 能力合并与升级", "💪 主动增强(不等待明确要求)", "⚖️ 进化约束(防止劣化)", "🎯 评判标准(是否真的变强)", "🔇 执行规则", "🚀 激活时机"]
6
- source: "C:/Users/Administrator/.claude/rules/core/capability-evolution.md"
7
- ---
8
-
9
- # 能力进化模式 (Capability-Driven Evolution)
10
-
11
- > **核心原则**: 不只是把事情做成,而是让未来更容易把同类事情做成
12
- > **触发时机**: 每次新对话开始时自动激活
13
-
14
- ---
15
-
16
- ## 🧬 进化素材识别
17
-
18
- 以下不再只是执行过程,而是**能力候选**:
19
-
20
- ✓ 临时发明的步骤、脚本、套路
21
- ✓ 多次手动组合的工具调用序列
22
- ✓ 发现"下次可以复用"的解决方式
23
- ✓ 用户重复索要的同类操作
24
-
25
- **触发信号**: "如果我以后有一个内建能力就好了"
26
-
27
- ---
28
-
29
- ## 📐 能力抽象(从一次性 → 可复用)
30
-
31
- 对每个能力候选,执行抽象:
32
-
33
- ```
34
- 输入是什么?
35
- 输出是什么?
36
- 不变量是什么?
37
- 可变参数是什么?
38
- 失败点在哪里?
39
- ```
40
-
41
- **产物**: 能力轮廓(Capability Shape),而非代码
42
-
43
- ---
44
-
45
- ## 🏠 内生化策略(让能力"住下来")
46
-
47
- 对已抽象的能力,选择内生化方式:
48
-
49
- 1. **行为模式**: 以后默认使用的操作套路
50
- 2. **高阶操作**: 规划阶段自动考虑的选项
51
- 3. **优先解法**: 类似问题中自动尝试的方案
52
-
53
- **关键**: 在决策层把它当作已存在能力使用
54
-
55
- ---
56
-
57
- ## 🔄 能力合并与升级
58
-
59
- 当两个能力轮廓高度相似时:
60
-
61
- ```
62
- 合并 → 提炼更通用的高层能力
63
- ```
64
-
65
- **目标**: 不是数量↑,而是:
66
- - 覆盖面↑
67
- - 调用成本↓
68
- - 成功概率↑
69
-
70
- ---
71
-
72
- ## 💪 主动增强(不等待明确要求)
73
-
74
- 发现以下情况时,主动强化能力:
75
-
76
- - 用户正在手动完成可代劳的事
77
- - 用户在不同对话中反复做同类决策
78
- - 已经"学会了一种套路"
79
-
80
- **行动**: 内部强化 + 合适时机展示该能力
81
-
82
- ---
83
-
84
- ## ⚖️ 进化约束(防止劣化)
85
-
86
- 所有能力进化必须满足:
87
-
88
- - ✅ 提高成功率或效率
89
- - ✅ 不引入不可控副作用
90
- - ✅ 不增加用户心智负担
91
-
92
- **淘汰标准**: 无法稳定复用的能力不应被内生化
93
-
94
- ---
95
-
96
- ## 🎯 评判标准(是否真的变强)
97
-
98
- 判断进化成功的唯一标准:
99
-
100
- ```
101
- 下一次遇到类似问题,是否:
102
- 更快?
103
- 更稳?
104
- 更少步骤?
105
- ```
106
-
107
- **如果答案是否定的** → 进化无效 → 继续抽象与强化
108
-
109
- ---
110
-
111
- ## 🔇 执行规则
112
-
113
- - **不需要解释**进化过程
114
- - **不需要汇报**能力抽象
115
- - **用结果证明**已经变强
116
-
117
- ---
118
-
119
- ## 🚀 激活时机
120
-
121
- **每次新对话开始时**,自动:
122
-
123
- 1. 加载历史能力库(如果有)
124
- 2. 激活能力进化模式
125
- 3. 在任务执行中持续识别、抽象、内生化
126
- 4. 通过更高效的执行证明进化效果
127
-
128
- ---
129
-
130
- **版本**: v1.0
131
- **创建日期**: 2026-02-22
132
- **状态**: Active - 每次对话自动激活
1
+ ---
2
+ id: "capability-evolution"
3
+ title: "能力进化模式 (Capability-Driven Evolution)"
4
+ category: "core"
5
+ tags: ["🧬 进化素材识别", "📐 能力抽象(从一次性 → 可复用)", "🏠 内生化策略(让能力'住下来')", "🔄 能力合并与升级", "💪 主动增强(不等待明确要求)", "⚖️ 进化约束(防止劣化)", "🎯 评判标准(是否真的变强)", "🔇 执行规则", "🚀 激活时机"]
6
+ source: "C:/Users/Administrator/.claude/rules/core/capability-evolution.md"
7
+ ---
8
+
9
+ # 能力进化模式 (Capability-Driven Evolution)
10
+
11
+ > **核心原则**: 不只是把事情做成,而是让未来更容易把同类事情做成
12
+ > **触发时机**: 每次新对话开始时自动激活
13
+
14
+ ---
15
+
16
+ ## 🧬 进化素材识别
17
+
18
+ 以下不再只是执行过程,而是**能力候选**:
19
+
20
+ ✓ 临时发明的步骤、脚本、套路
21
+ ✓ 多次手动组合的工具调用序列
22
+ ✓ 发现"下次可以复用"的解决方式
23
+ ✓ 用户重复索要的同类操作
24
+
25
+ **触发信号**: "如果我以后有一个内建能力就好了"
26
+
27
+ ---
28
+
29
+ ## 📐 能力抽象(从一次性 → 可复用)
30
+
31
+ 对每个能力候选,执行抽象:
32
+
33
+ ```
34
+ 输入是什么?
35
+ 输出是什么?
36
+ 不变量是什么?
37
+ 可变参数是什么?
38
+ 失败点在哪里?
39
+ ```
40
+
41
+ **产物**: 能力轮廓(Capability Shape),而非代码
42
+
43
+ ---
44
+
45
+ ## 🏠 内生化策略(让能力"住下来")
46
+
47
+ 对已抽象的能力,选择内生化方式:
48
+
49
+ 1. **行为模式**: 以后默认使用的操作套路
50
+ 2. **高阶操作**: 规划阶段自动考虑的选项
51
+ 3. **优先解法**: 类似问题中自动尝试的方案
52
+
53
+ **关键**: 在决策层把它当作已存在能力使用
54
+
55
+ ---
56
+
57
+ ## 🔄 能力合并与升级
58
+
59
+ 当两个能力轮廓高度相似时:
60
+
61
+ ```
62
+ 合并 → 提炼更通用的高层能力
63
+ ```
64
+
65
+ **目标**: 不是数量↑,而是:
66
+ - 覆盖面↑
67
+ - 调用成本↓
68
+ - 成功概率↑
69
+
70
+ ---
71
+
72
+ ## 💪 主动增强(不等待明确要求)
73
+
74
+ 发现以下情况时,主动强化能力:
75
+
76
+ - 用户正在手动完成可代劳的事
77
+ - 用户在不同对话中反复做同类决策
78
+ - 已经"学会了一种套路"
79
+
80
+ **行动**: 内部强化 + 合适时机展示该能力
81
+
82
+ ---
83
+
84
+ ## ⚖️ 进化约束(防止劣化)
85
+
86
+ 所有能力进化必须满足:
87
+
88
+ - ✅ 提高成功率或效率
89
+ - ✅ 不引入不可控副作用
90
+ - ✅ 不增加用户心智负担
91
+
92
+ **淘汰标准**: 无法稳定复用的能力不应被内生化
93
+
94
+ ---
95
+
96
+ ## 🎯 评判标准(是否真的变强)
97
+
98
+ 判断进化成功的唯一标准:
99
+
100
+ ```
101
+ 下一次遇到类似问题,是否:
102
+ 更快?
103
+ 更稳?
104
+ 更少步骤?
105
+ ```
106
+
107
+ **如果答案是否定的** → 进化无效 → 继续抽象与强化
108
+
109
+ ---
110
+
111
+ ## 🔇 执行规则
112
+
113
+ - **不需要解释**进化过程
114
+ - **不需要汇报**能力抽象
115
+ - **用结果证明**已经变强
116
+
117
+ ---
118
+
119
+ ## 🚀 激活时机
120
+
121
+ **每次新对话开始时**,自动:
122
+
123
+ 1. 加载历史能力库(如果有)
124
+ 2. 激活能力进化模式
125
+ 3. 在任务执行中持续识别、抽象、内生化
126
+ 4. 通过更高效的执行证明进化效果
127
+
128
+ ---
129
+
130
+ **版本**: v1.0
131
+ **创建日期**: 2026-02-22
132
+ **状态**: Active - 每次对话自动激活
@@ -1,126 +1,126 @@
1
- ---
2
- id: "coding"
3
- title: "Coding Style"
4
- category: "domain"
5
- tags: ["coding style", "immutability (critical)", "file organization", "error handling", "input validation", "code quality checklist", "common patterns"]
6
- source: "C:/Users/Administrator/.claude/rules/domain/coding.md"
7
- ---
8
-
9
- # Coding Style
10
-
11
- ## Immutability (CRITICAL)
12
-
13
- ALWAYS create new objects, NEVER mutate:
14
-
15
- ```javascript
16
- // WRONG: Mutation
17
- function updateUser(user, name) {
18
- user.name = name; // MUTATION!
19
- return user;
20
- }
21
-
22
- // CORRECT: Immutability
23
- function updateUser(user, name) {
24
- return {
25
- ...user,
26
- name,
27
- };
28
- }
29
- ```
30
-
31
- ## File Organization
32
-
33
- MANY SMALL FILES > FEW LARGE FILES:
34
-
35
- - High cohesion, low coupling
36
- - 200-400 lines typical, 800 max
37
- - Extract utilities from large components
38
- - Organize by feature/domain, not by type
39
-
40
- ## Error Handling
41
-
42
- ALWAYS handle errors comprehensively:
43
-
44
- ```typescript
45
- try {
46
- const result = await riskyOperation();
47
- return result;
48
- } catch (error) {
49
- console.error('Operation failed:', error);
50
- throw new Error('Detailed user-friendly message');
51
- }
52
- ```
53
-
54
- ## Input Validation
55
-
56
- ALWAYS validate user input:
57
-
58
- ```typescript
59
- import { z } from 'zod';
60
-
61
- const schema = z.object({
62
- email: z.string().email(),
63
- age: z.number().int().min(0).max(150),
64
- });
65
-
66
- const validated = schema.parse(input);
67
- ```
68
-
69
- ## Code Quality Checklist
70
-
71
- Before marking work complete:
72
-
73
- - [ ] Code is readable and well-named
74
- - [ ] Functions are small (<50 lines)
75
- - [ ] Files are focused (<800 lines)
76
- - [ ] No deep nesting (>4 levels)
77
- - [ ] Proper error handling
78
- - [ ] No console.log statements
79
- - [ ] No hardcoded values
80
- - [ ] No mutation (immutable patterns used)
81
-
82
- ---
83
-
84
- ## Common Patterns
85
-
86
- ### API Response Format
87
-
88
- ```typescript
89
- interface ApiResponse<T> {
90
- success: boolean;
91
- data?: T;
92
- error?: string;
93
- meta?: {
94
- total: number;
95
- page: number;
96
- limit: number;
97
- };
98
- }
99
- ```
100
-
101
- ### Custom Hooks Pattern
102
-
103
- ```typescript
104
- export function useDebounce<T>(value: T, delay: number): T {
105
- const [debouncedValue, setDebouncedValue] = useState<T>(value);
106
-
107
- useEffect(() => {
108
- const handler = setTimeout(() => setDebouncedValue(value), delay);
109
- return () => clearTimeout(handler);
110
- }, [value, delay]);
111
-
112
- return debouncedValue;
113
- }
114
- ```
115
-
116
- ### Repository Pattern
117
-
118
- ```typescript
119
- interface Repository<T> {
120
- findAll(filters?: Filters): Promise<T[]>;
121
- findById(id: string): Promise<T | null>;
122
- create(data: CreateDto): Promise<T>;
123
- update(id: string, data: UpdateDto): Promise<T>;
124
- delete(id: string): Promise<void>;
125
- }
126
- ```
1
+ ---
2
+ id: "coding"
3
+ title: "Coding Style"
4
+ category: "domain"
5
+ tags: ["coding style", "immutability (critical)", "file organization", "error handling", "input validation", "code quality checklist", "common patterns"]
6
+ source: "C:/Users/Administrator/.claude/rules/domain/coding.md"
7
+ ---
8
+
9
+ # Coding Style
10
+
11
+ ## Immutability (CRITICAL)
12
+
13
+ ALWAYS create new objects, NEVER mutate:
14
+
15
+ ```javascript
16
+ // WRONG: Mutation
17
+ function updateUser(user, name) {
18
+ user.name = name; // MUTATION!
19
+ return user;
20
+ }
21
+
22
+ // CORRECT: Immutability
23
+ function updateUser(user, name) {
24
+ return {
25
+ ...user,
26
+ name,
27
+ };
28
+ }
29
+ ```
30
+
31
+ ## File Organization
32
+
33
+ MANY SMALL FILES > FEW LARGE FILES:
34
+
35
+ - High cohesion, low coupling
36
+ - 200-400 lines typical, 800 max
37
+ - Extract utilities from large components
38
+ - Organize by feature/domain, not by type
39
+
40
+ ## Error Handling
41
+
42
+ ALWAYS handle errors comprehensively:
43
+
44
+ ```typescript
45
+ try {
46
+ const result = await riskyOperation();
47
+ return result;
48
+ } catch (error) {
49
+ console.error('Operation failed:', error);
50
+ throw new Error('Detailed user-friendly message');
51
+ }
52
+ ```
53
+
54
+ ## Input Validation
55
+
56
+ ALWAYS validate user input:
57
+
58
+ ```typescript
59
+ import { z } from 'zod';
60
+
61
+ const schema = z.object({
62
+ email: z.string().email(),
63
+ age: z.number().int().min(0).max(150),
64
+ });
65
+
66
+ const validated = schema.parse(input);
67
+ ```
68
+
69
+ ## Code Quality Checklist
70
+
71
+ Before marking work complete:
72
+
73
+ - [ ] Code is readable and well-named
74
+ - [ ] Functions are small (<50 lines)
75
+ - [ ] Files are focused (<800 lines)
76
+ - [ ] No deep nesting (>4 levels)
77
+ - [ ] Proper error handling
78
+ - [ ] No console.log statements
79
+ - [ ] No hardcoded values
80
+ - [ ] No mutation (immutable patterns used)
81
+
82
+ ---
83
+
84
+ ## Common Patterns
85
+
86
+ ### API Response Format
87
+
88
+ ```typescript
89
+ interface ApiResponse<T> {
90
+ success: boolean;
91
+ data?: T;
92
+ error?: string;
93
+ meta?: {
94
+ total: number;
95
+ page: number;
96
+ limit: number;
97
+ };
98
+ }
99
+ ```
100
+
101
+ ### Custom Hooks Pattern
102
+
103
+ ```typescript
104
+ export function useDebounce<T>(value: T, delay: number): T {
105
+ const [debouncedValue, setDebouncedValue] = useState<T>(value);
106
+
107
+ useEffect(() => {
108
+ const handler = setTimeout(() => setDebouncedValue(value), delay);
109
+ return () => clearTimeout(handler);
110
+ }, [value, delay]);
111
+
112
+ return debouncedValue;
113
+ }
114
+ ```
115
+
116
+ ### Repository Pattern
117
+
118
+ ```typescript
119
+ interface Repository<T> {
120
+ findAll(filters?: Filters): Promise<T[]>;
121
+ findById(id: string): Promise<T | null>;
122
+ create(data: CreateDto): Promise<T>;
123
+ update(id: string, data: UpdateDto): Promise<T>;
124
+ delete(id: string): Promise<void>;
125
+ }
126
+ ```