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は、必要なときに呼べば動く手順書です。複数の言語やプラットフォームにまたがるプロジェクトほど、この使い分けが効いてきます。