Back

skills.sh で AI エージェントに再利用可能な機能を追加する

skills.sh で AI エージェントに再利用可能な機能を追加する

AI コーディングエージェントとの新しいチャットを始めるたびに、毎回ゼロからのスタートになります。エージェントはあなたのフォルダ構成も、コンポーネントの命名規則も、チームのデプロイルールも知りません。同じコンテキストブロックをまた貼り付け、同じ制約を改めて説明することになります。これは煩わしく、スケールしません。

skills.sh は、その実用的な解決策を提供します。一度インストールすれば、サポートされている各種エージェントやプロジェクトを横断して使える、再利用可能なエージェント機能の成長中のエコシステムです。

主なポイント

  • エージェントスキルは、YAML フロントマターと Markdown 本文を持つ SKILL.md ファイルによって定義される、再利用可能でオンデマンドな指示バンドルです。
  • プログレッシブディスクロージャーにより、最初はスキル名と説明のみを読み込み、関連する場合にのみ完全な指示を取得することで、コンテキストウィンドウを軽量に保ちます。
  • skills CLI を使えば、カスタム統合コードを書くことなく、プロジェクトをまたいでスキルをインストール、スコープ設定、検索できます。
  • スキルは MCP サーバーとは異なります。繰り返し利用するプロンプトベースのワークフローにはスキルを、外部システムとの型付き API 形式の対話には MCP を使い分けましょう。
  • サードパーティ製スキルは、特にスクリプトを含むものについては、インストール前に必ず内容を確認してください。エージェントの構成によっては、ローカル環境で実行される可能性があります。

AI エージェントスキルとは何か

エージェントスキルとは、AI エージェントがオンデマンドで読み込める構造化された指示のバンドルです。本質的には、すべてのスキルは SKILL.md ファイル(YAML フロントマターと Markdown 本文を含む)を備えたディレクトリです:

my-skill/
├── SKILL.md          # Required: metadata + instructions
├── scripts/          # Optional: executable helpers
├── references/       # Optional: supplementary docs
└── assets/           # Optional: templates, configs

フロントマターには最低限 2 つのフィールドが必要です:

---
name: react-component-review
description: Reviews React components for performance issues, accessibility, and team conventions. Use when the user asks to review, audit, or check a component.
---

name はディレクトリ名と一致している必要があります(小文字とハイフンのみ)。description はエージェントがそのスキルを起動するかどうかを判断するために使うものなので、タイトルではなくルーティングルールとして扱ってください。

プログレッシブディスクロージャーがコンテキストを軽量に保つ仕組み

これはスキルを大規模に実用化するための仕組みです。エージェントはすべてのスキル内容を最初に読み込むのではなく、次の 3 ステップに従います:

  1. ディスカバリ(Discovery) — 起動時、namedescription のみがエージェントの認識下にロードされます。
  2. アクティベーション(Activation) — ユーザーのリクエストがスキルの説明と意味的に一致した場合、エージェントは SKILL.md の本文全体を読み込みます。
  3. エクスキューション(Execution) — スキル内のスクリプトや参考ファイルは、指示が必要とした場合にのみ取得されます。

これにより、リクエストごとにコンテキストウィンドウを膨張させることなく、数十のスキルを登録できます。

Skills CLI でスキルをインストールする

skills CLI は、エージェントスキルを管理するための主要なインターフェースです。統合コードを書く必要はなく、次のように実行するだけです:

npx skills add vercel-labs/agent-skills

実際によく使うオプションは以下の通りです:

# Install globally across all projects
npx skills add -g vercel-labs/agent-skills

# Install only specific skills from a repo
npx skills add vercel-labs/agent-skills --skill frontend-design

# List what's available before installing
npx skills add vercel-labs/agent-skills --list

# Search the ecosystem
npx skills find typescript

スキルはプロジェクトスコープ(リポジトリにコミットしてチームと共有)でも、自分専用にグローバルでもインストールできます。CLI はローカルパスや完全な Git URL もサポートしています。

