「毎回同じ指示をAIに打ち込んでいる」「チームのコーディング規約をAIが守ってくれない」「プロジェクトを変えるたびにAIへの説明がリセットされる」
そんな悩みを解決する仕組みが、SKILLS機能です。

SKILLSとは何か?

SKILLSは、元々Claude Codeの拡張モジュールとして生まれた仕組みですが、現在は各社のAIエージェント(Cursor、Windsurf、Antigravityなど)でも利用可能になっています。

一言で表すなら、**「プロジェクトのノウハウをAIに教えるための仕組み」**です。

通常、AIへの指示は「その会話の中だけ」で完結します。次のセッションを開いた瞬間、AIはまっさらな状態に戻ります。しかしSKILLSを使うと、プロジェクトに必要な知識・ルール・設計方針をファイルとして保存し、AIが自動的に読み込むようになります。

「一時的な指示」と「SKILLSへの定義」の決定的な違い

毎回チャットで指示する SKILLSに書く 持続性 セッション終了でリセット プロジェクトと共に蓄積 チーム共有 個人の頭の中だけ Gitで全員が同じ定義を使う 精度 指示の忘れ・ブレが起きる 常に一貫したルールが適用される 育ち方 その場限り プロジェクトが成熟するほど賢くなる

SKILLSの最大の特徴は、「一時的な指示ではなく、プロジェクトで育てていくもの」という点です。コードベースと同様に、SKILLSファイルもバージョン管理・レビュー・改善を重ねることができます。

SKILLSに書く内容の具体例

SKILLSファイルは .claude/skills/ ディレクトリの下にMarkdownファイルとして配置します。何を書けばよいか、代表的なカテゴリと具体例を紹介します。
1. アーキテクチャ設計
# architecture.md

## レイヤー構成
- presentation層: React コンポーネント
- application層: カスタムフック・usecases
- domain層: ビジネスロジック
- infrastructure層: API通信・ストレージ

## 原則
- 上位レイヤーは下位レイヤーに依存してよい
- 下位レイヤーは上位レイヤーを知ってはいけない
2. 命名規則
# naming.md

## 変数・関数
- camelCase(例: getUserById)
- 動詞+名詞の組み合わせ
- bool値はis/has/canで始める(例: isLoading, hasError)

## ファイル名
- コンポーネント: PascalCase(例: UserCard.tsx)
- ユーティリティ: camelCase(例: formatDate.ts)
- 定数ファイル: UPPER_SNAKE_CASE(例: API_ENDPOINTS.ts)
3. ブランチ戦略
# branch-strategy.md

## ブランチ命名
- feature/[issue番号]-[簡潔な説明]
- fix/[issue番号]-[バグ内容]
- chore/[作業内容]

## コミットメッセージ
- feat: 新機能追加
- fix: バグ修正
- refactor: リファクタリング
- docs: ドキュメント変更
4. コードレビュー観点
# code-review.md

## 必ずチェックする項目
- エラーハンドリングが適切か
- 型定義が正確か
- テストが書かれているか
- セキュリティ上の懸念はないか(SQLインジェクション、XSSなど)
- パフォーマンスのボトルネックになりうる箇所はないか
5. テスト設計
# testing.md

## テスト方針
- 単体テスト: Vitest / 各関数・コンポーネント単位
- 結合テスト: Testing Library / ユーザー操作シナリオ
- E2Eテスト: Playwright / 主要フロー

## カバレッジ目標
- ビジネスロジック: 90%以上
- UIコンポーネント: 70%以上

なぜSKILLSが強力なのか

AIに「いつものルールで書いて」と言っても、AIはそのルールを知りません。でもSKILLSがあれば、上記のような定義がAIのコンテキストに自動的に読み込まれ、プロジェクトの方針に沿ったコードを最初から生成してくれます。

しかも重要なのは、SKILLSファイルはチームの共有資産になるという点です。新しいメンバーが入ってきたとき、そのメンバーが使うAIも同じルールで動きます。オンボーディングのコストが大幅に下がります。

まず始めるなら:汎用テンプレートの活用

SKILLSファイルをゼロから書くのは大変です。まずは既存のテンプレートを使ってカスタマイズするのが最短ルートです。

Webアプリ開発用の汎用テンプレートがGitHubで公開されています。このリポジトリには、プロジェクトですぐに使えるSKILLSファイルの雛形が揃っています。
▶ 汎用テンプレートはこちら https://github.com/atomic-kanta-sasaki/claude-code-general-skills/tree/main/.claude/skills

まとめ:SKILLSを「プロジェクトの辞書」として育てる

skillsは元々Claudeの拡張モジュールですが、今は各社のAIエージェントでも利用可能です。

ポイントは「プロジェクトの核となる共通定義を書く」こと。一時的な指示ではなく、プロジェクトで育てていくものです。

具体例として、アーキテクチャ設計、命名規則、ブランチ戦略、コードレビュー観点、テスト設計などがあります。

SKILLSの活用を一言でまとめると、「AIに教えた内容を捨てずに資産として積み上げる」ということです。

・今日書いた命名規則は、明日のAIも守る
・今週追加したアーキテクチャ定義は、来月の新メンバーのAIも読む
・プロジェクトが育つほど、AIはそのプロジェクトをより深く理解するようになる

「AIを使い捨ての道具」ではなく、「育てるパートナー」として扱う。それがSKILLS機能の本質です。