0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

Claude Code × Agent Skills × Subagent — 2026年、AIが「もう一人の開発者」になった日

0
Posted at

Claude Code × Agent Skills × Subagent — 2026年、AIが「もう一人の開発者」になった日

はじめに

2026年2月、Anthropicの年間収益が $25億 に達したというニュースが流れた。

半年前の2025年末に $10億 を超えたばかりだったから、実質6ヶ月で倍以上になったことになる。この急成長を牽引したのが、Claude Code という AIコーディングエージェントだ。

WIREDは「OpenAIがClaude Codeを追いかけている」と報じ、New York Timesは「プログラミングという仕事の終わりの始まり」という特集を組んだ。Timeは「世界で最も破壊的な企業」としてAnthropicを表紙に載せた。

ちょっと待って、と思った人も多いかもしれない。「Claude Codeは使ってる。でも、何か自分の使い方が足りてない気がする。」そういう感覚、めちゃくちゃわかる気がする。

この記事では、2026年3月現在のClaude Codeを「本当に使いこなす」ために必要な概念 — Agent SkillsSubagent — を、実際のコード例を交えながら整理してみたい。難しい話ではないのだけれど、案外まとまった日本語資料がなかったので。


第1章: そもそもClaude Codeって何が変わったのか

Claude Codeを最初に触ったとき、「賢いターミナル上のChatGPT」くらいの感覚を持った人は少なくないと思う。コードを書いて、質問して、答えをもらう。確かにそれだけでも便利ではあった。

でも、2025年秋以降のClaude Codeは、もうそういうものではなくなっている。

AIアシスタントからAIエージェントへ。 この変化は質的なもので、量的な賢さアップとは全然違う。

アシスタントは「あなたが指示して、AIが答える」。エージェントは「あなたがゴールを与えて、AIが計画して実行する」。ゴールから手順への展開、複数ステップの実行、エラーからの回復、並列処理 — これらを自律的にやるのがエージェント。

Claude Codeが2025年後半から爆発的に使われ始めた理由は、ここにある。タスクを「丸投げ」できるようになったから。

# 昔の使い方(アシスタント的)
「このコードにテストを追加して」→ 答えをもらってコピペ

# 今の使い方(エージェント的)
「このAPIモジュールのテストカバレッジを80%以上にして、
 プルリクエストも作って、CIが通ることを確認して」→ 全部やってくれる

そのエージェントとしての能力を最大化するための仕組みが、 CLAUDE.md(プロジェクト設定)、 Hooks(自動品質ゲート)、 Agent Skills(再利用可能な手順書)、そして Subagent(並列実行するJr.スタッフ)だ。

2026年3月現在では、これらが組み合わさってひとつのエコシステムを形成している。どれか一つだけ使うより、組み合わせたときに威力が全然違う。


第2章: 3つの概念を整理する — MCP・Agent Skills・Subagent

よく混同される3つの概念がある。整理しておきたい。

MCPとは — 「ツールを繋ぐプラグイン」

MCP(Model Context Protocol)は、AnthropicがオープンソースとしてリリースしたAIとツールをつなぐ標準プロトコル。

人間でいえば「外部ツールを使う権限と手順」みたいなもの。SlackのAPIを叩く、GitHubのPRを作る、DBを読む — こういった外部システムへのアクセスをAIに与えるのがMCP。

2026年のMCPロードマップでは、transport scalabilityとagent communication、enterprise readinessが優先課題として挙げられている。要は「もっと大きなシステムでも使えるようにする」フェーズ。

# MCPのイメージ
Claude → MCP Server → Slack API
                    → GitHub API
                    → PostgreSQL

Agent Skillsとは — 「AIの手順書(SOP)」

Agent Skills(エージェントスキル)は、SKILL.mdというMarkdownファイルで定義する「AIへの専門的な指示書」。

MCPが「外部ツールへのアクセス権」とすれば、Skillsは「その権限をどう使うかの手順書」。人間の会社でいうと、MCPが「システムへのログイン権限」で、Skillsが「業務マニュアル(SOP)」に相当する。

