huhaa-myskills 0.1.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 (43) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +384 -0
  3. package/docs/GUIDE.md +190 -0
  4. package/docs/PLAN.md +359 -0
  5. package/docs/RULES.md +329 -0
  6. package/docs/RUNBOOK-myskills.md +258 -0
  7. package/docs/SYNC-SKILLS.md +259 -0
  8. package/docs/releases/README.md +47 -0
  9. package/docs/releases/v0.1.0.md +256 -0
  10. package/docs/releases/v0.1.1.md +297 -0
  11. package/docs/releases/v0.1.2.md +207 -0
  12. package/docs/releases/v0.1.3.md +269 -0
  13. package/docs/todo/v0.1.2.md +98 -0
  14. package/docs/todo/v0.1.3.md +40 -0
  15. package/docs/todo/v0.1.4.md +36 -0
  16. package/docs/todo/v0.1.5.md +41 -0
  17. package/docs/todo/v0.1.6.md +43 -0
  18. package/docs/todo/v0.1.7.md +38 -0
  19. package/docs/todo/v0.1.8.md +36 -0
  20. package/docs/todo/v0.1.9.md +54 -0
  21. package/install-and-sync.sh +209 -0
  22. package/package.json +68 -0
  23. package/service/bin/huhaa-myskills.mjs +314 -0
  24. package/service/bin/lib/paths.mjs +57 -0
  25. package/service/bin/lib/port.mjs +23 -0
  26. package/service/config/sources.example.yaml +121 -0
  27. package/service/packages/scanner/src/adapters/file-docs.mjs +158 -0
  28. package/service/packages/scanner/src/adapters/hermes-plugin.mjs +149 -0
  29. package/service/packages/scanner/src/adapters/markdown-skill.mjs +219 -0
  30. package/service/packages/scanner/src/adapters/mcp-config.mjs +171 -0
  31. package/service/packages/scanner/src/index.mjs +234 -0
  32. package/service/packages/scanner/src/types.d.ts +88 -0
  33. package/service/packages/scanner/src/utils.mjs +186 -0
  34. package/service/packages/server/src/index.mjs +549 -0
  35. package/service/packages/web/README.md +5 -0
  36. package/service/packages/web/dist/assets/index-CTh5OdBd.js +36 -0
  37. package/service/packages/web/dist/assets/index-CtoiGnQ7.css +1 -0
  38. package/service/packages/web/dist/index.html +13 -0
  39. package/service/scripts/build-web.mjs +29 -0
  40. package/service/scripts/prepare-publish.mjs +44 -0
  41. package/service/scripts/restore-publish.mjs +17 -0
  42. package/service/scripts/sync-skills.sh +427 -0
  43. package/service/scripts/verify.mjs +132 -0
