---
title: エージェントスキル
---

import { Callout } from 'fumadocs-ui/components/callout'

エージェントスキルは、AIエージェントに専門的な機能を提供する再利用可能な指示パッケージです。オープンな[Agent Skills](https://agentskills.io)フォーマットに基づいており、スキルを使用することで、エージェントが必要に応じて読み込める専門知識、ワークフロー、ベストプラクティスを記録できます。

## スキルの仕組み

スキルは**段階的開示**を使用して、エージェントのコンテキストを軽量に保ちます。

1. **発見** — スキル名と説明のみがエージェントのシステムプロンプトに含まれます(各約50〜100トークン)
2. **アクティベーション** — エージェントがスキルが関連すると判断すると、`load_skill`ツールを呼び出して完全な指示をコンテキストに読み込みます
3. **実行** — エージェントは読み込まれた指示に従ってタスクを完了します

つまり、コンテキストウィンドウを肥大化させることなく、多くのスキルをエージェントに添付できます。エージェントは必要なものだけを読み込みます。

## スキルの作成

**設定**に移動し、ツールセクションの下にある**スキル**を選択します。

![Manage Skills](/static/skills/manage-skills.png)

**追加**をクリックして、3つのフィールドを持つ新しいスキルを作成します。

| フィールド | 説明 |
|-------|-------------|
| **名前** | ケバブケースの識別子(例: `sql-expert`、`code-reviewer`)。最大64文字。 |
| **説明** | スキルが何をするか、いつ使用するかについての簡単な説明。これは、エージェントがスキルをアクティベートするかどうかを決定するために読むものです。最大1024文字。 |
| **コンテンツ** | マークダウン形式の完全なスキル指示。これは、エージェントがスキルをアクティベートしたときに読み込まれます。 |

<Callout type="info">
  説明は重要です。これは、エージェントがスキルを読み込むかどうかを決定する前に見る唯一のものです。スキルをいつ、なぜ使用すべきかについて具体的に記述してください。
</Callout>

### 優れたスキルコンテンツの作成

スキルコンテンツは[SKILL.mdファイル](https://agentskills.io/specification)と同じ規則に従います。

```markdown
# SQL Expert

## When to use this skill
Use when the user asks you to write, optimize, or debug SQL queries.

## Instructions
1. Always ask which database engine (PostgreSQL, MySQL, SQLite)
2. Use CTEs over subqueries for readability
3. Add index recommendations when relevant
4. Explain query plans for optimization requests

## Common Patterns
...
```

**推奨される構造:**
- **使用するタイミング** — 特定のトリガーとシナリオ
- **手順** — 番号付きリストによる段階的なガイダンス
- **例** — 期待される動作を示す入出力サンプル
- **一般的なパターン** — 頻繁なタスクに対する再利用可能なアプローチ
- **エッジケース** — 注意点と特別な考慮事項

スキルは焦点を絞り、500行以内に収めてください。スキルが大きくなりすぎた場合は、複数の専門的なスキルに分割してください。

## エージェントへのスキルの追加

任意の**エージェント**ブロックを開き、ツールセクションの下にある**スキル**ドロップダウンを見つけます。エージェントにアクセスさせたいスキルを選択してください。

![スキルを追加](/static/skills/add-skill.png)

選択されたスキルはカードとして表示され、クリックして編集または削除できます。

### 実行時の動作

ワークフローが実行されると:

1. エージェントのシステムプロンプトには、各スキルの名前と説明をリストした`<available_skills>`セクションが含まれます
2. `load_skill`ツールがエージェントの利用可能なツールに自動的に追加されます
3. エージェントが現在のタスクに関連するスキルがあると判断すると、スキル名を指定して`load_skill`を呼び出します
4. 完全なスキルコンテンツがツールレスポンスとして返され、エージェントに詳細な手順が提供されます

これはサポートされているすべてのLLMプロバイダーで機能します。`load_skill`ツールは標準のツール呼び出しを使用するため、プロバイダー固有の設定は不要です。

## 一般的な使用例

スキルは、エージェントが専門知識や複数ステップのワークフローを必要とする場合に最も価値があります。

**ドメインの専門知識**
- `api-integration-expert` — 特定のAPIを呼び出すためのベストプラクティス(認証、レート制限、エラー処理)
- `data-transformation` — ETLパターン、データクリーニング、検証ルール
- `code-reviewer` — チームの基準に特化したコードレビューガイドライン

**ワークフローテンプレート**
- `bug-investigation` — 段階的なデバッグ手法（再現 → 分離 → テスト → 修正）
- `feature-implementation` — 要件から展開までの開発ワークフロー
- `document-generator` — 技術文書のテンプレートとフォーマットルール

**企業固有の知識**
- `our-architecture` — システムアーキテクチャ図、サービス依存関係、デプロイプロセス
- `style-guide` — ブランドガイドライン、文章のトーン、UI/UXパターン
- `customer-onboarding` — 標準手順と一般的な顧客からの質問

**スキルとエージェント指示の使い分け:**
- **スキル**は、複数のワークフローに適用される知識や頻繁に変更される知識に使用します
- **エージェント指示**は、単一のエージェントに固有のタスク固有のコンテキストに使用します

## ベストプラクティス

**効果的な説明の書き方**
- **具体的でキーワードを豊富に含める** — 「SQLを支援」ではなく、「PostgreSQL、MySQL、SQLite向けに最適化されたSQLクエリを作成し、インデックスの推奨事項とクエリプラン分析を含む」と記述します
- **アクティベーショントリガーを含める** — スキルを促す特定の単語やフレーズを記載します（例:「ユーザーがPDF、フォーム、文書抽出について言及した場合に使用」）
- **200語以内に収める** — エージェントは説明を素早くスキャンするため、すべての単語を重要にします

**スキルの範囲と整理**
- **ドメインごとに1つのスキル** — 焦点を絞った`sql-expert`スキルは、広範な`database-everything`スキルよりも効果的です
- **エージェントごとに5〜10個のスキルに制限** — スキルが多いほど意思決定のオーバーヘッドが増加します。小さく始めて必要に応じて追加します
- **大きなスキルを分割** — スキルが500行を超える場合は、焦点を絞ったサブスキルに分割します

**コンテンツ構造**
- **マークダウン形式を使用** — 見出し、リスト、コードブロックは、エージェントが指示を解析して従うのに役立ちます
- **例を提供** — 入力/出力のペアを示して、エージェントが期待される動作を理解できるようにします
- **エッジケースについて明示的に記述** — エージェントが特別な処理を推測すると想定しないでください

**テストと反復**
- **アクティベーションのテスト** — ワークフローを実行し、エージェントが期待通りにスキルを読み込むことを確認する
- **誤検知の確認** — スキルが不要な場面でアクティブ化されていないことを確認する
- **説明の改善** — 必要な時にスキルが読み込まれない場合は、説明にキーワードを追加する

## 詳細情報

- [Agent Skillsの仕様](https://agentskills.io) — ポータブルなエージェントスキルのオープンフォーマット
- [スキルの例](https://github.com/anthropics/skills) — コミュニティのスキル例を閲覧する
- [ベストプラクティス](https://agentskills.io/what-are-skills) — 効果的なスキルの作成方法
