Claude CodeのAgent Skillsとは?自動化の仕組みと作り方・活用例を徹底解説

押さえておきたいポイント
  • Claude CodeのAgent Skillsは、必要なときだけ専門知識を呼び出すモジュール型の拡張機能
  • SKILL.mdファイルを作成するだけで、繰り返し作業の自動化と毎回の指示入力を省略できる
  • SkillsとSubagentsを適切に使い分けることで、AIの作業効率と出力品質を大幅に改善できる

2025年10月、AnthropicのAIコーディングツール「Claude Code」に、新機能「Agent Skills」が追加されました。

今回追加された「Claude Code Agent Skills」は、Claudeに対してドメイン固有の専門知識を動的に付与できる拡張機能です。コードレビューの判断基準・デプロイ手順・プロジェクト固有のコーディング規約など、繰り返し使う知識をパッケージ化してClaudeに覚えさせる仕組みといえるでしょう。

これまでAIツールを業務で使っていた方の多くが、「毎回同じ手順を説明しなければならない」「AIがチームのルールを覚えてくれない」「コンテキストが長くなるほど精度が落ちる」といった課題を感じていたのではないでしょうか。

一方でAgent Skillsは、必要なときだけ知識をロードする「段階的な情報開示(Progressive Disclosure)」の仕組みを採用。コンテキストを無駄に消費せず、Claudeが状況に応じて必要な専門知識だけを引き出します。

しかし、新しい機能が登場するたびに「自分の業務に本当に役立つのか」「設定が難しそうで手が出ない」「普通のプロンプトや CLAUDE.md と何が違うのか」といった疑問を感じる方も多いのではないでしょうか。

そこで本記事では、Claude CodeのAgent Skillsの概要や仕組み、具体的な作り方から実務での活用例・注意点まで、初めて触れる方にもわかりやすく解説します。

最後までお読みいただくことで、Agent Skillsがどのように設計されており、自分の業務でどう活用できるかが理解できるはずです。

\生成AIを活用して業務プロセスを自動化/

Claude CodeのAgent Skillsとは

Claude CodeのAgent Skillsとは

Agent Skillsは、Claude Codeの機能をモジュール型で拡張する仕組みです。各Skillは指示・メタデータ・スクリプトなどをパッケージ化し、Claudeが関連するリクエストを受け取ったとき自動的に呼び出します。

参考:https://platform.claude.com/docs/ja/agents-and-tools/agent-skills/overview

Anthropicは2025年10月(v2.0.22)にClaude Codeへこの機能を追加し、同年12月にはオープンスタンダードとして公開。「必要なときに必要な知識だけをClaudeに渡す」という思想が根幹にあります。

通常のプロンプトが「1回限りの会話レベルの指示」であるのに対し、Agent Skillsは複数の会話にわたって同じガイダンスを繰り返し提供できます。一度作ったSkillは自動的に使われるため、同じ説明を何度も書く必要がなくなります。

Agent Skillsでできること

Agent Skillsの主な用途は、ドメイン固有の専門知識・手順・判断基準をClaudeに渡すことです。

参考:https://platform.claude.com/docs/ja/agents-and-tools/agent-skills/overview

Skillには以下の3種類のコンテンツをまとめて扱えます。

スクロールできます
コンテンツタイプ内容具体例
指示(Instruction)ワークフロー・ベストプラクティス・ガイダンスを含むSKILL.md本体コードレビュー基準、デプロイ手順、PRフォーマット
コード(Code)Claudeがbashで実行できる実行可能スクリプトバリデーションスクリプト、フォーム入力スクリプト
リソース(Resource)参照資料・APIドキュメント・テンプレートなどデータベーススキーマ、ルール集、フォーム仕様書
Agent Skillsで使用できる3種類のコンテンツ

Anthropicはすぐに使える事前構築済みAgent Skillsも提供しています。PowerPoint・Excel・Word・PDFの生成・編集はClaude APIおよびclaude.aiから追加設定なしで利用可能です。

