vercel-labs/skills

npx skills — オープンなエージェントスキルエコシステム向け CLI。GitHub・GitLab・git URL・ローカルパスから SKILL.md を取得し、Claude Code・Cursor・Codex など 73 のコーディングエージェントへシンリンクまたはコピーで配布する(README: OpenCode / Claude Code / Codex / Cursor + 69)。

1 — 概要

skills は Agent Skills 仕様 に沿った指示セット(SKILL.md)を、リポジトリからエージェント固有の skills ディレクトリへ届ける配布レイヤー。スキル本体は各リポジトリ(例: vercel-labs/agent-skills)にあり、CLI は探索・取得・配置・更新を担う。

73対応エージェント
v1.5.16 最新
7主要コマンド
MITライセンス

出典: README.md、package.json、src/cli.ts

リポジトリを指定して add → エージェント skills ディレクトリへ配置 → list で確認 → update で最新化。試すだけなら use でインストールせずプロンプト生成もできる。

スキルとは: YAML frontmatter に name と description を持つ Markdown 指示書。PR 作成手順・リリースノート生成・外部ツール連携など、エージェントの専門タスクを再利用可能にする。
2 — コマンド一覧
コマンド説明エイリアス
skills add <source>Git リポジトリ・URL・ローカルパスからスキルをインストールa
skills use <source>@<skill>インストールせず 1 スキルのプロンプトを生成(--agent で対話起動)—
skills listインストール済みスキルを一覧(--json 対応)ls
skills find [query]スキルをインタラクティブまたはキーワード検索—
skills remove [skills]エージェントからスキルを削除rm
skills update [skills...]インストール済みスキルを最新版へ更新upgrade
skills init [name]新規 SKILL.md テンプレートを生成—
コマンド説明
skills experimental_installskills-lock.json からスキルを復元
skills experimental_syncnode_modules 内スキルをエージェントディレクトリへ同期
3 — use コマンド

skills use は add と同じソース解決を行い、選択した 1 スキルを一時ディレクトリへ展開したうえで生成プロンプトを stdout に出力する。--agent を付けると対応エージェントを対話起動する。

examples
# プロンプトをパイプで Claude に渡す
npx skills use vercel-labs/agent-skills@web-design-guidelines | claude

# エージェントを直接起動
npx skills use vercel-labs/agent-skills --skill web-design-guidelines --agent claude-code
1
Resolve source
source-parser.ts が GitHub shorthand / URL / ローカルを正規化。
2
Fetch skill
git clone、blob 高速パス、well-known プロバイダのいずれかで取得。
3
Materialize
一時ディレクトリに SKILL.md と付随ファイルを配置。
4
Emit / spawn
プロンプトを stdout 出力、または --agent で子プロセス起動。
4 — ソース形式と add オプション
形式例
GitHub shorthandnpx skills add vercel-labs/agent-skills
フル GitHub URLnpx skills add https://github.com/org/repo
サブパス(特定スキル)npx skills add org/repo/tree/main/skills/foo
GitLab / 任意 git URLnpx skills add https://gitlab.com/org/repo
ローカルパスnpx skills add ./my-local-skills
オプション説明
-g, --globalユーザーディレクトリ(~/ 配下)へインストール
-a, --agent <agents>対象エージェント指定(* で全エージェント)
-s, --skill <skills>特定スキルのみ(* で全スキル)
-l, --listインストールせずリポジトリ内スキルを一覧
--copyシンリンクの代わりにファイルコピー
--full-depthルート SKILL.md があっても全サブディレクトリを探索。コンテナ外(例: examples/、tests/)の SKILL.md も対象
-y, --yes確認プロンプトをスキップ(CI 向け)
--all--skill '*' --agent '*' -y の省略形
ci-friendly
npx skills add vercel-labs/agent-skills --skill frontend-design -g -a claude-code -y
5 — アーキテクチャ

