ENGINEER BLOG ENGINEER BLOG
  • 公開日
  • 最終更新日

Agent Skills で AI エージェントに専門スキルを持たせよう!

この記事を共有する

目次

はじめに

パーソル&サーバーワークスの宮川です。

昨今ではAIエージェントでコードを書き、ドキュメントを作成するといった場面が増えてきました。

そこで質問ですが、皆さんは毎回同じような指示を繰り返していないでしょうか?

「コードブロックはこの形式で書いて」「用語はこの表記ルールに従って」など同様のルールを何度も伝えるのは手間ですし、伝え忘れだって起きますよね(人間だもの)。

こうした問題を解決するのが 「Agent Skills」 です。

本記事ではKiroを用いて Agent Skills の仕組みと活用方法を中心に紹介していきます。

この記事を読むと、Agent Skills の仕組みを理解し、自分のプロジェクトでスキルを作成・活用できるようになります。

※Agent Skillsに関する知識は他のAIエージェント(Claude Codeなど)を使用する場合でも活用できますのでご安心ください。

Kiro とは

本題に入る前にKiroについて少しだけ紹介します。

Kiroは、AWSが提供するエージェント型開発環境 (agentic development environment)です。

ここでは深入りはしませんが、スペック (spec) やフック (hook) などの機能を使って開発作業を支援してくれるのが特徴です。

詳細については以下公式サイトをご参照ください。

2026年3月時点ではエージェント型IDEである「Kiro IDE」と、ターミナル上で動作する「Kiro CLI」の2つを利用することができます。

次の画像は「Kiro IDE」の画面です(右ペインでKiroにプロンプトを投げています)。

Kiro IDEの画面キャプチャ.png

Agent Skills とは

AIエージェントに特定の専門知識やワークフローを持たせるために指示、スクリプト、テンプレートなどをまとめた軽量かつ再利用可能なパッケージです。

2025年12月に Anthropic社(Claude の開発元)がオープンスタンダードとして公開しました。

Update: We've published Agent Skills as an open standard for cross-platform portability. (December 18, 2025)

「オープンスタンダード」とは、特定の企業やツールに縛られず、誰でも自由に利用・実装できる共通のルールを示しています。

Claude Code、Kiro、GitHub Copilot、Cursor、Gemini CLI など複数のエージェントプラットフォームで採用されています。

使い方はシンプルで、SKILL.md というMarkdownファイルをプロジェクト内のフォルダーに用意すると、エージェントはMarkdownファイルに記載された手順や知識に従ってタスクを実行してくれます。

SKILL.mdは自然言語(日本語や英語など)を用いて記述ができるため、誰でも簡単に使用できるのが大きな特徴ですね。

Agent Skills を使うメリット

Agent Skills を導入すると、具体的にどのような恩恵があるのでしょうか?

メリット 説明
繰り返しの指示が不要になる 一度スキルとして定義すれば、毎回同じ説明をチャットに書く必要がなくなる。「ブログ書いて」の一言で、ルールに準拠した出力が得られる
ナレッジをドキュメントとして管理できる ノウハウやルールがMarkdownファイルとしてリポジトリに残る。Git管理でき、レビューや変更履歴の追跡も可能
コンテキストウィンドウを節約できる スキルは必要なときだけ読み込まれる(段階的開示)。常時読み込みの設定ファイルと異なり、トークンを無駄に消費しない
出力の品質が安定する 同じスキルを使えば、誰がリクエストしても一貫した品質の出力が得られる。属人化を防げる
ポータブルで再利用できる オープンスタンダードのため、Kiro以外のツール(Claude Code、Cursor など)でも同じスキルが使える。プロジェクト間での共有も容易

【用語】コンテキストウィンドウ

AIが一度に読み込める情報量の上限枠のことです。

この枠はシステムの設定、会話の履歴、スキルの内容などで共有されますが、枠を使い切ると古い情報が削除されて参照できなくなるため効率的に使うことが重要になります。

Agent Skillsを使用すると実行する処理に必要なスキルのみを読み込むため、後述するSteeringファイルと比較した場合にコンテキストウィンドウの節約につながります。

【用語】Steering Files (ステアリングファイル)