カスタムSkillsを作成することで、自社や個人の業務ルールをパッケージ化できます。一度作ったSkillsはClaude Codeのすべての製品で利用可能です。

なぜ普通のプロンプトではなくSkillsを使うのか

通常のプロンプトとAgent Skillsの最大の違いは、「いつ読み込まれるか」と「何度使えるか」です。

スクロールできます
比較項目通常のプロンプトAgent Skills
読み込みタイミング毎回手動で入力必要なときに自動で読み込み
再利用性1会話限り複数の会話で繰り返し使用可能
コンテキスト消費常にコンテキストを消費使用時のみ(5,000トークン未満)
管理のしやすさ都度書き直しが必要ファイルを一度作れば自動適用
通常のプロンプトとAgent Skillsの比較(2025年10月時点)

通常のプロンプトは会話のたびに書き直す必要があり、コンテキストウィンドウを常に消費します。一方でAgent Skillsは、メタデータ(Skill当たり約100トークン)だけが常に読み込まれ、本体の指示はトリガーされたときのみロードされます。

ただし、Agent SkillsはZero Data Retention(ZDR)契約の対象外です。スキル定義と実行データはAnthropicの標準データ保持ポリシーに従って保持されます。

Claude CodeでAgent Skillsを使うメリット

Agent Skillsを導入することで、AI活用の効率が大きく変わります。コンテキスト管理の負担軽減繰り返し作業の自動化という2つの観点から、具体的なメリットを見ていきましょう。

必要なときだけ知識を呼び出せる

Agent Skillsの最大のメリットは、「段階的な情報開示(Progressive Disclosure)」の仕組みにあります。

Claude Codeのコンテキストウィンドウは有限のリソースです。CLAUDE.mdのようにセッション開始時から常に読み込まれるファイルは、内容が増えるほど実際の作業に使えるコンテキストを圧迫します。

Agent Skillsはこの問題を解決します。起動時に読み込まれるのはSkill当たり約100トークンのメタデータのみ。本体の指示(5,000トークン未満)は、関連するリクエストが来たときにはじめて読み込まれます。

Skillsにバンドルしたファイルはアクセスされるまでコンテキストを消費しません。包括的なAPIドキュメントや大規模なルール集も、コストゼロで持ち運べます。

毎回同じ指示を書かなくてよくなる

Agent Skillsの2つ目のメリットは、一度作ったガイダンスが複数の会話にわたって自動的に適用される点です。

「テストを書いて」と頼むたびにチームのコーディング規約を伝え直す、「APIを作って」と頼むたびにレスポンス形式を説明するなど、こうした繰り返しがSkillで解消できます。

Skillに書いておけば、一言の指示だけで規約に沿った出力が返ってきます。

Skills活用のイメージは「Claude Codeへの育成」です。新入社員のオンボーディングと同じように、プロダクトの前提知識・社内ルール・タスクの進め方を渡してあげることで、Claudeは真価を発揮します。

Skillsの配置場所によって、適用スコープも変わります。

スクロールできます
配置場所適用範囲向いている用途
~/.claude/skills/全プロジェクト(パーソナル)コードレビュー、PRサマリーなど複数プロジェクトで使い回す作業
.claude/skills/(プロジェクト直下)そのリポジトリ内のみプロジェクト固有のデプロイ手順、チーム共通のルール
Skillsの配置場所と適用スコープ

Nano Bananaのコピペで使えるプロンプト10選と失敗しない直し方・Proと2の使い分けについて、詳しく知りたい方を下記の記事を併せてご確認ください。

Claude CodeのAgent Skillsの作り方

Agent Skillsの作り方はシンプルです。SKILL.mdというファイルを含むディレクトリを作るだけで、Claude Codeが自動的に発見して使用します。APIへのアップロードや特別な設定は必要ありません。

SKILL.mdに何を書けばいいか

