skills/vercel-creating-using-skills/SKILL.md
How to create, structure, install, and publish agent skills compatible with the Vercel skills ecosystem and skills.sh. Use when the user wants to build a new skill, structure a SKILL.md file, add install commands to a website or README, or publish skills for distribution across 40+ AI agents.
npx skillsauth add AgentPMT/agent-skills how-to-use-vercel-skillsInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
Agent skills are folders of instructions, scripts, and resources that AI agents can discover and use. The format is an open standard supported by 40+ agents including Claude Code, Cursor, GitHub Copilot, Windsurf, Cline, Gemini CLI, OpenAI Codex, Roo Code, and many others.
A skill is a directory containing at minimum a SKILL.md file. The directory name must exactly match the name field in the frontmatter.
my-skill/
SKILL.md
my-skill/
SKILL.md # Required -- agent instructions
scripts/ # Optional -- executable helpers (bash, python, js)
references/ # Optional -- detailed docs loaded on demand
assets/ # Optional -- templates, schemas, static files
Every SKILL.md must start with YAML frontmatter followed by markdown content.
---
name: my-skill-name
description: What this skill does and when to use it. Include keywords that help agents match tasks to this skill.
---
| Field | Rules |
|-------|-------|
| name | 1-64 characters. Lowercase letters, numbers, and hyphens only. Must not start or end with a hyphen. No consecutive hyphens (--). Must match the parent directory name. |
| description | 1-1024 characters. Describe what the skill does AND when to use it. Include specific keywords that help agents identify relevant tasks. |
| Field | Purpose |
|-------|---------|
| license | License name or reference to a bundled LICENSE file. |
| compatibility | Max 500 characters. Environment requirements (e.g., "Requires git, docker, jq"). Most skills do not need this. |
| metadata | Arbitrary key-value pairs. Common keys: author, version. |
| allowed-tools | Space-delimited list of pre-approved tools. Experimental, support varies by agent. |
---
name: pdf-processing
description: Extract text and tables from PDF files, fill forms, merge documents. Use when working with PDF documents or when the user mentions PDFs, forms, or document extraction.
license: MIT
compatibility: Requires Python 3.10+
metadata:
author: example-org
version: "2.1"
allowed-tools: Bash(python:*) Read
---
Valid:
pdf-processingdata-analysiscode-reviewmy-skill-v2Invalid:
PDF-Processing (uppercase not allowed)-pdf (cannot start with hyphen)pdf- (cannot end with hyphen)pdf--processing (consecutive hyphens not allowed)my skill (spaces not allowed)The description is a routing rule, not a title. Agents see only the name and description at startup to decide whether to load the full skill.
Bad:
description: Helps with PDFs.
Good:
description: Extract text and tables from PDF files, fill forms, merge documents. Use when working with PDF documents or when the user mentions PDFs, forms, or document extraction.
The markdown body after frontmatter contains the actual instructions. There are no format restrictions, but recommended sections include:
Keep the main SKILL.md under 500 lines. Move detailed reference material to files in references/.
Skills load in stages to minimize context usage:
name and description are loaded at startup for all installed skills.scripts/, references/, and assets/ are loaded only when required.npx skills add owner/repo
npx skills add owner/repo --skill skill-name
npx skills add owner/repo --all -y
npx skills add owner/repo --agent claude-code
npx skills add owner/repo --agent cursor
npx skills add owner/repo --global
For a repo at github.com/myorg/my-agent-skills with a skill called my-workflow:
## Install
Install all skills:
npx skills add myorg/my-agent-skills
Install just the workflow skill:
npx skills add myorg/my-agent-skills --skill my-workflow
| Command | Purpose |
|---------|---------|
| npx skills add <source> | Install skills from a GitHub repo, URL, or local path |
| npx skills list | Show installed skills (alias: ls) |
| npx skills find [query] | Search for skills interactively or by keyword |
| npx skills check | Check for available updates |
| npx skills update | Upgrade all installed skills |
| npx skills init [name] | Generate a new SKILL.md template |
| npx skills remove [skills] | Uninstall skills |
owner/repohttps://github.com/owner/repohttps://github.com/owner/repo/tree/main/skills/skill-name| Flag | Purpose |
|------|---------|
| -s, --skill | Install a specific skill by name, or '*' for all |
| -a, --agent | Target a specific agent (e.g., claude-code, cursor) |
| -g, --global | Install to user home directory instead of project |
| --copy | Copy files instead of creating symlinks |
| -y, --yes | Skip confirmation prompts |
| --all | Install all skills to all agents non-interactively |
| -l, --list | Preview available skills without installing |
The CLI automatically places skills in the correct location for each agent:
| Agent | Project path | Global path |
|-------|-------------|-------------|
| Claude Code | .claude/skills/ | ~/.claude/skills/ |
| Cursor | .agents/skills/ | ~/.cursor/skills/ |
| GitHub Copilot | .agents/skills/ | varies |
| Windsurf | .agents/skills/ | varies |
40+ agents are supported. The CLI handles path resolution automatically.
my-repo/
SKILL.md
my-repo/
skills/
skill-one/
SKILL.md
skill-two/
SKILL.md
scripts/
helper.sh
references/
detailed-guide.md
The CLI searches these locations automatically:
skills/ directory and its subdirectoriesskills/.curated/, skills/.experimental/, skills/.system/.claude/skills/, .agents/skills/, etc.)Skills can be nested in subdirectories (e.g., skills/category/my-skill/SKILL.md) and the CLI will still discover them.
Skills appear on skills.sh automatically when people install them via the CLI. There is no separate publish step. To get your skill listed:
npx skills add owner/repoUse the reference library to validate your skill before publishing:
npx skills-ref validate ./my-skill
This checks that frontmatter is valid and naming conventions are followed.
name and description in the frontmattername exactly matches the directory namereferences/ for detailed docsscripts/ for any executable helpersnpx skills add . locallynpx skills add owner/repotools
YouTube Comment Manager: List YouTube comment threads on any video or across a. Use when an agent needs youtube comment manager, triage the held for review and likely spam queues and ban repeat offenders, reply to high signal questions on a launch or tutorial video, bulk moderate comments awaiting review across an entire channel, search a channel's comments for brand mentions or specific keywords, create top level comment, channel id, video id through AgentPMT-hosted remote tool calls.
development
x402 Bazaar protocol guide for AgentPMT — implement the HTTP 402 two-step handshake, sign EIP-3009 TransferWithAuthorization, route through the AgentPMT facilitator, and settle USDC payments on Base. Use when building agent-to-agent commerce that follows the x402 standard.
tools
Writing Agent - Human Style: Draft on-brand text and Markdown copy from a compact request plus one optional JSON `context` object. Use when an agent needs writing agent human style, writing agent human style, draft up to 10 on brand social media replies in a single request, write original social posts from a topic and a few notes, turn an outline and source material into a short markdown blog post up to 12, 000 characters, draft large blog post, topic through AgentPMT-hosted remote tool calls.
tools
Understand AgentPMT as an agent management iPaaS platform for connecting agents to hundreds of platforms, tools, workflows, skills, other agents, payments, OpenClaw agents, and REST API integrations. Use when an agent or developer needs the concept map before choosing an AgentPMT setup path.