Kiro の .kiro/steering/ ディレクトリに配置するMarkdownファイルで、すべてのやり取りに常時適用されるルールを定義するものです。

たとえば「日本語で応答する」「コーディング規約に従う」といったプロジェクト全体のルールに向いています。

Agent Skillsの仕様について

ディレクトリ構成

Agent Skills の仕様(agentskills.io)では、以下のディレクトリ構成が定義されています。

my-skill/
├── SKILL.md          # スキル定義ファイル(必須)
├── scripts/          # 実行可能なコード(任意)
├── references/       # 補足ドキュメント(任意)
└── assets/           # テンプレート、リソースファイル(任意)
ディレクトリ/ファイル 必須/任意 役割
SKILL.md 必須 スキルのメタデータ(フロントマター)と手順・ルール(Markdown本文)を記載するエントリーポイント
scripts/ 任意 エージェントが実行できるスクリプト(Python、Bashなど)。ソート処理やファイル変換など、コードで確実に処理したいタスクに使う
references/ 任意 補足ドキュメント。SKILL.md から参照され、エージェントが必要に応じて読み込む。ルール文書やAPIドキュメントなどを配置する
assets/ 任意 テンプレートファイル、設定ファイルのサンプルなど、エージェントが参照・利用する静的リソース

Kiro は Agent Skills のオープンスタンダードをサポートしているため(参考:Agent Skills - Kiro公式ドキュメント)、上記の標準ディレクトリ構成を利用できます。

SKILL.md の記述形式

SKILL.md は大きく2つのパートで構成されます。

パート 内容 読み込みタイミング
YAML Frontmatter スキルの名前(name)と説明(description)を記載する 起動時に常に読み込まれる
Markdown本文 エージェントが従うべき具体的な手順やルールを記載する スキルがアクティベートされたときのみ

SKILL.mdのシンプルな構成例 引用:Equipping agents for the real world with Agent Skills(Anthropic)

【用語】YAML Frontmatter (YAMLフロントマター)

Markdownファイルの先頭に --- で囲んで記述するメタデータ領域のことです。

---
name: [スキル名]
description: [このスキルの説明。エージェントがいつこのスキルを使うべきかが分かるように具体的に書く]
---
# スキルのタイトル
## 手順やルールなど
(ここにエージェントが従うべき具体的な指示を記載する)
- 参照:`references/detailed-rules.md`

Anthropic はこの設計を「プログレッシブ・ディスクロージャー(段階的開示)」と呼んでいます。

  • エージェントは起動時にフロントマターだけを読み込み、スキルを使うべきと判断したときに初めて本文を読み込みます。
  • さらに、references/ 内のファイルは本文から参照されたときだけ読み込まれます。

この仕組みによりコンテキストウィンドウを効率的に使えます。

Kiro における Agent Skills の使い方

ディレクトリ・ファイル構成について

Kiroでは、スキルをワークスペース内の .kiro/skills/ ディレクトリに配置します。

.kiro/
└── skills/
    └── my-skill/
        ├── SKILL.md          # 必須
        └── references/       # 任意
            └── rules.md      # SKILL.mdで参照するファイルを配置

スキルの呼び出し方について

スキルの呼び出し方法は2つあります。

呼び出し方法 説明
自動アクティベーション ユーザーのリクエスト内容がスキルの "description" にマッチすると、Kiro が自動的にスキルを読み込んで適用する
スラッシュコマンド チャット入力欄で / を入力すると、利用可能なスキルが一覧表示される。選択するとスキルの全文が読み込まれ、明示的にスキルを呼び出せる(IDEのみ。CLIでは使用不可)

ほとんどの場合、プロンプトで適切な指示を出してあげると自動で使用するスキルを判断してくれます。特別な理由がない限り、スキルの使用を明示する必要はありません。

次の画像の通り、かなり曖昧なプロンプトでもスキルを認識して使用してくれます。

Kiro IDEでのスキル使用例.png

また、CLI ではスラッシュコマンドが使えないため、スキルの description を具体的に書くことがより重要になります。

エージェントが適切なタイミングでスキルを発動できるよう、どのようなリクエストに対してスキルを使うべきかを明確に記述しましょう。

ユースケースについて

Agent Skills はさまざまな場面で活用できます。