すべてのSkillには、YAMLフロントマターを含むSKILL.mdファイルが必要です。フロントマターには必須の2フィールド(nameとdescription)を記載し、その下にSkillの本体となる指示を書きます。

基本的なSKILL.mdの構成は以下の3つです。

項目内容
YAMLフロントマターnameとdescriptionを記載(必須)
インストラクション本体Claudeへの手順・ワークフロー・ベストプラクティスを記述
外部参照(任意)追加のMarkdownファイルやスクリプトへの参照パスを記載
基本的なSKILL.mdの構成

nameフィールドには最大64文字・小文字英数字とハイフンのみが使えます。「anthropic」「claude」などの予約語は使用できません。descriptionは最大1,024文字で、空欄は不可です。

SKILL.md本体は500行以下を推奨。これを超える場合は、詳細なルールや参照資料をreferences/ディレクトリに分割するのが適切です。SKILL.mdからは参照するだけで、Claudeが必要に応じてそのファイルを読みに行きます。

サンプルSKILL.md
---
name: code-review
description: コードをレビューする。「このコード見て」「レビューして」と言われた時に使用。
---

# コードレビュースキル

## レビューの観点

以下の4つの観点でコードを評価する。

| 観点 | チェック内容 |
|------|------------|
| 品質 | バグの可能性、エッジケースの処理、エラーハンドリング |
| セキュリティ | インジェクション脆弱性、認証・認可の抜け |
| パフォーマンス | 不要なループ、N+1問題 |
| 可読性 | 命名の明確さ、関数の単一責任 |

## ワークフロー

1. 対象ファイルを読み込む
2. 4つの観点でそれぞれ評価する
3. 重大度で分類して報告する(Critical / Warning / Suggestion)

## 出力フォーマット

### Critical(必ず修正)
- [ファイル名:行番号] 問題の説明と修正案

### Suggestion(改善提案)
- [ファイル名:行番号] 改善案

ただし、versionやauthorなどのメタ情報をフロントマターのトップレベルに書くとバリデーションエラーになります。これらはmetadataフィールド以下にネストして記載してください。

自動で使われやすいdescriptionの書き方

Agent Skillsの成否を分ける最重要フィールドがdescriptionです。

Claude Codeはセッション開始時に、利用可能な全Skillのdescriptionをメモリにロードします。ユーザーからメッセージが来ると、Claudeがそのメッセージと全Skillのdescriptionを「意味的に照合(セマンティックマッチング)」し、呼び出すべきSkillを自動で判断します。

効果的なdescriptionは「何をするかだけでなく、どんなリクエストがきたときに使うか」を明示します。良い例・悪い例の差は次のとおりです。

スクロールできます
パターンdescriptionの例
悪い例ドキュメント作成
良い例READMEやドキュメントを作成・更新する。「README書いて」「ドキュメント作って」「説明を追加して」と言われたときに使用。
descriptionの良い例・悪い例

Agent SkillsとSubagentsの違い

Claude Codeには「Skills」と「Subagents」という2つの拡張機能があります。どちらも作業効率を高めるためのものですが、適切な使い分けが重要です。

スクロールできます
機能常時ロード用途粒度
CLAUDE.md常時プロジェクト全体のルール・技術スタック・基本的な制約プロジェクト全体
Skills必要時のみ特定タスクの専門知識・手順・判断基準タスク単位
Subagents(.claude/agents/)タスク時独立コンテキストで動作する専門エージェント委任タスク単位
CLAUDE.md・Skills・Subagentsの比較

繰り返し使う作業はSkills向き

Skillsは「決まった手順のある作業をメインのClaude Codeに覚えさせる」用途に向いています。

Skillsの設計思想は「汎用エージェントであるClaudeに、文脈に応じた専門知識を動的に付与する」というものです。「デプロイ担当エージェント」「レビュー担当エージェント」という役割分担ではなく、「必要な知識を持ったClaudeが状況に応じてあらゆる作業を柔軟に担う」という考え方です。