スキル vs. MCP サーバーとプラグイン

スキルは MCP サーバーやエージェントプラグインと同じものではありません。MCP サーバーは、構造化された入出力を伴ってエージェントが呼び出す型付きツールを公開します。外部システムに対して厳格な API 形式の制御が必要な場合に適しています。一方スキルはよりシンプルで、サーバーインフラを必要とせず、エージェントの動作を導くプレーンな Markdown 指示にすぎません。

コピー&ペーストしているプロンプトに繰り返しのワークフローが含まれているなら、スキルを使うべきです。エージェントに外部 API を制御された型付きの方法で操作させたい場合は、MCP を使ってください。

⚠️ セキュリティに関する注意

スキルはデフォルトでは検証されていません。skills.sh プラットフォームは定期的な監査を実施していますが、公開されているすべてのスキルの安全性を保証することはできません。サードパーティ製スキル、特に scripts/ ディレクトリを含むものをインストールする前には、必ず内容を読みましょう。エージェントやランタイムによっては、スクリプトはサンドボックスなしであなたのローカル環境で実行される可能性があります。

エージェントスキル標準の出現

Agent Skills フォーマットは Claude から始まりましたが、現在は agentskills.io で独立して文書化されており、OpenAI Codex、Spring AI、Vercel のツールチェーンなど複数のプラットフォームでサポートされています。これはまだ確定した標準ではなく収束しつつある慣例ですが、コア構造(SKILL.md、YAML フロントマター、オプションの補助ディレクトリ)はすでに十分に安定しており、その上に構築できます。

まとめ

コーディングエージェントに同じプロジェクトコンテキストを繰り返し説明することに時間を費やしているなら、スキルはまさに適切なツールです。コピー&ペーストしているプロンプトを、必要なときにのみ読み込まれるバージョン管理可能で共有可能な資産に変え、エージェントのコンテキストを軽く、ワークフローを一貫したものに保ちます。最初のスキルを作るには npx skills init でひな形を生成するか、skills.sh を見て、すでにあなたのワークフローをカバーするスキルを探してみてください。

FAQ

Agent Skills 規約をサポートするエージェントまたはクライアントが必要です。フォーマット自体は YAML フロントマターを伴うプレーンな Markdown ですが、ツール側がディスカバリとアクティベーションのパターンを実装している場合にのみ機能します。Claude がこの概念を導入し、現在は Vercel のツールチェーン、Spring AI、OpenAI Codex などがサポートしています。

システムプロンプトは常に読み込まれ、すべてのリクエストに適用されるため、ターンごとにコンテキストを消費します。一方スキルは、その説明がユーザーの意図と一致した場合にのみ読み込まれます。この選択的なアクティベーションにより、最初からトークンコストを支払うことなく、数十もの専門化された振る舞いを維持でき、モノリシックなプロンプトよりもスケーラブルになります。

はい。skills CLI はローカルパスや完全な Git URL を受け付けるため、プライベートリポジトリにスキルをホストし、公開されているものと同じようにインストールできます。プロジェクトスコープのスキルはコードベースに直接コミットすることもでき、サポート対象のプロジェクトと一緒にバージョン管理できます。

エージェントはユーザーのリクエストとの意味的類似性に基づいてどのスキルを起動するか決定するため、説明が重複すると予測不能なルーティングが発生する可能性があります。説明は、明確なトリガー、ファイルタイプ、またはユーザーの言い回しに言及した、正確なルーティングルールとして書きましょう。2 つのスキルが本当に重複している場合は、統合するか、一方をより狭くスコープして競合を避けることを検討してください。

Understand every bug

Uncover frustrations, understand bugs and fix slowdowns like never before with OpenReplay — the open-source session replay tool for developers. Self-host it in minutes, and have complete control over your customer data. Check our GitHub repo and join the thousands of developers in our community.

OpenReplay