@mcp-s/skills 1.0.2 → 1.3.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/README.md CHANGED
@@ -1,137 +1,440 @@
1
- # @mcp-s/skills
1
+ # skills
2
2
 
3
- Install skills onto coding agents from an MCP-S server. Supports Claude Code, Cline, Codex, Cursor, Windsurf, and many more AI coding agents.
3
+ The CLI for the open agent skills ecosystem.
4
4
 
5
- ## Usage
5
+ <!-- agent-list:start -->
6
+ Supports **OpenCode**, **Claude Code**, **Codex**, **Cursor**, and [36 more](#supported-agents).
7
+ <!-- agent-list:end -->
8
+
9
+ ## Install a Skill
6
10
 
7
11
  ```bash
8
- npx @mcp-s/skills --org <org> [options]
9
- # or
10
- npx @mcp-s/skills --base-url <url> [options]
12
+ npx skills add vercel-labs/agent-skills
13
+ ```
14
+
15
+ ### Source Formats
16
+
17
+ ```bash
18
+ # GitHub shorthand (owner/repo)
19
+ npx skills add vercel-labs/agent-skills
20
+
21
+ # Full GitHub URL
22
+ npx skills add https://github.com/vercel-labs/agent-skills
23
+
24
+ # Direct path to a skill in a repo
25
+ npx skills add https://github.com/vercel-labs/agent-skills/tree/main/skills/web-design-guidelines
26
+
27
+ # GitLab URL
28
+ npx skills add https://gitlab.com/org/repo
29
+
30
+ # Any git URL
31
+ npx skills add git@github.com:vercel-labs/agent-skills.git
32
+
33
+ # Local path
34
+ npx skills add ./my-local-skills
11
35
  ```
12
36
 
13
37
  ### Options
14
38
 
15
- - `-o, --org <org>` - Organization name (builds URL as `https://<org>.mcp-s.com/skills`)
16
- - `-b, --base-url <url>` - Full base URL of the MCP-S skills server
17
- - `-g, --global` - Install skill globally (user-level) instead of project-level
18
- - `-a, --agent <agents...>` - Specify agents to install to (claude-code, cline, codex, cursor, etc.)
19
- - `-s, --skill <skills...>` - Specify skill slugs to install (skip selection prompt)
20
- - `-l, --list` - List available skills without installing
21
- - `-y, --yes` - Skip confirmation prompts
22
- - `--all` - Install all skills to all agents without any prompts (implies -y -g)
39
+ | Option | Description |
40
+ | ------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------- |
41
+ | `-g, --global` | Install to user directory instead of project |
42
+ | `-a, --agent <agents...>` | <!-- agent-names:start -->Target specific agents (e.g., `claude-code`, `codex`). See [Supported Agents](#supported-agents)<!-- agent-names:end --> |
43
+ | `-s, --skill <skills...>` | Install specific skills by name (use `'*'` for all skills) |
44
+ | `-l, --list` | List available skills without installing |
45
+ | `-y, --yes` | Skip all confirmation prompts |
46
+ | `--all` | Install all skills to all agents without prompts |
47
+
48
+ ### Examples
49
+
50
+ ```bash
51
+ # List skills in a repository
52
+ npx skills add vercel-labs/agent-skills --list
53
+
54
+ # Install specific skills
55
+ npx skills add vercel-labs/agent-skills --skill frontend-design --skill skill-creator
23
56
 
24
- ## Authentication
57
+ # Install a skill with spaces in the name (must be quoted)
58
+ npx skills add owner/repo --skill "Convex Best Practices"
25
59
 
26
- The CLI automatically handles authentication. On first run, it will:
27
- 1. Generate authentication credentials
28
- 2. Open your browser to complete authentication
29
- 3. Save the credentials for future use
60
+ # Install to specific agents
61
+ npx skills add vercel-labs/agent-skills -a claude-code -a opencode
30
62
 
31
- Credentials are stored in `~/.mcp-s/skills-config.json`.
63
+ # Non-interactive installation (CI/CD friendly)
64
+ npx skills add vercel-labs/agent-skills --skill frontend-design -g -a claude-code -y
32
65
 
33
- ## Examples
66
+ # Install all skills from a repo to all agents
67
+ npx skills add vercel-labs/agent-skills --all
34
68
 
35
- ### List available skills
69
+ # Install all skills to specific agents
70
+ npx skills add vercel-labs/agent-skills --skill '*' -a claude-code
71
+
72
+ # Install specific skills to all agents
73
+ npx skills add vercel-labs/agent-skills --agent '*' --skill frontend-design
74
+ ```
75
+
76
+ ### Installation Scope
77
+
78
+ | Scope | Flag | Location | Use Case |
79
+ | ----------- | --------- | ------------------- | --------------------------------------------- |
80
+ | **Project** | (default) | `./<agent>/skills/` | Committed with your project, shared with team |
81
+ | **Global** | `-g` | `~/<agent>/skills/` | Available across all projects |
82
+
83
+ ### Installation Methods
84
+
85
+ When installing interactively, you can choose:
86
+
87
+ | Method | Description |
88
+ | ------------------------- | ------------------------------------------------------------------------------------------- |
89
+ | **Symlink** (Recommended) | Creates symlinks from each agent to a canonical copy. Single source of truth, easy updates. |
90
+ | **Copy** | Creates independent copies for each agent. Use when symlinks aren't supported. |
91
+
92
+ ## Other Commands
93
+
94
+ | Command | Description |
95
+ | ---------------------------- | ------------------------------------------------------- |
96
+ | `npx skills list` | List installed skills (alias: `ls`) |
97
+ | `npx skills find [query]` | Search for skills interactively or by keyword |
98
+ | `npx skills remove [skills]` | Remove installed skills from agents |
99
+ | `npx skills check` | Check for available skill updates |
100
+ | `npx skills update` | Update all installed skills to latest versions |
101
+ | `npx skills init [name]` | Create a new SKILL.md template |
102
+
103
+ ### `skills list`
104
+
105
+ List all installed skills. Similar to `npm ls`.
36
106
 
37
107
  ```bash
38
- npx @mcp-s/skills --org mycompany --list
108
+ # List all installed skills (project and global)
109
+ npx skills list
110
+
111
+ # List only global skills
112
+ npx skills ls -g
113
+
114
+ # Filter by specific agents
115
+ npx skills ls -a claude-code -a cursor
39
116
  ```
40
117
 
41
- ### Install specific skills
118
+ ### `skills find`
119
+
120
+ Search for skills interactively or by keyword.
42
121
 
43
122
  ```bash
44
- npx @mcp-s/skills --org mycompany -s skill-1 skill-2
123
+ # Interactive search (fzf-style)
124
+ npx skills find
125
+
126
+ # Search by keyword
127
+ npx skills find typescript
45
128
  ```
46
129
 
47
- ### Install to specific agents
130
+ ### `skills check` / `skills update`
48
131
 
49
132
  ```bash
50
- npx @mcp-s/skills --org mycompany -a cursor claude-code
133
+ # Check if any installed skills have updates
134
+ npx skills check
135
+
136
+ # Update all skills to latest versions
137
+ npx skills update
51
138
  ```
52
139
 
53
- ### Install all skills globally without prompts
140
+ ### `skills init`
54
141
 
55
142
  ```bash
56
- npx @mcp-s/skills --org mycompany --all
143
+ # Create SKILL.md in current directory
144
+ npx skills init
145
+
146
+ # Create a new skill in a subdirectory
147
+ npx skills init my-skill
57
148
  ```
58
149
 
59
- ### Using a custom base URL
150
+ ### `skills remove`
151
+
152
+ Remove installed skills from agents.
60
153
 
61
154
  ```bash
62
- npx @mcp-s/skills --base-url https://custom.example.com/skills --list
155
+ # Remove interactively (select from installed skills)
156
+ npx skills remove
157
+
158
+ # Remove specific skill by name
159
+ npx skills remove web-design-guidelines
160
+
161
+ # Remove multiple skills
162
+ npx skills remove frontend-design web-design-guidelines
163
+
164
+ # Remove from global scope
165
+ npx skills remove --global web-design-guidelines
166
+
167
+ # Remove from specific agents only
168
+ npx skills remove --agent claude-code cursor my-skill
169
+
170
+ # Remove all installed skills without confirmation
171
+ npx skills remove --all
172
+
173
+ # Remove all skills from a specific agent
174
+ npx skills remove --skill '*' -a cursor
175
+
176
+ # Remove a specific skill from all agents
177
+ npx skills remove my-skill --agent '*'
178
+
179
+ # Use 'rm' alias
180
+ npx skills rm my-skill
63
181
  ```
64
182
 
183
+ | Option | Description |
184
+ | ------------------- | ---------------------------------------------------- |
185
+ | `-g, --global` | Remove from global scope (~/) instead of project |
186
+ | `-a, --agent` | Remove from specific agents (use `'*'` for all) |
187
+ | `-s, --skill` | Specify skills to remove (use `'*'` for all) |
188
+ | `-y, --yes` | Skip confirmation prompts |
189
+ | `--all` | Shorthand for `--skill '*' --agent '*' -y` |
190
+
191
+ ## What are Agent Skills?
192
+
193
+ Agent skills are reusable instruction sets that extend your coding agent's capabilities. They're defined in `SKILL.md`
194
+ files with YAML frontmatter containing a `name` and `description`.
195
+
196
+ Skills let agents perform specialized tasks like:
197
+
198
+ - Generating release notes from git history
199
+ - Creating PRs following your team's conventions
200
+ - Integrating with external tools (Linear, Notion, etc.)
201
+
202
+ Discover skills at **[skills.sh](https://skills.sh)**
203
+
65
204
  ## Supported Agents
66
205
 
67
- - Amp
68
- - Antigravity
69
- - Claude Code
70
- - Clawdbot
71
- - Cline
72
- - Codex
73
- - Command Code
74
- - Cursor
75
- - Droid
76
- - Gemini CLI
77
- - GitHub Copilot
78
- - Goose
79
- - Kilo Code
80
- - Kiro CLI
81
- - MCPJam
82
- - Neovate
83
- - OpenCode
84
- - OpenHands
85
- - Pi
86
- - Qoder
87
- - Qwen Code
88
- - Roo Code
89
- - Trae
90
- - Windsurf
91
- - Zencoder
92
-
93
- ## Server API
94
-
95
- The skills library expects the server to implement the following endpoints:
96
-
97
- ### POST /generate-auth-url
98
-
99
- Generates an authentication URL for the user.
100
-
101
- **Headers:**
102
- - `Authorization: <userAccessKey>:<userOTT>`
103
-
104
- **Response:**
105
- ```json
106
- {
107
- "data": {
108
- "url": "https://..."
109
- }
110
- }
206
+ Skills can be installed to any of these agents:
207
+
208
+ <!-- supported-agents:start -->
209
+ | Agent | `--agent` | Project Path | Global Path |
210
+ |-------|-----------|--------------|-------------|
211
+ | Amp, Kimi Code CLI | `amp`, `kimi-cli` | `.agents/skills/` | `~/.config/agents/skills/` |
212
+ | Antigravity | `antigravity` | `.agent/skills/` | `~/.gemini/antigravity/global_skills/` |
213
+ | Augment | `augment` | `.augment/rules/` | `~/.augment/rules/` |
214
+ | Claude Code | `claude-code` | `.claude/skills/` | `~/.claude/skills/` |
215
+ | OpenClaw | `openclaw` | `skills/` | `~/.moltbot/skills/` |
216
+ | Cline | `cline` | `.cline/skills/` | `~/.cline/skills/` |
217
+ | CodeBuddy | `codebuddy` | `.codebuddy/skills/` | `~/.codebuddy/skills/` |
218
+ | Codex | `codex` | `.codex/skills/` | `~/.codex/skills/` |
219
+ | Command Code | `command-code` | `.commandcode/skills/` | `~/.commandcode/skills/` |
220
+ | Continue | `continue` | `.continue/skills/` | `~/.continue/skills/` |
221
+ | Crush | `crush` | `.crush/skills/` | `~/.config/crush/skills/` |
222
+ | Cursor | `cursor` | `.cursor/skills/` | `~/.cursor/skills/` |
223
+ | Droid | `droid` | `.factory/skills/` | `~/.factory/skills/` |
224
+ | Gemini CLI | `gemini-cli` | `.gemini/skills/` | `~/.gemini/skills/` |
225
+ | GitHub Copilot | `github-copilot` | `.github/skills/` | `~/.copilot/skills/` |
226
+ | Goose | `goose` | `.goose/skills/` | `~/.config/goose/skills/` |
227
+ | Junie | `junie` | `.junie/skills/` | `~/.junie/skills/` |
228
+ | iFlow CLI | `iflow-cli` | `.iflow/skills/` | `~/.iflow/skills/` |
229
+ | Kilo Code | `kilo` | `.kilocode/skills/` | `~/.kilocode/skills/` |
230
+ | Kiro CLI | `kiro-cli` | `.kiro/skills/` | `~/.kiro/skills/` |
231
+ | Kode | `kode` | `.kode/skills/` | `~/.kode/skills/` |
232
+ | MCPJam | `mcpjam` | `.mcpjam/skills/` | `~/.mcpjam/skills/` |
233
+ | Mistral Vibe | `mistral-vibe` | `.vibe/skills/` | `~/.vibe/skills/` |
234
+ | Mux | `mux` | `.mux/skills/` | `~/.mux/skills/` |
235
+ | OpenCode | `opencode` | `.opencode/skills/` | `~/.config/opencode/skills/` |
236
+ | OpenClaude IDE | `openclaude` | `.openclaude/skills/` | `~/.openclaude/skills/` |
237
+ | OpenHands | `openhands` | `.openhands/skills/` | `~/.openhands/skills/` |
238
+ | Pi | `pi` | `.pi/skills/` | `~/.pi/agent/skills/` |
239
+ | Qoder | `qoder` | `.qoder/skills/` | `~/.qoder/skills/` |
240
+ | Qwen Code | `qwen-code` | `.qwen/skills/` | `~/.qwen/skills/` |
241
+ | Replit | `replit` | `.agent/skills/` | N/A (project-only) |
242
+ | Roo Code | `roo` | `.roo/skills/` | `~/.roo/skills/` |
243
+ | Trae | `trae` | `.trae/skills/` | `~/.trae/skills/` |
244
+ | Trae CN | `trae-cn` | `.trae/skills/` | `~/.trae-cn/skills/` |
245
+ | Windsurf | `windsurf` | `.windsurf/skills/` | `~/.codeium/windsurf/skills/` |
246
+ | Zencoder | `zencoder` | `.zencoder/skills/` | `~/.zencoder/skills/` |
247
+ | Neovate | `neovate` | `.neovate/skills/` | `~/.neovate/skills/` |
248
+ | Pochi | `pochi` | `.pochi/skills/` | `~/.pochi/skills/` |
249
+ | AdaL | `adal` | `.adal/skills/` | `~/.adal/skills/` |
250
+ <!-- supported-agents:end -->
251
+
252
+ > [!NOTE]
253
+ > **Kiro CLI users:** After installing skills, manually add them to your custom agent's `resources` in
254
+ > `.kiro/agents/<agent>.json`:
255
+ >
256
+ > ```json
257
+ > {
258
+ > "resources": ["skill://.kiro/skills/**/SKILL.md"]
259
+ > }
260
+ > ```
261
+
262
+ The CLI automatically detects which coding agents you have installed. If none are detected, you'll be prompted to select
263
+ which agents to install to.
264
+
265
+ ## Creating Skills
266
+
267
+ Skills are directories containing a `SKILL.md` file with YAML frontmatter:
268
+
269
+ ```markdown
270
+ ---
271
+ name: my-skill
272
+ description: What this skill does and when to use it
273
+ ---
274
+
275
+ # My Skill
276
+
277
+ Instructions for the agent to follow when this skill is activated.
278
+
279
+ ## When to Use
280
+
281
+ Describe the scenarios where this skill should be used.
282
+
283
+ ## Steps
284
+
285
+ 1. First, do this
286
+ 2. Then, do that
111
287
  ```
112
288
 
113
- ### GET /skills
114
-
115
- Returns a list of available skills.
116
-
117
- **Headers:**
118
- - `Authorization: <userAccessKey>:<userOTT>`
119
-
120
- **Response:**
121
- ```json
122
- {
123
- "data": [
124
- {
125
- "name": "Skill Name",
126
- "slug": "skill-slug",
127
- "description": "Skill description",
128
- "content": "# SKILL.md content...",
129
- "category": "optional-category"
130
- }
131
- ]
132
- }
289
+ ### Required Fields
290
+
291
+ - `name`: Unique identifier (lowercase, hyphens allowed)
292
+ - `description`: Brief explanation of what the skill does
293
+
294
+ ### Optional Fields
295
+
296
+ - `metadata.internal`: Set to `true` to hide the skill from normal discovery. Internal skills are only visible and
297
+ installable when `INSTALL_INTERNAL_SKILLS=1` is set. Useful for work-in-progress skills or skills meant only for
298
+ internal tooling.
299
+
300
+ ```markdown
301
+ ---
302
+ name: my-internal-skill
303
+ description: An internal skill not shown by default
304
+ metadata:
305
+ internal: true
306
+ ---
307
+ ```
308
+
309
+ ### Skill Discovery
310
+
311
+ The CLI searches for skills in these locations within a repository:
312
+
313
+ <!-- skill-discovery:start -->
314
+ - Root directory (if it contains `SKILL.md`)
315
+ - `skills/`
316
+ - `skills/.curated/`
317
+ - `skills/.experimental/`
318
+ - `skills/.system/`
319
+ - `.agents/skills/`
320
+ - `.agent/skills/`
321
+ - `.augment/rules/`
322
+ - `.claude/skills/`
323
+ - `./skills/`
324
+ - `.cline/skills/`
325
+ - `.codebuddy/skills/`
326
+ - `.codex/skills/`
327
+ - `.commandcode/skills/`
328
+ - `.continue/skills/`
329
+ - `.crush/skills/`
330
+ - `.cursor/skills/`
331
+ - `.factory/skills/`
332
+ - `.gemini/skills/`
333
+ - `.github/skills/`
334
+ - `.goose/skills/`
335
+ - `.junie/skills/`
336
+ - `.iflow/skills/`
337
+ - `.kilocode/skills/`
338
+ - `.kiro/skills/`
339
+ - `.kode/skills/`
340
+ - `.mcpjam/skills/`
341
+ - `.vibe/skills/`
342
+ - `.mux/skills/`
343
+ - `.opencode/skills/`
344
+ - `.openclaude/skills/`
345
+ - `.openhands/skills/`
346
+ - `.pi/skills/`
347
+ - `.qoder/skills/`
348
+ - `.qwen/skills/`
349
+ - `.roo/skills/`
350
+ - `.trae/skills/`
351
+ - `.windsurf/skills/`
352
+ - `.zencoder/skills/`
353
+ - `.neovate/skills/`
354
+ - `.pochi/skills/`
355
+ - `.adal/skills/`
356
+ <!-- skill-discovery:end -->
357
+
358
+ If no skills are found in standard locations, a recursive search is performed.
359
+
360
+ ## Compatibility
361
+
362
+ Skills are generally compatible across agents since they follow a
363
+ shared [Agent Skills specification](https://agentskills.io). However, some features may be agent-specific:
364
+
365
+ | Feature | OpenCode | OpenHands | Claude Code | Cline | CodeBuddy | Codex | Command Code | Kiro CLI | Cursor | Antigravity | Roo Code | Github Copilot | Amp | Clawdbot | Neovate | Pi | Qoder | Zencoder |
366
+ | --------------- | -------- | --------- | ----------- | ----- | --------- | ----- | ------------ | -------- | ------ | ----------- | -------- | -------------- | --- | -------- | ------- | --- | ----- | -------- |
367
+ | Basic skills | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes |
368
+ | `allowed-tools` | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No |
369
+ | `context: fork` | No | No | Yes | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No |
370
+ | Hooks | No | No | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | No | No | No |
371
+
372
+ ## Troubleshooting
373
+
374
+ ### "No skills found"
375
+
376
+ Ensure the repository contains valid `SKILL.md` files with both `name` and `description` in the frontmatter.
377
+
378
+ ### Skill not loading in agent
379
+
380
+ - Verify the skill was installed to the correct path
381
+ - Check the agent's documentation for skill loading requirements
382
+ - Ensure the `SKILL.md` frontmatter is valid YAML
383
+
384
+ ### Permission errors
385
+
386
+ Ensure you have write access to the target directory.
387
+
388
+ ## Environment Variables
389
+
390
+ | Variable | Description |
391
+ | ------------------------- | -------------------------------------------------------------------------- |
392
+ | `INSTALL_INTERNAL_SKILLS` | Set to `1` or `true` to show and install skills marked as `internal: true` |
393
+ | `DISABLE_TELEMETRY` | Set to disable anonymous usage telemetry |
394
+ | `DO_NOT_TRACK` | Alternative way to disable telemetry |
395
+
396
+ ```bash
397
+ # Install internal skills
398
+ INSTALL_INTERNAL_SKILLS=1 npx skills add vercel-labs/agent-skills --list
133
399
  ```
134
400
 
401
+ ## Telemetry
402
+
403
+ This CLI collects anonymous usage data to help improve the tool. No personal information is collected.
404
+
405
+ Telemetry is automatically disabled in CI environments.
406
+
407
+ ## Related Links
408
+
409
+ - [Agent Skills Specification](https://agentskills.io)
410
+ - [Skills Directory](https://skills.sh)
411
+ - [Amp Skills Documentation](https://ampcode.com/manual#agent-skills)
412
+ - [Antigravity Skills Documentation](https://antigravity.google/docs/skills)
413
+ - [Factory AI / Droid Skills Documentation](https://docs.factory.ai/cli/configuration/skills)
414
+ - [Claude Code Skills Documentation](https://code.claude.com/docs/en/skills)
415
+ - [Clawdbot Skills Documentation](https://docs.clawd.bot/tools/skills)
416
+ - [Cline Skills Documentation](https://docs.cline.bot/features/skills)
417
+ - [CodeBuddy Skills Documentation](https://www.codebuddy.ai/docs/ide/Features/Skills)
418
+ - [Codex Skills Documentation](https://developers.openai.com/codex/skills)
419
+ - [Command Code Skills Documentation](https://commandcode.ai/docs/skills)
420
+ - [Crush Skills Documentation](https://github.com/charmbracelet/crush?tab=readme-ov-file#agent-skills)
421
+ - [Cursor Skills Documentation](https://cursor.com/docs/context/skills)
422
+ - [Gemini CLI Skills Documentation](https://geminicli.com/docs/cli/skills/)
423
+ - [GitHub Copilot Agent Skills](https://docs.github.com/en/copilot/concepts/agents/about-agent-skills)
424
+ - [iFlow CLI Skills Documentation](https://platform.iflow.cn/en/cli/examples/skill)
425
+ - [Kimi Code CLI Skills Documentation](https://moonshotai.github.io/kimi-cli/en/customization/skills.html)
426
+ - [Kiro CLI Skills Documentation](https://kiro.dev/docs/cli/custom-agents/configuration-reference/#skill-resources)
427
+ - [Kode Skills Documentation](https://github.com/shareAI-lab/kode/blob/main/docs/skills.md)
428
+ - [OpenCode Skills Documentation](https://opencode.ai/docs/skills)
429
+ - [Qwen Code Skills Documentation](https://qwenlm.github.io/qwen-code-docs/en/users/features/skills/)
430
+ - [OpenHands Skills Documentation](https://docs.openhands.ai/modules/usage/how-to/using-skills)
431
+ - [Pi Skills Documentation](https://github.com/badlogic/pi-mono/blob/main/packages/coding-agent/docs/skills.md)
432
+ - [Qoder Skills Documentation](https://docs.qoder.com/cli/Skills)
433
+ - [Replit Skills Documentation](https://docs.replit.com/replitai/skills)
434
+ - [Roo Code Skills Documentation](https://docs.roocode.com/features/skills)
435
+ - [Trae Skills Documentation](https://docs.trae.ai/ide/skills)
436
+ - [Vercel Agent Skills Repository](https://github.com/vercel-labs/agent-skills)
437
+
135
438
  ## License
136
439
 
137
- ISC
440
+ MIT