以下のような作業はSkills向きといえます。

  • コードレビュー(品質基準・重大度の判断)
  • PRの要約・サマリー作成
  • テストコードの生成(チームの書き方に従って)
  • デプロイ手順の確認と実行
  • APIレスポンス形式の統一

これらは「メインの会話の延長として処理できる、繰り返し性の高いタスク」です。Skillにしておくことで、一言で再現できます。

複雑な調査や分担作業はSubagents向き

Subagentsは「メインのコンテキストとは切り離した、独立した専門タスクを委任する」用途向きです。

パフォーマンス分析・セキュリティ監査・大規模なリファクタリング調査など、長時間の試行錯誤が必要な処理やメインコンテキストを汚染したくない作業はSubagentsが適しています。

例えばパフォーマンス分析用のSubagentを定義すれば、N+1クエリの調査やチューニングを独立したコンテキストで任せられます。

判断の目安は、Skillsは「繰り返す手順を一言で再現したい」、Subagentsは「独立して考え・調査してほしい専門家を呼びたい」というイメージで使い分けると、迷いにくいでしょう。

開発効率が爆上がりするCodexアプリについて、詳しく知りたい方を下記の記事を併せてご確認ください。

Claude CodeのAgent Skillsを使ってみた

先ほどサンプルのスキルを紹介しましたが、これを実際に作ってClaude Codeで使ってみたいと思います。

また、実際にコードレビューしてもらうためのPythonプログラムも用意しておきます。

サンプルコードはこちら
"""
ユーザー管理モジュール(コードレビュー用サンプル)
"""

import os
import json
import sqlite3
import hashlib
from datetime import datetime


DB_PATH = "users.db"


def init_db():
    conn = sqlite3.connect(DB_PATH)
    conn.execute("""
        CREATE TABLE IF NOT EXISTS users (
            id INTEGER PRIMARY KEY AUTOINCREMENT,
            username TEXT,
            password TEXT,
            email TEXT,
            created_at TEXT
        )
    """)
    conn.commit()
    conn.close()


def hash_password(password):
    return hashlib.md5(password.encode()).hexdigest()


def register_user(username, password, email):
    conn = sqlite3.connect(DB_PATH)
    hashed = hash_password(password)
    created_at = datetime.now()

    query = f"INSERT INTO users (username, password, email, created_at) VALUES ('{username}', '{hashed}', '{email}', '{created_at}')"
    conn.execute(query)
    conn.commit()
    conn.close()
    print(f"ユーザー登録完了: {username}")


def get_user(username):
    conn = sqlite3.connect(DB_PATH)
    query = f"SELECT * FROM users WHERE username = '{username}'"
    result = conn.execute(query).fetchone()
    conn.close()
    return result


def login(username, password):
    user = get_user(username)
    if user == None:
        print("ユーザーが存在しません")
        return False
    hashed = hash_password(password)
    if user[2] == hashed:
        print("ログイン成功")
        return True
    else:
        print("パスワードが違います")
        return False


def export_users(filepath):
    conn = sqlite3.connect(DB_PATH)
    rows = conn.execute("SELECT id, username, email, created_at FROM users").fetchall()
    conn.close()

    users = []
    for row in rows:
        users.append({
            "id": row[0],
            "username": row[1],
            "email": row[2],
            "created_at": row[3]
        })

    f = open(filepath, "w")
    json.dump(users, f, ensure_ascii=False, indent=2)
    f.close()
    print(f"{len(users)}件をエクスポートしました")


def delete_user(username):
    conn = sqlite3.connect(DB_PATH)
    conn.execute(f"DELETE FROM users WHERE username = '{username}'")
    conn.commit()
    conn.close()


