@dayinxisheng/skillctl 1.0.0 → 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.
- package/CHANGELOG.md +28 -0
- package/README.md +218 -63
- package/package.json +3 -2
package/CHANGELOG.md
ADDED
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
# Changelog
|
|
2
|
+
|
|
3
|
+
All notable changes to this project will be documented in this file.
|
|
4
|
+
|
|
5
|
+
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
|
|
6
|
+
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
|
|
7
|
+
|
|
8
|
+
## [1.0.1] - 2026-03-05
|
|
9
|
+
|
|
10
|
+
### Added
|
|
11
|
+
- `CHANGELOG.md` - 项目变更日志
|
|
12
|
+
|
|
13
|
+
### Changed
|
|
14
|
+
- 改进 `README.md` 使用说明,添加更多示例和场景
|
|
15
|
+
- 更新包名为 `@dayinxisheng/skillctl`(使用命名空间)
|
|
16
|
+
- 添加 `publishConfig.access: public` 支持公开发布
|
|
17
|
+
|
|
18
|
+
## [1.0.0] - 2026-03-05
|
|
19
|
+
|
|
20
|
+
### Added
|
|
21
|
+
- 初始发布
|
|
22
|
+
- 激活/停用 skills(支持 user/project 级别)
|
|
23
|
+
- 导入外部 skill 到项目
|
|
24
|
+
- 定位 skill 实际位置
|
|
25
|
+
- 查看激活状态和列表
|
|
26
|
+
- 仓库路径配置管理
|
|
27
|
+
- 跨平台支持(Windows/macOS/Linux)
|
|
28
|
+
- TypeScript 类型定义
|
package/README.md
CHANGED
|
@@ -1,103 +1,246 @@
|
|
|
1
|
-
# skillctl
|
|
1
|
+
# @dayinxisheng/skillctl
|
|
2
2
|
|
|
3
|
-
Claude Skills 管理工具 -
|
|
3
|
+
> Claude Skills 管理工具 - 轻松管理你的 Claude Skills
|
|
4
4
|
|
|
5
5
|
管理 Claude Skills 的激活状态和项目归档,通过软链接实现 skills 的灵活切换。
|
|
6
6
|
|
|
7
|
-
## 安装
|
|
7
|
+
## 📦 安装
|
|
8
8
|
|
|
9
9
|
```bash
|
|
10
|
-
npm install -g skillctl
|
|
10
|
+
npm install -g @dayinxisheng/skillctl
|
|
11
11
|
```
|
|
12
12
|
|
|
13
|
-
|
|
13
|
+
安装完成后,可以在任何目录使用 `skillctl` 命令。
|
|
14
|
+
|
|
15
|
+
## 🚀 快速开始
|
|
16
|
+
|
|
17
|
+
### 第一步:设置仓库路径
|
|
18
|
+
|
|
19
|
+
告诉 skillctl 你的 skills 仓库在哪里(存储所有 skill 文件的目录):
|
|
14
20
|
|
|
15
21
|
```bash
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
22
|
+
skillctl set-repo ~/my-skills
|
|
23
|
+
```
|
|
24
|
+
|
|
25
|
+
### 第二步:查看可用的 skills
|
|
26
|
+
|
|
27
|
+
```bash
|
|
28
|
+
skillctl all-list
|
|
29
|
+
```
|
|
30
|
+
|
|
31
|
+
输出示例:
|
|
21
32
|
```
|
|
33
|
+
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
|
|
34
|
+
项目中所有可用的 Skills
|
|
35
|
+
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
|
|
22
36
|
|
|
23
|
-
|
|
37
|
+
brainstorming
|
|
38
|
+
frontend-design
|
|
39
|
+
pdf-tools
|
|
24
40
|
|
|
25
|
-
|
|
41
|
+
ℹ 共找到 3 个 skills
|
|
42
|
+
位置: ~/my-skills
|
|
43
|
+
```
|
|
26
44
|
|
|
27
|
-
|
|
45
|
+
### 第三步:激活 skill
|
|
28
46
|
|
|
29
47
|
```bash
|
|
30
|
-
skillctl
|
|
48
|
+
skillctl activate brainstorming
|
|
49
|
+
```
|
|
50
|
+
|
|
51
|
+
输出:
|
|
31
52
|
```
|
|
53
|
+
✓ 已激活: brainstorming (user)
|
|
54
|
+
```
|
|
55
|
+
|
|
56
|
+
## 📚 核心概念
|
|
32
57
|
|
|
33
|
-
###
|
|
58
|
+
### User vs Project 两级作用域
|
|
34
59
|
|
|
35
|
-
|
|
60
|
+
skillctl 支持两个作用域:
|
|
61
|
+
|
|
62
|
+
| 作用域 | 路径 | 说明 |
|
|
63
|
+
|--------|------|------|
|
|
64
|
+
| **User** | `~/.claude/skills/` | 全局可用,所有项目共享 |
|
|
65
|
+
| **Project** | `./.claude/skills/` | 仅当前项目可用 |
|
|
66
|
+
|
|
67
|
+
**示例场景:**
|
|
68
|
+
- 团队共享的技能 → 用 Project 级别
|
|
69
|
+
- 个人常用技能 → 用 User 级别
|
|
70
|
+
|
|
71
|
+
## 🎯 常用命令
|
|
72
|
+
|
|
73
|
+
### 1. 激活 Skill
|
|
36
74
|
|
|
37
75
|
```bash
|
|
38
|
-
#
|
|
39
|
-
skillctl activate
|
|
76
|
+
# 激活到 user 级别(默认)- 全局可用
|
|
77
|
+
skillctl activate brainstorming
|
|
40
78
|
|
|
41
|
-
# 激活到 project 级别
|
|
42
|
-
skillctl activate -p
|
|
79
|
+
# 激活到 project 级别 - 仅当前项目
|
|
80
|
+
skillctl activate -p brainstorming
|
|
43
81
|
|
|
44
82
|
# 批量激活所有 skills
|
|
45
83
|
skillctl activate --all
|
|
84
|
+
skillctl activate -u --all # 明确指定 user 级别
|
|
85
|
+
skillctl activate -p --all # 明确指定 project 级别
|
|
46
86
|
```
|
|
47
87
|
|
|
48
|
-
### 停用 Skill
|
|
49
|
-
|
|
50
|
-
删除软链接,停用已激活的 skill。
|
|
88
|
+
### 2. 停用 Skill
|
|
51
89
|
|
|
52
90
|
```bash
|
|
53
|
-
#
|
|
54
|
-
skillctl deactivate
|
|
91
|
+
# 停用 user 级别的 skill
|
|
92
|
+
skillctl deactivate brainstorming
|
|
55
93
|
|
|
56
|
-
#
|
|
94
|
+
# 停用 project 级别的 skill
|
|
95
|
+
skillctl deactivate -p brainstorming
|
|
96
|
+
|
|
97
|
+
# 批量停用所有
|
|
57
98
|
skillctl deactivate --all
|
|
58
99
|
```
|
|
59
100
|
|
|
60
|
-
###
|
|
101
|
+
### 3. 查看状态
|
|
102
|
+
|
|
103
|
+
```bash
|
|
104
|
+
# 查看所有 skills 的激活状态(表格形式)
|
|
105
|
+
skillctl status
|
|
106
|
+
```
|
|
61
107
|
|
|
62
|
-
|
|
108
|
+
输出示例:
|
|
109
|
+
```
|
|
110
|
+
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
|
|
111
|
+
Skills 激活状态
|
|
112
|
+
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
|
|
113
|
+
|
|
114
|
+
Skill User Project
|
|
115
|
+
──────────────────────────── ────────── ───────────
|
|
116
|
+
brainstorming ✓ ✗
|
|
117
|
+
frontend-design ✗ ✓
|
|
118
|
+
pdf-tools ✓ ✓
|
|
119
|
+
|
|
120
|
+
ℹ 共 3 个 skills
|
|
121
|
+
✓ = 已激活 ✗ = 未激活
|
|
122
|
+
```
|
|
63
123
|
|
|
64
124
|
```bash
|
|
65
|
-
#
|
|
66
|
-
skillctl
|
|
125
|
+
# 只看已激活的 skills
|
|
126
|
+
skillctl list
|
|
127
|
+
```
|
|
67
128
|
|
|
68
|
-
|
|
69
|
-
|
|
129
|
+
输出示例:
|
|
130
|
+
```
|
|
131
|
+
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
|
|
132
|
+
当前激活的 Skills
|
|
133
|
+
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
|
|
134
|
+
|
|
135
|
+
全局 (~/.claude/skills):
|
|
136
|
+
brainstorming → ~/my-skills/brainstorming
|
|
137
|
+
pdf-tools → ~/my-skills/pdf-tools
|
|
138
|
+
ℹ 共 2 个
|
|
139
|
+
|
|
140
|
+
本地 (./.claude/skills):
|
|
141
|
+
frontend-design → ~/my-skills/frontend-design
|
|
142
|
+
ℹ 共 1 个
|
|
70
143
|
```
|
|
71
144
|
|
|
72
|
-
###
|
|
145
|
+
### 4. 导入 Skill
|
|
146
|
+
|
|
147
|
+
将外部开发的 skill 导入到你的项目仓库:
|
|
73
148
|
|
|
74
149
|
```bash
|
|
75
|
-
#
|
|
76
|
-
|
|
150
|
+
# 假设你有一个 skill 在 ~/.claude/skills/my-new-skill
|
|
151
|
+
# 将其导入到项目仓库
|
|
152
|
+
skillctl import my-new-skill
|
|
153
|
+
```
|
|
77
154
|
|
|
78
|
-
|
|
79
|
-
|
|
155
|
+
这会:
|
|
156
|
+
1. 将 skill 移动到你的项目仓库
|
|
157
|
+
2. 在原位置创建软链接
|
|
80
158
|
|
|
81
|
-
|
|
82
|
-
skillctl all-list
|
|
159
|
+
### 5. 定位 Skill
|
|
83
160
|
|
|
84
|
-
|
|
85
|
-
|
|
161
|
+
查找 skill 的实际存储位置:
|
|
162
|
+
|
|
163
|
+
```bash
|
|
164
|
+
skillctl locate brainstorming
|
|
165
|
+
```
|
|
166
|
+
|
|
167
|
+
输出示例:
|
|
168
|
+
```
|
|
169
|
+
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
|
|
170
|
+
Skill 定位: brainstorming
|
|
171
|
+
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
|
|
172
|
+
|
|
173
|
+
全局: ~/.claude/skills/brainstorming → ~/my-skills/brainstorming (软链接)
|
|
86
174
|
```
|
|
87
175
|
|
|
88
|
-
|
|
176
|
+
## ⚙️ 配置管理
|
|
89
177
|
|
|
90
178
|
```bash
|
|
91
|
-
#
|
|
179
|
+
# 查看当前配置
|
|
92
180
|
skillctl config
|
|
181
|
+
```
|
|
182
|
+
|
|
183
|
+
输出示例:
|
|
184
|
+
```
|
|
185
|
+
ℹ 配置文件: ~/.config/skillctl/config.json
|
|
186
|
+
ℹ 仓库路径: ~/my-skills
|
|
187
|
+
```
|
|
188
|
+
|
|
189
|
+
```bash
|
|
190
|
+
# 更新仓库路径
|
|
191
|
+
skillctl set-repo /new/path/to/skills
|
|
93
192
|
|
|
94
193
|
# 查看当前仓库路径
|
|
95
194
|
skillctl get-repo
|
|
96
195
|
```
|
|
97
196
|
|
|
98
|
-
##
|
|
197
|
+
## 💡 实用场景
|
|
198
|
+
|
|
199
|
+
### 场景 1:新项目设置
|
|
200
|
+
|
|
201
|
+
```bash
|
|
202
|
+
# 1. 进入项目目录
|
|
203
|
+
cd ~/my-project
|
|
204
|
+
|
|
205
|
+
# 2. 激活项目需要的 skills
|
|
206
|
+
skillctl activate -p frontend-design
|
|
207
|
+
skillctl activate -p brainstorming
|
|
208
|
+
|
|
209
|
+
# 3. 验证
|
|
210
|
+
skillctl list
|
|
211
|
+
```
|
|
212
|
+
|
|
213
|
+
### 场景 2:切换技能集
|
|
99
214
|
|
|
100
215
|
```bash
|
|
216
|
+
# 停用当前所有 skills
|
|
217
|
+
skillctl deactivate --all
|
|
218
|
+
|
|
219
|
+
# 激活新的技能集
|
|
220
|
+
skillctl activate pdf-tools
|
|
221
|
+
skillctl activate docx-tools
|
|
222
|
+
```
|
|
223
|
+
|
|
224
|
+
### 场景 3:分享你的 skill
|
|
225
|
+
|
|
226
|
+
```bash
|
|
227
|
+
# 1. 导入你的 skill 到项目仓库
|
|
228
|
+
skillctl import my-awesome-skill
|
|
229
|
+
|
|
230
|
+
# 2. 提交到 git
|
|
231
|
+
cd ~/my-skills
|
|
232
|
+
git add skills/my-awesome-skill
|
|
233
|
+
git commit -m "Add my-awesome-skill"
|
|
234
|
+
git push
|
|
235
|
+
```
|
|
236
|
+
|
|
237
|
+
## 🛠️ 开发
|
|
238
|
+
|
|
239
|
+
```bash
|
|
240
|
+
# 克隆项目
|
|
241
|
+
git clone <repo-url>
|
|
242
|
+
cd skillctl
|
|
243
|
+
|
|
101
244
|
# 安装依赖
|
|
102
245
|
npm install
|
|
103
246
|
|
|
@@ -107,6 +250,9 @@ npm run dev
|
|
|
107
250
|
# 构建
|
|
108
251
|
npm run build
|
|
109
252
|
|
|
253
|
+
# 本地测试
|
|
254
|
+
npm link
|
|
255
|
+
|
|
110
256
|
# 运行测试
|
|
111
257
|
npm test
|
|
112
258
|
|
|
@@ -115,33 +261,42 @@ npm run lint
|
|
|
115
261
|
npm run lint:fix
|
|
116
262
|
```
|
|
117
263
|
|
|
118
|
-
## 项目结构
|
|
264
|
+
## 📁 项目结构
|
|
119
265
|
|
|
120
266
|
```
|
|
121
267
|
src/
|
|
122
268
|
├── index.ts # CLI 入口
|
|
123
269
|
├── commands/ # 命令处理器
|
|
124
|
-
│ ├── activate.ts
|
|
125
|
-
│ ├── deactivate.ts
|
|
126
|
-
│ ├── import.ts
|
|
127
|
-
│ ├── locate.ts
|
|
128
|
-
│ ├── status.ts
|
|
129
|
-
│ ├── list.ts
|
|
130
|
-
│ ├── all-list.ts
|
|
131
|
-
│ ├── set-repo.ts
|
|
132
|
-
│ └── config.ts
|
|
270
|
+
│ ├── activate.ts # 激活命令
|
|
271
|
+
│ ├── deactivate.ts # 停用命令
|
|
272
|
+
│ ├── import.ts # 导入命令
|
|
273
|
+
│ ├── locate.ts # 定位命令
|
|
274
|
+
│ ├── status.ts # 状态命令
|
|
275
|
+
│ ├── list.ts # 列表命令
|
|
276
|
+
│ ├── all-list.ts # 全部列表命令
|
|
277
|
+
│ ├── set-repo.ts # 设置仓库命令
|
|
278
|
+
│ └── config.ts # 配置命令
|
|
133
279
|
├── lib/ # 核心业务逻辑
|
|
134
|
-
│ ├── config-manager.ts
|
|
135
|
-
│ ├── link-handler.ts
|
|
136
|
-
│ └── skill-manager.ts
|
|
280
|
+
│ ├── config-manager.ts # 配置管理
|
|
281
|
+
│ ├── link-handler.ts # 软链接处理
|
|
282
|
+
│ └── skill-manager.ts # Skill 管理
|
|
137
283
|
├── utils/ # 工具函数
|
|
138
|
-
│ ├── output.ts
|
|
139
|
-
│ ├── errors.ts
|
|
140
|
-
│ └── platform.ts
|
|
141
|
-
└── types/ # 类型定义
|
|
284
|
+
│ ├── output.ts # 彩色输出
|
|
285
|
+
│ ├── errors.ts # 错误类型
|
|
286
|
+
│ └── platform.ts # 平台检测
|
|
287
|
+
└── types/ # TypeScript 类型定义
|
|
142
288
|
└── index.ts
|
|
143
289
|
```
|
|
144
290
|
|
|
145
|
-
## 许可证
|
|
291
|
+
## 📄 许可证
|
|
292
|
+
|
|
293
|
+
MIT License © 2026 hrjlab
|
|
294
|
+
|
|
295
|
+
## 📝 变更日志
|
|
296
|
+
|
|
297
|
+
查看 [CHANGELOG.md](CHANGELOG.md) 了解版本更新历史。
|
|
298
|
+
|
|
299
|
+
## 🔗 相关链接
|
|
146
300
|
|
|
147
|
-
|
|
301
|
+
- [npm 包](https://www.npmjs.com/package/@dayinxisheng/skillctl)
|
|
302
|
+
- [问题反馈](<your-repo-issues>)
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@dayinxisheng/skillctl",
|
|
3
|
-
"version": "1.0.
|
|
3
|
+
"version": "1.0.1",
|
|
4
4
|
"description": "Claude Skills 管理工具 - 管理 Claude Skills 的激活状态和项目归档",
|
|
5
5
|
"main": "dist/index.js",
|
|
6
6
|
"bin": {
|
|
@@ -46,7 +46,8 @@
|
|
|
46
46
|
"files": [
|
|
47
47
|
"dist",
|
|
48
48
|
"README.md",
|
|
49
|
-
"LICENSE"
|
|
49
|
+
"LICENSE",
|
|
50
|
+
"CHANGELOG.md"
|
|
50
51
|
],
|
|
51
52
|
"publishConfig": {
|
|
52
53
|
"access": "public"
|