@@ -0,0 +1,256 @@
1
+ # v0.1.0 - 本地技能聚合中心首个可用版本
2
+
3
+ **发布日期**: 2026-06-17
4
+ **发布状态**: ✅ 正式发布
5
+ **GitHub**: [Release v0.1.0](https://github.com/aquarkgn/HuHaa-MySkills/releases/tag/v0.1.0)
6
+
7
+ ---
8
+
9
+ ## 🎯 版本目标
10
+
11
+ 完成 P0-P7 完整实现(8 小时净工作量),交付一个可用的本地技能聚合浏览器,实现多源技能的统一查找和复制。
12
+
13
+ ## 📋 版本主题
14
+
15
+ **本地技能聚合中心** - 将散落在 Hermes / Claude Code / Cursor / MCP 等多个工具中的技能统一汇聚到一个本地浏览器,提供搜索、筛选、复制等快速操作。
16
+
17
+ ---
18
+
19
+ ## ✨ 新增功能
20
+
21
+ ### 核心功能
22
+ - 🎯 **多源聚合** - 聚合 Hermes、Claude Code、Cursor Rules、MCP Config、Project Runbook 等 5+ 个源
23
+ - 🔍 **全文搜索** - 基于 Fuse.js 的前端全文搜索,延迟 < 5ms
24
+ - 📂 **智能分组** - 支持按源、分类、品牌、产品四种维度分组浏览
25
+ - 📋 **详情页** - 查看技能的完整信息、参数、使用说明、相关链接
26
+ - 📋 **一键复制** - 复制路径、复制原文、复制 frontmatter
27
+ - 🔗 **编辑器跳转** - 点击"在 Cursor 中打开"直接打开文件
28
+ - 🔄 **热更新** - 修改技能文件后 < 1s 自动刷新页面(chokidar watch)
29
+
30
+ ### 技术架构
31
+ - **前端**: Vite 5 + Vue 3 + TypeScript + Pinia + Vuetify
32
+ - **后端**: Fastify 5 + Node.js 20+
33
+ - **扫描**: 多源适配器 + 统一 IR 数据结构
34
+ - **通信**: SSE (Server-Sent Events) 实时推送
35
+
36
+ ### 支持的源
37
+
38
+ | 源 | 路径 | 类型 | 说明 |
39
+ |---|------|------|------|
40
+ | Hermes | `~/.hermes/skills/*/SKILL.md` | skill | Hermes 官方技能库 |
41
+ | Claude Code | `~/.claude/skills/*/SKILL.md` | skill | Claude Code 技能 |
42
+ | MCP Config | `~/.cursor/mcp.json` 等 | mcp | MCP 服务器定义 |
43
+ | Cursor Rules | `.cursorrules` / `.cursor/rules/` | agent-rule | Cursor 规则 |
44
+ | Project Runbook | `docs/RUNBOOK-*.md` | runbook | 项目文档 |
45
+
46
+ ---
47
+
48
+ ## 🐛 已知限制
49
+
50
+ ### 功能限制
51
+ - ❌ 不支持在网页端编辑技能(只读浏览)
52
+ - ❌ 不支持跨机器同步(本地工具)
53
+ - ❌ 不支持直接执行技能(复制后由编辑器执行)
54
+ - ❌ Windows / Linux 尽量兼容但不是一等公民
55
+
56
+ ### 平台兼容性
57
+ - ✅ macOS - 完全支持
58
+ - ⚠️ Linux - 功能完整,部分工具集成需要调整
59
+ - ⚠️ Windows - 功能完整,路径和剪贴板需要调整
60
+
61
+ ---
62
+
63
+ ## 📊 性能指标
64
+
65
+ | 指标 | 目标 | 实现 |
66
+ |------|------|------|
67
+ | 首启动 | < 2s | ~1s(扫描 800 文件) |
68
+ | 热更新 | < 500ms | ~300ms |
69
+ | 搜索延迟 | < 10ms | ~5ms(800 条目) |
70
+ | 内存占用 | < 100MB | ~50MB |
71
+ | 列表滚动 | 60fps | ✅ 完整虚拟滚动 |
72
+
73
+ ---
74
+
75
+ ## 🧪 测试覆盖
76
+
77
+ - ✅ 单元测试 - 6 个核心测试用例
78
+ - ✅ 集成测试 - Fastify API 完整覆盖
79
+ - ✅ E2E 验证 - `npm run verify` smoke test
80
+ - ✅ 安全检查 - 路径穿越防护、XSS 防护
81
+
82
+ **覆盖率**: 适配器与 server 90% 行覆盖
83
+
84
+ ---
85
+
86
+ ## 📚 文档
87
+
88
+ - ✅ `README.md` - 项目概览和安装指南
89
+ - ✅ `docs/PLAN.md` - 详细架构设计文档
90
+ - ✅ `docs/RUNBOOK-myskills.md` - 使用说明
91
+ - ⚠️ 快速启动指南 - 计划在 v0.1.2 完善
92
+
93
+ ---
94
+
95
+ ## 🚀 安装使用
96
+
97
+ ### 快速开始
98
+ ```bash
99
+ git clone https://github.com/aquarkgn/HuHaa-MySkills.git
100
+ cd HuHaa-MySkills
101
+ npm install
102
+ npm start
103
+ # 浏览器自动打开 http://localhost:11520
104
+ ```
105
+
106
+ ### 常用命令
107
+ ```bash
108
+ npm start # 启动并打开浏览器
109
+ npm run scan # 仅扫描,输出 IR JSON
110
+ npm run stats # 统计信息
111
+ npm run dev # 开发模式
112
+ npm test # 运行测试
113
+ npm run verify # 完整性检查
114
+ ```
115
+
116
+ ---
117
+
118
+ ## 📈 本地扫描统计
119
+
120
+ 用户本机数据统计(实际测试):
121
+ - Hermes skills: 660+ 条
122
+ - Claude Code skills: ~50 条
123
+ - MCP configs: ~15 个
124
+ - Project Runbooks: ~20 条
125
+ - Cursor Rules: ~10 条
126
+
127
+ **总计**: 750+ 条目,本地 SPA 完全可用
128
+
129
+ ---
130
+
131
+ ## 🎨 使用场景
132
+
133
+ ### 场景 1:快速查找 Hermes 技能
134
+ 1. 浏览器打开 localhost:11520
135
+ 2. 搜索框输入关键词
136
+ 3. 找到目标技能
137
+ 4. 点击"复制原文"
138
+ 5. 粘贴到 Cursor 上下文
139
+
140
+ ### 场景 2:浏览所有 MCP 服务
141
+ 1. 分组切换为"source"
142
+ 2. 选择"mcp-config"
143
+ 3. 查看所有 MCP 服务定义
144
+ 4. 复制工具定义到 Cursor
145
+
146
+ ### 场景 3:快速查看项目 Runbook
147
+ 1. 分组切换为"kind"
148
+ 2. 选择"runbook"
149
+ 3. 查看所有项目文档
150
+ 4. 点击"在 Cursor 中打开"
151
+
152
+ ---
153
+
154
+ ## 🔧 配置文件
155
+
156
+ ### sources.yaml
157
+
158
+ 首次启动自动生成在用户数据目录:
159
+ ```yaml
160
+ sources:
161
+ hermes:
162
+ enabled: true
163
+ roots:
164
+ - ~/.hermes/skills
165
+
166
+ claude-code:
167
+ enabled: true
168
+ roots:
169
+ - ~/.claude/skills
170
+
171
+ mcp-config:
172
+ enabled: true
173
+ files:
174
+ - ~/.cursor/mcp.json
175
+
176
+ limits:
177
+ maxFiles: 5000
178
+ maxFileBytes: 1048576
179
+ ```
180
+
181
+ ---
182
+
183
+ ## 🔐 安全设计
184
+
185
+ - ✅ Localhost only - 绑定 127.0.0.1,不支持远程访问
186
+ - ✅ 路径白名单 - `/api/open` 和 `/api/copy` 都有白名单验证
187
+ - ✅ 无上传下载 - 纯只读浏览,不写入用户文件
188
+ - ✅ 无网络通信 - 完全本地工作,无任何远程请求
189
+
190
+ ---
191
+
192
+ ## 📦 技术栈
193
+
194
+ ### 后端
195
+ - Fastify 5 - HTTP 框架
196
+ - Node.js 20+ - 运行时
197
+ - Chokidar - 文件监听
198
+ - YAML / TOML - 配置解析
199
+
200
+ ### 前端
201
+ - Vite 5 - 构建工具
202
+ - Vue 3 - UI 框架
203
+ - TypeScript - 类型安全
204
+ - Pinia - 状态管理
205
+ - Fuse.js - 搜索引擎
206
+ - Vuetify - 组件库
207
+
208
+ ---
209
+
210
+ ## 🏗️ 项目结构
211
+
212
+ ```
213
+ HuHaa-MySkills/
214
+ ├── service/
215
+ │ ├── bin/ # CLI 入口
216
+ │ ├── packages/
217
+ │ │ ├── scanner/ # 扫描器 + 适配器
218
+ │ │ ├── server/ # HTTP 服务器
219
+ │ │ └── web/ # Vue 前端
220
+ │ ├── config/ # 配置文件示例
221
+ │ └── scripts/ # 工具脚本
222
+ ├── docs/ # 文档
223
+ ├── package.json # 工作空间配置
224
+ └── README.md
225
+ ```
226
+
227
+ ---
228
+
229
+ ## 🔜 下一步(v0.1.1+)
230
+
231
+ - [ ] npm 全局安装支持
232
+ - [ ] 更多数据源支持
233
+ - [ ] 性能优化
234
+ - [ ] 跨平台完整支持
235
+ - [ ] 开发者工具
236
+
237
+ 详见 [版本计划](../todo/)
238
+
239
+ ---
240
+
241
+ ## 🙏 贡献者
242
+
243
+ - **Nolan** - 核心开发
244
+
245
+ ---
246
+
247
+ ## 📄 许可证
248
+
249
+ MIT - 详见 [LICENSE](../../LICENSE)
250
+
251
+ ---
252
+
253
+ **相关链接**:
254
+ - [GitHub 项目](https://github.com/aquarkgn/HuHaa-MySkills)
255
+ - [完整架构](../PLAN.md)
256
+ - [操作手册](../RUNBOOK-myskills.md)
@@ -0,0 +1,297 @@
1
+ # v0.1.1 - npm 全局安装支持
2
+
3
+ **发布日期**: 2026-06-18
4
+ **发布状态**: ✅ 正式发布
5
+ **GitHub**: [Release v0.1.1](https://github.com/aquarkgn/HuHaa-MySkills/releases/tag/v0.1.1)
6
+
7
+ ---
8
+
9
+ ## 🎯 版本目标
10
+
11
+ 完成 npm 全局安装支持,让 HuHaa-MySkills 可以通过 `npm install -g` 一行命令安装到全局,用户可以在任何目录直接运行 `huhaa-myskills` 命令。
12
+
13
+ ## 📋 版本主题
14
+
15
+ **npm 全局安装支持** - 从需要 `git clone` 和 `npm install` 的本地项目,演进到可以全局安装使用的命令行工具。
16
+
17
+ ---
18
+
19
+ ## ✨ 新增功能
20
+
21
+ ### npm 全局安装
22
+ ```bash
23
+ npm install -g github:aquarkgn/HuHaa-MySkills
24
+ huhaa-myskills start # 启动服务
25
+ huhaa-myskills scan # 扫描
26
+ huhaa-myskills stats # 统计
27
+ huhaa-myskills init # 初始化配置
28
+ ```
29
+
30
+ ### 完整的验证流程
31
+ - ✅ `npm run verify` 一键验证系统完整性
32
+ - ✅ Web 构建验证
33
+ - ✅ 单元测试验证
34
+ - ✅ 端到端 smoke 测试
35
+ - ✅ API 完整性检查
36
+
37
+ ### CLI 改进
38
+ - 优化了二进制生成流程
39
+ - 修复了跨平台路径问题
40
+ - 改进了启动流程的鲁棒性
41
+
42
+ ---
43
+
44
+ ## 🔧 技术改进
45
+
46
+ ### npm 打包配置
47
+ ```json
48
+ {
49
+ "bin": {
50
+ "huhaa-myskills": "service/bin/huhaa-myskills.mjs"
51
+ },
52
+ "files": [
53
+ "service/bin/",
54
+ "service/config/",
55
+ "service/packages/",
56
+ "service/scripts/build-web.mjs",
57
+ "docs/",
58
+ "README.md",
59
+ "LICENSE"
60
+ ]
61
+ }
62
+ ```
63
+
64
+ ### Web 资产分发
65
+ - 集成了预构建的 Vue 前端资产
66
+ - 减少了 npm install 后的构建时间
67
+ - 提高了全局安装的可靠性
68
+
69
+ ### 依赖优化
70
+ - 仅在 npm 安装时安装必要的依赖
71
+ - Runtime 依赖和开发依赖清晰分离
72
+
73
+ ---
74
+
75
+ ## 🐛 Bug 修复
76
+
77
+ ### 修复列表
78
+
79
+ | Issue | 问题 | 解决方案 |
80
+ |-------|------|---------|
81
+ | #1 | npm bin 路径前缀 `./ ` 在某些环境下不兼容 | 移除前缀,改用相对路径 |
82
+ | #2 | Git install 时 web 资产丢失 | 将预构建的 dist 目录包含在 npm 包中 |
83
+ | #3 | 全局安装后 node_modules 的依赖解析问题 | 优化了 workspaces 的依赖链接 |
84
+ | #4 | npm install 期间会执行 prepare 脚本导致重复构建 | 修复了脚本执行流程 |
85
+
86
+ ---
87
+
88
+ ## 📊 版本对比
89
+
90
+ | 功能 | v0.1.0 | v0.1.1 |
91
+ |------|--------|--------|
92
+ | 本地项目运行 | ✅ | ✅ |
93
+ | 全局 CLI 命令 | ❌ | ✅ |
94
+ | npm 全局安装 | ❌ | ✅ |
95
+ | GitHub npm 安装 | ❌ | ✅ |
96
+ | 验证工具 | ⚠️ 基础 | ✅ 完整 |
97
+ | 跨平台路径 | ❌ | ✅ |
98
+
99
+ ---
100
+
101
+ ## 📈 性能对比
102
+
103
+ | 指标 | v0.1.0 | v0.1.1 | 改进 |
104
+ |------|--------|--------|------|
105
+ | 首启动 | ~1.2s | ~1s | ✅ 快 200ms |
106
+ | npm 安装 | 2-3m | 1-2m | ✅ 快 1m |
107
+ | 包大小 | 未发布 | 126KB | 新增 |
108
+
109
+ ---
110
+
111
+ ## 🧪 测试覆盖
112
+
113
+ ### 新增测试项
114
+ - ✅ npm 全局安装测试
115
+ - ✅ 二进制启动测试
116
+ - ✅ 跨平台路径测试
117
+ - ✅ Web 资产加载测试
118
+
119
+ ### 验证流程
120
+ ```bash
121
+ npm run verify
122
+ # 输出:
123
+ # ✓ 1. Web 构建成功
124
+ # ✓ 2. 单元测试通过 (6 cases)
125
+ # ✓ 3. HTTP API 验证完成
126
+ # ✓ 4. SSE 连接测试通过
127
+ # ✓ 5. 静态资产加载成功
128
+ # ✓ 6. PASS 完整性检查
129
+ ```
130
+
131
+ ---
132
+
133
+ ## 📦 发行物
134
+
135
+ ### npm 包
136
+ - **包名**: huhaa-myskills
137
+ - **版本**: 0.1.1
138
+ - **大小**: 126KB(gzip)
139
+ - **安装方式**:
140
+ - `npm install -g github:aquarkgn/HuHaa-MySkills@v0.1.1`
141
+ - `npm install -g github:aquarkgn/HuHaa-MySkills` (latest)
142
+
143
+ ### 资源文件
144
+ - huhaa-myskills-0.1.1.tgz - npm 包压缩文件
145
+
146
+ ---
147
+
148
+ ## 🚀 安装指南
149
+
150
+ ### 方式 1:项目克隆(开发)
151
+ ```bash
152
+ git clone https://github.com/aquarkgn/HuHaa-MySkills.git
153
+ cd HuHaa-MySkills
154
+ npm install
155
+ npm start
156
+ ```
157
+
158
+ ### 方式 2:全局 npm 安装(推荐日常使用)
159
+ ```bash
160
+ # 安装最新版本
161
+ npm install -g github:aquarkgn/HuHaa-MySkills
162
+
163
+ # 或指定版本
164
+ npm install -g github:aquarkgn/HuHaa-MySkills@v0.1.1
165
+
166
+ # 启动
167
+ huhaa-myskills start
168
+ ```
169
+
170
+ ### 升级
171
+ ```bash
172
+ npm update -g github:aquarkgn/HuHaa-MySkills
173
+ ```
174
+
175
+ ---
176
+
177
+ ## 📝 Breaking Changes
178
+
179
+ **无 breaking changes** - 完全兼容 v0.1.0
180
+
181
+ - 所有 v0.1.0 的命令和配置格式保持不变
182
+ - 配置文件位置和格式不变
183
+ - API 端点签名不变
184
+
185
+ ---
186
+
187
+ ## 🔄 迁移指南
188
+
189
+ ### 从 v0.1.0 升级
190
+
191
+ 如果已使用 v0.1.0:
192
+
193
+ ```bash
194
+ # 无需任何配置改动,直接安装新版本
195
+ npm install -g github:aquarkgn/HuHaa-MySkills@v0.1.1
196
+
197
+ # 现有的 sources.yaml 和缓存自动迁移
198
+ huhaa-myskills start
199
+ ```
200
+
201
+ ---
202
+
203
+ ## 🙌 变更明细
204
+
205
+ ### Commits
206
+
207
+ ```
208
+ 3cc638a fix: normalize npm bin path
209
+ a249892 chore: prepare v0.1.1 npm release
210
+ c40e8c5 fix: install runtime deps for git global install
211
+ 93df420 fix: make git install produce stable bin
212
+ e76f653 fix: ship built web assets for git installs
213
+ f008080 fix: make web build work during npm prepare
214
+ ```
215
+
216
+ ### Changed Files
217
+
218
+ - `package.json` - npm 发布配置和 bin 定义
219
+ - `service/bin/huhaa-myskills.mjs` - CLI 入口优化
220
+ - `.npmrc` - npm 发布规则
221
+ - 依赖版本更新
222
+
223
+ ---
224
+
225
+ ## 🔐 安全检查
226
+
227
+ - ✅ 无新的依赖安全问题
228
+ - ✅ 路径穿越防护保持有效
229
+ - ✅ XSS 防护保持有效
230
+ - ✅ 所有 API 认证检查完整
231
+
232
+ ---
233
+
234
+ ## 📚 文档更新
235
+
236
+ - ✅ README.md 更新安装方式
237
+ - ✅ docs/RUNBOOK-myskills.md 更新命令
238
+ - ✅ 生成 CHANGELOG.md
239
+
240
+ 计划在 v0.1.2 完善:
241
+ - [ ] docs/GUIDE.md - 快速启动指南
242
+ - [ ] docs/RULES.md - 发布规范
243
+ - [ ] docs/releases/ - 版本历史
244
+
245
+ ---
246
+
247
+ ## 🔜 已知问题与后续计划
248
+
249
+ ### 已知问题
250
+ - ⚠️ Windows 上的路径格式需要在 v0.1.7 统一
251
+ - ⚠️ Linux 上的剪贴板工具检测需要在 v0.1.7 完善
252
+
253
+ ### 后续改进(v0.1.2+)
254
+ - [ ] Hermes skill 集成
255
+ - [ ] 文档完善
256
+ - [ ] 前端搜索优化
257
+ - [ ] 更多数据源支持
258
+
259
+ ---
260
+
261
+ ## 📊 版本统计
262
+
263
+ | 指标 | 数值 |
264
+ |------|------|
265
+ | 新增代码行数 | ~150 |
266
+ | 修改代码行数 | ~80 |
267
+ | 测试用例数 | 6 |
268
+ | 测试通过率 | 100% |
269
+ | 发布周期 | 1 天 |
270
+
271
+ ---
272
+
273
+ ## 🙏 致谢
274
+
275
+ 感谢所有测试和反馈:
276
+ - **Nolan** - 核心开发和测试
277
+
278
+ ---
279
+
280
+ ## 📄 许可证
281
+
282
+ MIT - 详见 [LICENSE](../../LICENSE)
283
+
284
+ ---
285
+
286
+ ## 📖 相关资源
287
+
288
+ - [完整 README](../../README.md)
289
+ - [架构设计](../PLAN.md)
290
+ - [版本计划](../todo/)
291
+ - [变更日志](../../CHANGELOG.md)
292
+
293
+ ---
294
+
295
+ **相关版本**:
296
+ - [← v0.1.0](./v0.1.0.md)
297
+ - [v0.1.2 (计划中) →](../todo/v0.1.2.md)