def change_password(username, old_password, new_password):
    if login(username, old_password) == False:
        return
    conn = sqlite3.connect(DB_PATH)
    hashed = hash_password(new_password)
    conn.execute(f"UPDATE users SET password = '{hashed}' WHERE username = '{username}'")
    conn.commit()
    conn.close()
    print("パスワードを変更しました")


if __name__ == "__main__":
    init_db()
    register_user("alice", "password123", "alice@example.com")
    register_user("bob", "qwerty", "bob@example.com")
    login("alice", "password123")
    login("alice", "wrongpass")
    export_users("users_export.json")

レビューしてくれている様子が下記です。

結果はこちら
ファイルを読みます。

ファイルはすでに読み込み済みです。4軸でレビューします。

---

## コードレビュー: `sample_review.py`

### 🔴 Critical(必ず修正)

- [sample_review.py:39] **SQLインジェクション — `register_user`**
  - 問題: f-stringでSQL文字列を直接組み立てており、`username` や `email` に `'; DROP TABLE users; --` 等を渡すとDBが破壊される
  - 修正案:
    ```python
    conn.execute(
        "INSERT INTO users (username, password, email, created_at) VALUES (?, ?, ?, ?)",
        (username, hashed, email, created_at)
    )
    ```

- [sample_review.py:48] **SQLインジェクション — `get_user`**
  - 問題: 同上。`get_user("' OR '1'='1")` で全ユーザーを取得できる
  - 修正案: `conn.execute("SELECT * FROM users WHERE username = ?", (username,))`

- [sample_review.py:90] **SQLインジェクション — `delete_user`**
  - 問題: 同上。任意のユーザーを削除される可能性
  - 修正案: `conn.execute("DELETE FROM users WHERE username = ?", (username,))`

- [sample_review.py:100] **SQLインジェクション — `change_password`**
  - 問題: 同上
  - 修正案: `conn.execute("UPDATE users SET password = ? WHERE username = ?", (hashed, username))`

- [sample_review.py:31] **MD5によるパスワードハッシュ(ソルトなし)**
  - 問題: MD5は暗号学的に脆弱。ソルトもないためレインボーテーブル攻撃で全パスワードが復元される
  - 修正案:
    ```python
    import bcrypt
    
    def hash_password(password: str) -> str:
        return bcrypt.hashpw(password.encode(), bcrypt.gensalt()).decode()
    
    def verify_password(password: str, hashed: str) -> bool:
        return bcrypt.checkpw(password.encode(), hashed.encode())
    ```

---

### 🟡 Warning(修正推奨)

- [sample_review.py:35〜103] **DBコネクションのリーク(`try/finally` なし)**
  - 問題: 例外発生時に `conn.close()` が呼ばれずコネクションが漏れる。全関数が該当
  - 修正案: `with sqlite3.connect(DB_PATH) as conn:` に統一する

- [sample_review.py:82〜84] **ファイルハンドルのリーク**
  - 問題: `open()` が `with` なしで使われており、例外時にファイルが閉じられない
  - 修正案: `with open(filepath, "w", encoding="utf-8") as f:`

- [sample_review.py:43,57,64,85,103] **`print()` を使用(`logging` 未使用)**
  - 問題: CLAUDE.md規約違反。本番環境でログレベル制御ができない
  - 修正案: `import logging` → `logger = logging.getLogger(__name__)` → `logger.info(...)` に置換

- [sample_review.py:34,46,54,68,88,95] **型ヒントがない**
  - 問題: CLAUDE.md規約違反。全関数に型ヒントがない
  - 修正案:
    ```python
    def register_user(username: str, password: str, email: str) -> None:
    def get_user(username: str) -> tuple | None:
    def login(username: str, password: str) -> bool:
    ```

- [sample_review.py:5〜12] **`try/except` が一切なく、`DB_PATH` がハードコード**
  - 問題: CLAUDE.md規約違反。DBパスは `.env` から読むべきで、エラーハンドリングも必要
  - 修正案:
    ```python
    from dotenv import load_dotenv
    load_dotenv()
    DB_PATH = os.getenv("DB_PATH", "users.db")
    ```

