CLAUDE.mdとSkillsの違い
Claude Codeには性質の異なる二つの仕組みがあります。常に頭に入っている前提知識としてのCLAUDE.mdと、/コマンド名で明示的に起動する作業手順としての「Skills」です。この二つをどう使い分けるかを整理します。
CLAUDE.md = プロジェクトの知識ベース
階層があります。
グローバル(~/.claude/CLAUDE.md)
今持っているもの。日本語応答、ファイル削除禁止などの全プロジェクト共通ルール。
プロジェクト(ルートのCLAUDE.md)
多くの場合まだ存在しません。ここに書くのはそのプロジェクト固有の情報です。
- フォルダ構成(各ディレクトリの役割)
- ビルド・実行方法(
npm run build、make、dotnet runなど、そのプロジェクトのコマンド) - 複数箇所に重複した定義がある場合の対応関係(例:型定義Aを直す時はBも同時に直す、等)
- 既知の制限や未実装の機能
これらはREADME.mdにすでに書かれていることが多いですが、CLAUDE.mdに置くと毎回自動的に読み込まれる点が違います(READMEは聞かれた時しか見られません)。
サブディレクトリ
frontend/CLAUDE.md— フロントエンド特有の注意backend/CLAUDE.md— バックエンド特有の注意
両方触るタスクなら両方読み込まれます。
典型例:「型定義Aを直す時は型定義Bも同時に直す」——同じスキーマや設定を複数箇所に重複して持っているような、コードを読むだけでは気づきにくい制約は、CLAUDE.mdに書くべき典型例です。
CLAUDE.mdは常に頭に入っている「前提知識」、Skillsは/コマンド名で明示的に起動する「作業手順」です。
Skills = 手順パッケージ
基本的には/コマンド名で明示的に呼び出します。ただし、状況に合致すると自動的に使われるSkillsもあります。
使えそうな例:
| /init | 今読んだREADMEを元に、プロジェクト用CLAUDE.mdを自動生成する |
| /run | アプリを実際に起動して動作確認(専用の起動用Skillがなければ、そのプロジェクトの一般的な起動コマンドを使う) |
| /code-review | 変更差分をレビュー |
| /security-review | 認証・認可まわりなど、変更のセキュリティレビュー |
CLAUDE.mdは、プロジェクトを開くたびに黙って隣に座っている前提知識です。Skillsは、必要なときに呼べば動く手順書です。複数の言語やプラットフォームにまたがるプロジェクトほど、この使い分けが効いてきます。