重要なのは、Skillsが 再利用可能で、チームで共有できる 点。一度書いたSKILL.mdをプロジェクトに置けば、チームメンバー全員が同じスキルを使える。さらに、skills.shというオープンソースのコミュニティプラットフォームでもスキルが共有されている。

Subagentとは — 「AIのJr.スタッフ」

Subagentは、メインのClaude Codeセッションから生成される「独立したAIワーカー」。

自分が主任エンジニアで、複数のJr.スタッフに仕事を振るイメージ。テストを書く担当、コードレビューをする担当、ドキュメントを書く担当を並列で動かせる。それぞれが独立したコンテキストウィンドウを持つので、互いに干渉しない。

メインClaude(オーケストレーター)
    ├── Subagent A: テストコード作成
    ├── Subagent B: APIドキュメント生成
    └── Subagent C: コードレビュー実行

3者の使い分け

MCP Agent Skills Subagent
役割 外部ツールへのアクセス 再利用可能な手順書 並列実行するワーカー
定義場所 MCPサーバー設定 SKILL.md ファイル .claude/agents/ または動的生成
使う場面 外部API連携 反復タスクの自動化 並列・分業処理

「MCPが必要か Skillsが必要か」という二択ではなく、MCP + Skills + Subagent を組み合わせる のが2026年の標準スタイルになってきている。


第3章: SKILL.md の基本構造と書き方

最小構成のSKILL.md

SKILL.mdは、普通のMarkdownファイル。YAMLフロントマターでメタ情報を定義し、本文でAIへの指示を書く。

---
name: my-first-skill
description: |
  このSkillの説明。どんなときに使うかを書く。
  Claude Codeはこの説明文を読んで「今このSkillを使うべき」かを判断する。
---

# My First Skill

## やること

1. まずプロジェクトのREADMEを確認する
2. 変更内容を整理する
3. 日本語でサマリーを作る

これだけでひとつのSkillが完成する。ファイルの置き場所は ~/.claude/skills/my-first-skill/SKILL.md(グローバル)か .claude/skills/my-first-skill/SKILL.md(プロジェクトローカル)。

フロントマターの重要フィールド(2026年3月現在)

---
name: skill-name           # スキルの識別子(必須)
description: |             # いつ使うかの説明(必須・重要)
  このフィールドをAIが読んで自動発動するかを判断する
  具体的な「Use when:」「Don't use when:」を書くと精度が上がる
invocation: explicit       # explicit(明示的呼び出し)or auto(自動)
agent: subagent            # このSkillをSubagentとして実行するか
model: claude-opus-4-6     # 特定モデルを指定(省略可)
---

descriptionフィールドがめちゃくちゃ大事。 Claudeはこのdescriptionを読んで「今のタスクにこのSkillを使うべきか」を判断するから、「どんなときに使う」「どんなときは使わない」を具体的に書くほど精度が上がる。

動的コンテキスト挿入

SKILL.mdの中で !コマンド` ` ` ` という構文を使うと、シェルコマンドの実行結果をリアルタイムでコンテキストに注入できる。

## 現在の環境情報

現在のNode.jsバージョン: !`node --version`
現在のGitブランチ: !`git branch --show-current`
最新のコミット: !`git log --oneline -5`

Claude Codeがこのスキルを使う際、!...` ` の中身が実際に実行されて結果が埋め込まれる。これ、かなり便利で「実行時の状態をAIに伝える」のに役立つ。

ファイル構成の実例

複数のSkillを整理するとこういう構成になる。

~/.claude/skills/
  ├── git-pr/
  │   ├── SKILL.md
  │   └── references/
  │       └── pr-template.md
  ├── code-review/
  │   ├── SKILL.md
  │   └── scripts/
  │       └── check-lint.sh
  └── daily-standup/
      └── SKILL.md

支援ファイル(テンプレートやスクリプト)を references/scripts/ に置けるので、Skillが大きくなっても整理しやすい。

よくある間違い

descriptionが曖昧すぎる問題。 「コードを書くときに使う」だけではClaude Codeはいつ使えばいいかわからない。「TypeScriptでAPIエンドポイントを新規追加するときだけ使う」くらい具体的に書く必要がある。