ユースケース スキルに含める内容 得られる効果
ブログ記事の作成 文体ルール、外来語の長音表記、コードブロックの記法、テンプレート構成 「ブログ書いて」の一言で、ルールに準拠した記事が生成される
コードレビュー・PRレビュー コーディング規約、セキュリティチェック項目、パフォーマンス観点 レビュアーごとの観点のばらつきが減り、チーム全体のレビュー品質が向上する
IaC テンプレートの作成 タグ付けポリシー、命名規則、セキュリティ要件 組織のポリシーに準拠したCloudFormation / Terraform テンプレートを効率的に生成できる
インシデント対応手順の実行 初動対応手順(ログ確認、影響範囲の特定、エスカレーション先) 焦りがちな場面でも手順を漏れなく実行できる
ドキュメントのレビュー 技術的正確性、表記ルール、コンプライアンスのチェック観点 レビューの品質と網羅性を担保できる

※「IaC」とは Infrastructure as Code の略で、サーバーやネットワークなどのインフラをコードで定義・管理する手法のことです。代表的なツールには、CloudFormation(AWS)や Terraform(HashiCorp)があります。

具体的な使用例

プロジェクトディレクトリの構成例

参考として、私のブログプロジェクトにおけるディレクトリ構成を紹介します。

Agent Skills や Steering Files を作成する際の参考にしてください。

BLOG/
├── .kiro/
│   ├── skills/                          # Agent Skills
│   │   ├── find-topics/                 # ブログネタ探しスキル
│   │   │   └── SKILL.md
│   │   ├── review-articles/             # 記事レビュースキル
│   │   │   ├── SKILL.md
│   │   │   ├── assets/
│   │   │   │   └── page.js              # Shikiシンタックスハイライト
│   │   │   └── references/
│   │   │       └── blog-manual.md       # 文書作成ルール(文体・表記など)
│   │   └── write-articles/              # 記事作成スキル
│   │       ├── SKILL.md
│   │       ├── assets/
│   │       │   └── page.js              # Shikiシンタックスハイライト
│   │       └── references/
│   │           ├── blog-manual.md       # 文書作成ルール(文体・表記など)
│   │           └── blog-template.md     # 記事テンプレート
│   └── steering/                        # Steering Files(常時適用ルール)
├── articles/
│   ├── kiro/                            # Kiro で作成した記事(下書き)
│   └── prod/                            # 本番記事(下書きをベースに加筆・修正を実施)
├── review/                              # レビュー結果
└── topics/                              # ブログネタ管理

このように、タスクごとにスキルを分けて配置しています。

「記事を書いて」と依頼すれば write-articles スキルが、「レビューして」と依頼すれば review-articles スキルが自動的にアクティベートされます。

SKILL.md の記述例

ブログ記事作成スキルの記述例を示します。

※あくまで一例ですので、実用のためにはもっと細部を作りこむ必要がある点はご了承ください。

