スキルは、プロジェクト固有の「お作法」をClaudeに叩き込むためのものです。
例えば、プロジェクトで「Conventional Commits」を強制したい場合、以下のようなファイルを作成します。
ファイルパス: .claude/skills/git/commit-rule.md
# Git Commit Rule
このプロジェクトでは、以下の形式でコミットメッセージを作成してください。
## 形式
<type>(<scope>): <description>
## Typeの一覧
- feat: 新機能
- fix: バグ修正
- docs: ドキュメントのみの変更
- style: コードの意味に影響を与えない変更(ホワイトスペース、整形など)
## ルール
- 日本語で記述すること。
- 1行目は50文字以内。
活用シーン:
あなたが「今の変更をコミットして」と頼んだ際、Claudeはこのスキルを自動的に読み込み、feat(auth): ログイン機能の実装 のような適切なメッセージを生成するようになります。
サブエージェントは、メインの会話の流れを止めずに「裏方」で重い作業をさせる時に使います。
大規模なリファクタリングをした後、その内容を技術ドキュメントにまとめさせたい場合です。
ファイルパス: .claude/agents/writer.md
# Technical Writer Agent
あなたは熟練のテクニカルライターです。
## ミッション
コードの変更点を解析し、ユーザー向けのマニュアル(README.mdやdocs/内)を更新してください。
## 動作ルール
- コードの動作原理を正確に把握すること。
- 既存のドキュメントのトーン&マナーに合わせること。
- 変更がない部分は書き換えないこと。
活用シーン:
メインのClaudeにこう指示します。
「
writerエージェントを起動して、今回のNext.jsのバージョンアップに伴う変更点をdocs/migration-guide.mdにまとめておいて。その間に僕は別のバグ修正を続けるから。」
これにより、Claude(メイン)と話しながら、裏でエージェントがファイルを読み込み、ドキュメントを書き上げます。
プロジェクト内では以下のように配置するのが一般的です。
my-project/
├── .claude/
│ ├── skills/
│ │ ├── typescript/
│ │ │ └── naming-convention.md # 命名規則の指示
│ │ └── testing/
│ │ └── playwright-style.md # テストコードの書き方
│ └── agents/
│ ├── refactor-bot.md # コード改善専門
│ └── security-reviewer.md # 脆弱性診断専門
├── src/
└── CLAUDE.md # プロジェクト全体の基本方針
迷った時は、以下のチェックリストを参考にしてください。
Skills を使うべきケース(受動的・ルール)
「〜する時は、必ずこの手順を守ってほしい」というルールがある。
ライブラリの特定の書き方(例:Tailwind CSS v4の構文)を覚えさせたい。
特定のファイル構造のテンプレートがある。
Subagents を使うべきケース(能動的・タスク)
「全ファイルを横断して、未使用の変数を見つけて削除して」という重い作業。
「この複雑なロジックを理解して、シーケンス図を書いて」という深い思考が必要な作業。
メインのコンテキスト(会話履歴)が長くなりすぎて、AIが混乱しそうな時。