全部に invocation: auto を設定してしまう問題。 自動発動Skillが増えすぎると、意図しないタイミングでSkillが動いて混乱する。最初は explicit(明示的呼び出し)から始めて、慣れてから auto に切り替えるのが安全。


第4章: Subagentでマルチエージェント開発を実現する

Parallel vs Sequential パターン

Subagentの使い方には大きく2つのパターンがある。

Parallelパターン(並列): 互いに依存関係のないタスクを同時実行。

# 例: コードを変更したあとの後処理を並列化
メインClaude: 「この変更に対してテスト・ドキュメント・変更履歴を同時に更新して」
  → Subagent A: テストコード追加(独立して実行)
  → Subagent B: APIドキュメント更新(独立して実行)
  → Subagent C: CHANGELOG更新(独立して実行)

Parallelパターンは時間短縮に効果大。3つのタスクを順番にやると30分かかるところを、並列なら10分で終わる、みたいなイメージ。

Sequentialパターン(直列): 前のSubagentの結果を次のSubagentが使う場合。

# 例: コードレビューパイプライン
メインClaude: 「このPRをレビューして品質を確認して」
  → Subagent A: コードの構造分析(結果をファイルに保存)
  → Subagent B: Aの結果を読んでセキュリティチェック
  → Subagent C: A+Bの結果をまとめてレビューコメント生成

.claude/agents/ で専門エージェントを定義する

Subagentを「使い捨て」ではなく「再利用可能な専門家」として定義できる仕組みが .claude/agents/ ディレクトリ。

<!-- .claude/agents/test-writer.md -->
---
name: test-writer
description: |
  テストコードを書くことに特化した専門エージェント。
  Use when: 新しい関数やクラスが追加されたとき、テストカバレッジが不足しているとき
  Don't use when: 既存テストのリファクタリング → refactor-agent を使う
model: claude-opus-4-6
---

# Test Writer Agent

あなたはテストコード作成の専門家です。

## 基本方針
- Vitestを使ったユニットテストを書く
- 境界値テスト、エラーケースを必ず含める
- テストの説明文は日本語で書く
- カバレッジ80%以上を目標にする

こうしておくと、メインのClaude Codeが「これはtest-writerに任せよう」と自動的に判断してSubagentを召喚してくれる。

実装例: Hooksでサブエージェントの安全性を担保する

Subagentはデフォルトでメインセッションと同じ権限を持つ。つまりファイルを消したり、外部コマンドを実行したりできる。セーフティネットとして Hooks を使う。

// ~/.claude/settings.json
{
  "hooks": {
    "PreToolUse": [
      {
        "matcher": "tool == \"Bash\" && tool_input.command matches \"rm -rf.*\"",
        "hooks": [
          {
            "type": "command",
            "command": "echo 'BLOCKED: rm -rf は禁止されています' >&2 && exit 2"
          }
        ]
      }
    ],
    "SubagentStop": [
      {
        "hooks": [
          {
            "type": "command",
            "command": "echo 'Subagent完了: $(date)' >> ~/.claude/subagent.log"
          }
        ]
      }
    ]
  }
}

PreToolUse はSubagentが危険なコマンドを実行しようとした瞬間に止められる。SubagentStop はSubagentが終了したときにログを取ったり、後処理を走らせたりできる。

2026年3月現在、Claude Code公式ドキュメントでもHooksはSubagentのアクションにも適用されると明記されている。「サブエージェントが安全ゲートをすり抜ける」という問題はこれで対処できる。

失敗談: サブエージェントが暴走したときの話

正直に言うと、最初にSubagentを使い始めたころ、メインのClaude Codeが「この大規模リファクタリングを3つのSubagentに分けてやらせよう」と自律判断して、3つのSubagentが同じファイルに別々の変更を加え始めたことがあった。

結果はカオス。コンフリクトだらけのファイルが大量発生。

教訓として学んだのは2点。

  1. ファイルレベルでSubagentの担当範囲を明示的に分ける。 「SubagentAは src/api/ 以下のみ、SubagentBは src/utils/ 以下のみ」と明示する。
  2. Parallelパターンは「読み取り専用」または「書き込み先が被らない」タスクだけに使う。 同じファイルへの並列書き込みは必ずコンフリクトする。