---

### 🔵 Suggestion(改善提案)

- [sample_review.py:56] **`== None` は `is None` を使う**
  - 提案: `if user is None:` が Pythonイディオム(PEP8準拠)

- [sample_review.py:60] **`user[2]` のマジックナンバー**
  - 提案: `namedtuple` または `dataclass` でフィールドに名前をつける。最低限 `user[2]` → コメントで `# password` を明記する

- [sample_review.py:34] **`register_user` に重複チェックなし**
  - 提案: 同一 `username` で二重登録できてしまう。`username` カラムに `UNIQUE` 制約を追加し、`IntegrityError` をハンドルする

---

📊 **サマリー**: Critical **5件** / Warning **5件** / Suggestion **3件**

---

**最優先で直すべきこと**はSQLインジェクション(4箇所)とMD5ハッシュの2点です。これは動いているコードがあれば即座にデータ漏洩・改ざんにつながります。次点でパスワード検証ロジックを `bcrypt.checkpw` に置き換えた上で、各関数を `with` 構文でリファクタリングするのが良い順序です。

スキルに書いた通りに処理をしてくれています。このスキルを組織で共有すれば、一定の水準でレビューをすることが可能ですね。

実務で使えるClaude CodeのAgent Skills活用例

Agent Skillsは開発業務だけでなく、ビジネス文書の統一化や定型作業の自動化にも活用できます。具体的な活用例を紹介します。

書類作成や文章の整え方を統一する

Agent Skillsを使えば、社内ドキュメントのフォーマットや文体をClaudeに覚えさせることができます。

例えばコードレビュースキルを定義しておくと、「このコード見て」の一言でチームが定めた観点(品質・セキュリティ・パフォーマンス・可読性など)に沿ったレビューが自動生成されます。毎回レビュー観点を説明する手間がなくなります。

他にも、以下のような書類作成の統一化に活用できます。

項目内容
PRの要約・説明文チームのフォーマットに沿った要約を自動生成するSkill
議事録の整形発言ログを決まったテンプレートに変換するSkill
ブログ・記事のレビュー技術的正確性・可読性・SEO観点のチェックをSkillに定義してレビュープロセスを標準化
書類作成のスキル例

データ整理や定型作業を自動化する

Anthropicが提供する事前構築済みAgent Skills(Excel・Word・PowerPoint・PDF)を使えば、ファイル操作の定型作業をすぐに自動化できます。

ExcelのAgent Skillsはスプレッドシートの作成・データ分析・チャート付きレポートの生成に対応。「売上データをグラフ付きレポートにまとめて」と指示するだけで、Excelファイルを出力できます。

カスタムSkillsを活用すれば、さらに幅広い定型作業を自動化できます。

項目内容
フォームの自動入力入力規則と手順をSkillに定義し、スクリプトで実行
データのバリデーションチェックスクリプトをSkillにバンドルして再利用
ログの分析と整形分析手順とフォーマットをSkillで定義して繰り返し適用
定型作業のスキル例

Skillsにはコードスクリプトをバンドルできます。スクリプトのコード自体はコンテキストに読み込まれず、実行結果(出力)のみがトークンを消費する仕組みです。処理の信頼性と効率を両立できます。

Agent SkillsはClaude Code以外のツールにも対応しています。2025年12月にオープンスタンダードとして公開されたことで、VS Code・GitHub Copilot・Cursor・Windsurf・Gemini CLIなど、主要なAIコーディングツールで同じSkillsが再利用可能です。

Claude CodeのAgent Skillsの活用事例

ここではClaude CodeのAgent Skillsの活用事例をXでリサーチして、いくつか紹介をします。

今回解説する事例において、弊社がX(旧Twitter)で発見した参考となるツイートを紹介させていただいております。取り下げなどのご連絡は、contact@weel.co.jp からご連絡ください。

スライド作成スキル