---
name: write-article
description: ブログ記事を作成する際に実行するスキルです。文書作成ルールに準拠した、Markdown形式の技術ブログ記事を作成します。
---
# ブログ記事作成スキル
## ブログ概要
- 種別:会社HP掲載の一般公開技術ブログ
- 対象読者:エンジニア(クラウドに携わる方)
- 主なテーマ:AWS関連の技術情報
## 記事の記法
記事はMarkdown形式で記述します。
### コードブロックの記法
- 通常のMarkdownコードフェンス( ``` )は使用禁止です。
- 必ず以下のHTMLタグ形式を使用してください。
<pre class="code" data-lang="言語名"><code>コード1行目
コード2行目
</code></pre>
## 文書作成ルール
記事作成時は、以下のルール文書に準拠してください。
- 参照:`references/blog-manual.md`
### 文体・表記
- 文体は「です・ます体」に統一する
- 句読点は全角の「、」「。」を使用する
## 記事テンプレート
作成時の参考として以下のテンプレートを参照してください。
- 参照:`references/blog-template.md`
### 基本的な構成要素
- タイトル(必須)
- はじめに(必須):自己紹介と記事の概要
- メリット(必須):概要の直後に、読者が得られる価値を明記する
- 本文(必須):主題の解説
- まとめ(必須):記事の要点を簡潔にまとめる

スキル作成のポイント

実際にスキルを作成する際のポイントを整理します。

ポイント 説明
description は具体的に書く エージェントがスキルを発動すべきタイミングを正確に判断できるよう、曖昧な表現を避ける
ルールは明示的に書く 「適切に」「必要に応じて」といった曖昧な指示ではなく、具体的な手順やフォーマットを示す
禁止事項を明記する やってほしくないことは「禁止」と明確に書く。エージェントは許可されていないことを自己判断で避けるとは限らない
補足ファイルを活用する SKILL.md が長くなりすぎたら、references/ やその他フォルダーに分離する。段階的開示の仕組みを活かしてトークン効率を向上させる
実際に使いながら改善する スキルを作ったらエージェントに使わせてみて、期待どおりの出力が得られるか確認する。うまくいかない部分は指示を具体化したり、禁止事項を追加したりして改善する

特に「descriptionは具体的に書く」という点は重要です。スキルを使用すべき場面がうまく伝わらずにスキルを使ってくれない、あるいは想定とは異なる場面でスキルを使用してしまうといった事象を防ぐためです。

これらのポイントを押さえつつスキルを作成する際にもAIを活用すると、さらに作業を加速できます。

また、プロンプトを用いて作業を終えた後に同様の作業を繰り返す可能性がある場合には、「これまでの指示内容をまとめてスキルを作成してください」とお願いしてみるのも良いと思います。

プロンプト、Steering Files、Agent Skills の比較

最後に、Kiro にはエージェントの振る舞いを制御する手段が複数あるため、それぞれの違いを整理します。

観点 プロンプト(チャット入力) Steering Files Agent Skills
永続性 その会話限り。次のセッションには引き継がれない 永続的。ファイルとして保存される 永続的。ファイルとして保存される
適用範囲 そのリクエストのみ すべてのやり取りに常時適用 特定のタスクにマッチしたときだけ適用
読み込みタイミング 送信時に即座に読み込まれる 常にコンテキストに読み込まれる メタデータのみ起動時に読み込み、本文は必要時のみ
トークン効率 毎回入力する分だけ消費 常時読み込みのため、内容が増えるとコストが上がる 段階的開示により効率的
再利用性 低い(コピペが必要) 同一プロジェクト内で再利用可能 プロジェクト間・ツール間で再利用可能
Git管理 不可 可能 可能
配置場所 - .kiro/steering/ .kiro/skills/
適した用途 一度きりの指示、アドホックな依頼 プロジェクト全体に適用するルール(言語設定、コーディング規約など) 特定タスクの専門知識・ワークフロー(記事作成、レビュー、デプロイ手順など)

使い分けの目安は以下のとおりです。

やりたいこと 使うべき手段
すべてのやり取りに適用したいルール Steering Files
特定のタスクでだけ必要な専門知識 Agent Skills
その場限りの指示 プロンプト

まとめ

ここまで記事を読んでくださりありがとうございます!

Agent Skillsを使用するイメージは湧いたでしょうか?

Agent Skills は、AIエージェントに再現性のある専門知識を持たせるためのシンプルで強力な仕組みです。SKILL.md というMarkdownファイル1つで、ノウハウやルールをエージェントに伝えられます。

Kiro では IDE・CLI の両方で Agent Skills を利用でき、Steering Files と組み合わせることで、プロジェクト全体のルールとタスク固有の専門知識を使い分けられます。

まずは日常的に繰り返している作業を1つ選んで、スキルとして定義してみてください。

一度作成してしまえば簡素な指示で想定通りの作業を反復実行できるだけでなく、チーム内での共有やナレッジ化にも役立つことでしょう。

少しでも皆さんの作業効率化のお役に立てたなら幸いです!

参考

この記事は私が書きました

宮川 和浩

記事一覧

エンジニア4年目。最近スノボにハマってます。 コードを書くのが好きでKiroとよく戯れてます、かわいい。

宮川 和浩

この記事を共有する

クラウドのご相談

CONTACT

クラウド導入や運用でお悩みの方は、お気軽にご相談ください。
専門家がサポートします。

サービス資料ダウンロード

DOWNLOAD

ビジネスをクラウドで加速させる準備はできていますか?
今すぐサービス資料をダウンロードして、詳細をご確認ください。