Claude Code設定完全ガイド|CLAUDE.mdからMCPまで網羅
Claude Codeは「CLAUDE.md」「settings.json」「hooks」「MCP」「Skills」「プラグイン」など、カスタマイズの手段が数多く存在し、どれが何を担当するのか混乱しがちです。この記事では、それぞれの設定手段が「何を」「どこで」制御するのかを一覧で整理し、各手段の詳しい使い方は専用記事へのリンクで誘導します。まず全体像を掴んでから、必要な設定だけ深掘りしたい方向けのハブとしてお使いください。
Claude Codeの設定手段の全体像
Claude Codeのカスタマイズ手段は、役割で大きく5種類に分けられます。迷ったら、まず「これは指示なのか・動作設定なのか・自動実行なのか」を考えると該当する手段を選びやすくなります。
| 手段 | 何を設定するか | 主なファイル・置き場所 |
|---|---|---|
| CLAUDE.md | Claudeへの指示・前提知識(文脈) | CLAUDE.md / ~/.claude/CLAUDE.md |
| settings.json | 権限・環境変数・モデルなど本体の動作設定 | .claude/settings.json など |
| permissions | ツール実行を確認なしで許可/拒否/確認するルール | settings.json内のpermissionsキー |
| hooks | 特定タイミングでコマンドを確実に自動実行 | settings.json内のhooksキー |
| MCP | 外部ツール・データソースとの連携 | claude mcp addコマンド、.mcp.json |
| サブエージェント・Skills・プラグイン | 機能・役割の追加と配布 | .claude/agents/、.claude/skills/、プラグイン |
CLAUDE.mdは「お願い」であり、Claudeが読み飛ばす可能性を残す一方、hooksは決められたタイミングで必ず実行される仕組みです。「確実に守らせたいなら hooks、文脈として考慮してほしいなら CLAUDE.md」という切り分けが基本になります。それぞれの詳しい使い方や実例は、以降のセクションから各記事へ進んでください。Claude Code自体の基本操作から知りたい方は「Claude Codeの使い方完全ガイド」もあわせてご覧ください。
CLAUDE.md: プロジェクトへの指示を書く
CLAUDE.mdは、Claude Codeがセッション開始時に読み込むMarkdownファイルで、ビルドコマンドやコーディング規約など「毎回説明し直している情報」を書いておく場所です。組織・ユーザー・プロジェクト・ローカルの4階層で読み込まれ、/initコマンドを実行すればコードベースを解析して自動生成もできます。ただしCLAUDE.mdはあくまで文脈情報であり、強制力のある設定ではありません。
書くべき内容、避けるべきアンチパターン、/initや/memoryコマンドの使い方まで詳しく知りたい方は「CLAUDE.mdの書き方」をご覧ください。
settings.json: 動作設定と階層構造
settings.jsonは、権限・環境変数・hooks・使用モデルなど、Claude Code本体の「動作」を制御するJSON形式の設定ファイルです。設定は「組織管理(Managed)」「ユーザー」「プロジェクト」「ローカル」の4階層に分かれ、Managed > コマンドライン起動オプション > Local > Project > Userという優先順位で上書きされます。同じキーを複数箇所で指定した場合にどちらが勝つのかを理解しておくと、意図しない設定の上書きに悩まされずに済みます。
env・model・fallbackModel・outputStyleといった主要キーの書き方やサンプル全文は「settings.json解説」で具体的に解説しています。
権限管理(permissions): 確認プロンプトを制御する
Claude Codeはファイル編集やコマンド実行のたびに確認プロンプトを表示する「階層型の権限システム」を採用しています。事故を防ぐための仕組みですが、頻発すると作業のテンポが落ちるため、settings.json内のpermissionsキーでallow(自動許可)・deny(常に拒否)・ask(実行前に確認)のルールを設定し、確認の頻度をコントロールできます。評価順序はdeny → ask → allowで、パーミッションモード(default/acceptEdits/plan/bypassPermissions)を切り替える方法もあります。
allow/denyパターンの具体的な書き方、/permissionsコマンドでの確認方法、安全に確認を減らすおすすめ設定は「Claude Code権限管理入門」にまとめています。
hooks: 処理を自動実行する
CLAUDE.mdに「編集後は必ずフォーマッタを実行してください」と書いても、Claudeが忘れる可能性は残ります。hooksは、PreToolUse・PostToolUse・SessionStartといったライフサイクル上の特定タイミングで、Claudeの判断を介さずシェルコマンドを確実に実行できる機能です。自動フォーマット、危険なコマンドのブロック、ログ記録などルールを強制したい場面に向いています。
イベント種別の一覧、settings.jsonでの書き方、exit codeやJSON出力による細かい制御方法は「Claude Code hooks入門」で解説しています。
MCP: 外部ツールとの連携
MCP(Model Context Protocol)は、GitHubやファイルシステムなど外部のツール・データソースにClaudeが直接アクセスするためのオープンな標準規格です。claude mcp addコマンドでサーバーを追加し、HTTP・stdioといった接続方式や、local/project/userのスコープを使い分けます。追加後は/mcpコマンドで接続状態やOAuth認証の要否を確認できます。
サーバー追加の具体的なコマンド、スコープの使い分け、GitHubやfilesystemサーバーの実用例は「Claude Code MCP設定方法」で紹介しています。
カスタマイズの発展: サブエージェント・Skills・プラグイン
ここまでの設定手段に慣れてきたら、機能そのものを拡張する仕組みも活用できます。
サブエージェントは、独立したコンテキストウィンドウで動く補助エージェントです。大量のログ調査や複数ファイルのgrepをサブエージェントに任せると、要約だけがメイン会話に返り、文脈がきれいなまま保たれます。組み込みのExploreやgeneral-purposeはそのまま使え、.claude/agents/にMarkdownファイルを置けばカスタム定義も作れます。詳しくは「Claude Codeサブエージェント活用術」をご覧ください。
Skillsは、いつも同じ指示をコピペしている作業手順をSKILL.mdにまとめ、必要なときだけClaudeに読み込ませる仕組みです。依頼内容がdescriptionにマッチすると自動発動し、/スキル名で明示的に呼び出すこともできます。作り方や自動発動の制御方法は「Claude Code Skillsの作り方」で解説しています。
プラグインは、Skills・サブエージェント・hooks・MCPサーバーをひとつにまとめて配布できる仕組みです。/pluginコマンドでマーケットプレイスを追加し、個別のプラグインをインストールするだけで、チームやコミュニティが作った機能を使い始められます。導入手順と自作方法は「Claude Codeプラグイン導入ガイド」にまとめています。
エディタ・Git連携の設定
日常的な開発フローに組み込む設定として、エディタ連携とGit操作も押さえておきたいところです。
VSCode連携では、グラフィカルなチャットパネルを使う「VSCode拡張機能」と、統合ターミナルでclaudeを起動する方法の2通りがあります。差分のサイドバイサイド表示や@によるファイル参照など、エディタ上で完結する機能は「Claude Code VSCode連携の設定方法」で詳しく紹介しています。
Git連携は、特別な設定を追加しなくても「コミットして」「PRを作って」と頼むだけでdiffと履歴からメッセージを生成してくれますが、git pushやgit commitなどの権限ルールを整えておくとより安全に運用できます。実際の依頼文例と権限確認の考え方は「Claude CodeでGit操作を自動化」で解説しています。
よくある質問
まず何から設定すればよいですか?
初めての場合は、/initコマンドでCLAUDE.mdを自動生成するところから始めるのがおすすめです。プロジェクトの前提知識をClaudeに伝えられるようになったら、settings.jsonで権限ルールを整え、繰り返す作業が出てきたらhooksやSkillsを検討する、という順番で無理なく広げられます。
CLAUDE.mdとsettings.jsonはどちらに書けばいいか迷います
コーディング規約やプロジェクトの背景情報のような「文脈」はCLAUDE.mdに、どのコマンドを確認なしで実行してよいかという「制御ロジック」はsettings.jsonのpermissionsに書くのが基本の使い分けです。両者の役割の違いは「CLAUDE.mdの書き方」と「settings.json解説」でそれぞれ詳しく解説しています。
設定ファイルはチームで共有できますか?
できます。.claude/settings.jsonや.claude/agents/、.claude/skills/はリポジトリにコミットすればチーム全員に適用され、個人用の上書きは.claude/settings.local.jsonのように.gitignore対象のファイルに分けるのが基本です。チーム配布をさらに仕組み化したい場合はプラグイン化も検討してください。
まとめ
Claude Codeの設定手段は、指示を書くCLAUDE.md、動作を制御するsettings.json、確認プロンプトを管理する権限管理、処理を自動実行するhooks、外部ツールと連携するMCP、そして機能を拡張するサブエージェント・Skills・プラグインに整理できます。まずはCLAUDE.mdと権限まわりを整え、慣れてきたらhooksやMCP、Skillsへと段階的に手を広げていくのがおすすめです。Claude Code全体の使い方をひと通り知りたい方は「Claude Codeの使い方完全ガイド」もあわせてご覧ください。