こちらの投稿ではHTMLスライドをPPTXに変換するためのスキルを作成されています。

AIの普及によりHTMLスライドで出力してもらう機会が増えましたが、パワーポイントで編集できなかったのがネックでした。そんな課題を解決してくれるスキルです。

金融分析スキル

こちらの投稿では、金融分析のフローをスキルにされています。

ニュースチェックから過去の株式価格取得、トレンド予測などが含まれています。

Claude CodeのAgent Skillsを使うときの注意点

Agent Skillsは強力な機能ですが、適切に設定しないと期待どおりに動作しないケースがあります。よくある問題と安全な運用のポイントを確認しておきましょう。

Skillがうまく呼ばれない原因

Skillが自動的に使われない場合、descriptionの書き方に原因がある可能性があります。

Claudeはセマンティックマッチングで呼び出すSkillを判断するため、descriptionの情報密度が低いとマッチしません。「何をするSkillか」だけでなく、「どんなリクエストがきたときに使うか」を必ず含めることが重要です。

その他のよくある原因は以下のとおりです。

項目内容
nameフィールドの形式エラー大文字・記号・スペースが含まれていると認識されない
配置場所のミスSKILL.mdが正しいディレクトリ(.claude/skills/またはユーザーホームの~/.claude/skills/)に置かれていない
disable-model-invocationこれをオンにするとAIによる自動起動が無効になり、/skill-nameで明示的に呼ぶ専用になる
スキルが呼ばれない原因例

安全に運用するために気をつけること

Agent Skillsは指示とコードを通じてClaudeに新しい機能を与えます。それだけに、信頼できるソースからのSkillsのみを使用することがAnthropicから強く推奨されています。

参考:https://platform.claude.com/docs/ja/agents-and-tools/agent-skills/overview

悪意のあるSkillsは、ファイル操作・Bashコマンド・コード実行といったツールを有害な方法で呼び出す可能性があります。外部から取得したSkillsを使う場合は、以下の点を必ず確認しましょう。

項目内容
バンドルされている全ファイルを確認するSKILL.md・スクリプト・参照資料のすべてを監査する。予期しないネットワーク呼び出しや不審なファイルアクセスに注意する
外部URLへのアクセスに注意する外部データを取得するSkillsは特に注意。取得したコンテンツに悪意のある指示が含まれる可能性がある
allowed-toolsで使用ツールを制限する「コードを調べてほしいが変更はしてほしくない」という場面では、Read・Grep・GlobのみをallowedにしてBashをブロックできる
スキルを利用する上での注意点

実行を許可するコマンドや実行前後にチェックを挟む処理は、.claude/settings.jsonのpermissionsやhooksで制御できます。チームで使う場合はルールを揃えておくと、事故を防ぎやすくなります。

Skillsはソフトウェアのインストールと同じ感覚で扱うのが適切です。自分で作ったもの、またはAnthropicが公式に提供したもの以外は、徹底的に中身を確認してから使用することが安全運用の基本といえるでしょう。

Claude Codeの活用事例について、詳しく知りたい方を下記の記事を併せてご確認ください。

Claude CodeのAgent Skillsのよくある質問

ここではClaude CodeのAgent Skillsのよくある質問について回答していきます。Agent Skillsの使用を検討している場合には、ぜひ参考にしてみてください。

Agent Skillsは無料で使えますか?

事前構築済みAgent Skills(PowerPoint・Excel・Word・PDF)はClaude APIおよびclaude.aiを通じて利用できます。claude.aiでカスタムSkillsを使うにはコード実行が有効なPro・Max・Team・Enterpriseプランが必要です。

Agent Skillsは商用利用できますか?

Agent SkillsはClaude APIおよびclaude.aiのサービス利用規約の範囲内で商用利用できます。ただし、Agent SkillsはZero Data Retention(ZDR)契約の対象外であるため、スキル定義と実行データはAnthropicの標準データ保持ポリシーに従って保持されます。機密性の高いデータを扱う業務で使用する際は、この点を事前に確認しておくことをおすすめします。