cli.ts がコマンドをルーティング。add.ts と use.ts がソース取得から配置までを担い、installer.ts がシンリンク / コピーを実行する。GitHub 公開リポジトリでは blob.ts 経由で skills.sh ダウンロード API を使う高速パスもある。

flowchart TD CLI["cli.ts"] --> ADD["add.ts"] CLI --> USE["use.ts"] CLI --> LIST["list.ts"] CLI --> FIND["find.ts"] CLI --> REMOVE["remove.ts"] CLI --> UPDATE["update.ts"] ADD --> PARSE["source-parser.ts"] ADD --> DISC["skills.ts\n探索"] ADD --> INST["installer.ts"] USE --> PARSE USE --> DISC ADD --> BLOB["blob.ts\nskills.sh API"] ADD --> WK["providers/wellknown.ts"] ADD --> PLUG["plugin-manifest.ts"] INST --> GLOCK["skill-lock.ts\n~/.agents/.skill-lock.json"] INST --> LLOCK["local-lock.ts\nskills-lock.json"] INST --> AGENTS["agents.ts\n73 定義"] classDef entry fill:color-mix(in oklch, var(--chart-1) 25%, white),stroke:var(--chart-1) classDef cmd fill:color-mix(in oklch, var(--chart-2) 20%, white),stroke:var(--chart-2) classDef core fill:color-mix(in oklch, var(--chart-3) 18%, white),stroke:var(--chart-3) class CLI entry class ADD,USE,LIST,FIND,REMOVE,UPDATE cmd class PARSE,DISC,INST,BLOB,WK,PLUG,GLOCK,LLOCK,AGENTS core
ファイル役割
add.tsインタラクティブ選択・セキュリティ監査・インストール一連処理
use.ts一時展開とプロンプト生成、エージェント子プロセス起動
blob.tsTrees API → frontmatter → skills.sh download の高速取得。一部リポジトリは自前 CDN(例: zapier/connectors)
installer.tsシンリンク / コピー配置、canonical path 管理
skill-lock.ts / local-lock.tsグローバル(~/.agents/.skill-lock.json)/ プロジェクト(skills-lock.json)のロック。形式は v3(skillFolderHash)。古い版は読み込み時に破棄され再インストールが必要
agents.tsエージェント別 project / global skills パス定義と自動検出
6 — スキル探索

CLI はリポジトリ内のコンテナディレクトリを最大 2 階層まで走査する。フラット配置(skills/<name>/SKILL.md)とカタログ配置(skills/<category>/<name>/SKILL.md)の両方に対応。浅い階層で見つかった SKILL.md は深い階層より優先される。

探索対象備考
リポジトリルート(SKILL.md がある場合)単一スキルリポジトリ向け
skills/、skills/.curated/ 等標準コンテナ。エージェント固有パス(.claude/skills/ 等)も列挙
.claude-plugin/plugin.jsonClaude Code プラグインマーケットプレイス互換。manifest 宣言パスは深度制限なし
--full-depthexamples/ や tests/ などコンテナ外も再帰探索
---
name: my-skill
description: このスキルの目的と使うタイミング
---

# My Skill
エージェントが実行する手順を記述する。

metadata.internal: true のスキルは通常探索から除外。INSTALL_INTERNAL_SKILLS=1 で表示・インストール可能。

7 — インストールスコープ
スコープフラグ配置先用途
プロジェクト(デフォルト)./<agent>/skills/リポジトリにコミット、チーム共有
グローバル-g~/<agent>/skills/全プロジェクトで利用
シンリンク(推奨): canonical copy を 1 か所に置き、各エージェントから参照。更新は 1 点変更で済む。--copy はシンリンク非対応環境向け。
claude-code → .claude/skills/ cursor → .agents/skills/ codex → .agents/skills/ opencode → .agents/skills/ windsurf github-copilot gemini-cli openclaw ... 73 total

CLI はインストール済みエージェントを自動検出。未検出時は対話で選択する。互換性の詳細は README の Compatibility 表を参照(allowed-tools、context: fork、Hooks などエージェント固有機能の差分)。