bobo-ai-cli 1.0.1

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 (234) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +216 -0
  3. package/dist/agent.d.ts +9 -0
  4. package/dist/agent.js +144 -0
  5. package/dist/agent.js.map +1 -0
  6. package/dist/config.d.ts +15 -0
  7. package/dist/config.js +76 -0
  8. package/dist/config.js.map +1 -0
  9. package/dist/index.d.ts +2 -0
  10. package/dist/index.js +366 -0
  11. package/dist/index.js.map +1 -0
  12. package/dist/knowledge-commands.d.ts +2 -0
  13. package/dist/knowledge-commands.js +40 -0
  14. package/dist/knowledge-commands.js.map +1 -0
  15. package/dist/knowledge.d.ts +17 -0
  16. package/dist/knowledge.js +112 -0
  17. package/dist/knowledge.js.map +1 -0
  18. package/dist/memory.d.ts +17 -0
  19. package/dist/memory.js +215 -0
  20. package/dist/memory.js.map +1 -0
  21. package/dist/planner.d.ts +22 -0
  22. package/dist/planner.js +130 -0
  23. package/dist/planner.js.map +1 -0
  24. package/dist/project.d.ts +25 -0
  25. package/dist/project.js +117 -0
  26. package/dist/project.js.map +1 -0
  27. package/dist/rules-commands.d.ts +2 -0
  28. package/dist/rules-commands.js +51 -0
  29. package/dist/rules-commands.js.map +1 -0
  30. package/dist/skills.d.ts +28 -0
  31. package/dist/skills.js +349 -0
  32. package/dist/skills.js.map +1 -0
  33. package/dist/structured/loader.d.ts +19 -0
  34. package/dist/structured/loader.js +147 -0
  35. package/dist/structured/loader.js.map +1 -0
  36. package/dist/structured/paths.d.ts +2 -0
  37. package/dist/structured/paths.js +14 -0
  38. package/dist/structured/paths.js.map +1 -0
  39. package/dist/structured/project-scaffold.d.ts +7 -0
  40. package/dist/structured/project-scaffold.js +60 -0
  41. package/dist/structured/project-scaffold.js.map +1 -0
  42. package/dist/structured/render-markdown.d.ts +37 -0
  43. package/dist/structured/render-markdown.js +47 -0
  44. package/dist/structured/render-markdown.js.map +1 -0
  45. package/dist/structured/render-table.d.ts +1 -0
  46. package/dist/structured/render-table.js +15 -0
  47. package/dist/structured/render-table.js.map +1 -0
  48. package/dist/structured/search.d.ts +10 -0
  49. package/dist/structured/search.js +104 -0
  50. package/dist/structured/search.js.map +1 -0
  51. package/dist/structured/skill-runner.d.ts +15 -0
  52. package/dist/structured/skill-runner.js +60 -0
  53. package/dist/structured/skill-runner.js.map +1 -0
  54. package/dist/structured/types.d.ts +212 -0
  55. package/dist/structured/types.js +97 -0
  56. package/dist/structured/types.js.map +1 -0
  57. package/dist/structured-skills-commands.d.ts +3 -0
  58. package/dist/structured-skills-commands.js +126 -0
  59. package/dist/structured-skills-commands.js.map +1 -0
  60. package/dist/structured-template-commands.d.ts +2 -0
  61. package/dist/structured-template-commands.js +34 -0
  62. package/dist/structured-template-commands.js.map +1 -0
  63. package/dist/tools/index.d.ts +3 -0
  64. package/dist/tools/index.js +450 -0
  65. package/dist/tools/index.js.map +1 -0
  66. package/dist/ui.d.ts +19 -0
  67. package/dist/ui.js +72 -0
  68. package/dist/ui.js.map +1 -0
  69. package/dist/web.d.ts +4 -0
  70. package/dist/web.js +124 -0
  71. package/dist/web.js.map +1 -0
  72. package/knowledge/advanced-patterns.md +70 -0
  73. package/knowledge/agent-directives.md +74 -0
  74. package/knowledge/dream.md +36 -0
  75. package/knowledge/engineering.md +46 -0
  76. package/knowledge/error-catalog.md +33 -0
  77. package/knowledge/index.json +170 -0
  78. package/knowledge/memory/cache-optimization-and-skill-integration.md +102 -0
  79. package/knowledge/memory/engineering-patterns.md +134 -0
  80. package/knowledge/memory/feedback_root_structure.md +16 -0
  81. package/knowledge/memory/project-contexts.md +69 -0
  82. package/knowledge/memory/tools-and-services.md +85 -0
  83. package/knowledge/rules/agents.md +62 -0
  84. package/knowledge/rules/blocking-rules.md +323 -0
  85. package/knowledge/rules/cache-management.md +379 -0
  86. package/knowledge/rules/capability-evolution.md +132 -0
  87. package/knowledge/rules/coding.md +126 -0
  88. package/knowledge/rules/engineering-workflows.md +225 -0
  89. package/knowledge/rules/evomap-content-guidelines.md +354 -0
  90. package/knowledge/rules/evomap-guide.md +224 -0
  91. package/knowledge/rules/git.md +31 -0
  92. package/knowledge/rules/hooks.md +106 -0
  93. package/knowledge/rules/performance.md +101 -0
  94. package/knowledge/rules/remotion-auto-production.md +1120 -0
  95. package/knowledge/rules/security.md +46 -0
  96. package/knowledge/rules/testing.md +32 -0
  97. package/knowledge/rules/work-mode.md +208 -0
  98. package/knowledge/rules.md +62 -0
  99. package/knowledge/skills/Skill_Seekers.md +1722 -0
  100. package/knowledge/skills/ab-test-setup.md +557 -0
  101. package/knowledge/skills/agent-sdk-dev.md +238 -0
  102. package/knowledge/skills/agent-tools.md +136 -0
  103. package/knowledge/skills/analytics-tracking.md +597 -0
  104. package/knowledge/skills/artifacts-builder.md +89 -0
  105. package/knowledge/skills/asana.md +13 -0
  106. package/knowledge/skills/backend-expert.md +97 -0
  107. package/knowledge/skills/brand-voice.md +481 -0
  108. package/knowledge/skills/browser-use.md +419 -0
  109. package/knowledge/skills/cache-optimization-skill.md +179 -0
  110. package/knowledge/skills/canvas-design.md +147 -0
  111. package/knowledge/skills/citation-validator.md +203 -0
  112. package/knowledge/skills/clangd-lsp.md +52 -0
  113. package/knowledge/skills/code-review-expert.md +85 -0
  114. package/knowledge/skills/code-review.md +280 -0
  115. package/knowledge/skills/code-simplifier.md +13 -0
  116. package/knowledge/skills/commit-commands.md +258 -0
  117. package/knowledge/skills/competitor-alternatives.md +795 -0
  118. package/knowledge/skills/content-atomizer.md +910 -0
  119. package/knowledge/skills/content-research-writer.md +605 -0
  120. package/knowledge/skills/context-optimization-suite.md +162 -0
  121. package/knowledge/skills/context7.md +13 -0
  122. package/knowledge/skills/copy-editing.md +494 -0
  123. package/knowledge/skills/copywriting.md +510 -0
  124. package/knowledge/skills/csharp-lsp.md +40 -0
  125. package/knowledge/skills/decision-making-framework.md +154 -0
  126. package/knowledge/skills/developer-growth-analysis.md +335 -0
  127. package/knowledge/skills/direct-response-copy.md +2336 -0
  128. package/knowledge/skills/docker-expert.md +229 -0
  129. package/knowledge/skills/document-skills.md +13 -0
  130. package/knowledge/skills/documentation-expert.md +126 -0
  131. package/knowledge/skills/email-sequence.md +1061 -0
  132. package/knowledge/skills/email-sequences.md +910 -0
  133. package/knowledge/skills/example-plugin.md +72 -0
  134. package/knowledge/skills/explanatory-output-style.md +82 -0
  135. package/knowledge/skills/feature-dev.md +458 -0
  136. package/knowledge/skills/file-organizer.md +466 -0
  137. package/knowledge/skills/firebase.disabled.md +13 -0
  138. package/knowledge/skills/form-cro.md +488 -0
  139. package/knowledge/skills/free-tool-strategy.md +636 -0
  140. package/knowledge/skills/frontend-design-offical.md +55 -0
  141. package/knowledge/skills/frontend-design.md +41 -0
  142. package/knowledge/skills/frontend-expert.md +93 -0
  143. package/knowledge/skills/github.md +13 -0
  144. package/knowledge/skills/gitlab.md +13 -0
  145. package/knowledge/skills/gopls-lsp.md +32 -0
  146. package/knowledge/skills/got-controller.md +218 -0
  147. package/knowledge/skills/greptile.md +72 -0
  148. package/knowledge/skills/hookify.md +376 -0
  149. package/knowledge/skills/image-editor.md +189 -0
  150. package/knowledge/skills/image-enhancer.md +109 -0
  151. package/knowledge/skills/jdtls-lsp.md +49 -0
  152. package/knowledge/skills/json-canvas.md +654 -0
  153. package/knowledge/skills/keyword-research.md +559 -0
  154. package/knowledge/skills/kotlin-lsp.md +28 -0
  155. package/knowledge/skills/laravel-boost.md +13 -0
  156. package/knowledge/skills/launch-strategy.md +394 -0
  157. package/knowledge/skills/lead-magnet.md +393 -0
  158. package/knowledge/skills/learning-output-style.md +106 -0
  159. package/knowledge/skills/linear.md +13 -0
  160. package/knowledge/skills/lua-lsp.md +47 -0
  161. package/knowledge/skills/marketing-ideas.md +720 -0
  162. package/knowledge/skills/marketing-psychology.md +534 -0
  163. package/knowledge/skills/mcp-builder.md +369 -0
  164. package/knowledge/skills/meeting-insights-analyzer.md +347 -0
  165. package/knowledge/skills/memory-evolution-system.md +172 -0
  166. package/knowledge/skills/multi-lens-thinking.md +407 -0
  167. package/knowledge/skills/nano-banana-pro.md +116 -0
  168. package/knowledge/skills/newsletter.md +736 -0
  169. package/knowledge/skills/notebooklm.md +296 -0
  170. package/knowledge/skills/obsidian-bases.md +634 -0
  171. package/knowledge/skills/obsidian-markdown.md +651 -0
  172. package/knowledge/skills/onboarding-cro.md +494 -0
  173. package/knowledge/skills/orchestrator.md +681 -0
  174. package/knowledge/skills/page-cro.md +379 -0
  175. package/knowledge/skills/paid-ads.md +624 -0
  176. package/knowledge/skills/paywall-upgrade-cro.md +651 -0
  177. package/knowledge/skills/php-lsp.md +36 -0
  178. package/knowledge/skills/planning-with-files.md +193 -0
  179. package/knowledge/skills/playwright.md +13 -0
  180. package/knowledge/skills/plugin-dev.md +434 -0
  181. package/knowledge/skills/popup-cro.md +520 -0
  182. package/knowledge/skills/positioning-angles.md +330 -0
  183. package/knowledge/skills/pr-review-toolkit.md +359 -0
  184. package/knowledge/skills/pricing-strategy.md +777 -0
  185. package/knowledge/skills/programmatic-seo.md +714 -0
  186. package/knowledge/skills/pyright-lsp.md +43 -0
  187. package/knowledge/skills/quality-assurance-framework.md +168 -0
  188. package/knowledge/skills/question-refiner.md +160 -0
  189. package/knowledge/skills/ralph-loop.md +205 -0
  190. package/knowledge/skills/refactoring-expert.md +103 -0
  191. package/knowledge/skills/referral-program.md +668 -0
  192. package/knowledge/skills/research-executor.md +164 -0
  193. package/knowledge/skills/review-with-security.md +12 -0
  194. package/knowledge/skills/rust-analyzer-lsp.md +50 -0
  195. package/knowledge/skills/schema-markup.md +647 -0
  196. package/knowledge/skills/security-audit-expert.md +124 -0
  197. package/knowledge/skills/security-expert.md +140 -0
  198. package/knowledge/skills/security-guidance.md +13 -0
  199. package/knowledge/skills/seedance-prompt.md +139 -0
  200. package/knowledge/skills/self-evolution.md +1160 -0
  201. package/knowledge/skills/seo-audit.md +432 -0
  202. package/knowledge/skills/seo-content.md +787 -0
  203. package/knowledge/skills/serena.md +13 -0
  204. package/knowledge/skills/signup-flow-cro.md +409 -0
  205. package/knowledge/skills/skill-creator.md +220 -0
  206. package/knowledge/skills/skill-manager.md +226 -0
  207. package/knowledge/skills/skill-share.md +98 -0
  208. package/knowledge/skills/slack.md +13 -0
  209. package/knowledge/skills/social-content.md +878 -0
  210. package/knowledge/skills/spec-flow-skill.md +124 -0
  211. package/knowledge/skills/stripe.md +13 -0
  212. package/knowledge/skills/supabase.md +13 -0
  213. package/knowledge/skills/swift-lsp.md +40 -0
  214. package/knowledge/skills/synthesizer.md +236 -0
  215. package/knowledge/skills/template-skill.md +16 -0
  216. package/knowledge/skills/testing-expert.md +99 -0
  217. package/knowledge/skills/theme-factory.md +72 -0
  218. package/knowledge/skills/tiktok-research.md +208 -0
  219. package/knowledge/skills/typescript-lsp.md +36 -0
  220. package/knowledge/skills/ui-ux-pro-max.md +247 -0
  221. package/knowledge/skills/verify.md +15 -0
  222. package/knowledge/skills/visual-prompt-engineer.md +102 -0
  223. package/knowledge/skills/webapp-testing.md +111 -0
  224. package/knowledge/skills/wide-research.md +191 -0
  225. package/knowledge/system.md +93 -0
  226. package/knowledge/task-router.md +37 -0
  227. package/knowledge/verification.md +38 -0
  228. package/knowledge/workflows/3d-viz.md +47 -0
  229. package/knowledge/workflows/data-pipeline.md +47 -0
  230. package/knowledge/workflows/db-migration.md +51 -0
  231. package/knowledge/workflows/feature-dev.md +41 -0
  232. package/knowledge/workflows/tdd-flow.md +52 -0
  233. package/knowledge/workflows/ui-verify.md +51 -0
  234. package/package.json +60 -0