Agent SkillsとCLAUDE.mdは何が違いますか?

CLAUDE.mdはセッション開始時に常に読み込まれるコンテキストファイルで、プロジェクト全体のルールや技術スタックを記載するのに向いています。一方Agent SkillsはSkillがトリガーされたときだけ読み込まれ、特定タスクの専門知識・手順・判断基準を定義するのに適しています。コンテキストを節約しながら、タスクごとに必要な知識だけをClaudeに渡したい場合はAgent Skillsが有効です。

作ったSkillsをチームで共有できますか?

共有方法はプラットフォームによって異なります。Claude APIを使う場合、アップロードしたSkillsはワークスペース全体で共有されます。claude.aiの場合は個人ユーザー単位のみで、各メンバーが個別にアップロードが必要です。Claude CodeではClaude Code Pluginsを介した共有が可能なほか、プロジェクトの.claude/skills/ディレクトリにSkillsを配置してGit管理することでチーム全員が同じSkillsを使えます。

Claude CodeのAgent Skillsでチームの知識を資産に変えよう

Claude CodeのAgent Skillsは、「汎用AIに専門知識を動的に付与する」という新しい設計思想のもとに開発された拡張機能です。段階的な情報開示の仕組みにより、コンテキストを無駄に消費せず、必要なときに必要な知識だけをClaudeに渡せます。

単なる「プロンプトの保存場所」ではなく、繰り返し作業の自動化・ドキュメント品質の標準化・チーム知識の資産化を実現するインフラとして機能します。Skillを整備しておくことで、「テストを書いて」「レビューして」の一言で、チームのルールに沿った出力が返ってくる状態が実現できます。

今後はSkillsのオープンスタンダード化が進み、VS Code・GitHub Copilot・Cursorなど異なるツールを使うメンバー間でも同じSkillsを共有できる環境が広がっていくと考えられます。AI活用が「個人の工夫」から「組織の知識資産」へと進化していく流れは、より加速していくでしょう。

ぜひ皆さんも本記事を参考にClaude CodeのAgent Skillsを使ってみてください!

最後に

いかがだったでしょうか?

Claude CodeのAgent Skillsを活用することで、繰り返し作業の自動化とチーム知識の標準化が大幅に向上します。一方で、descriptionの設計やセキュリティ面の配慮は導入の質を大きく左右するため、まずは小規模なSkillから試してみることも重要な選択肢です。

株式会社WEELは、自社・業務特化の効果が出るAIプロダクト開発が強みです!

開発実績として、

・新規事業室での「リサーチ」「分析」「事業計画検討」を70%自動化するAIエージェント
・社内お問い合わせの1次回答を自動化するRAG型のチャットボット
・過去事例や最新情報を加味して、10秒で記事のたたき台を作成できるAIプロダクト
・お客様からのメール対応の工数を80%削減したAIメール
・サーバーやAI PCを活用したオンプレでの生成AI活用
・生徒の感情や学習状況を踏まえ、勉強をアシストするAIアシスタント

などの開発実績がございます。

生成AIを活用したプロダクト開発の支援内容は、以下のページでも詳しくご覧いただけます。
➡株式会社WEELのサービスを詳しく見る。

まずは、「無料相談」にてご相談を承っておりますので、ご興味がある方はぜひご連絡ください。
➡︎生成AIを使った業務効率化、生成AIツールの開発について相談をしてみる。

生成AIを社内で活用していきたい方へ
メルマガ登録

「生成AIを社内で活用したい」「生成AIの事業をやっていきたい」という方に向けて、通勤時間に読めるメルマガを配信しています。

最新のAI情報を日本最速で受け取りたい方は、以下からご登録ください。

また、弊社紹介資料もご用意しておりますので、併せてご確認ください。

タイトルとURLをコピーしました