@rackerlabs/agent-skills-cli 1.5.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/README.md ADDED
@@ -0,0 +1,603 @@
1
+ # skills
2
+
3
+ The CLI for the open agent skills ecosystem.
4
+
5
+ ## Introduction
6
+
7
+ The `skills` CLI manages AI agent behaviour as code. It installs, updates, and version-locks curated Markdown instruction sets ("skills") into any repository, so every engineer and CI runner gets identical agent context without manual configuration.
8
+
9
+ ### What is a Skill?
10
+ A skill is a reusable instruction set defined in a `SKILL.md` file with YAML frontmatter (`name` and `description`). Skills let agents perform specialised tasks such as:
11
+
12
+ - Generating release notes from git history
13
+ - Creating PRs following your team's conventions
14
+ - Integrating with external tools (Linear, Notion, etc.)
15
+
16
+ Discover published skills at **[skills.sh](https://skills.sh)**.
17
+
18
+ ### Core Capabilities
19
+ - **Reproducible installs**: Running `skills add` twice produces the same result. Skills are symlinked (or copied) into each agent's expected directory and tracked in `skills.json`.
20
+ - **Version-controlled configuration**: `skills.json` is committed to Git, giving teams a reviewable, diffable record of which skills are active.
21
+ - **Dual distribution**: Available as self-contained binaries (for air-gapped environments) or via `npx` (for standard engineering workflows). See [Distribution & Supply Chain Security](#distribution--supply-chain-security).
22
+
23
+ ### Skill Groups
24
+ A skill group is a named collection of related skills that can be installed together. Instead of adding skills individually across every project, architects define groups centrally and teams consume them in a single command:
25
+
26
+ ```bash
27
+ # Define the group (in the central registry)
28
+ skills group add skills-group-coding-data-science python-expert @stable
29
+
30
+ # Consume it (in any project)
31
+ skills install --group skills-group-coding-data-science
32
+ ```
33
+
34
+ <!-- agent-list:start -->
35
+ Supports **OpenCode**, **Claude Code**, **Codex**, **Cursor**, and [40 more](#available-agents).
36
+ <!-- agent-list:end -->
37
+
38
+ ## Prerequisites
39
+
40
+ | Requirement | When Needed | Version |
41
+ |------------|-------------|--------|
42
+ | **Node.js** | When using `npx` | 20+ |
43
+ | **`gh` CLI** | When cloning from private GitHub repositories | Latest |
44
+ | **`cosign`** | When verifying binary signatures | 2.x |
45
+
46
+ > [!NOTE]
47
+ > When using the standalone binary distribution, Node.js is **not** required.
48
+
49
+ ## Distribution & Supply Chain Security
50
+
51
+ The `skills` CLI is distributed in two ways, primarily driven by supply chain security requirements and secondarily by agent startup performance.
52
+
53
+ ### 1. Verified Binaries (Recommended for CI and Restricted Environments)
54
+ Pre-compiled executables for Windows, macOS, and Linux (including ARM64/Graviton). Each release is cryptographically signed via Sigstore (Cosign), allowing you to verify that the binary was built exclusively by the project's GitHub Actions pipeline before granting it execution permissions. Because no runtime resolution occurs at startup, cold-start time is near-instant — critical for ephemeral agent containers where every second of provisioning adds latency.
55
+
56
+ ### 2. Networked Execution via NPX (Standard Engineering)
57
+ For interactive development where convenience outweighs verification, the CLI is published to GitHub Packages. Developers always get the latest version without managing local installations. The trade-off is a short resolution delay on first run and reliance on registry-level trust rather than per-binary signature verification.
58
+
59
+ ---
60
+
61
+ ### 🛡 Supply Chain Verification
62
+ When downloading binaries in CI or ephemeral containers, you should verify they haven't been tampered with. Every release includes SHA-256 checksums and Sigstore (Cosign) keyless signatures, providing [SLSA Level 3](https://slsa.dev) assurance that the binary was built by our GitHub Actions pipeline.
63
+
64
+ **Example: Verifying a binary before use**
65
+ ```bash
66
+ # 1. Download the binary and its signature bundle
67
+ curl -LO https://github.com/rackerlabs/agent-skills-cli/releases/latest/download/skills-linux-x64
68
+ curl -LO https://github.com/rackerlabs/agent-skills-cli/releases/latest/download/skills-linux-x64.bundle
69
+
70
+ # 2. Verify the signature against the release workflow identity
71
+ cosign verify-blob skills-linux-x64 \
72
+ --bundle skills-linux-x64.bundle \
73
+ --certificate-identity-regexp "^https://github.com/rackerlabs/agent-skills-cli/.github/workflows/release-binaries.yml" \
74
+ --certificate-oidc-issuer "https://token.actions.githubusercontent.com"
75
+
76
+ # 3. Rename, make executable, and run the verified binary
77
+ mv skills-linux-x64 skills
78
+ chmod +x skills
79
+ ./skills add owner/repo
80
+ ```
81
+
82
+ ## Execution Aliases
83
+
84
+ > [!NOTE]
85
+ > Whether you invoke `skills` (from PATH), execute `./skills-linux-x64` (standalone binary), or run `npx @rackerlabs/agent-skills-cli` (networked), the behaviour is identical. All usage examples below use the shorthand `skills` notation.
86
+
87
+ ## Quick Start
88
+
89
+ ```bash
90
+ # Install a skill from a GitHub repository
91
+ skills add vercel-labs/agent-skills
92
+
93
+ # List what's installed
94
+ skills list
95
+
96
+ # Check for updates
97
+ skills check
98
+ ```
99
+
100
+ ## Install a Skill
101
+
102
+ ```bash
103
+ skills add vercel-labs/agent-skills
104
+ ```
105
+
106
+ ### Source Formats
107
+
108
+ ```bash
109
+ # GitHub shorthand (owner/repo)
110
+ skills add vercel-labs/agent-skills
111
+
112
+ # Full GitHub URL
113
+ skills add https://github.com/vercel-labs/agent-skills
114
+
115
+ # Direct path to a skill in a repo
116
+ skills add https://github.com/vercel-labs/agent-skills/tree/main/skills/web-design-guidelines
117
+
118
+ # GitLab URL
119
+ skills add https://gitlab.com/org/repo
120
+
121
+ # Any git URL
122
+ skills add git@github.com:vercel-labs/agent-skills.git
123
+
124
+ # Local path
125
+ skills add ./my-local-skills
126
+ ```
127
+
128
+ ### Options
129
+
130
+ | Option | Description |
131
+ | ------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------- |
132
+ | `-g, --global` | Install to user directory instead of project |
133
+ | `-a, --agent <agents...>` | <!-- agent-names:start -->Target specific agents (e.g., `claude-code`, `codex`). See [Available Agents](#available-agents)<!-- agent-names:end --> |
134
+ | `-s, --skill <skills...>` | Install specific skills by name (use `'*'` for all skills) |
135
+ | `-l, --list` | List available skills without installing |
136
+ | `--copy` | Copy files instead of symlinking to agent directories |
137
+ | `-y, --yes` | Skip all confirmation prompts |
138
+ | `--all` | Install all skills to all agents without prompts |
139
+
140
+ ### Examples
141
+
142
+ ```bash
143
+ # List skills in a repository
144
+ skills add vercel-labs/agent-skills --list
145
+
146
+ # Install specific skills
147
+ skills add vercel-labs/agent-skills --skill frontend-design --skill skill-creator
148
+
149
+ # Install a skill with spaces in the name (must be quoted)
150
+ skills add owner/repo --skill "Convex Best Practices"
151
+
152
+ # Install to specific agents
153
+ skills add vercel-labs/agent-skills -a claude-code -a opencode
154
+
155
+ # Non-interactive installation (CI/CD friendly)
156
+ skills add vercel-labs/agent-skills --skill frontend-design -g -a claude-code -y
157
+
158
+ # Install all skills from a repo to all agents
159
+ skills add vercel-labs/agent-skills --all
160
+
161
+ # Install all skills to specific agents
162
+ skills add vercel-labs/agent-skills --skill '*' -a claude-code
163
+
164
+ # Install specific skills to all agents
165
+ skills add vercel-labs/agent-skills --agent '*' --skill frontend-design
166
+ ```
167
+
168
+ ### Installation Scope
169
+
170
+ Scope controls where skills are written to disk — and therefore who else gets them:
171
+
172
+ **1. Project Scope (Default)**
173
+ - **What it does**: Installs skills into your current project directory (e.g., `./.agents/skills/`).
174
+ - **Why use it**: The standard workflow. Commit these files to Git so that every engineer cloning the repository inherits the same agent configuration.
175
+
176
+ **2. Global Scope (`-g` flag)**
177
+ - **What it does**: Installs skills to your user-level config directory (e.g., `~/.claude-code/skills/`).
178
+ - **Why use it**: For personal workflow preferences that should apply across all your projects. These are not shared with your team.
179
+
180
+ | Scope | Flag | Location | Use Case |
181
+ | ----------- | --------- | ------------------- | --------------------------------------------- |
182
+ | **Project** | (default) | `./<agent>/skills/` | Standardized repository integrations (Git) |
183
+ | **Global** | `-g` | `~/<agent>/skills/` | Personal machine-locked developer preferences |
184
+
185
+ ### Installation Methods
186
+
187
+ When installing interactively, you can choose:
188
+
189
+ | Method | Description |
190
+ | ------------------------- | ------------------------------------------------------------------------------------------- |
191
+ | **Symlink** (Recommended) | Creates symlinks from each agent to a canonical copy. Single source of truth, easy updates. |
192
+ | **Copy** | Creates independent copies for each agent. Use when symlinks aren't supported. |
193
+
194
+ ## Managing Skill Groups
195
+
196
+ A skill group is a named collection of skills that can be installed together. The CLI tracks group definitions in `skills.json`, which should be committed to Git for version control.
197
+
198
+ | Command | Description |
199
+ | ----------------------------------------------------------------------- | -------------------------------------------------- |
200
+ | `skills group create <group-name>` | Initialize a new empty skill group |
201
+ | `skills group add <group-name> <source>` | Add a skill to a group |
202
+ | `skills group list` | View all active skill groups and their nodes |
203
+ | `skills group remove <group-name> <skill-name>` | Remove a skill from a group |
204
+ | `skills group delete <group-name>` | Delete an entire skill group |
205
+
206
+ ### Group Examples
207
+
208
+ ```bash
209
+ # 1. Create a new skill group
210
+ skills group create backend-foundation
211
+
212
+ # 2. Add skills to the group
213
+ skills group add backend-foundation https://github.com/rackerlabs/central-skills-registry/tree/main/python-standards
214
+ skills group add backend-foundation https://github.com/rackerlabs/central-skills-registry/tree/main/docker-security
215
+
216
+ # 3. List all configured groups
217
+ skills group list
218
+
219
+ # 4. Remove a skill from the group
220
+ skills group remove backend-foundation docker-security
221
+
222
+ # 5. Delete the entire group
223
+ skills group delete backend-foundation
224
+ ```
225
+
226
+ ## Other Commands
227
+
228
+ | Command | Description |
229
+ | ---------------------------- | --------------------------------------------------------- |
230
+ | `skills list` | List installed skills (alias: `ls`) |
231
+ | `skills find [query]` | Search for skills interactively or by keyword |
232
+ | `skills remove [skills]` | Remove installed skills from agents |
233
+ | `skills check` | Check for available skill updates |
234
+ | `skills update` | Update all installed skills to latest versions |
235
+ | `skills init [name]` | Create a new SKILL.md template |
236
+ | `skills verify structure`| Validate all skills in `skills.json` are resolvable (CI use) |
237
+ | `skills verify integrity`| Audit local installations against lockfiles for tampering |
238
+ | `skills generate-registry-hashes` | Creates a `registry-hashes.json` cryptographic root of trust |
239
+
240
+ ### `skills list`
241
+
242
+ List all installed skills. Similar to `npm ls`.
243
+
244
+ ```bash
245
+ # List all installed skills (project and global)
246
+ skills list
247
+
248
+ # List only global skills
249
+ skills ls -g
250
+
251
+ # Filter by specific agents
252
+ skills ls -a claude-code -a cursor
253
+ ```
254
+
255
+ ### `skills find`
256
+
257
+ Search for skills interactively or by keyword.
258
+
259
+ ```bash
260
+ # Interactive search (fzf-style)
261
+ skills find
262
+
263
+ # Search by keyword
264
+ skills find typescript
265
+ ```
266
+
267
+ ### `skills check` / `skills update`
268
+
269
+ ```bash
270
+ # Check if any installed skills have updates
271
+ skills check
272
+
273
+ # Update all skills to latest versions
274
+ skills update
275
+ ```
276
+
277
+ ### `skills init`
278
+
279
+ ```bash
280
+ # Create SKILL.md in current directory
281
+ skills init
282
+
283
+ # Create a new skill in a subdirectory
284
+ skills init my-skill
285
+ ```
286
+
287
+ ### `skills remove`
288
+
289
+ Remove installed skills from agents.
290
+
291
+ ```bash
292
+ # Remove interactively (select from installed skills)
293
+ skills remove
294
+
295
+ # Remove specific skill by name
296
+ skills remove web-design-guidelines
297
+
298
+ # Remove multiple skills
299
+ skills remove frontend-design web-design-guidelines
300
+
301
+ # Remove from global scope
302
+ skills remove --global web-design-guidelines
303
+
304
+ # Remove from specific agents only
305
+ skills remove --agent claude-code cursor my-skill
306
+
307
+ # Remove all installed skills without confirmation
308
+ skills remove --all
309
+
310
+ # Remove all skills from a specific agent
311
+ skills remove --skill '*' -a cursor
312
+
313
+ # Remove a specific skill from all agents
314
+ skills remove my-skill --agent '*'
315
+
316
+ # Use 'rm' alias
317
+ skills rm my-skill
318
+ ```
319
+
320
+ | Option | Description |
321
+ | -------------- | ------------------------------------------------ |
322
+ | `-g, --global` | Remove from global scope (~/) instead of project |
323
+ | `-a, --agent` | Remove from specific agents (use `'*'` for all) |
324
+ | `-s, --skill` | Specify skills to remove (use `'*'` for all) |
325
+ | `-y, --yes` | Skip confirmation prompts |
326
+ | `--all` | Shorthand for `--skill '*' --agent '*' -y` |
327
+
328
+ ### `skills verify structure`
329
+
330
+ Validates that every skill referenced in `skills.json` (both individual skills and skill groups) can be fetched and contains a valid `SKILL.md`. Designed to run in a central registry's CI pipeline to prevent broken references from being merged.
331
+
332
+ ```bash
333
+ # Verify all configured skills are structurally resolvable
334
+ skills verify structure
335
+ ```
336
+
337
+ ### `skills verify integrity`
338
+
339
+ Validates that all locally installed skills in agent configuration folders mathematically match the deterministic hashes captured in your project's `skills-lock.json`.
340
+
341
+ It acts as a "secure by default" check: if a developer manually adds an unauthorized un-tracked skill to an agent folder, or someone tampers with the installed files locally to bypass security scopes, this command immediately flags the anomaly and fails the CI environment.
342
+
343
+ ```bash
344
+ # Verify local environments aren't running unauthorized skills
345
+ skills verify integrity
346
+ ```
347
+
348
+ ### `skills generate-registry-hashes`
349
+
350
+ Caches deterministic physical file and group hashes from a local directory into a `registry-hashes.json` artifact. Primarily reserved for Central Skill Registries to establish a cryptographically enforceable Root of Trust.
351
+
352
+ ## Supported Agents
353
+
354
+ Skills can be installed to any of these agents:
355
+
356
+ <!-- supported-agents:start -->
357
+ | Agent | `--agent` | Project Path | Global Path |
358
+ |-------|-----------|--------------|-------------|
359
+ | Amp, Kimi Code CLI, Replit, Universal | `amp`, `kimi-cli`, `replit`, `universal` | `.agents/skills/` | `~/.config/agents/skills/` |
360
+ | Antigravity | `antigravity` | `.agents/skills/` | `~/.gemini/antigravity/skills/` |
361
+ | Augment | `augment` | `.augment/skills/` | `~/.augment/skills/` |
362
+ | Claude Code | `claude-code` | `.claude/skills/` | `~/.claude/skills/` |
363
+ | OpenClaw | `openclaw` | `skills/` | `~/.openclaw/skills/` |
364
+ | Cline, Warp | `cline`, `warp` | `.agents/skills/` | `~/.agents/skills/` |
365
+ | CodeBuddy | `codebuddy` | `.codebuddy/skills/` | `~/.codebuddy/skills/` |
366
+ | Codex | `codex` | `.agents/skills/` | `~/.codex/skills/` |
367
+ | Command Code | `command-code` | `.commandcode/skills/` | `~/.commandcode/skills/` |
368
+ | Continue | `continue` | `.continue/skills/` | `~/.continue/skills/` |
369
+ | Cortex Code | `cortex` | `.cortex/skills/` | `~/.snowflake/cortex/skills/` |
370
+ | Crush | `crush` | `.crush/skills/` | `~/.config/crush/skills/` |
371
+ | Cursor | `cursor` | `.agents/skills/` | `~/.cursor/skills/` |
372
+ | Deep Agents | `deepagents` | `.agents/skills/` | `~/.deepagents/agent/skills/` |
373
+ | Droid | `droid` | `.factory/skills/` | `~/.factory/skills/` |
374
+ | Firebender | `firebender` | `.agents/skills/` | `~/.firebender/skills/` |
375
+ | Gemini CLI | `gemini-cli` | `.agents/skills/` | `~/.gemini/skills/` |
376
+ | GitHub Copilot | `github-copilot` | `.agents/skills/` | `~/.copilot/skills/` |
377
+ | Goose | `goose` | `.goose/skills/` | `~/.config/goose/skills/` |
378
+ | Junie | `junie` | `.junie/skills/` | `~/.junie/skills/` |
379
+ | iFlow CLI | `iflow-cli` | `.iflow/skills/` | `~/.iflow/skills/` |
380
+ | Kilo Code | `kilo` | `.kilocode/skills/` | `~/.kilocode/skills/` |
381
+ | Kiro CLI | `kiro-cli` | `.kiro/skills/` | `~/.kiro/skills/` |
382
+ | Kode | `kode` | `.kode/skills/` | `~/.kode/skills/` |
383
+ | MCPJam | `mcpjam` | `.mcpjam/skills/` | `~/.mcpjam/skills/` |
384
+ | Mistral Vibe | `mistral-vibe` | `.vibe/skills/` | `~/.vibe/skills/` |
385
+ | Mux | `mux` | `.mux/skills/` | `~/.mux/skills/` |
386
+ | OpenCode | `opencode` | `.agents/skills/` | `~/.config/opencode/skills/` |
387
+ | OpenHands | `openhands` | `.openhands/skills/` | `~/.openhands/skills/` |
388
+ | Pi | `pi` | `.pi/skills/` | `~/.pi/agent/skills/` |
389
+ | Qoder | `qoder` | `.qoder/skills/` | `~/.qoder/skills/` |
390
+ | Qwen Code | `qwen-code` | `.qwen/skills/` | `~/.qwen/skills/` |
391
+ | Roo Code | `roo` | `.roo/skills/` | `~/.roo/skills/` |
392
+ | Trae | `trae` | `.trae/skills/` | `~/.trae/skills/` |
393
+ | Trae CN | `trae-cn` | `.trae/skills/` | `~/.trae-cn/skills/` |
394
+ | Windsurf | `windsurf` | `.windsurf/skills/` | `~/.codeium/windsurf/skills/` |
395
+ | Zencoder | `zencoder` | `.zencoder/skills/` | `~/.zencoder/skills/` |
396
+ | Neovate | `neovate` | `.neovate/skills/` | `~/.neovate/skills/` |
397
+ | Pochi | `pochi` | `.pochi/skills/` | `~/.pochi/skills/` |
398
+ | AdaL | `adal` | `.adal/skills/` | `~/.adal/skills/` |
399
+ <!-- supported-agents:end -->
400
+
401
+ > [!NOTE]
402
+ > **Kiro CLI users:** After installing skills, manually add them to your custom agent's `resources` in
403
+ > `.kiro/agents/<agent>.json`:
404
+ >
405
+ > ```json
406
+ > {
407
+ > "resources": ["skill://.kiro/skills/**/SKILL.md"]
408
+ > }
409
+ > ```
410
+
411
+ The CLI automatically detects which coding agents you have installed. If none are detected, you'll be prompted to select
412
+ which agents to install to.
413
+
414
+ ## Creating Skills
415
+
416
+ Skills are directories containing a `SKILL.md` file with YAML frontmatter:
417
+
418
+ ```markdown
419
+ ---
420
+ name: my-skill
421
+ description: What this skill does and when to use it
422
+ ---
423
+
424
+ # My Skill
425
+
426
+ Instructions for the agent to follow when this skill is activated.
427
+
428
+ ## When to Use
429
+
430
+ Describe the scenarios where this skill should be used.
431
+
432
+ ## Steps
433
+
434
+ 1. First, do this
435
+ 2. Then, do that
436
+ ```
437
+
438
+ ### Required Fields
439
+
440
+ - `name`: Unique identifier (lowercase, hyphens allowed)
441
+ - `description`: Brief explanation of what the skill does
442
+
443
+ ### Optional Fields
444
+
445
+ - `metadata.internal`: Set to `true` to hide the skill from normal discovery. Internal skills are only visible and
446
+ installable when `INSTALL_INTERNAL_SKILLS=1` is set. Useful for work-in-progress skills or skills meant only for
447
+ internal tooling.
448
+
449
+ ```markdown
450
+ ---
451
+ name: my-internal-skill
452
+ description: An internal skill not shown by default
453
+ metadata:
454
+ internal: true
455
+ ---
456
+ ```
457
+
458
+ ### Skill Discovery
459
+
460
+ The CLI searches for skills in these locations within a repository:
461
+
462
+ <!-- skill-discovery:start -->
463
+ - Root directory (if it contains `SKILL.md`)
464
+ - `skills/`
465
+ - `skills/.curated/`
466
+ - `skills/.experimental/`
467
+ - `skills/.system/`
468
+ - `.agents/skills/`
469
+ - `.augment/skills/`
470
+ - `.claude/skills/`
471
+ - `./skills/`
472
+ - `.codebuddy/skills/`
473
+ - `.commandcode/skills/`
474
+ - `.continue/skills/`
475
+ - `.cortex/skills/`
476
+ - `.crush/skills/`
477
+ - `.factory/skills/`
478
+ - `.goose/skills/`
479
+ - `.junie/skills/`
480
+ - `.iflow/skills/`
481
+ - `.kilocode/skills/`
482
+ - `.kiro/skills/`
483
+ - `.kode/skills/`
484
+ - `.mcpjam/skills/`
485
+ - `.vibe/skills/`
486
+ - `.mux/skills/`
487
+ - `.openhands/skills/`
488
+ - `.pi/skills/`
489
+ - `.qoder/skills/`
490
+ - `.qwen/skills/`
491
+ - `.roo/skills/`
492
+ - `.trae/skills/`
493
+ - `.windsurf/skills/`
494
+ - `.zencoder/skills/`
495
+ - `.neovate/skills/`
496
+ - `.pochi/skills/`
497
+ - `.adal/skills/`
498
+ <!-- skill-discovery:end -->
499
+
500
+ ### Plugin Manifest Discovery
501
+
502
+ If `.claude-plugin/marketplace.json` or `.claude-plugin/plugin.json` exists, skills declared in those files are also discovered:
503
+
504
+ ```json
505
+ // .claude-plugin/marketplace.json
506
+ {
507
+ "metadata": { "pluginRoot": "./plugins" },
508
+ "plugins": [
509
+ {
510
+ "name": "my-plugin",
511
+ "source": "my-plugin",
512
+ "skills": ["./skills/review", "./skills/test"]
513
+ }
514
+ ]
515
+ }
516
+ ```
517
+
518
+ This enables compatibility with the [Claude Code plugin marketplace](https://code.claude.com/docs/en/plugin-marketplaces) ecosystem.
519
+
520
+ If no skills are found in standard locations, a recursive search is performed.
521
+
522
+ ## Compatibility
523
+
524
+ Skills are generally compatible across agents since they follow a
525
+ shared [Agent Skills specification](https://agentskills.io). However, some features may be agent-specific:
526
+
527
+ | Feature | OpenCode | OpenHands | Claude Code | Cline | CodeBuddy | Codex | Command Code | Kiro CLI | Cursor | Antigravity | Roo Code | Github Copilot | Amp | OpenClaw | Neovate | Pi | Qoder | Zencoder |
528
+ | --------------- | -------- | --------- | ----------- | ----- | --------- | ----- | ------------ | -------- | ------ | ----------- | -------- | -------------- | --- | -------- | ------- | --- | ----- | -------- |
529
+ | Basic skills | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes |
530
+ | `allowed-tools` | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No |
531
+ | `context: fork` | No | No | Yes | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No |
532
+ | Hooks | No | No | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | No | No | No |
533
+
534
+ ## Troubleshooting
535
+
536
+ ### "No skills found"
537
+
538
+ Ensure the repository contains valid `SKILL.md` files with both `name` and `description` in the frontmatter.
539
+
540
+ ### Skill not loading in agent
541
+
542
+ - Verify the skill was installed to the correct path
543
+ - Check the agent's documentation for skill loading requirements
544
+ - Ensure the `SKILL.md` frontmatter is valid YAML
545
+
546
+ ### Permission errors
547
+
548
+ Ensure you have write access to the target directory.
549
+
550
+ ## Environment Variables
551
+
552
+ | Variable | Description |
553
+ | ------------------------- | -------------------------------------------------------------------------- |
554
+ | `INSTALL_INTERNAL_SKILLS` | Set to `1` or `true` to show and install skills marked as `internal: true` |
555
+ | `DISABLE_TELEMETRY` | Set to disable anonymous usage telemetry |
556
+ | `DO_NOT_TRACK` | Alternative way to disable telemetry |
557
+
558
+ ```bash
559
+ # Install internal skills
560
+ INSTALL_INTERNAL_SKILLS=1 skills add vercel-labs/agent-skills --list
561
+ ```
562
+
563
+ ## Telemetry
564
+
565
+ This CLI collects anonymous usage data to help improve the tool. No personal information is collected.
566
+
567
+ Telemetry is automatically disabled in CI environments.
568
+
569
+ ## Related Links
570
+
571
+ - [Agent Skills Specification](https://agentskills.io)
572
+ - [Skills Directory](https://skills.sh)
573
+ - [Amp Skills Documentation](https://ampcode.com/manual#agent-skills)
574
+ - [Antigravity Skills Documentation](https://antigravity.google/docs/skills)
575
+ - [Factory AI / Droid Skills Documentation](https://docs.factory.ai/cli/configuration/skills)
576
+ - [Claude Code Skills Documentation](https://code.claude.com/docs/en/skills)
577
+ - [OpenClaw Skills Documentation](https://docs.openclaw.ai/tools/skills)
578
+ - [Cline Skills Documentation](https://docs.cline.bot/features/skills)
579
+ - [CodeBuddy Skills Documentation](https://www.codebuddy.ai/docs/ide/Features/Skills)
580
+ - [Codex Skills Documentation](https://developers.openai.com/codex/skills)
581
+ - [Command Code Skills Documentation](https://commandcode.ai/docs/skills)
582
+ - [Crush Skills Documentation](https://github.com/charmbracelet/crush?tab=readme-ov-file#agent-skills)
583
+ - [Cursor Skills Documentation](https://cursor.com/docs/context/skills)
584
+ - [Firebender Skills Documentation](https://docs.firebender.com/multi-agent/skills)
585
+ - [Gemini CLI Skills Documentation](https://geminicli.com/docs/cli/skills/)
586
+ - [GitHub Copilot Agent Skills](https://docs.github.com/en/copilot/concepts/agents/about-agent-skills)
587
+ - [iFlow CLI Skills Documentation](https://platform.iflow.cn/en/cli/examples/skill)
588
+ - [Kimi Code CLI Skills Documentation](https://moonshotai.github.io/kimi-cli/en/customization/skills.html)
589
+ - [Kiro CLI Skills Documentation](https://kiro.dev/docs/cli/custom-agents/configuration-reference/#skill-resources)
590
+ - [Kode Skills Documentation](https://github.com/shareAI-lab/kode/blob/main/docs/skills.md)
591
+ - [OpenCode Skills Documentation](https://opencode.ai/docs/skills)
592
+ - [Qwen Code Skills Documentation](https://qwenlm.github.io/qwen-code-docs/en/users/features/skills/)
593
+ - [OpenHands Skills Documentation](https://docs.openhands.ai/modules/usage/how-to/using-skills)
594
+ - [Pi Skills Documentation](https://github.com/badlogic/pi-mono/blob/main/packages/coding-agent/docs/skills.md)
595
+ - [Qoder Skills Documentation](https://docs.qoder.com/cli/Skills)
596
+ - [Replit Skills Documentation](https://docs.replit.com/replitai/skills)
597
+ - [Roo Code Skills Documentation](https://docs.roocode.com/features/skills)
598
+ - [Trae Skills Documentation](https://docs.trae.ai/ide/skills)
599
+ - [Vercel Agent Skills Repository](https://github.com/vercel-labs/agent-skills)
600
+
601
+ ## License
602
+
603
+ MIT