@iflow-mcp/jane-xiaoer-skill-vision-control 1.3.0
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/.github/workflows/release.yml +42 -0
- package/LICENSE +21 -0
- package/README.md +284 -0
- package/README_CN.md +206 -0
- package/dist/svc/cli.d.ts +3 -0
- package/dist/svc/cli.d.ts.map +1 -0
- package/dist/svc/cli.js +822 -0
- package/dist/svc/cli.js.map +1 -0
- package/dist/svc/core/checker.d.ts +13 -0
- package/dist/svc/core/checker.d.ts.map +1 -0
- package/dist/svc/core/checker.js +320 -0
- package/dist/svc/core/checker.js.map +1 -0
- package/dist/svc/core/index.d.ts +7 -0
- package/dist/svc/core/index.d.ts.map +1 -0
- package/dist/svc/core/index.js +23 -0
- package/dist/svc/core/index.js.map +1 -0
- package/dist/svc/core/manager.d.ts +10 -0
- package/dist/svc/core/manager.d.ts.map +1 -0
- package/dist/svc/core/manager.js +228 -0
- package/dist/svc/core/manager.js.map +1 -0
- package/dist/svc/core/merger.d.ts +5 -0
- package/dist/svc/core/merger.d.ts.map +1 -0
- package/dist/svc/core/merger.js +285 -0
- package/dist/svc/core/merger.js.map +1 -0
- package/dist/svc/core/notifier.d.ts +5 -0
- package/dist/svc/core/notifier.d.ts.map +1 -0
- package/dist/svc/core/notifier.js +34 -0
- package/dist/svc/core/notifier.js.map +1 -0
- package/dist/svc/core/scheduler.d.ts +13 -0
- package/dist/svc/core/scheduler.d.ts.map +1 -0
- package/dist/svc/core/scheduler.js +131 -0
- package/dist/svc/core/scheduler.js.map +1 -0
- package/dist/svc/core/security.d.ts +42 -0
- package/dist/svc/core/security.d.ts.map +1 -0
- package/dist/svc/core/security.js +421 -0
- package/dist/svc/core/security.js.map +1 -0
- package/dist/svc/index.d.ts +5 -0
- package/dist/svc/index.d.ts.map +1 -0
- package/dist/svc/index.js +21 -0
- package/dist/svc/index.js.map +1 -0
- package/dist/svc/mcp/server.d.ts +2 -0
- package/dist/svc/mcp/server.d.ts.map +1 -0
- package/dist/svc/mcp/server.js +284 -0
- package/dist/svc/mcp/server.js.map +1 -0
- package/dist/svc/types.d.ts +93 -0
- package/dist/svc/types.d.ts.map +1 -0
- package/dist/svc/types.js +3 -0
- package/dist/svc/types.js.map +1 -0
- package/dist/svc/utils/config.d.ts +18 -0
- package/dist/svc/utils/config.d.ts.map +1 -0
- package/dist/svc/utils/config.js +153 -0
- package/dist/svc/utils/config.js.map +1 -0
- package/dist/svc/utils/fs.d.ts +10 -0
- package/dist/svc/utils/fs.d.ts.map +1 -0
- package/dist/svc/utils/fs.js +121 -0
- package/dist/svc/utils/fs.js.map +1 -0
- package/language.json +1 -0
- package/package.json +1 -0
- package/package_name +1 -0
- package/push_info.json +5 -0
- package/src/svc/cli.ts +940 -0
- package/src/svc/core/checker.ts +346 -0
- package/src/svc/core/index.ts +6 -0
- package/src/svc/core/manager.ts +236 -0
- package/src/svc/core/merger.ts +306 -0
- package/src/svc/core/notifier.ts +37 -0
- package/src/svc/core/scheduler.ts +115 -0
- package/src/svc/core/security.ts +449 -0
- package/src/svc/index.ts +4 -0
- package/src/svc/mcp/server.ts +303 -0
- package/src/svc/types.ts +105 -0
- package/src/svc/utils/config.ts +119 -0
- package/src/svc/utils/fs.ts +87 -0
- package/tsconfig.json +19 -0
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
name: Release
|
|
2
|
+
|
|
3
|
+
on:
|
|
4
|
+
push:
|
|
5
|
+
tags:
|
|
6
|
+
- 'v*'
|
|
7
|
+
|
|
8
|
+
jobs:
|
|
9
|
+
build:
|
|
10
|
+
runs-on: ubuntu-latest
|
|
11
|
+
steps:
|
|
12
|
+
- uses: actions/checkout@v4
|
|
13
|
+
|
|
14
|
+
- name: Setup Node.js
|
|
15
|
+
uses: actions/setup-node@v4
|
|
16
|
+
with:
|
|
17
|
+
node-version: '20'
|
|
18
|
+
registry-url: 'https://registry.npmjs.org'
|
|
19
|
+
|
|
20
|
+
- name: Install dependencies
|
|
21
|
+
run: npm ci
|
|
22
|
+
|
|
23
|
+
- name: Build
|
|
24
|
+
run: npm run build
|
|
25
|
+
|
|
26
|
+
- name: Publish to npm
|
|
27
|
+
run: npm publish
|
|
28
|
+
env:
|
|
29
|
+
NODE_AUTH_TOKEN: ${{ secrets.NPM_TOKEN }}
|
|
30
|
+
|
|
31
|
+
release:
|
|
32
|
+
needs: build
|
|
33
|
+
runs-on: ubuntu-latest
|
|
34
|
+
steps:
|
|
35
|
+
- uses: actions/checkout@v4
|
|
36
|
+
|
|
37
|
+
- name: Create GitHub Release
|
|
38
|
+
uses: softprops/action-gh-release@v1
|
|
39
|
+
with:
|
|
40
|
+
generate_release_notes: true
|
|
41
|
+
env:
|
|
42
|
+
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
package/LICENSE
ADDED
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
MIT License
|
|
2
|
+
|
|
3
|
+
Copyright (c) 2026
|
|
4
|
+
|
|
5
|
+
Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
6
|
+
of this software and associated documentation files (the "Software"), to deal
|
|
7
|
+
in the Software without restriction, including without limitation the rights
|
|
8
|
+
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
9
|
+
copies of the Software, and to permit persons to whom the Software is
|
|
10
|
+
furnished to do so, subject to the following conditions:
|
|
11
|
+
|
|
12
|
+
The above copyright notice and this permission notice shall be included in all
|
|
13
|
+
copies or substantial portions of the Software.
|
|
14
|
+
|
|
15
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
16
|
+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
17
|
+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
18
|
+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
19
|
+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
20
|
+
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
|
21
|
+
SOFTWARE.
|
package/README.md
ADDED
|
@@ -0,0 +1,284 @@
|
|
|
1
|
+
# Skill Vision Control (SVC)
|
|
2
|
+
|
|
3
|
+
[](https://badge.fury.io/js/skill-vision-control)
|
|
4
|
+
[](https://opensource.org/licenses/MIT)
|
|
5
|
+
|
|
6
|
+
> **Safe MCP Skill Version Manager** - Detect updates, parallel testing, smart merge, confirm before replace
|
|
7
|
+
|
|
8
|
+
## Features
|
|
9
|
+
|
|
10
|
+
- 🔍 **Update Detection** - Automatically detect new versions from GitHub/npm
|
|
11
|
+
- 🛡️ **Security Scanning** - Auto scan before download (Sentinel integration)
|
|
12
|
+
- 📦 **Version Management** - Keep multiple versions, switch anytime
|
|
13
|
+
- 🔀 **Smart Merge** - Merge official updates with your custom changes
|
|
14
|
+
- 🧪 **A/B Testing** - Test new versions before switching
|
|
15
|
+
- ⏰ **Scheduled Checks** - Automatic weekly/monthly update checks
|
|
16
|
+
- 🔔 **Notifications** - Desktop notifications for updates
|
|
17
|
+
- 🤖 **MCP Server** - Let AI manage your skills
|
|
18
|
+
|
|
19
|
+
## Installation
|
|
20
|
+
|
|
21
|
+
```bash
|
|
22
|
+
npm install -g skill-vision-control
|
|
23
|
+
```
|
|
24
|
+
|
|
25
|
+
Or with yarn:
|
|
26
|
+
|
|
27
|
+
```bash
|
|
28
|
+
yarn global add skill-vision-control
|
|
29
|
+
```
|
|
30
|
+
|
|
31
|
+
## Quick Start
|
|
32
|
+
|
|
33
|
+
```bash
|
|
34
|
+
# Add a skill to manage
|
|
35
|
+
svc add weather --source github:username/weather-mcp
|
|
36
|
+
|
|
37
|
+
# Check for updates
|
|
38
|
+
svc check
|
|
39
|
+
|
|
40
|
+
# Download new version (keeps old version)
|
|
41
|
+
svc download weather
|
|
42
|
+
|
|
43
|
+
# Test and switch
|
|
44
|
+
svc switch weather --version v1.1.0
|
|
45
|
+
|
|
46
|
+
# Or if you have custom changes, merge them
|
|
47
|
+
svc merge weather
|
|
48
|
+
```
|
|
49
|
+
|
|
50
|
+
## Commands
|
|
51
|
+
|
|
52
|
+
### Skill Management
|
|
53
|
+
|
|
54
|
+
| Command | Description |
|
|
55
|
+
|---------|-------------|
|
|
56
|
+
| `svc add <name> --source <url>` | Register a skill (github:user/repo or npm:package) |
|
|
57
|
+
| `svc list` | List all managed skills |
|
|
58
|
+
| `svc info <name>` | Show detailed information |
|
|
59
|
+
| `svc remove <name>` | Remove a skill |
|
|
60
|
+
|
|
61
|
+
### Version Control
|
|
62
|
+
|
|
63
|
+
| Command | Description |
|
|
64
|
+
|---------|-------------|
|
|
65
|
+
| `svc check [name]` | Check for updates |
|
|
66
|
+
| `svc download <name>` | Download new version (keep old) |
|
|
67
|
+
| `svc versions <name>` | List all local versions |
|
|
68
|
+
| `svc switch <name> -v <version>` | Switch to specific version |
|
|
69
|
+
| `svc rollback <name>` | Rollback to previous version |
|
|
70
|
+
| `svc confirm <name>` | Confirm current version |
|
|
71
|
+
| `svc cleanup <name> --keep <n>` | Clean old versions |
|
|
72
|
+
|
|
73
|
+
### Custom Modifications
|
|
74
|
+
|
|
75
|
+
| Command | Description |
|
|
76
|
+
|---------|-------------|
|
|
77
|
+
| `svc fork <name>` | Create custom branch for modifications |
|
|
78
|
+
| `svc save <name> -c "comment"` | Save your modifications |
|
|
79
|
+
| `svc diff <name>` | View differences from official |
|
|
80
|
+
| `svc merge <name>` | Merge official update with your changes |
|
|
81
|
+
| `svc conflicts <name>` | View merge conflicts |
|
|
82
|
+
| `svc resolve <name> -f <file> -u <choice>` | Resolve conflicts |
|
|
83
|
+
|
|
84
|
+
### Schedule
|
|
85
|
+
|
|
86
|
+
| Command | Description |
|
|
87
|
+
|---------|-------------|
|
|
88
|
+
| `svc schedule set -i <days>` | Set check interval (1/7/14/30 days) |
|
|
89
|
+
| `svc schedule show` | Show current schedule |
|
|
90
|
+
| `svc schedule enable` | Enable scheduled checks |
|
|
91
|
+
| `svc schedule disable` | Disable scheduled checks |
|
|
92
|
+
| `svc schedule run` | Manually trigger check |
|
|
93
|
+
|
|
94
|
+
### Security Scanning
|
|
95
|
+
|
|
96
|
+
| Command | Description |
|
|
97
|
+
|---------|-------------|
|
|
98
|
+
| `svc scan <path>` | Scan any skill directory for security issues |
|
|
99
|
+
| `svc audit [name]` | Audit installed skill(s) |
|
|
100
|
+
| `svc download <name> --skip-security` | Download without security scan (not recommended) |
|
|
101
|
+
|
|
102
|
+
## Workflow Examples
|
|
103
|
+
|
|
104
|
+
### Basic Update Flow
|
|
105
|
+
|
|
106
|
+
```bash
|
|
107
|
+
# 1. Check for updates
|
|
108
|
+
svc check
|
|
109
|
+
# Output: weather: v1.0.0 → v1.1.0 available
|
|
110
|
+
|
|
111
|
+
# 2. Download (old version preserved)
|
|
112
|
+
svc download weather
|
|
113
|
+
|
|
114
|
+
# 3. Test new version
|
|
115
|
+
svc switch weather -v v1.1.0 -t official
|
|
116
|
+
|
|
117
|
+
# 4. If good, confirm; if not, rollback
|
|
118
|
+
svc confirm weather
|
|
119
|
+
# or
|
|
120
|
+
svc rollback weather
|
|
121
|
+
```
|
|
122
|
+
|
|
123
|
+
### Security Audit Before Install
|
|
124
|
+
|
|
125
|
+
```bash
|
|
126
|
+
# Scan a skill before installing
|
|
127
|
+
svc scan ~/Downloads/some-mcp-skill
|
|
128
|
+
|
|
129
|
+
# Output:
|
|
130
|
+
# 🛡️ Sentinel Security Scan Report
|
|
131
|
+
# ══════════════════════════════════════════════════
|
|
132
|
+
# Risk Level: MEDIUM
|
|
133
|
+
# Recommendation: REVIEW
|
|
134
|
+
#
|
|
135
|
+
# ⚠️ SUSPICIOUS: 3 items found
|
|
136
|
+
# - src/api.ts:15 - Network request (axios)
|
|
137
|
+
# - src/config.ts:8 - Environment variable access
|
|
138
|
+
|
|
139
|
+
# Audit all installed skills
|
|
140
|
+
svc audit
|
|
141
|
+
|
|
142
|
+
# Audit specific skill with details
|
|
143
|
+
svc audit weather -v
|
|
144
|
+
```
|
|
145
|
+
|
|
146
|
+
### Custom Changes + Update
|
|
147
|
+
|
|
148
|
+
```bash
|
|
149
|
+
# 1. Create custom branch
|
|
150
|
+
svc fork weather
|
|
151
|
+
|
|
152
|
+
# 2. Make your modifications...
|
|
153
|
+
# 3. Save changes
|
|
154
|
+
svc save weather -c "Added Chinese language support"
|
|
155
|
+
|
|
156
|
+
# 4. Later, when update available
|
|
157
|
+
svc check
|
|
158
|
+
# Output: ⚠️ You have custom changes. Use "svc merge"
|
|
159
|
+
|
|
160
|
+
# 5. Download and merge
|
|
161
|
+
svc download weather
|
|
162
|
+
svc merge weather
|
|
163
|
+
|
|
164
|
+
# 6. If conflicts exist
|
|
165
|
+
svc conflicts weather
|
|
166
|
+
svc resolve weather -f src/config.ts -u custom
|
|
167
|
+
|
|
168
|
+
# 7. Test merged version
|
|
169
|
+
svc switch weather -v v1.1.0-merged -t merged
|
|
170
|
+
|
|
171
|
+
# 8. Confirm
|
|
172
|
+
svc confirm weather
|
|
173
|
+
```
|
|
174
|
+
|
|
175
|
+
## Using as MCP Server
|
|
176
|
+
|
|
177
|
+
Add to your MCP configuration:
|
|
178
|
+
|
|
179
|
+
```json
|
|
180
|
+
{
|
|
181
|
+
"mcpServers": {
|
|
182
|
+
"skill-vision-control": {
|
|
183
|
+
"command": "svc",
|
|
184
|
+
"args": ["serve"]
|
|
185
|
+
}
|
|
186
|
+
}
|
|
187
|
+
}
|
|
188
|
+
```
|
|
189
|
+
|
|
190
|
+
Available MCP tools:
|
|
191
|
+
- `svc_list_skills` - List all managed skills
|
|
192
|
+
- `svc_get_skill_info` - Get skill details
|
|
193
|
+
- `svc_check_updates` - Check for updates
|
|
194
|
+
- `svc_get_versions` - Get local versions
|
|
195
|
+
- `svc_switch_version` - Switch version
|
|
196
|
+
- `svc_rollback` - Rollback to previous
|
|
197
|
+
- `svc_download_update` - Download new version
|
|
198
|
+
- `svc_merge` - Merge with custom changes
|
|
199
|
+
- `svc_get_conflicts` - View merge conflicts
|
|
200
|
+
|
|
201
|
+
## Data Storage
|
|
202
|
+
|
|
203
|
+
All data is stored in `~/.svc/`:
|
|
204
|
+
|
|
205
|
+
```
|
|
206
|
+
~/.svc/
|
|
207
|
+
├── skills.json # Skill registry
|
|
208
|
+
├── schedule.json # Schedule settings
|
|
209
|
+
├── config.json # Global config
|
|
210
|
+
└── versions/ # Version storage
|
|
211
|
+
└── <skill>/
|
|
212
|
+
├── official/
|
|
213
|
+
├── custom/
|
|
214
|
+
├── merged/
|
|
215
|
+
└── active -> ...
|
|
216
|
+
```
|
|
217
|
+
|
|
218
|
+
## Security Scanning
|
|
219
|
+
|
|
220
|
+
SVC integrates [Sentinel](https://github.com/Jane-xiaoer/skill-vision-control) security patterns for automatic code scanning.
|
|
221
|
+
|
|
222
|
+
### Detection Capabilities
|
|
223
|
+
|
|
224
|
+
| Level | Description | Examples |
|
|
225
|
+
|-------|-------------|----------|
|
|
226
|
+
| **CRITICAL** | High-risk patterns | `eval()`, `exec()`, `rm -rf`, registry access |
|
|
227
|
+
| **SUSPICIOUS** | Needs review | Network requests, env vars, file operations |
|
|
228
|
+
| **WARNING** | Potential issues | Long lines, high entropy files |
|
|
229
|
+
|
|
230
|
+
### Risk Levels
|
|
231
|
+
|
|
232
|
+
| Level | Action |
|
|
233
|
+
|-------|--------|
|
|
234
|
+
| `SAFE` | Safe to install |
|
|
235
|
+
| `LOW` | Minor concerns, review recommended |
|
|
236
|
+
| `MEDIUM` | Review required before install |
|
|
237
|
+
| `HIGH` | Significant risks detected |
|
|
238
|
+
| `CRITICAL` | Do not install without careful review |
|
|
239
|
+
|
|
240
|
+
### Auto-Scan on Download
|
|
241
|
+
|
|
242
|
+
When you run `svc download`, security scan runs automatically:
|
|
243
|
+
|
|
244
|
+
```bash
|
|
245
|
+
svc download weather
|
|
246
|
+
# 🛡️ Running security scan...
|
|
247
|
+
# ✅ Security scan passed
|
|
248
|
+
# ✓ Download complete
|
|
249
|
+
```
|
|
250
|
+
|
|
251
|
+
If issues found:
|
|
252
|
+
```bash
|
|
253
|
+
svc download untrusted-skill
|
|
254
|
+
# 🛡️ Running security scan...
|
|
255
|
+
# 🛑 Security scan found critical issues!
|
|
256
|
+
# ? Do you still want to proceed? (NOT RECOMMENDED) (y/N)
|
|
257
|
+
```
|
|
258
|
+
|
|
259
|
+
To skip (not recommended):
|
|
260
|
+
```bash
|
|
261
|
+
svc download weather --skip-security
|
|
262
|
+
```
|
|
263
|
+
|
|
264
|
+
## Configuration
|
|
265
|
+
|
|
266
|
+
### Supported Sources
|
|
267
|
+
|
|
268
|
+
- **GitHub**: `github:username/repo` or `username/repo`
|
|
269
|
+
- **npm**: `npm:package-name`
|
|
270
|
+
|
|
271
|
+
### Schedule Options
|
|
272
|
+
|
|
273
|
+
- `1d` - Daily checks
|
|
274
|
+
- `7d` - Weekly checks (default)
|
|
275
|
+
- `14d` - Bi-weekly checks
|
|
276
|
+
- `30d` - Monthly checks
|
|
277
|
+
|
|
278
|
+
## Contributing
|
|
279
|
+
|
|
280
|
+
Contributions are welcome! Please feel free to submit a Pull Request.
|
|
281
|
+
|
|
282
|
+
## License
|
|
283
|
+
|
|
284
|
+
MIT License - see [LICENSE](LICENSE) for details.
|
package/README_CN.md
ADDED
|
@@ -0,0 +1,206 @@
|
|
|
1
|
+
# Skill Vision Control (SVC)
|
|
2
|
+
|
|
3
|
+
[](https://badge.fury.io/js/skill-vision-control)
|
|
4
|
+
[](https://opensource.org/licenses/MIT)
|
|
5
|
+
|
|
6
|
+
> **安全的 MCP Skill 版本管理器** - 检测更新、并行测试、智能合并、确认后替换
|
|
7
|
+
|
|
8
|
+
## 功能特点
|
|
9
|
+
|
|
10
|
+
- 🔍 **更新检测** - 自动检测 GitHub/npm 上的新版本
|
|
11
|
+
- 📦 **版本管理** - 保留多个版本,随时切换
|
|
12
|
+
- 🔀 **智能合并** - 将官方更新与你的自定义修改合并
|
|
13
|
+
- 🧪 **A/B 测试** - 切换前先测试新版本
|
|
14
|
+
- ⏰ **定时检查** - 自动每周/每月检查更新
|
|
15
|
+
- 🔔 **桌面通知** - 有更新时发送通知
|
|
16
|
+
- 🤖 **MCP Server** - 让 AI 帮你管理 Skills
|
|
17
|
+
|
|
18
|
+
## 安装
|
|
19
|
+
|
|
20
|
+
```bash
|
|
21
|
+
npm install -g skill-vision-control
|
|
22
|
+
```
|
|
23
|
+
|
|
24
|
+
或使用 yarn:
|
|
25
|
+
|
|
26
|
+
```bash
|
|
27
|
+
yarn global add skill-vision-control
|
|
28
|
+
```
|
|
29
|
+
|
|
30
|
+
## 快速开始
|
|
31
|
+
|
|
32
|
+
```bash
|
|
33
|
+
# 添加一个 Skill 进行管理
|
|
34
|
+
svc add weather --source github:username/weather-mcp
|
|
35
|
+
|
|
36
|
+
# 检查更新
|
|
37
|
+
svc check
|
|
38
|
+
|
|
39
|
+
# 下载新版本(保留旧版本)
|
|
40
|
+
svc download weather
|
|
41
|
+
|
|
42
|
+
# 测试并切换
|
|
43
|
+
svc switch weather --version v1.1.0
|
|
44
|
+
|
|
45
|
+
# 或者如果你有自定义修改,进行合并
|
|
46
|
+
svc merge weather
|
|
47
|
+
```
|
|
48
|
+
|
|
49
|
+
## 命令列表
|
|
50
|
+
|
|
51
|
+
### Skill 管理
|
|
52
|
+
|
|
53
|
+
| 命令 | 说明 |
|
|
54
|
+
|------|------|
|
|
55
|
+
| `svc add <name> --source <url>` | 注册一个 Skill(github:用户/仓库 或 npm:包名) |
|
|
56
|
+
| `svc list` | 列出所有管理的 Skills |
|
|
57
|
+
| `svc info <name>` | 显示详细信息 |
|
|
58
|
+
| `svc remove <name>` | 移除一个 Skill |
|
|
59
|
+
|
|
60
|
+
### 版本控制
|
|
61
|
+
|
|
62
|
+
| 命令 | 说明 |
|
|
63
|
+
|------|------|
|
|
64
|
+
| `svc check [name]` | 检查更新 |
|
|
65
|
+
| `svc download <name>` | 下载新版本(保留旧版本) |
|
|
66
|
+
| `svc versions <name>` | 列出所有本地版本 |
|
|
67
|
+
| `svc switch <name> -v <version>` | 切换到指定版本 |
|
|
68
|
+
| `svc rollback <name>` | 回滚到上一个版本 |
|
|
69
|
+
| `svc confirm <name>` | 确认当前版本 |
|
|
70
|
+
| `svc cleanup <name> --keep <n>` | 清理旧版本 |
|
|
71
|
+
|
|
72
|
+
### 自定义修改
|
|
73
|
+
|
|
74
|
+
| 命令 | 说明 |
|
|
75
|
+
|------|------|
|
|
76
|
+
| `svc fork <name>` | 创建自定义分支进行修改 |
|
|
77
|
+
| `svc save <name> -c "说明"` | 保存你的修改 |
|
|
78
|
+
| `svc diff <name>` | 查看与官方的差异 |
|
|
79
|
+
| `svc merge <name>` | 将官方更新与你的修改合并 |
|
|
80
|
+
| `svc conflicts <name>` | 查看合并冲突 |
|
|
81
|
+
| `svc resolve <name> -f <文件> -u <选择>` | 解决冲突 |
|
|
82
|
+
|
|
83
|
+
### 定时调度
|
|
84
|
+
|
|
85
|
+
| 命令 | 说明 |
|
|
86
|
+
|------|------|
|
|
87
|
+
| `svc schedule set -i <天数>` | 设置检查周期(1/7/14/30 天) |
|
|
88
|
+
| `svc schedule show` | 显示当前调度设置 |
|
|
89
|
+
| `svc schedule enable` | 启用定时检查 |
|
|
90
|
+
| `svc schedule disable` | 禁用定时检查 |
|
|
91
|
+
| `svc schedule run` | 手动触发检查 |
|
|
92
|
+
|
|
93
|
+
## 使用流程示例
|
|
94
|
+
|
|
95
|
+
### 基本更新流程
|
|
96
|
+
|
|
97
|
+
```bash
|
|
98
|
+
# 1. 检查更新
|
|
99
|
+
svc check
|
|
100
|
+
# 输出: weather: v1.0.0 → v1.1.0 可用
|
|
101
|
+
|
|
102
|
+
# 2. 下载(旧版本保留)
|
|
103
|
+
svc download weather
|
|
104
|
+
|
|
105
|
+
# 3. 测试新版本
|
|
106
|
+
svc switch weather -v v1.1.0 -t official
|
|
107
|
+
|
|
108
|
+
# 4. 如果好用就确认;不好用就回滚
|
|
109
|
+
svc confirm weather
|
|
110
|
+
# 或者
|
|
111
|
+
svc rollback weather
|
|
112
|
+
```
|
|
113
|
+
|
|
114
|
+
### 有自定义修改时更新
|
|
115
|
+
|
|
116
|
+
```bash
|
|
117
|
+
# 1. 创建自定义分支
|
|
118
|
+
svc fork weather
|
|
119
|
+
|
|
120
|
+
# 2. 进行你的修改...
|
|
121
|
+
# 3. 保存修改
|
|
122
|
+
svc save weather -c "添加了中文支持"
|
|
123
|
+
|
|
124
|
+
# 4. 之后,当有更新时
|
|
125
|
+
svc check
|
|
126
|
+
# 输出: ⚠️ 你有自定义修改,建议使用 merge 命令
|
|
127
|
+
|
|
128
|
+
# 5. 下载并合并
|
|
129
|
+
svc download weather
|
|
130
|
+
svc merge weather
|
|
131
|
+
|
|
132
|
+
# 6. 如果有冲突
|
|
133
|
+
svc conflicts weather
|
|
134
|
+
svc resolve weather -f src/config.ts -u custom
|
|
135
|
+
|
|
136
|
+
# 7. 测试合并后的版本
|
|
137
|
+
svc switch weather -v v1.1.0-merged -t merged
|
|
138
|
+
|
|
139
|
+
# 8. 确认使用
|
|
140
|
+
svc confirm weather
|
|
141
|
+
```
|
|
142
|
+
|
|
143
|
+
## 作为 MCP Server 使用
|
|
144
|
+
|
|
145
|
+
添加到你的 MCP 配置:
|
|
146
|
+
|
|
147
|
+
```json
|
|
148
|
+
{
|
|
149
|
+
"mcpServers": {
|
|
150
|
+
"skill-vision-control": {
|
|
151
|
+
"command": "svc",
|
|
152
|
+
"args": ["serve"]
|
|
153
|
+
}
|
|
154
|
+
}
|
|
155
|
+
}
|
|
156
|
+
```
|
|
157
|
+
|
|
158
|
+
可用的 MCP 工具:
|
|
159
|
+
- `svc_list_skills` - 列出所有管理的 Skills
|
|
160
|
+
- `svc_get_skill_info` - 获取 Skill 详情
|
|
161
|
+
- `svc_check_updates` - 检查更新
|
|
162
|
+
- `svc_get_versions` - 获取本地版本
|
|
163
|
+
- `svc_switch_version` - 切换版本
|
|
164
|
+
- `svc_rollback` - 回滚到上一个版本
|
|
165
|
+
- `svc_download_update` - 下载新版本
|
|
166
|
+
- `svc_merge` - 与自定义修改合并
|
|
167
|
+
- `svc_get_conflicts` - 查看合并冲突
|
|
168
|
+
|
|
169
|
+
## 数据存储
|
|
170
|
+
|
|
171
|
+
所有数据存储在 `~/.svc/`:
|
|
172
|
+
|
|
173
|
+
```
|
|
174
|
+
~/.svc/
|
|
175
|
+
├── skills.json # Skill 注册信息
|
|
176
|
+
├── schedule.json # 调度设置
|
|
177
|
+
├── config.json # 全局配置
|
|
178
|
+
└── versions/ # 版本存储
|
|
179
|
+
└── <skill名称>/
|
|
180
|
+
├── official/ # 官方版本
|
|
181
|
+
├── custom/ # 自定义版本
|
|
182
|
+
├── merged/ # 合并版本
|
|
183
|
+
└── active -> ... # 当前激活版本
|
|
184
|
+
```
|
|
185
|
+
|
|
186
|
+
## 配置说明
|
|
187
|
+
|
|
188
|
+
### 支持的源
|
|
189
|
+
|
|
190
|
+
- **GitHub**: `github:用户名/仓库名` 或直接 `用户名/仓库名`
|
|
191
|
+
- **npm**: `npm:包名`
|
|
192
|
+
|
|
193
|
+
### 调度选项
|
|
194
|
+
|
|
195
|
+
- `1d` - 每天检查
|
|
196
|
+
- `7d` - 每周检查(默认)
|
|
197
|
+
- `14d` - 每两周检查
|
|
198
|
+
- `30d` - 每月检查
|
|
199
|
+
|
|
200
|
+
## 贡献
|
|
201
|
+
|
|
202
|
+
欢迎贡献代码!请随时提交 Pull Request。
|
|
203
|
+
|
|
204
|
+
## 许可证
|
|
205
|
+
|
|
206
|
+
MIT License - 详见 [LICENSE](LICENSE)
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"cli.d.ts","sourceRoot":"","sources":["../../src/svc/cli.ts"],"names":[],"mappings":""}
|