@@ -0,0 +1,1160 @@
1
+ ---
2
+ id: "self-evolution"
3
+ title: "Self-Evolution Skill - 技能自我进化系统"
4
+ category: "agent-engineering"
5
+ tags: ["🎯 核心概念", "🏗️ 架构设计", "📊 数据收集机制", "📦 实现状态", "优化权重(分析最近 30 天数据)", "a/b 测试(对比两个版本)", "在浏览器中打开 dashboard.html", "查看帮助"]
6
+ triggers: []
7
+ dependencies: []
8
+ source: "E:/Bobo's Coding cache/.claude/skills/self-evolution"
9
+ ---
10
+
11
+ # Self-Evolution Skill - 技能自我进化系统
12
+
13
+ ## 🎯 核心概念
14
+
15
+ Self-Evolution 是一个**元级 (Meta-level) Skill**,能够监控、分析和优化所有其他技能的表现,实现技能系统的自我进化和持续改进。
16
+
17
+ ### 核心能力
18
+
19
+ 1. **质量评估** - 分析生成的提示词和输出质量
20
+ 2. **反馈学习** - 从用户修改和评价中学习
21
+ 3. **模式发现** - 识别高频组合和成功模式
22
+ 4. **权重优化** - 自动调整元素复用性评分
23
+ 5. **框架进化** - 改进 skill 配置和规则
24
+ 6. **知识迁移** - 跨领域知识复用和迁移
25
+
26
+ ---
27
+
28
+ ## 🏗️ 架构设计
29
+
30
+ ```
31
+ Self-Evolution Skill
32
+ ├── 模块1: 质量评估器 (Quality Evaluator)
33
+ │ └── 分析生成内容的质量指标
34
+ ├── 模块2: 反馈学习器 (Feedback Learner)
35
+ │ └── 从用户修改中提取改进点
36
+ ├── 模块3: 模式发现器 (Pattern Discoverer)
37
+ │ └── 识别高频元素组合和成功模式
38
+ ├── 模块4: 权重优化器 (Weight Optimizer)
39
+ │ └── 自动调整元素复用性评分
40
+ ├── 模块5: 框架进化器 (Framework Evolver)
41
+ │ └── 优化 skill 配置和规则
42
+ └── 模块6: 知识迁移器 (Knowledge Transferer)
43
+ └── 跨领域知识复用和迁移
44
+ ```
45
+
46
+ ---
47
+
48
+ ## 📊 数据收集机制
49
+
50
+ ### 自动收集数据
51
+
52
+ 每次 skill 执行时自动记录:
53
+
54
+ ```json
55
+ {
56
+ "session_id": "sess_20260110_001",
57
+ "timestamp": "2026-01-10T10:30:00Z",
58
+ "skill_name": "ui-ux-pro-max",
59
+ "trigger": {
60
+ "user_request": "设计 SaaS 定价页面",
61
+ "detected_keywords": ["saas", "pricing", "page", "design"],
62
+ "context": {
63
+ "tech_stack": "html-tailwind",
64
+ "project_type": "landing-page"
65
+ }
66
+ },
67
+ "execution": {
68
+ "searches_performed": [
69
+ { "domain": "product", "query": "saas pricing", "results": 3 },
70
+ { "domain": "style", "query": "minimalism modern", "results": 5 },
71
+ { "domain": "color", "query": "saas", "results": 2 }
72
+ ],
73
+ "elements_used": {
74
+ "styles": ["minimalism", "glassmorphism"],
75
+ "colors": ["#0F172A", "#3B82F6", "#F3F4F6"],
76
+ "fonts": ["Inter", "Space Grotesk"],
77
+ "components": ["pricing-card", "cta-button", "feature-grid"]
78
+ },
79
+ "duration_ms": 1250
80
+ },
81
+ "output": {
82
+ "code_lines": 450,
83
+ "components_count": 8,
84
+ "has_responsive": true,
85
+ "has_dark_mode": true
86
+ },
87
+ "user_feedback": {
88
+ "modified": false,
89
+ "rating": null,
90
+ "comments": []
91
+ }
92
+ }
93
+ ```
94
+
95
+ ### 反馈收集方式
96
+
97
+ 1. **隐式反馈** - 自动检测用户修改
98
+ - 代码修改率(修改行数 / 总行数)
99
+ - 修改类型(样式、结构、逻辑)
100
+ - 修改时间(生成后多久修改)
101
+
102
+ 2. **显式反馈** - 用户主动评价
103
+ - 质量评分(1-5星)
104
+ - 具体问题标注
105
+ - 改进建议
106
+
107
+ 3. **使用反馈** - 长期使用数据
108
+ - 复用频率
109
+ - 迭代次数
110
+ - 最终保留率
111
+
112
+ ---
113
+
114
+ ## 📦 实现状态
115
+
116
+ ### ✅ Phase 1: 数据收集系统(已完成)
117
+
118
+ **状态**: 生产就绪
119
+
120
+ **包含组件**:
121
+
122
+ - `hooks/record-execution.js` - PostToolUse Hook,自动记录执行数据
123
+ - `hooks/collect-feedback.js` - SessionEnd Hook,收集用户反馈
124
+ - `hooks/detect-modifications.js` - OnFileEdit Hook,实时追踪修改
125
+ - `scripts/cleanup.py` - 数据清理和归档工具
126
+ - `scripts/weekly_report.py` - 周报生成工具
127
+ - `config.yaml` - 统一配置文件
128
+ - `data/` - 数据存储目录结构
129
+
130
+ **数据流**:
131
+
132
+ ```
133
+ Skill 执行 → record-execution.js → 质量评估 → 保存执行记录
134
+ 用户修改 → detect-modifications.js → 追踪修改 → 保存修改记录
135
+ 会话结束 → collect-feedback.js → 分析满意度 → 保存反馈记录
136
+ ```
137
+
138
+ ### ✅ Phase 2: 权重优化系统(已完成)
139
+
140
+ **状态**: 生产就绪
141
+
142
+ **包含组件**:
143
+
144
+ - `scripts/weight_optimizer.py` - 权重优化主模块
145
+ - 基于质量和使用频率计算权重
146
+ - 时间衰减(半衰期 60 天)
147
+ - 平滑因子防止过度波动
148
+ - 支持增量更新
149
+ - `scripts/ab_testing.py` - A/B 测试统计验证
150
+ - Welch's t-test 显著性检验
151
+ - Cohen's d 效应量计算
152
+ - 置信区间评估
153
+
154
+ **算法**:
155
+
156
+ ```python
157
+ Weight(t) = α × Quality + (1-α) × Usage_Frequency
158
+ × Decay_Factor(t) × (1 - Smoothing)
159
+ + Previous_Weight × Smoothing
160
+ ```
161
+
162
+ **使用方法**:
163
+
164
+ ```bash
165
+ # 优化权重(分析最近 30 天数据)
166
+ python scripts/weight_optimizer.py --days 30
167
+
168
+ # A/B 测试(对比两个版本)
169
+ python scripts/ab_testing.py version_a.json version_b.json
170
+ ```
171
+
172
+ ### ✅ Phase 3: 核心分析模块(已完成)
173
+
174
+ **状态**: 生产就绪
175
+
176
+ **包含组件**:
177
+
178
+ #### 1. 质量评估器 (`quality_evaluator.py`)
179
+
180
+ - **5 维度评估**:
181
+ - Completeness (完整性) - 是否包含所有必需元素
182
+ - Consistency (一致性) - 代码风格、命名统一性
183
+ - Professionalism (专业性) - 最佳实践遵循度
184
+ - Performance (性能) - 代码效率和资源使用
185
+ - Maintainability (可维护性) - 可读性、模块化程度
186
+ - **综合评分**: 加权平均,输出 0-1 范围分数
187
+ - **问题诊断**: 自动识别并列出问题清单
188
+
189
+ **使用**:
190
+
191
+ ```bash
192
+ python scripts/quality_evaluator.py execution_data.json
193
+ ```
194
+
195
+ #### 2. 模式发现器 (`pattern_discovery.py`)
196
+
197
+ - **Apriori 算法**: 频繁项集挖掘
198
+ - **成功模式识别**: 识别导致高质量输出的元素组合
199
+ - **失败模式识别**: 识别应避免的反模式
200
+ - **搜索序列分析**: 识别有效的搜索流程
201
+
202
+ **使用**:
203
+
204
+ ```bash
205
+ python scripts/pattern_discovery.py --days 30 --min-support 0.1
206
+ ```
207
+
208
+ #### 3. 知识迁移器 (`knowledge_transfer.py`)
209
+
210
+ - **跨域相似度**: 余弦相似度计算
211
+ - **模式适配性**: 评估模式在目标域的适用性
212
+ - **迁移推荐**: 为新领域提供基于相似域的推荐
213
+ - **支持 10+ 产品类型**: SaaS, 电商, 作品集, 博客, 仪表板等
214
+
215
+ **使用**:
216
+
217
+ ```bash
218
+ python scripts/knowledge_transfer.py --days 90 --similarity 0.6
219
+ ```
220
+
221
+ ### ✅ Phase 4: 高级功能(已完成)
222
+
223
+ **状态**: 生产就绪
224
+
225
+ **包含组件**:
226
+
227
+ #### 1. 框架进化器 (`framework_evolver.py`)
228
+
229
+ - **配置优化**: 基于性能数据自动调整配置参数
230
+ - **规则进化**: 发现并更新搜索规则
231
+ - **阈值自动调整**: 根据质量趋势优化阈值
232
+ - **搜索域优先级**: 优化搜索顺序
233
+
234
+ **使用**:
235
+
236
+ ```bash
237
+ python scripts/framework_evolver.py # 生成建议
238
+ python scripts/framework_evolver.py --apply # 自动应用(实验性)
239
+ ```
240
+
241
+ #### 2. 模板生成器 (`template_generator.py`)
242
+
243
+ - **模板提取**: 从成功案例中提取通用结构
244
+ - **占位符生成**: 自动识别可变部分
245
+ - **模板分类**: 按产品类型、样式等分类
246
+ - **模板验证**: 确保生成的模板有效且完整
247
+
248
+ **使用**:
249
+
250
+ ```bash
251
+ python scripts/template_generator.py --min-quality 0.75
252
+ ```
253
+
254
+ #### 3. 自动化调度器 (`scheduler.py`)
255
+
256
+ - **任务调度**: 支持 daily、weekly、monthly 周期
257
+ - **依赖管理**: 自动处理任务间依赖关系
258
+ - **后台运行**: Daemon 模式持续运行
259
+ - **任务日志**: 记录所有执行历史
260
+
261
+ **使用**:
262
+
263
+ ```bash
264
+ python scripts/scheduler.py --list # 列出所有任务
265
+ python scripts/scheduler.py # 运行一次
266
+ python scripts/scheduler.py --daemon # Daemon 模式
267
+ python scripts/scheduler.py --task optimize # 运行特定任务
268
+ ```
269
+
270
+ #### 4. 可视化仪表板 (`dashboard.html`)
271
+
272
+ - **实时统计**: 执行次数、质量分数、模式数等
273
+ - **趋势图表**: 30 天质量趋势可视化
274
+ - **最近记录**: 显示最近执行和模式发现
275
+ - **模板库**: 浏览可用模板
276
+
277
+ **使用**:
278
+
279
+ ```bash
280
+ # 方法 1: 使用 CLI 工具
281
+ python cli.py dashboard
282
+
283
+ # 方法 2: 直接打开
284
+ # 在浏览器中打开 dashboard.html
285
+ ```
286
+
287
+ #### 5. 统一命令行工具 (`cli.py`)
288
+
289
+ 提供统一的命令行接口执行所有操作:
290
+
291
+ ```bash
292
+ # 查看帮助
293
+ python cli.py --help
294
+
295
+ # 运行分析
296
+ python cli.py analyze --window 30
297
+
298
+ # 优化权重
299
+ python cli.py optimize --window 7
300
+
301
+ # 生成模板
302
+ python cli.py template --min-quality 0.75
303
+
304
+ # 框架进化
305
+ python cli.py evolve
306
+
307
+ # 管理调度器
308
+ python cli.py schedule --list
309
+ python cli.py schedule --daemon
310
+
311
+ # 查看状态
312
+ python cli.py status
313
+
314
+ # 打开仪表板
315
+ python cli.py dashboard
316
+
317
+ # 清理数据
318
+ python cli.py cleanup --days 90
319
+ ```
320
+
321
+ ---
322
+
323
+ ## 🧠 六大核心模块
324
+
325
+ ### 模块1: 质量评估器 (Quality Evaluator)
326
+
327
+ **职责**: 自动评估生成内容的质量
328
+
329
+ #### 评估维度
330
+
331
+ | 维度 | 指标 | 计算方法 |
332
+ | ------------ | ------------------ | ----------------------------- |
333
+ | **完整性** | Completeness Score | 必需元素覆盖率 × 100% |
334
+ | **一致性** | Consistency Score | 样式统一度 × 设计系统匹配度 |
335
+ | **专业性** | Professionalism | 最佳实践遵守率 × 无障碍合规率 |
336
+ | **性能** | Performance | 代码效率 × 加载速度预估 |
337
+ | **可维护性** | Maintainability | 代码结构清晰度 × 注释质量 |
338
+
339
+ #### 评分算法
340
+
341
+ ```python
342
+ def calculate_quality_score(output):
343
+ scores = {
344
+ 'completeness': check_required_elements(output),
345
+ 'consistency': check_design_consistency(output),
346
+ 'professionalism': check_best_practices(output),
347
+ 'performance': estimate_performance(output),
348
+ 'maintainability': analyze_code_structure(output)
349
+ }
350
+
351
+ # 加权平均
352
+ weights = {
353
+ 'completeness': 0.25,
354
+ 'consistency': 0.20,
355
+ 'professionalism': 0.25,
356
+ 'performance': 0.15,
357
+ 'maintainability': 0.15
358
+ }
359
+
360
+ total_score = sum(scores[k] * weights[k] for k in scores)
361
+ return {
362
+ 'total': total_score,
363
+ 'breakdown': scores,
364
+ 'grade': get_grade(total_score)
365
+ }
366
+ ```
367
+
368
+ #### 自动改进建议
369
+
370
+ ```python
371
+ def generate_improvement_suggestions(quality_report):
372
+ suggestions = []
373
+
374
+ if quality_report['completeness'] < 0.8:
375
+ suggestions.append({
376
+ 'type': 'missing_elements',
377
+ 'severity': 'high',
378
+ 'message': '缺少必需元素',
379
+ 'missing': find_missing_elements(output)
380
+ })
381
+
382
+ if quality_report['consistency'] < 0.7:
383
+ suggestions.append({
384
+ 'type': 'inconsistent_styling',
385
+ 'severity': 'medium',
386
+ 'message': '样式不一致',
387
+ 'conflicts': find_style_conflicts(output)
388
+ })
389
+
390
+ return suggestions
391
+ ```
392
+
393
+ ---
394
+
395
+ ### 模块2: 反馈学习器 (Feedback Learner)
396
+
397
+ **职责**: 从用户修改中提取改进点
398
+
399
+ #### 修改检测
400
+
401
+ ```python
402
+ def detect_user_modifications(original, modified):
403
+ diff = unified_diff(original, modified)
404
+
405
+ modifications = {
406
+ 'style_changes': [],
407
+ 'structure_changes': [],
408
+ 'logic_changes': [],
409
+ 'additions': [],
410
+ 'deletions': []
411
+ }
412
+
413
+ for change in diff:
414
+ category = classify_change(change)
415
+ modifications[category].append({
416
+ 'line': change.line_number,
417
+ 'type': change.type,
418
+ 'content': change.content,
419
+ 'reason': infer_reason(change)
420
+ })
421
+
422
+ return modifications
423
+ ```
424
+
425
+ #### 学习模式提取
426
+
427
+ ```python
428
+ def extract_learning_patterns(modifications_history):
429
+ patterns = []
430
+
431
+ # 频繁修改模式
432
+ frequent_changes = find_frequent_changes(modifications_history)
433
+ for change in frequent_changes:
434
+ patterns.append({
435
+ 'type': 'frequent_modification',
436
+ 'pattern': change.pattern,
437
+ 'frequency': change.count,
438
+ 'suggestion': generate_default_fix(change)
439
+ })
440
+
441
+ # 用户偏好
442
+ user_preferences = extract_preferences(modifications_history)
443
+ patterns.append({
444
+ 'type': 'user_preference',
445
+ 'preferences': user_preferences
446
+ })
447
+
448
+ return patterns
449
+ ```
450
+
451
+ #### 自动调整规则
452
+
453
+ ```yaml
454
+ # 学习到的规则示例
455
+ learned_rules:
456
+ - id: rule_001
457
+ pattern: '用户总是将 bg-white/10 改为 bg-white/80'
458
+ context: '明亮模式下的玻璃卡片'
459
+ action: '默认使用 bg-white/80'
460
+ confidence: 0.92
461
+ occurrences: 12
462
+
463
+ - id: rule_002
464
+ pattern: '用户删除所有 emoji 图标,替换为 SVG'
465
+ context: 'UI 图标'
466
+ action: '直接使用 SVG 图标库'
467
+ confidence: 0.95
468
+ occurrences: 18
469
+ ```
470
+
471
+ ---
472
+
473
+ ### 模块3: 模式发现器 (Pattern Discoverer)
474
+
475
+ **职责**: 识别高频元素组合和成功模式
476
+
477
+ #### 高频组合挖掘
478
+
479
+ ```python
480
+ def mine_frequent_combinations(usage_history):
481
+ # 使用 Apriori 算法挖掘频繁项集
482
+ combinations = []
483
+
484
+ # 样式组合
485
+ style_combinations = apriori(
486
+ transactions=[h['elements_used']['styles'] for h in usage_history],
487
+ min_support=0.3
488
+ )
489
+
490
+ # 颜色组合
491
+ color_combinations = apriori(
492
+ transactions=[h['elements_used']['colors'] for h in usage_history],
493
+ min_support=0.4
494
+ )
495
+
496
+ return {
497
+ 'styles': style_combinations,
498
+ 'colors': color_combinations,
499
+ 'confidence': calculate_confidence(combinations)
500
+ }
501
+ ```
502
+
503
+ #### 成功模式识别
504
+
505
+ ```python
506
+ def identify_success_patterns(execution_history):
507
+ """识别高质量输出的共同特征"""
508
+ high_quality = [h for h in execution_history
509
+ if h['quality_score'] >= 0.85
510
+ and h['user_feedback']['rating'] >= 4]
511
+
512
+ patterns = {
513
+ 'common_searches': find_common_search_sequences(high_quality),
514
+ 'common_elements': find_common_elements(high_quality),
515
+ 'common_structures': find_common_structures(high_quality)
516
+ }
517
+
518
+ return patterns
519
+ ```
520
+
521
+ #### 模板自动生成
522
+
523
+ ```python
524
+ def generate_templates_from_patterns(patterns):
525
+ """从识别的模式自动生成设计模板"""
526
+ templates = []
527
+
528
+ for pattern in patterns['common_structures']:
529
+ if pattern['frequency'] > 0.7:
530
+ template = {
531
+ 'name': generate_template_name(pattern),
532
+ 'category': pattern['category'],
533
+ 'elements': pattern['elements'],
534
+ 'structure': pattern['structure'],
535
+ 'usage_count': pattern['count'],
536
+ 'success_rate': pattern['success_rate']
537
+ }
538
+ templates.append(template)
539
+
540
+ return templates
541
+ ```
542
+
543
+ ---
544
+
545
+ ### 模块4: 权重优化器 (Weight Optimizer)
546
+
547
+ **职责**: 自动调整元素复用性评分
548
+
549
+ #### 动态权重调整
550
+
551
+ ```python
552
+ def optimize_element_weights(usage_stats):
553
+ """基于使用统计优化元素权重"""
554
+ for element in database:
555
+ # 计算新权重
556
+ usage_score = calculate_usage_score(element, usage_stats)
557
+ quality_score = calculate_quality_score(element, usage_stats)
558
+ feedback_score = calculate_feedback_score(element, usage_stats)
559
+
560
+ # 加权组合
561
+ new_weight = (
562
+ usage_score * 0.4 +
563
+ quality_score * 0.4 +
564
+ feedback_score * 0.2
565
+ )
566
+
567
+ # 平滑更新(避免剧烈变化)
568
+ element['weight'] = (
569
+ element['weight'] * 0.7 +
570
+ new_weight * 0.3
571
+ )
572
+ ```
573
+
574
+ #### 衰减机制
575
+
576
+ ```python
577
+ def apply_time_decay(elements):
578
+ """对长期未使用的元素降低权重"""
579
+ current_time = datetime.now()
580
+
581
+ for element in elements:
582
+ days_since_last_use = (current_time - element['last_used']).days
583
+
584
+ if days_since_last_use > 30:
585
+ decay_factor = exp(-days_since_last_use / 100)
586
+ element['weight'] *= decay_factor
587
+ ```
588
+
589
+ #### 趋势检测
590
+
591
+ ```python
592
+ def detect_trending_elements(usage_history, window_days=30):
593
+ """检测最近流行的设计元素"""
594
+ recent = filter_recent(usage_history, window_days)
595
+
596
+ trends = []
597
+ for element in database:
598
+ recent_usage = count_usage(element, recent)
599
+ historical_usage = count_usage(element, usage_history)
600
+
601
+ growth_rate = recent_usage / historical_usage
602
+
603
+ if growth_rate > 1.5: # 增长超过50%
604
+ trends.append({
605
+ 'element': element,
606
+ 'growth_rate': growth_rate,
607
+ 'category': 'rising'
608
+ })
609
+
610
+ return trends
611
+ ```
612
+
613
+ ---
614
+
615
+ ### 模块5: 框架进化器 (Framework Evolver)
616
+
617
+ **职责**: 优化 skill 配置和规则
618
+
619
+ #### 规则优化
620
+
621
+ ```python
622
+ def optimize_framework_rules(performance_data):
623
+ """基于性能数据优化框架规则"""
624
+ rules = load_rules('prompt_framework.yaml')
625
+
626
+ for rule in rules:
627
+ # 分析规则效果
628
+ effectiveness = analyze_rule_effectiveness(rule, performance_data)
629
+
630
+ if effectiveness < 0.5:
631
+ # 规则效果差,尝试优化
632
+ optimized_rule = optimize_rule(rule, performance_data)
633
+ rules.update(optimized_rule)
634
+
635
+ elif effectiveness > 0.9:
636
+ # 规则效果好,提升优先级
637
+ rule['priority'] += 1
638
+
639
+ save_rules(rules, 'prompt_framework.yaml')
640
+ ```
641
+
642
+ #### 搜索策略优化
643
+
644
+ ```python
645
+ def optimize_search_strategy(search_history):
646
+ """优化搜索顺序和参数"""
647
+ # 分析哪些搜索顺序效果最好
648
+ sequences = extract_search_sequences(search_history)
649
+
650
+ best_sequence = max(sequences, key=lambda s: s['success_rate'])
651
+
652
+ # 更新默认搜索顺序
653
+ update_default_sequence(best_sequence)
654
+
655
+ # 优化搜索参数
656
+ for domain in ['product', 'style', 'typography', 'color']:
657
+ optimal_limit = find_optimal_result_limit(domain, search_history)
658
+ update_domain_config(domain, {'limit': optimal_limit})
659
+ ```
660
+
661
+ #### A/B 测试框架
662
+
663
+ ```python
664
+ def ab_test_framework_changes(change_proposal):
665
+ """对框架更改进行 A/B 测试"""
666
+ test_config = {
667
+ 'variant_a': current_framework, # 控制组
668
+ 'variant_b': apply_changes(current_framework, change_proposal), # 实验组
669
+ 'traffic_split': 0.5,
670
+ 'duration_days': 14,
671
+ 'metrics': ['quality_score', 'user_satisfaction', 'execution_time']
672
+ }
673
+
674
+ results = run_ab_test(test_config)
675
+
676
+ if results['variant_b']['quality_score'] > results['variant_a']['quality_score']:
677
+ if results['p_value'] < 0.05: # 统计显著
678
+ apply_changes_permanently(change_proposal)
679
+ ```
680
+
681
+ ---
682
+
683
+ ### 模块6: 知识迁移器 (Knowledge Transferer)
684
+
685
+ **职责**: 跨领域知识复用和迁移
686
+
687
+ #### 领域相似度计算
688
+
689
+ ```python
690
+ def calculate_domain_similarity(domain_a, domain_b):
691
+ """计算两个领域的相似度"""
692
+ similarity_scores = {
693
+ 'element_overlap': jaccard_similarity(
694
+ domain_a['elements'],
695
+ domain_b['elements']
696
+ ),
697
+ 'pattern_similarity': cosine_similarity(
698
+ domain_a['patterns'],
699
+ domain_b['patterns']
700
+ ),
701
+ 'structure_similarity': structural_similarity(
702
+ domain_a['structure'],
703
+ domain_b['structure']
704
+ )
705
+ }
706
+
707
+ return weighted_average(similarity_scores)
708
+ ```
709
+
710
+ #### 知识迁移
711
+
712
+ ```python
713
+ def transfer_knowledge(source_domain, target_domain):
714
+ """从源领域迁移知识到目标领域"""
715
+ transferable_patterns = []
716
+
717
+ # 找出可迁移的模式
718
+ for pattern in source_domain['success_patterns']:
719
+ if is_transferable(pattern, target_domain):
720
+ adapted_pattern = adapt_pattern(pattern, target_domain)
721
+ transferable_patterns.append(adapted_pattern)
722
+
723
+ # 应用迁移
724
+ for pattern in transferable_patterns:
725
+ target_domain['patterns'].append(pattern)
726
+ log_transfer(source_domain, target_domain, pattern)
727
+
728
+ return transferable_patterns
729
+ ```
730
+
731
+ #### 跨栈适配
732
+
733
+ ```python
734
+ def adapt_across_stacks(knowledge, source_stack, target_stack):
735
+ """在不同技术栈之间适配知识"""
736
+ adaptations = {
737
+ 'html-tailwind': {
738
+ 'to_react': convert_tailwind_to_react_classes,
739
+ 'to_vue': convert_tailwind_to_vue_classes,
740
+ 'to_swiftui': convert_web_to_swiftui
741
+ },
742
+ 'react': {
743
+ 'to_vue': convert_react_to_vue,
744
+ 'to_svelte': convert_react_to_svelte
745
+ }
746
+ }
747
+
748
+ adapter = adaptations[source_stack][f'to_{target_stack}']
749
+ return adapter(knowledge)
750
+ ```
751
+
752
+ ---
753
+
754
+ ## 🚀 使用方式
755
+
756
+ ### 自动模式(推荐)
757
+
758
+ Self-Evolution 在后台自动运行,无需显式调用:
759
+
760
+ ```bash
761
+ # 正常使用任何 skill
762
+ "设计一个 SaaS 定价页面"
763
+
764
+ # Self-Evolution 自动:
765
+ # 1. 记录执行数据
766
+ # 2. 评估输出质量
767
+ # 3. 收集用户反馈
768
+ # 4. 优化权重和规则
769
+ ```
770
+
771
+ ### 手动分析
772
+
773
+ 查看和管理进化数据:
774
+
775
+ ```bash
776
+ # 查看质量报告
777
+ /self-evolution:quality-report
778
+
779
+ # 查看学习到的模式
780
+ /self-evolution:patterns
781
+
782
+ # 查看权重变化
783
+ /self-evolution:weights
784
+
785
+ # 触发手动优化
786
+ /self-evolution:optimize
787
+
788
+ # 导出进化数据
789
+ /self-evolution:export
790
+ ```
791
+
792
+ ---
793
+
794
+ ## 📈 进化效果追踪
795
+
796
+ ### 关键指标 (KPI)
797
+
798
+ | 指标 | 目标 | 计算方式 |
799
+ | -------------- | --------- | ---------------- |
800
+ | **质量提升率** | 每月 +5% | 平均质量分增长率 |
801
+ | **用户满意度** | ≥ 4.5/5 | 用户评分平均值 |
802
+ | **修改率下降** | 每月 -10% | 用户修改比例 |
803
+ | **复用率提升** | 每月 +8% | 元素复用次数增长 |
804
+ | **执行效率** | < 2秒 | 平均执行时间 |
805
+
806
+ ### 进化仪表板
807
+
808
+ ```markdown
809
+ ## Self-Evolution Dashboard
810
+
811
+ ### 整体健康度: 87/100 ⬆️ (+5)
812
+
813
+ #### 本周进化数据
814
+
815
+ - 总执行次数: 245
816
+ - 平均质量分: 0.87 (+0.03)
817
+ - 用户满意度: 4.6/5 (+0.2)
818
+ - 修改率: 12% (-3%)
819
+
820
+ #### 学习成果
821
+
822
+ - 新发现模式: 3
823
+ - 规则优化: 5
824
+ - 权重调整: 18
825
+ - 知识迁移: 2
826
+
827
+ #### Top 改进
828
+
829
+ 1. 明亮模式对比度问题解决 ✅
830
+ 2. SVG 图标使用提升 50%
831
+ 3. 响应式断点优化
832
+ 4. 颜色调色板更新
833
+
834
+ #### 待优化项
835
+
836
+ 1. 复杂布局生成耗时较长
837
+ 2. 某些字体组合覆盖不足
838
+ 3. 动画性能优化空间
839
+ ```
840
+
841
+ ---
842
+
843
+ ## 🔧 配置文件
844
+
845
+ ### self-evolution-config.yaml
846
+
847
+ ```yaml
848
+ # Self-Evolution Skill 配置
849
+
850
+ # 数据收集
851
+ data_collection:
852
+ enabled: true
853
+ storage_path: '.claude/skills/self-evolution/data'
854
+ retention_days: 90
855
+ anonymize: true
856
+
857
+ # 质量评估
858
+ quality_evaluator:
859
+ enabled: true
860
+ evaluation_mode: 'automatic' # automatic | on_demand
861
+ thresholds:
862
+ completeness: 0.8
863
+ consistency: 0.7
864
+ professionalism: 0.75
865
+ performance: 0.6
866
+ maintainability: 0.7
867
+
868
+ # 反馈学习
869
+ feedback_learner:
870
+ enabled: true
871
+ modification_tracking: true
872
+ learning_rate: 0.3
873
+ min_confidence: 0.7
874
+
875
+ # 模式发现
876
+ pattern_discoverer:
877
+ enabled: true
878
+ min_support: 0.3
879
+ min_confidence: 0.6
880
+ pattern_types:
881
+ - 'element_combinations'
882
+ - 'search_sequences'
883
+ - 'success_patterns'
884
+
885
+ # 权重优化
886
+ weight_optimizer:
887
+ enabled: true
888
+ update_frequency: 'daily' # hourly | daily | weekly
889
+ smoothing_factor: 0.3
890
+ time_decay_enabled: true
891
+ decay_half_life_days: 60
892
+
893
+ # 框架进化
894
+ framework_evolver:
895
+ enabled: true
896
+ ab_testing: true
897
+ auto_apply_threshold: 0.95
898
+ manual_review_threshold: 0.7
899
+
900
+ # 知识迁移
901
+ knowledge_transferer:
902
+ enabled: true
903
+ cross_domain: true
904
+ cross_stack: true
905
+ similarity_threshold: 0.6
906
+
907
+ # 报告
908
+ reporting:
909
+ dashboard_enabled: true
910
+ dashboard_path: '.claude/skills/self-evolution/dashboard.md'
911
+ update_frequency: 'weekly'
912
+ export_format: 'json' # json | csv | markdown
913
+ ```
914
+
915
+ ---
916
+
917
+ ## 📁 数据文件结构
918
+
919
+ ```
920
+ .claude/skills/self-evolution/
921
+ ├── README.md # 本文档
922
+ ├── config.yaml # 配置文件
923
+ ├── data/ # 数据存储
924
+ │ ├── executions/ # 执行记录
925
+ │ │ ├── 2026-01/
926
+ │ │ │ ├── sess_20260110_001.json
927
+ │ │ │ └── sess_20260110_002.json
928
+ │ │ └── index.db
929
+ │ ├── feedback/ # 反馈数据
930
+ │ │ ├── modifications.json
931
+ │ │ ├── ratings.json
932
+ │ │ └── comments.json
933
+ │ ├── patterns/ # 发现的模式
934
+ │ │ ├── frequent_combinations.json
935
+ │ │ ├── success_patterns.json
936
+ │ │ └── templates.json
937
+ │ ├── weights/ # 权重历史
938
+ │ │ ├── current_weights.json
939
+ │ │ ├── weight_history.json
940
+ │ │ └── trends.json
941
+ │ └── rules/ # 学习到的规则
942
+ │ ├── learned_rules.yaml
943
+ │ └── rule_history.json
944
+ ├── reports/ # 报告输出
945
+ │ ├── dashboard.md
946
+ │ ├── weekly_reports/
947
+ │ └── exports/
948
+ └── scripts/ # 辅助脚本
949
+ ├── analyze.py
950
+ ├── optimize.py
951
+ └── export.py
952
+ ```
953
+
954
+ ---
955
+
956
+ ## 🔄 集成方式
957
+
958
+ ### 与现有 Skills 集成
959
+
960
+ Self-Evolution 通过钩子系统集成:
961
+
962
+ ```json
963
+ {
964
+ "hooks": [
965
+ {
966
+ "type": "PostToolUse",
967
+ "tool": "Skill",
968
+ "script": ".claude/skills/self-evolution/hooks/record-execution.js"
969
+ },
970
+ {
971
+ "type": "SessionEnd",
972
+ "script": ".claude/skills/self-evolution/hooks/collect-feedback.js"
973
+ }
974
+ ]
975
+ }
976
+ ```
977
+
978
+ ### 数据流
979
+
980
+ ```
981
+ Skill 执行
982
+
983
+ [PostToolUse Hook] 记录执行数据
984
+
985
+ [质量评估器] 评估输出质量
986
+
987
+ [反馈学习器] 检测用户修改
988
+
989
+ [模式发现器] 挖掘成功模式
990
+
991
+ [权重优化器] 调整元素权重
992
+
993
+ [框架进化器] 优化规则配置
994
+
995
+ [知识迁移器] 跨域知识迁移
996
+
997
+ [报告生成] 更新仪表板
998
+ ```
999
+
1000
+ ---
1001
+
1002
+ ## 🎯 进化目标
1003
+
1004
+ ### 短期目标 (1个月)
1005
+
1006
+ - ✅ 质量分从 0.75 提升到 0.85
1007
+ - ✅ 修改率从 20% 降低到 12%
1008
+ - ✅ 用户满意度从 4.0 提升到 4.5
1009
+ - ✅ 发现并创建 10 个高质量模板
1010
+
1011
+ ### 中期目标 (3个月)
1012
+
1013
+ - ✅ 质量分提升到 0.90+
1014
+ - ✅ 修改率降低到 8%
1015
+ - ✅ 用户满意度达到 4.7+
1016
+ - ✅ 知识迁移覆盖 5 个领域
1017
+ - ✅ 执行效率提升 30%
1018
+
1019
+ ### 长期目标 (6个月)
1020
+
1021
+ - ✅ 质量分稳定在 0.92+
1022
+ - ✅ 修改率降低到 5%
1023
+ - ✅ 用户满意度稳定在 4.8+
1024
+ - ✅ 自动生成 50+ 设计模板
1025
+ - ✅ 实现跨栈知识迁移
1026
+ - ✅ 框架规则完全优化
1027
+
1028
+ ---
1029
+
1030
+ ## 🚨 注意事项
1031
+
1032
+ ### 隐私保护
1033
+
1034
+ - ✅ 所有数据本地存储
1035
+ - ✅ 支持数据匿名化
1036
+ - ✅ 可配置数据保留期
1037
+ - ✅ 用户可随时清除数据
1038
+
1039
+ ### 性能影响
1040
+
1041
+ - ✅ 数据收集异步进行,不影响主流程
1042
+ - ✅ 优化和分析在后台定期执行
1043
+ - ✅ 可配置更新频率
1044
+ - ✅ 支持按需禁用模块
1045
+
1046
+ ### 安全性
1047
+
1048
+ - ✅ 不收集敏感代码内容
1049
+ - ✅ 不上传到外部服务
1050
+ - ✅ 权限限制在 skill 范围内
1051
+ - ✅ 完全透明和可审计
1052
+
1053
+ ---
1054
+
1055
+ ## 🧪 测试
1056
+
1057
+ ### 运行测试
1058
+
1059
+ ```bash
1060
+ # 运行所有测试
1061
+ python run_tests.py
1062
+
1063
+ # 详细输出
1064
+ python run_tests.py --verbose
1065
+ ```
1066
+
1067
+ ### 测试覆盖
1068
+
1069
+ - ✅ `test_weight_optimizer.py` - 权重优化算法测试
1070
+ - 时间衰减计算
1071
+ - 权重计算逻辑
1072
+ - 平滑因子效果
1073
+
1074
+ - ✅ `test_ab_testing.py` - A/B 测试统计验证
1075
+ - 均值和方差计算
1076
+ - t-test 显著性检验
1077
+ - Cohen's d 效应量
1078
+ - 完整分析流程
1079
+
1080
+ ### 最近修复 (2026-01-11)
1081
+
1082
+ **修复的 Bug**:
1083
+
1084
+ 1. **weight_optimizer.py** - 字段名不匹配
1085
+ - 问题: 代码期望 `days_ago` 和 `quality` 字段,但测试提供 `timestamp` 和 `quality_score`
1086
+ - 修复: 添加兼容逻辑,自动从 `timestamp` 计算 `days_ago`,支持两种字段名
1087
+
1088
+ 2. **ab_testing.py** - 小样本 p-value 不准确
1089
+ - 问题: 小样本 t-test 的 p-value 过于保守(固定为 0.1 或 0.3)
1090
+ - 修复: 集成 scipy.stats.t.cdf() 精确计算,无 scipy 时使用改进的分段近似
1091
+
1092
+ 3. **run_tests.py** - Windows GBK 编码错误
1093
+ - 问题: Windows 命令行无法显示 Unicode emoji (✅ ❌)
1094
+ - 修复: 使用 ASCII 文本 `[SUCCESS]` 和 `[FAILED]` 替代
1095
+
1096
+ **测试结果**: 所有 8 个测试通过 ✅
1097
+
1098
+ ```bash
1099
+ # 验证修复
1100
+ python run_tests.py
1101
+ # Tests run: 8
1102
+ # Successes: 8
1103
+ # Failures: 0
1104
+ # Errors: 0
1105
+ ```
1106
+
1107
+ ### 添加新测试
1108
+
1109
+ 在 `tests/` 目录下创建 `test_<module>.py` 文件:
1110
+
1111
+ ```python
1112
+ import unittest
1113
+ import sys
1114
+ from pathlib import Path
1115
+
1116
+ sys.path.insert(0, str(Path(__file__).parent.parent / 'scripts'))
1117
+
1118
+ from <module> import <ClassName>
1119
+
1120
+ class Test<ClassName>(unittest.TestCase):
1121
+ def setUp(self):
1122
+ # 测试准备
1123
+ pass
1124
+
1125
+ def test_<feature>(self):
1126
+ # 测试逻辑
1127
+ pass
1128
+
1129
+ if __name__ == '__main__':
1130
+ unittest.main()
1131
+ ```
1132
+
1133
+ ---
1134
+
1135
+ ## 📚 相关文档
1136
+
1137
+ - [ARCHITECTURE.md](./ARCHITECTURE.md) - 详细架构设计
1138
+ - [ALGORITHMS.md](./ALGORITHMS.md) - 算法实现细节
1139
+ - [API.md](./API.md) - 编程接口文档
1140
+ - [CHANGELOG.md](./CHANGELOG.md) - 更新日志
1141
+
1142
+ ---
1143
+
1144
+ ## 🤝 贡献
1145
+
1146
+ 欢迎贡献改进建议和代码!
1147
+
1148
+ ### 改进方向
1149
+
1150
+ - 新的质量评估指标
1151
+ - 更智能的模式识别算法
1152
+ - 跨栈适配规则
1153
+ - 领域特定优化
1154
+ - 可视化仪表板增强
1155
+
1156
+ ---
1157
+
1158
+ **最后更新**: 2026-01-11
1159
+ **版本**: 1.0.3
1160
+ **状态**: Phase 1-3 已完成,可投入使用