この失敗、ドキュメントにはあまり書いてないのだけれど、実際にやってみると誰でも一度はハマると思う。


第5章: 実践! 3ステップで始めるAgent Skills導入

Step 1: まず最小SKILL.mdを1つ作る

いきなり複雑なSkillを作ろうとすると詰まる。まず「自分が毎回繰り返してるタスク」を1つ選んで、最小限のSKILL.mdを作る。

例えば「PRを作るときのコミットメッセージ規約に従ったメッセージを生成する」Skillなら:

---
name: git-commit-message
description: |
  Gitコミットメッセージを規約に従って生成する。
  Use when: git commit する直前、コミットメッセージを考えるとき
  Don't use when: コミット以外の操作
invocation: explicit
---

# Git Commit Message Generator

## 規約
- prefix: feat / fix / docs / refactor / test / chore
- 日本語で書く
- 50文字以内の件名 + 詳細説明(任意)
- 例: `feat: ユーザー認証機能を追加`

## 手順
1. git diff --staged で変更内容を確認
2. 変更の種類を判断(feat/fix/docs等)
3. 規約に従ったコミットメッセージを生成
4. 確認を求める

これだけ。~/.claude/skills/git-commit-message/SKILL.md に置いて、Claude Codeのセッション内で「コミットメッセージ作って」と言えば使える。

Step 2: skills.shからコミュニティSkillsをインストール

自分で全部書かなくていい。skills.sh というオープンソースコミュニティにすでに大量のSkillsが公開されている。

# skills.sh CLIをインストール
npm install -g skills-sh

# コミュニティスキルを検索
skills search "code review"

# インストール
skills install anthropic/code-review
skills install anthropic/pr-description
skills install anthropic/test-coverage

Anthropic公式が提供しているSkillsもあるので、まずそれを使ってみてから、カスタマイズしていくのがおすすめ。

Step 3: チームで使うときの設計パターン

個人で使う場合はグローバル設定(~/.claude/skills/)でいいが、チームで使う場合はプロジェクトローカル設定(.claude/skills/)を使って Git で管理する。

your-project/
  .claude/
    ├── agents/          # 専門Subagentの定義
    │   ├── test-writer.md
    │   └── code-reviewer.md
    ├── skills/          # チーム共有Skills
    │   ├── deploy/SKILL.md
    │   └── release-note/SKILL.md
    └── settings.json    # Hooks設定

これをGitにコミットすることで、チームメンバー全員が同じAI体験を得られる。新メンバーがClone → claude 起動 → 即座に全Skillsが使える、という状態になる。

チームで使うときに気をつけるのは、Skillsのdescriptionを丁寧に書くこと。自分には「当然こういうときに使う」とわかっていても、他のメンバーには伝わらないことがある。ドキュメントとしてのSkillsを意識する。


おわりに — 世界はどう見ているか

今週の国際動向を簡単にまとめると。

🇺🇸 アメリカ: Claude Codeは「業界標準」として認識され始めている。WIREDが報じたように、OpenAIも"Claude Codeを追いかける"フェーズに入った。Agent Skillsのオープンソース標準(skills.sh)が業界横断で広がりつつある。

🇨🇳 中国: AlibabaがQwen3.5モデルをClaude Codeで動作させる設定を公式サポート。中国の開発者コミュニティでもAgent Skillsチュートリアルが大人気で、Bilibiliで大量に動画が上がっている。

🌏 グローバル: MCPとAgent Skillsの組み合わせは、もはや一社の製品の話ではなく「AIエージェント開発の共通語」になってきた。RedHatもMCPサーバー向けのAgent Skillsセキュリティガイドを出している。

Agent Skillsが面白いのは、AIの能力をコードで拡張するのではなく、指示書(Markdown)で拡張する という点だと思う。プログラマー以外でも書けて、チームで共有できて、オープンソースで広げられる。

これが「AIが民主化される」ということなのかもしれない、とちょっと思っている。

ひとまず今日から試せることは、「自分が毎回やってるルーティン作業」をSKILL.mdに書き起こしてみること。それだけで、Claude Codeとの付き合い方がだいぶ変わると思う。


参考リンク

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?