qskills 1.0.0 → 1.0.2
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/README.md +251 -248
- package/dist/commands/knowledge/add.d.ts +2 -1
- package/dist/commands/knowledge/add.d.ts.map +1 -1
- package/dist/commands/knowledge/add.js +19 -1
- package/dist/commands/knowledge/add.js.map +1 -1
- package/dist/commands/knowledge/index.d.ts.map +1 -1
- package/dist/commands/knowledge/index.js +4 -0
- package/dist/commands/knowledge/index.js.map +1 -1
- package/dist/commands/knowledge/list.d.ts +2 -1
- package/dist/commands/knowledge/list.d.ts.map +1 -1
- package/dist/commands/knowledge/list.js +6 -1
- package/dist/commands/knowledge/list.js.map +1 -1
- package/dist/commands/knowledge/remove.d.ts +2 -0
- package/dist/commands/knowledge/remove.d.ts.map +1 -1
- package/dist/commands/knowledge/remove.js +4 -4
- package/dist/commands/knowledge/remove.js.map +1 -1
- package/dist/commands/knowledge/search.d.ts +2 -1
- package/dist/commands/knowledge/search.d.ts.map +1 -1
- package/dist/commands/knowledge/search.js +5 -5
- package/dist/commands/knowledge/search.js.map +1 -1
- package/dist/commands/skill/add.d.ts +2 -0
- package/dist/commands/skill/add.d.ts.map +1 -1
- package/dist/commands/skill/add.js +46 -22
- package/dist/commands/skill/add.js.map +1 -1
- package/dist/commands/skill/index.d.ts.map +1 -1
- package/dist/commands/skill/index.js +44 -1
- package/dist/commands/skill/index.js.map +1 -1
- package/dist/commands/skill/install.d.ts +8 -0
- package/dist/commands/skill/install.d.ts.map +1 -0
- package/dist/commands/skill/install.js +35 -0
- package/dist/commands/skill/install.js.map +1 -0
- package/dist/commands/skill/list.d.ts +2 -0
- package/dist/commands/skill/list.d.ts.map +1 -1
- package/dist/commands/skill/list.js +6 -1
- package/dist/commands/skill/list.js.map +1 -1
- package/dist/commands/skill/remove.d.ts +2 -0
- package/dist/commands/skill/remove.d.ts.map +1 -1
- package/dist/commands/skill/remove.js +5 -5
- package/dist/commands/skill/remove.js.map +1 -1
- package/dist/commands/skill/search.d.ts +2 -0
- package/dist/commands/skill/search.d.ts.map +1 -1
- package/dist/commands/skill/search.js +5 -5
- package/dist/commands/skill/search.js.map +1 -1
- package/dist/core/storage.d.ts +21 -5
- package/dist/core/storage.d.ts.map +1 -1
- package/dist/core/storage.js +272 -48
- package/dist/core/storage.js.map +1 -1
- package/dist/types/index.d.ts +192 -10
- package/dist/types/index.d.ts.map +1 -1
- package/dist/types/index.js +87 -1
- package/dist/types/index.js.map +1 -1
- package/dist/utils/file.d.ts +3 -0
- package/dist/utils/file.d.ts.map +1 -1
- package/dist/utils/file.js +34 -0
- package/dist/utils/file.js.map +1 -1
- package/package.json +6 -2
package/README.md
CHANGED
|
@@ -1,154 +1,166 @@
|
|
|
1
1
|
# Qcli-Skills (qskills)
|
|
2
2
|
|
|
3
|
-
一款面向个人开发者的 CLI
|
|
3
|
+
一款面向个人开发者的 CLI 技能管理工具,支持多 AI 编程助手的技能、知识库、Agent 配置的统一管理与多源同步。
|
|
4
4
|
|
|
5
|
-
##
|
|
5
|
+
## 核心特性
|
|
6
6
|
|
|
7
|
-
-
|
|
8
|
-
-
|
|
9
|
-
-
|
|
10
|
-
-
|
|
11
|
-
-
|
|
7
|
+
- **多环境支持** - 支持 Claude Code、Cursor、通义灵码、OpenAI Codex、CodeBuddy Code 等 6 个 AI 环境
|
|
8
|
+
- **一站式管理** - 技能脚本、代码片段、知识笔记、Agent 配置统一管理
|
|
9
|
+
- **多源同步** - 公共资源与私人资源分类同步到 Git 仓库
|
|
10
|
+
- **即取即用** - npx 一键调用,无需全局安装
|
|
11
|
+
- **安全可控** - 敏感信息自动检测,防止意外泄露
|
|
12
|
+
|
|
13
|
+
---
|
|
12
14
|
|
|
13
15
|
## 快速开始
|
|
14
16
|
|
|
15
|
-
###
|
|
17
|
+
### 方式一:npx 直接使用(推荐)
|
|
16
18
|
|
|
17
|
-
|
|
19
|
+
无需安装,直接运行:
|
|
18
20
|
|
|
19
21
|
```bash
|
|
20
22
|
# 查看帮助
|
|
21
23
|
npx qskills --help
|
|
22
24
|
|
|
23
|
-
#
|
|
25
|
+
# 初始化配置(首次使用必须)
|
|
24
26
|
npx qskills config init
|
|
25
|
-
|
|
26
|
-
# 添加技能
|
|
27
|
-
npx qskills skill add ./my-script.js --name my-script
|
|
28
|
-
|
|
29
|
-
# 列出所有技能
|
|
30
|
-
npx qskills skill list
|
|
31
|
-
|
|
32
|
-
# 同步到远程仓库
|
|
33
|
-
npx qskills sync
|
|
34
27
|
```
|
|
35
28
|
|
|
36
|
-
###
|
|
29
|
+
### 方式二:全局安装
|
|
37
30
|
|
|
38
31
|
```bash
|
|
39
32
|
npm install -g qskills
|
|
40
|
-
|
|
41
|
-
# 然后可以直接使用
|
|
42
33
|
qskills --help
|
|
43
|
-
qskills skill list
|
|
44
34
|
```
|
|
45
35
|
|
|
46
|
-
|
|
36
|
+
---
|
|
47
37
|
|
|
48
|
-
|
|
49
|
-
# 使用最新版本
|
|
50
|
-
npx github:your-username/qskills skill list
|
|
38
|
+
## 支持的 AI 环境
|
|
51
39
|
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
40
|
+
| 环境 | 名称 | 配置目录 | 说明 |
|
|
41
|
+
|------|------|----------|------|
|
|
42
|
+
| `claude` | Claude Code | `~/.claude` | Anthropic Claude Code |
|
|
43
|
+
| `cursor` | Cursor | `~/.cursor` | Cursor AI 编辑器 |
|
|
44
|
+
| `qwen` | 通义灵码 | `~/.qwen` | 阿里云通义灵码 |
|
|
45
|
+
| `codex` | OpenAI Codex | `~/.codex` | OpenAI Codex |
|
|
46
|
+
| `codebuddy` | CodeBuddy Code | `~/.codebuddy` | 腾讯 CodeBuddy |
|
|
47
|
+
| `common` | 通用技能 | 跨环境共享 | 适用于所有环境 |
|
|
48
|
+
|
|
49
|
+
---
|
|
50
|
+
|
|
51
|
+
## 使用指南
|
|
52
|
+
|
|
53
|
+
### 1. 初始化配置
|
|
54
|
+
|
|
55
|
+
首次使用必须先初始化:
|
|
56
|
+
|
|
57
|
+
```bash
|
|
58
|
+
npx qskills config init
|
|
55
59
|
```
|
|
56
60
|
|
|
57
|
-
|
|
61
|
+
按提示完成配置,配置文件位于 `~/.qcli/config.json`。
|
|
62
|
+
|
|
63
|
+
### 2. 查看可用环境
|
|
64
|
+
|
|
65
|
+
```bash
|
|
66
|
+
npx qskills skill envs
|
|
67
|
+
```
|
|
58
68
|
|
|
59
|
-
|
|
60
|
-
|
|
69
|
+
输出示例:
|
|
70
|
+
```
|
|
71
|
+
┌─────────────┬────────────────┬───────────┬──────────┐
|
|
72
|
+
│ 环境 │ 名称 │ 配置目录 │ 状态 │
|
|
73
|
+
├─────────────┼────────────────┼───────────┼──────────┤
|
|
74
|
+
│ claude │ Claude Code │ .claude │ ✓ 启用 │
|
|
75
|
+
│ cursor │ Cursor │ .cursor │ ✓ 启用 │
|
|
76
|
+
│ qwen │ 通义灵码 │ .qwen │ ✓ 启用 │
|
|
77
|
+
│ codex │ OpenAI Codex │ .codex │ ✓ 启用 │
|
|
78
|
+
│ codebuddy │ CodeBuddy Code │ .codebuddy│ ✓ 启用 │
|
|
79
|
+
│ common │ 通用技能 │ (跨环境) │ ✓ 启用 │
|
|
80
|
+
└─────────────┴────────────────┴───────────┴──────────┘
|
|
81
|
+
```
|
|
61
82
|
|
|
62
|
-
|
|
83
|
+
---
|
|
63
84
|
|
|
64
|
-
|
|
85
|
+
## 技能管理
|
|
65
86
|
|
|
66
|
-
|
|
87
|
+
### 添加技能
|
|
67
88
|
|
|
68
89
|
```bash
|
|
69
|
-
#
|
|
70
|
-
npx qskills skill add ./script.js --name my-script
|
|
90
|
+
# 基本用法:添加到指定环境
|
|
91
|
+
npx qskills skill add ./my-script.js --name my-script --env claude
|
|
71
92
|
|
|
72
93
|
# 添加文件夹技能
|
|
73
|
-
npx qskills skill add ./my-project --name my-project --type folder
|
|
94
|
+
npx qskills skill add ./my-project --name my-project --type folder --env cursor
|
|
74
95
|
|
|
75
|
-
#
|
|
96
|
+
# 完整参数示例
|
|
76
97
|
npx qskills skill add ./tool.py \
|
|
77
98
|
--name my-tool \
|
|
99
|
+
--env codebuddy \
|
|
78
100
|
--source private \
|
|
79
|
-
--tags python,automation
|
|
80
|
-
--description "
|
|
81
|
-
|
|
82
|
-
# 跳过安全扫描(需确认)
|
|
83
|
-
npx qskills skill add ./config.json --name my-config --skip-scan
|
|
101
|
+
--tags python,automation \
|
|
102
|
+
--description "自动化工具脚本"
|
|
84
103
|
```
|
|
85
104
|
|
|
86
105
|
**参数说明:**
|
|
87
106
|
|
|
88
|
-
| 参数 | 简写 | 说明 | 默认值 |
|
|
89
|
-
|
|
90
|
-
| `--name` | `-n` | 技能名称 |
|
|
91
|
-
| `--
|
|
92
|
-
| `--
|
|
93
|
-
| `--
|
|
94
|
-
| `--
|
|
95
|
-
| `--
|
|
107
|
+
| 参数 | 简写 | 必填 | 说明 | 默认值 |
|
|
108
|
+
|------|------|------|------|--------|
|
|
109
|
+
| `--name` | `-n` | ✓ | 技能名称 | - |
|
|
110
|
+
| `--env` | `-e` | ✓ | 目标环境 | common |
|
|
111
|
+
| `--type` | `-t` | | single / folder | single |
|
|
112
|
+
| `--source` | `-s` | | public / private | private |
|
|
113
|
+
| `--tags` | | | 标签(逗号分隔) | - |
|
|
114
|
+
| `--description` | | | 描述信息 | - |
|
|
115
|
+
| `--skip-scan` | | | 跳过安全扫描 | false |
|
|
96
116
|
|
|
97
|
-
|
|
117
|
+
### 列出技能
|
|
98
118
|
|
|
99
119
|
```bash
|
|
100
120
|
# 列出所有技能
|
|
101
121
|
npx qskills skill list
|
|
102
122
|
|
|
103
|
-
#
|
|
123
|
+
# 筛选特定环境
|
|
124
|
+
npx qskills skill list --env cursor
|
|
125
|
+
|
|
126
|
+
# 筛选特定来源
|
|
104
127
|
npx qskills skill list --source public
|
|
105
128
|
|
|
106
129
|
# 按标签筛选
|
|
107
130
|
npx qskills skill list --tags python,automation
|
|
108
131
|
|
|
109
|
-
# JSON
|
|
132
|
+
# JSON 格式输出(便于脚本处理)
|
|
110
133
|
npx qskills skill list --json
|
|
111
134
|
```
|
|
112
135
|
|
|
113
|
-
|
|
136
|
+
### 复制技能到其他环境
|
|
114
137
|
|
|
115
138
|
```bash
|
|
116
|
-
#
|
|
117
|
-
npx qskills skill
|
|
139
|
+
# 将技能从 claude 环境复制到 cursor 环境
|
|
140
|
+
npx qskills skill copy my-script --from claude --to cursor
|
|
118
141
|
|
|
119
|
-
#
|
|
120
|
-
npx qskills skill
|
|
142
|
+
# 从公共库安装到指定环境
|
|
143
|
+
npx qskills skill install api-helper --env qwen
|
|
121
144
|
```
|
|
122
145
|
|
|
123
|
-
|
|
146
|
+
### 删除技能
|
|
124
147
|
|
|
125
148
|
```bash
|
|
126
149
|
# 删除技能(需确认)
|
|
127
150
|
npx qskills skill remove my-script
|
|
128
151
|
|
|
129
|
-
#
|
|
152
|
+
# 强制删除(无需确认)
|
|
130
153
|
npx qskills skill remove my-script --force
|
|
131
154
|
|
|
132
|
-
#
|
|
133
|
-
npx qskills skill remove my-script --
|
|
155
|
+
# 指定环境删除
|
|
156
|
+
npx qskills skill remove my-script --env claude
|
|
134
157
|
```
|
|
135
158
|
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
```bash
|
|
139
|
-
# 同步所有仓库
|
|
140
|
-
npx qskills skill sync
|
|
141
|
-
|
|
142
|
-
# 同步指定来源
|
|
143
|
-
npx qskills skill sync --source public
|
|
159
|
+
---
|
|
144
160
|
|
|
145
|
-
|
|
146
|
-
npx qskills skill sync --force
|
|
147
|
-
```
|
|
161
|
+
## 知识库管理
|
|
148
162
|
|
|
149
|
-
###
|
|
150
|
-
|
|
151
|
-
#### 添加知识条目
|
|
163
|
+
### 添加知识条目
|
|
152
164
|
|
|
153
165
|
```bash
|
|
154
166
|
# 添加文档
|
|
@@ -165,7 +177,7 @@ npx qskills knowledge add ./snippet.js \
|
|
|
165
177
|
--category utils \
|
|
166
178
|
--tags javascript,utils
|
|
167
179
|
|
|
168
|
-
#
|
|
180
|
+
# 添加项目模板
|
|
169
181
|
npx qskills knowledge add ./template/ \
|
|
170
182
|
--title "React 项目模板" \
|
|
171
183
|
--type template \
|
|
@@ -175,14 +187,14 @@ npx qskills knowledge add ./template/ \
|
|
|
175
187
|
|
|
176
188
|
**知识类型:**
|
|
177
189
|
|
|
178
|
-
| 类型 | 说明 |
|
|
179
|
-
|
|
180
|
-
| `document` |
|
|
181
|
-
| `code-snippet` | 代码片段 |
|
|
182
|
-
| `template` |
|
|
183
|
-
| `note` |
|
|
190
|
+
| 类型 | 说明 | 用途 |
|
|
191
|
+
|------|------|------|
|
|
192
|
+
| `document` | 文档 | 技术文档、笔记 |
|
|
193
|
+
| `code-snippet` | 代码片段 | 可复用代码 |
|
|
194
|
+
| `template` | 模板 | 项目模板、配置模板 |
|
|
195
|
+
| `note` | 笔记 | 快速记录 |
|
|
184
196
|
|
|
185
|
-
|
|
197
|
+
### 列出知识条目
|
|
186
198
|
|
|
187
199
|
```bash
|
|
188
200
|
# 列出所有
|
|
@@ -194,106 +206,105 @@ npx qskills knowledge list --type code-snippet
|
|
|
194
206
|
# 按分类筛选
|
|
195
207
|
npx qskills knowledge list --category api
|
|
196
208
|
|
|
197
|
-
#
|
|
198
|
-
npx qskills knowledge list --
|
|
209
|
+
# 按环境筛选
|
|
210
|
+
npx qskills knowledge list --env claude
|
|
199
211
|
```
|
|
200
212
|
|
|
201
|
-
|
|
213
|
+
### 搜索知识
|
|
202
214
|
|
|
203
215
|
```bash
|
|
204
216
|
npx qskills knowledge search "API" --category backend
|
|
205
217
|
```
|
|
206
218
|
|
|
207
|
-
|
|
219
|
+
### 删除知识条目
|
|
208
220
|
|
|
209
221
|
```bash
|
|
210
222
|
npx qskills knowledge remove <id>
|
|
211
223
|
```
|
|
212
224
|
|
|
213
|
-
|
|
225
|
+
---
|
|
226
|
+
|
|
227
|
+
## Agent 管理
|
|
214
228
|
|
|
215
|
-
|
|
229
|
+
### 添加 Agent 配置
|
|
216
230
|
|
|
217
231
|
```bash
|
|
218
|
-
|
|
219
|
-
|
|
232
|
+
npx qskills agent add ./agent-config/ \
|
|
233
|
+
--name code-reviewer \
|
|
234
|
+
--env claude \
|
|
235
|
+
--tags review,code-quality
|
|
220
236
|
```
|
|
221
237
|
|
|
222
|
-
|
|
223
|
-
1. 配置存储路径
|
|
224
|
-
2. 配置 Git 仓库(可选)
|
|
225
|
-
3. 权限和安全设置
|
|
226
|
-
|
|
227
|
-
#### 查看配置
|
|
238
|
+
### 列出 Agent
|
|
228
239
|
|
|
229
240
|
```bash
|
|
230
|
-
|
|
231
|
-
npx qskills config list
|
|
232
|
-
|
|
233
|
-
# 获取单个配置项
|
|
234
|
-
npx qskills config get storage.baseDir
|
|
235
|
-
|
|
236
|
-
# JSON 输出
|
|
237
|
-
npx qskills config list --json
|
|
241
|
+
npx qskills agent list --env claude
|
|
238
242
|
```
|
|
239
243
|
|
|
240
|
-
|
|
244
|
+
---
|
|
241
245
|
|
|
242
|
-
|
|
243
|
-
# 设置配置项
|
|
244
|
-
npx qskills config set storage.baseDir ~/.my-skills
|
|
246
|
+
## 同步功能
|
|
245
247
|
|
|
246
|
-
|
|
247
|
-
npx qskills config set sync.autoSync true
|
|
248
|
+
### 配置远程仓库
|
|
248
249
|
|
|
249
|
-
|
|
250
|
+
```bash
|
|
251
|
+
# 配置公共仓库
|
|
250
252
|
npx qskills config set remotes.public.url https://github.com/user/public-skills.git
|
|
253
|
+
npx qskills config set remotes.public.enabled true
|
|
254
|
+
|
|
255
|
+
# 配置私人仓库
|
|
256
|
+
npx qskills config set remotes.private.url git@github.com:user/private-skills.git
|
|
257
|
+
npx qskills config set remotes.private.enabled true
|
|
251
258
|
```
|
|
252
259
|
|
|
253
|
-
###
|
|
260
|
+
### 执行同步
|
|
254
261
|
|
|
255
262
|
```bash
|
|
256
263
|
# 同步所有仓库
|
|
257
264
|
npx qskills sync
|
|
258
265
|
|
|
259
|
-
#
|
|
266
|
+
# 只同步公共仓库
|
|
267
|
+
npx qskills sync --source public
|
|
268
|
+
|
|
269
|
+
# 只同步私人仓库
|
|
260
270
|
npx qskills sync --source private
|
|
261
271
|
|
|
262
|
-
#
|
|
272
|
+
# 预览变更(不实际执行)
|
|
263
273
|
npx qskills sync --dry-run
|
|
264
274
|
|
|
265
|
-
#
|
|
275
|
+
# 强制覆盖本地
|
|
266
276
|
npx qskills sync --force
|
|
267
277
|
```
|
|
268
278
|
|
|
269
|
-
|
|
279
|
+
---
|
|
270
280
|
|
|
271
|
-
|
|
281
|
+
## 安全扫描
|
|
272
282
|
|
|
273
|
-
|
|
283
|
+
添加技能时自动扫描敏感信息:
|
|
274
284
|
|
|
275
|
-
|
|
276
|
-
|
|
277
|
-
|
|
|
278
|
-
|
|
279
|
-
|
|
|
280
|
-
|
|
|
281
|
-
|
|
|
282
|
-
|
|
|
283
|
-
|
|
|
285
|
+
### 检测的敏感信息类型
|
|
286
|
+
|
|
287
|
+
| 类型 | 模式示例 | 严重级别 |
|
|
288
|
+
|------|----------|----------|
|
|
289
|
+
| AWS Access Key | `AKIA...` | 高 |
|
|
290
|
+
| GitHub Token | `ghp_...`, `gho_...` | 高 |
|
|
291
|
+
| 私钥文件 | `-----BEGIN PRIVATE KEY-----` | 高 |
|
|
292
|
+
| API Key | `api_key = "..."` | 中 |
|
|
293
|
+
| JWT Token | `eyJ...` | 中 |
|
|
294
|
+
| 数据库连接 | `mysql://user:pass@...` | 高 |
|
|
295
|
+
| Slack Token | `xox...` | 高 |
|
|
284
296
|
|
|
285
297
|
### 扫描示例
|
|
286
298
|
|
|
287
299
|
```bash
|
|
288
|
-
# 正常添加(自动扫描)
|
|
289
300
|
npx qskills skill add ./config.js --name my-config
|
|
290
301
|
|
|
291
|
-
#
|
|
302
|
+
# 若检测到敏感信息:
|
|
292
303
|
# ⚠️ Sensitive information detected:
|
|
293
304
|
# [HIGH] aws-access-key in config.js:10
|
|
294
305
|
# [MED] api-key-generic in config.js:15
|
|
295
|
-
|
|
296
|
-
#
|
|
306
|
+
#
|
|
307
|
+
# Continue anyway? (y/N)
|
|
297
308
|
```
|
|
298
309
|
|
|
299
310
|
### 跳过扫描
|
|
@@ -303,7 +314,38 @@ npx qskills skill add ./config.js --name my-config
|
|
|
303
314
|
npx qskills skill add ./public-config.json --name public-config --skip-scan
|
|
304
315
|
```
|
|
305
316
|
|
|
306
|
-
|
|
317
|
+
---
|
|
318
|
+
|
|
319
|
+
## 配置管理
|
|
320
|
+
|
|
321
|
+
### 查看配置
|
|
322
|
+
|
|
323
|
+
```bash
|
|
324
|
+
# 列出所有配置
|
|
325
|
+
npx qskills config list
|
|
326
|
+
|
|
327
|
+
# 获取单个配置项
|
|
328
|
+
npx qskills config get storage.baseDir
|
|
329
|
+
npx qskills config get remotes.public.url
|
|
330
|
+
```
|
|
331
|
+
|
|
332
|
+
### 修改配置
|
|
333
|
+
|
|
334
|
+
```bash
|
|
335
|
+
# 修改存储路径
|
|
336
|
+
npx qskills config set storage.baseDir ~/.my-skills
|
|
337
|
+
|
|
338
|
+
# 启用自动同步
|
|
339
|
+
npx qskills config set sync.autoSync true
|
|
340
|
+
|
|
341
|
+
# 配置同步间隔(分钟)
|
|
342
|
+
npx qskills config set sync.syncInterval 30
|
|
343
|
+
|
|
344
|
+
# 添加扫描跳过规则
|
|
345
|
+
npx qskills config set scanner.skipPatterns '["*.md", "docs/**", "test/**"]'
|
|
346
|
+
```
|
|
347
|
+
|
|
348
|
+
### 配置文件示例
|
|
307
349
|
|
|
308
350
|
配置文件位于 `~/.qcli/config.json`:
|
|
309
351
|
|
|
@@ -314,20 +356,20 @@ npx qskills skill add ./public-config.json --name public-config --skip-scan
|
|
|
314
356
|
"storage": {
|
|
315
357
|
"baseDir": "~/.qcli/data",
|
|
316
358
|
"skillsDir": "skills",
|
|
317
|
-
"knowledgeDir": "knowledge"
|
|
359
|
+
"knowledgeDir": "knowledge",
|
|
360
|
+
"agentsDir": "agents"
|
|
318
361
|
},
|
|
319
362
|
"remotes": {
|
|
320
363
|
"public": {
|
|
321
364
|
"url": "https://github.com/user/public-skills.git",
|
|
322
365
|
"branch": "main",
|
|
323
366
|
"enabled": true
|
|
324
|
-
},
|
|
325
|
-
"private": {
|
|
326
|
-
"url": "git@github.com:user/private-skills.git",
|
|
327
|
-
"branch": "main",
|
|
328
|
-
"enabled": true
|
|
329
367
|
}
|
|
330
368
|
},
|
|
369
|
+
"environments": {
|
|
370
|
+
"enabled": ["claude", "cursor", "qwen", "codex", "codebuddy", "common"],
|
|
371
|
+
"default": "common"
|
|
372
|
+
},
|
|
331
373
|
"sync": {
|
|
332
374
|
"autoSync": false,
|
|
333
375
|
"syncInterval": 0,
|
|
@@ -344,26 +386,38 @@ npx qskills skill add ./public-config.json --name public-config --skip-scan
|
|
|
344
386
|
}
|
|
345
387
|
```
|
|
346
388
|
|
|
347
|
-
|
|
389
|
+
---
|
|
348
390
|
|
|
349
|
-
|
|
391
|
+
## Git 认证配置
|
|
392
|
+
|
|
393
|
+
### 方式一:环境变量(推荐)
|
|
350
394
|
|
|
351
395
|
```bash
|
|
352
|
-
#
|
|
396
|
+
# Linux/macOS
|
|
353
397
|
export QSKILLS_TOKEN=ghp_your_token_here
|
|
354
398
|
|
|
355
|
-
#
|
|
399
|
+
# Windows CMD
|
|
356
400
|
set QSKILLS_TOKEN=ghp_your_token_here
|
|
357
401
|
|
|
358
|
-
#
|
|
402
|
+
# Windows PowerShell
|
|
359
403
|
$env:QSKILLS_TOKEN="ghp_your_token_here"
|
|
360
404
|
```
|
|
361
405
|
|
|
406
|
+
### 方式二:SSH 密钥
|
|
407
|
+
|
|
408
|
+
```bash
|
|
409
|
+
# 使用 SSH URL
|
|
410
|
+
npx qskills config set remotes.private.url git@github.com:user/private-skills.git
|
|
411
|
+
```
|
|
412
|
+
|
|
362
413
|
### 创建 GitHub Token
|
|
363
414
|
|
|
364
|
-
1. 访问 GitHub Settings → Developer settings → Personal access tokens
|
|
365
|
-
2.
|
|
366
|
-
3.
|
|
415
|
+
1. 访问 GitHub → Settings → Developer settings → Personal access tokens
|
|
416
|
+
2. 点击 "Generate new token (classic)"
|
|
417
|
+
3. 勾选 `repo` 权限
|
|
418
|
+
4. 复制 Token 并设置环境变量
|
|
419
|
+
|
|
420
|
+
---
|
|
367
421
|
|
|
368
422
|
## 存储结构
|
|
369
423
|
|
|
@@ -372,96 +426,36 @@ $env:QSKILLS_TOKEN="ghp_your_token_here"
|
|
|
372
426
|
├── config.json # 配置文件
|
|
373
427
|
├── data/
|
|
374
428
|
│ ├── index.json # 本地索引
|
|
375
|
-
│ ├── skills/
|
|
376
|
-
│ │ ├──
|
|
429
|
+
│ ├── skills/ # 技能存储
|
|
430
|
+
│ │ ├── claude/
|
|
377
431
|
│ │ │ └── skill-name/
|
|
378
432
|
│ │ │ ├── skill.json
|
|
379
433
|
│ │ │ └── ...
|
|
380
|
-
│ │
|
|
381
|
-
│ │
|
|
382
|
-
│ │
|
|
383
|
-
│ │
|
|
384
|
-
│ └──
|
|
385
|
-
│
|
|
386
|
-
│
|
|
434
|
+
│ │ ├── cursor/
|
|
435
|
+
│ │ ├── qwen/
|
|
436
|
+
│ │ ├── codex/
|
|
437
|
+
│ │ ├── codebuddy/
|
|
438
|
+
│ │ └── common/
|
|
439
|
+
│ ├── knowledge/ # 知识库
|
|
440
|
+
│ │ ├── claude/
|
|
441
|
+
│ │ ├── cursor/
|
|
442
|
+
│ │ └── ...
|
|
443
|
+
│ └── agents/ # Agent 配置
|
|
444
|
+
│ ├── claude/
|
|
445
|
+
│ └── ...
|
|
387
446
|
├── public-repo/ # 公共仓库克隆
|
|
388
447
|
└── private-repo/ # 私人仓库克隆
|
|
389
448
|
```
|
|
390
449
|
|
|
391
|
-
|
|
392
|
-
|
|
393
|
-
### 克隆与构建
|
|
394
|
-
|
|
395
|
-
```bash
|
|
396
|
-
git clone https://github.com/your-username/qskills.git
|
|
397
|
-
cd qskills
|
|
398
|
-
|
|
399
|
-
# 安装依赖
|
|
400
|
-
npm install
|
|
401
|
-
|
|
402
|
-
# 构建
|
|
403
|
-
npm run build
|
|
404
|
-
|
|
405
|
-
# 测试
|
|
406
|
-
npm test
|
|
407
|
-
|
|
408
|
-
# 本地运行
|
|
409
|
-
node bin/qskills.js --help
|
|
410
|
-
```
|
|
411
|
-
|
|
412
|
-
### 开发脚本
|
|
413
|
-
|
|
414
|
-
```bash
|
|
415
|
-
# 使用开发脚本(推荐)
|
|
416
|
-
./docs/scripts/dev-start.sh # Linux/macOS
|
|
417
|
-
docs\scripts\dev-start.bat # Windows
|
|
418
|
-
|
|
419
|
-
# 或手动执行
|
|
420
|
-
npm run dev # 监听模式编译
|
|
421
|
-
npm run test:watch # 监听模式测试
|
|
422
|
-
```
|
|
423
|
-
|
|
424
|
-
### 运行测试
|
|
425
|
-
|
|
426
|
-
```bash
|
|
427
|
-
npm test # 运行所有测试
|
|
428
|
-
npm run test:watch # 监听模式
|
|
429
|
-
npm run test:coverage # 生成覆盖率报告
|
|
430
|
-
```
|
|
431
|
-
|
|
432
|
-
## 发布
|
|
433
|
-
|
|
434
|
-
### 发布到 npm
|
|
435
|
-
|
|
436
|
-
```bash
|
|
437
|
-
# 1. 登录 npm
|
|
438
|
-
npm login
|
|
439
|
-
|
|
440
|
-
# 2. 检查发布内容
|
|
441
|
-
npm pack --dry-run
|
|
442
|
-
|
|
443
|
-
# 3. 发布
|
|
444
|
-
npm publish
|
|
445
|
-
|
|
446
|
-
# 4. 发布 beta 版本
|
|
447
|
-
npm publish --tag beta
|
|
448
|
-
```
|
|
449
|
-
|
|
450
|
-
### 版本管理
|
|
451
|
-
|
|
452
|
-
```bash
|
|
453
|
-
npm version patch # 1.0.0 -> 1.0.1
|
|
454
|
-
npm version minor # 1.0.0 -> 1.1.0
|
|
455
|
-
npm version major # 1.0.0 -> 2.0.0
|
|
456
|
-
```
|
|
450
|
+
---
|
|
457
451
|
|
|
458
452
|
## 常见问题
|
|
459
453
|
|
|
460
454
|
### Q: npx 提示找不到命令?
|
|
461
455
|
|
|
462
|
-
|
|
456
|
+
确保 Node.js 版本 >= 16:
|
|
463
457
|
```bash
|
|
464
|
-
node -v
|
|
458
|
+
node -v
|
|
465
459
|
```
|
|
466
460
|
|
|
467
461
|
### Q: 同步失败,提示认证错误?
|
|
@@ -477,36 +471,45 @@ export QSKILLS_TOKEN=your_token
|
|
|
477
471
|
npx qskills config set storage.baseDir ~/custom-path
|
|
478
472
|
```
|
|
479
473
|
|
|
480
|
-
### Q:
|
|
481
|
-
|
|
482
|
-
命令添加 `--verbose` 参数(开发中)
|
|
483
|
-
|
|
484
|
-
### Q: Windows 下路径问题?
|
|
474
|
+
### Q: Windows 路径问题?
|
|
485
475
|
|
|
486
|
-
|
|
476
|
+
使用正斜杠:
|
|
487
477
|
```bash
|
|
488
478
|
npx qskills skill add "./scripts/tool.js"
|
|
489
|
-
# 或
|
|
490
|
-
npx qskills skill add ".\\scripts\\tool.js"
|
|
491
479
|
```
|
|
492
480
|
|
|
493
|
-
|
|
481
|
+
---
|
|
494
482
|
|
|
495
|
-
|
|
483
|
+
## 开发与测试
|
|
496
484
|
|
|
497
|
-
|
|
498
|
-
|
|
499
|
-
|
|
500
|
-
|
|
501
|
-
5. 创建 Pull Request
|
|
485
|
+
```bash
|
|
486
|
+
# 克隆仓库
|
|
487
|
+
git clone https://github.com/your-username/qskills.git
|
|
488
|
+
cd qskills
|
|
502
489
|
|
|
503
|
-
|
|
490
|
+
# 安装依赖
|
|
491
|
+
npm install
|
|
504
492
|
|
|
505
|
-
|
|
493
|
+
# 构建
|
|
494
|
+
npm run build
|
|
506
495
|
|
|
507
|
-
|
|
496
|
+
# 运行测试
|
|
497
|
+
npm test
|
|
498
|
+
|
|
499
|
+
# 本地运行
|
|
500
|
+
node bin/qskills.js --help
|
|
501
|
+
```
|
|
502
|
+
|
|
503
|
+
---
|
|
504
|
+
|
|
505
|
+
## 相关文档
|
|
508
506
|
|
|
509
507
|
- [产品需求文档 (PRD)](docs/PRD_Qcli-Skills_20260409.md)
|
|
510
508
|
- [技术规格文档](docs/TECH_SPEC_Qcli-Skills_20260409.md)
|
|
511
|
-
- [
|
|
512
|
-
|
|
509
|
+
- [测试报告](docs/TEST_REPORT_20260409.md)
|
|
510
|
+
|
|
511
|
+
---
|
|
512
|
+
|
|
513
|
+
## 许可证
|
|
514
|
+
|
|
515
|
+
[MIT](LICENSE)
|