Claude Codeのプロンプト完全ガイド【2026年最新】:CLAUDE.md・システムプロンプト・ベストプラクティスまで徹底解説
この記事を読むと、Claude Codeでのプロンプトの書き方、CLAUDE.mdの活用、システムプロンプトのカスタマイズ方法が一通り理解できます。「なんとなく使っている」から「意図通りに動かせる」レベルに上がりたい方に向けた内容です。
室谷代表取締役「Claude Codeへのプロンプト、どう書けばいいんですか?」って。
テキトー教師.AI認定講師でも実は、Claude Codeのプロンプトって「ChatGPTに送るメッセージ」とは根本的に意味が違うんですよ。
室谷代表取締役大きく分けると「チャットで打ち込むプロンプト」「CLAUDE.md(プロジェクト設定ファイル)」「システムプロンプト」の3層があって・・・
テキトー教師.AI認定講師今日はその構造から丁寧に解説していきましょう。
Claude Codeのプロンプト構造:3つの層を理解する
室谷代表取締役
テキトー教師.AI認定講師- チャットプロンプト: ターミナルやWebで直接打つ一回限りの指示
- CLAUDE.md: プロジェクト(またはユーザー)ごとに永続する設定ファイル
- システムプロンプト: Claude Code本体が内部で持つ基盤プロンプト(カスタマイズ可能)
室谷代表取締役
テキトー教師.AI認定講師
室谷代表取締役つまりどんなに長い会話でもCLAUDE.mdの内容は忘れられない・・・
テキトー教師.AI認定講師
室谷代表取締役もっともプロンプトキャッシュで実コストはかなり軽減されますが・・・
テキトー教師.AI認定講師チャットプロンプトと永続設定の違い
室谷代表取締役
テキトー教師.AI認定講師
室谷代表取締役
テキトー教師.AI認定講師チャットプロンプトの書き方:具体的で効果が出る指示の作り方

室谷代表取締役
テキトー教師.AI認定講師
室谷代表取締役| パターン | NG例 | OK例 |
|---|---|---|
| ファイル・スコープを指定 | 「foo.pyのテストを書いて」 | 「foo.pyのログアウト状態のエッジケースをテストして。モックは使わないで」 |
| 根拠を示す | 「ExecutionFactoryってなんでこんなAPIなの?」 | 「ExecutionFactoryのgit履歴を見て、APIがどう進化したか教えて」 |
| 既存パターンを参照 | 「カレンダーウィジェットを追加して」 | 「HotDogWidget.phpのパターンを参考に、月選択・年の前後移動ができるカレンダーウィジェットを作って」 |
| 症状と期待値を伝える | 「ログインのバグを直して」 | 「セッションタイムアウト後にログインが失敗する。src/auth/のトークンリフレッシュを確認して。失敗するテストを先に書いてから修正して」 |
テキトー教師.AI認定講師
室谷代表取締役
テキトー教師.AI認定講師
室谷代表取締役人間がフィードバックループに入る必要がなくなるんですよね。
テキトー教師.AI認定講師- UIの変更 → 「スクリーンショットを撮って元のデザインと比較して、違いを直して」
- ロジックの実装 → 「実装後にこのコマンドを実行して、全テストが通ることを確認して」
- バグ修正 → 「まず失敗するテストを書いてから修正して、エラーを握りつぶさず根本原因を直して」
室谷代表取締役マルチライン入力とプロンプトエディタの使い方
テキトー教師.AI認定講師
室谷代表取締役--print フラグを使う方法もありますね。
テキトー教師.AI認定講師EDITOR 環境変数を設定しておくとVimやVSCodeで長いプロンプトを書いてから実行できます。
室谷代表取締役# ファイルからプロンプトを読み込む
claude -p "$(cat my-prompt.md)"
# または非対話モードで
claude --print "$(cat my-prompt.md)"
テキトー教師.AI認定講師
室谷代表取締役でもとりあえず試したい段階ではファイルから読み込む形が手軽です。
CLAUDE.mdの書き方:プロジェクトに永続する設定ファイルを作る

室谷代表取締役
テキトー教師.AI認定講師
室谷代表取締役| スコープ | 場所 | 用途 |
|---|---|---|
| 組織全体 | macOS: /Library/Application Support/ClaudeCode/CLAUDE.md | IT/DevOpsが管理するポリシー |
| プロジェクト | ./CLAUDE.md または ./.claude/CLAUDE.md | チームで共有する設定 |
| ユーザー全体 | ~/.claude/CLAUDE.md | 個人の全プロジェクト共通設定 |
| プロジェクト個人 | ./CLAUDE.local.md | .gitignore推奨の個人設定 |
テキトー教師.AI認定講師
室谷代表取締役~/.claude/CLAUDE.md は全プロジェクトに効くので、「自分は常にこのコーディングスタイルで書いてほしい」という個人の好みをここに書くと便利です。MYUUUだと個人レベルで「TypeScript型定義は明示的に書く」とか「コミットメッセージは英語で」とか入れてる人もいます。CLAUDE.mdに書くべきこと・書かないこと
テキトー教師.AI認定講師
室谷代表取締役
テキトー教師.AI認定講師書くべき内容:
- Claudeが自分で推測できないBashコマンド(ビルドコマンド、テスト実行コマンド)
- デフォルトから外れるコードスタイルのルール
- テスト手順と優先するテストランナー
- リポジトリのルール(ブランチ命名規則、PR規約)
- プロジェクト固有のアーキテクチャの決定事項
- 開発環境の特殊設定(必須の環境変数など)
書かないべき内容:
- Claudeがコードを読めばわかること
- 標準的な言語の慣習(Claude自身が知っている)
- 詳細なAPIドキュメント(リンクだけ貼れば十分)
- 頻繁に変わる情報
- 長い解説や説明文
- 「クリーンなコードを書く」などの自明な話
室谷代表取締役
テキトー教師.AI認定講師/initコマンドでCLAUDE.mdを自動生成する
テキトー教師.AI認定講師/init コマンドが便利です。Claude Codeがコードベースを分析して、ビルドシステム・テストフレームワーク・コードパターンを検出して雛形を生成してくれます。
室谷代表取締役/init は既存のCLAUDE.mdがあっても動くんですよ。既存ファイルがあれば上書きせずに「改善案を提案してくれる」モードになる。完全に1から書くよりも、まずこれで基本を生成して手を加えるのが効率的ですね。
テキトー教師.AI認定講師CLAUDE_CODE_NEW_INIT=1 という環境変数を設定すると、インタラクティブな多段階フローが使えます。CLAUDE.md・Skills・Hooksのどれをセットアップするか選んで、コードベース分析→追加質問→提案レビューという順で丁寧に作ってくれる。
室谷代表取締役/init を走らせる、というフローにするといいですよね。@インポート構文でCLAUDE.mdをモジュール化する

テキトー教師.AI認定講師@インポート 構文です。
室谷代表取締役@path/to/file という形式で外部ファイルを参照できます。まとめると、こんな書き方になります。# CLAUDE.md
プロジェクト概要は @README を参照。
# コーディングガイドライン
@docs/coding-guide.md
# テスト規約
@docs/testing.md
テキトー教師.AI認定講師.claude/rules/ ディレクトリを使う方法もあって、トピックごとにファイルを分割できる仕組みです。例えば
frontend.md、backend.md、testing.md という形でテーマ別に管理できる。
室谷代表取締役
テキトー教師.AI認定講師@AGENTS.md をインポートすれば両方のツールが同じルールを読める。実際の業務では複数のAIツールを使うことが多いので、これは地味に便利ですよ。システムプロンプトとカスタマイズ:--append-system-promptの使い方
室谷代表取締役
テキトー教師.AI認定講師「Claude Code's internal system prompt is not published.」と明記されてます。
室谷代表取締役--append-system-prompt フラグを使うと、内部システムプロンプトの末尾に追記できます。# CLIオプションでシステムプロンプトに追記
claude --append-system-prompt "常に日本語で回答してください。コードにはコメントを付けてください。"
テキトー教師.AI認定講師--append-system-prompt の違いで混乱する人が多いんですよ。整理すると、こういう使い分けになります。| 方法 | 特徴 | 向いている用途 |
|---|---|---|
| CLAUDE.md | プロジェクト・ユーザーレベルで管理、Gitで共有可能 | チームのコーディング規約、アーキテクチャ方針 |
| --append-system-prompt | セッション起動時に指定、フラグで渡す | CI/CDや自動化スクリプトでの一時的な指示 |
室谷代表取締役--append-system-prompt で渡す。
テキトー教師.AI認定講師システムプロンプトの流出と「何が書かれているか」
室谷代表取締役
テキトー教師.AI認定講師
室谷代表取締役
テキトー教師.AI認定講師
室谷代表取締役プロンプトキャッシング:コスト削減の重要なメカニズム
室谷代表取締役
テキトー教師.AI認定講師
室谷代表取締役自動キャッシング(Automatic caching):
- リクエストのトップレベルに
cache_controlフィールドを1つ追加するだけ - 会話履歴が増えていくと自動的に最適なキャッシュポイントに適用
- マルチターンの会話に向いている
明示的なキャッシュブレークポイント(Explicit cache breakpoints):
- 個別のコンテンツブロックに直接
cache_controlを配置 - キャッシュする部分を細かく制御したいときに使う
テキトー教師.AI認定講師
室谷代表取締役
テキトー教師.AI認定講師claude code disable prompt caching を調べている人は、APIを直接使っていてキャッシュをオフにしたいケースが多いと思います。パフォーマンスの計測や、特定の条件でキャッシュを使いたくない場合ですね。
室谷代表取締役詳しくはAnthropic公式のプロンプトキャッシングドキュメントに料金計算が書いてあります。
「プロンプトが長すぎる」エラーの対処法
テキトー教師.AI認定講師
室谷代表取締役
テキトー教師.AI認定講師対処法1: /compact コマンドを使う
コンテキストを圧縮して整理します。会話の重要部分は維持しつつ、不要な詳細を省略してくれます。
対処法2: 新しいセッションを開始する
長くなった会話をいったん終了して、必要な情報だけ伝えながら新しいセッションを始める方法です。
対処法3: CLAUDE.mdで不要な内容をそぎ落とす
CLAUDE.mdが肥大化している場合は、必要なルールだけに絞り込む。
室谷代表取締役
テキトー教師.AI認定講師
室谷代表取締役
テキトー教師.AI認定講師再利用可能なプロンプトの管理:Skillsとプロンプトライブラリ
室谷代表取締役
テキトー教師.AI認定講師/review-pr や /deploy-staging のような繰り返しワークフローをパッケージ化できます。
室谷代表取締役.claude/skills/ ディレクトリにMarkdownファイルとして保存します。ファイル名がそのままコマンド名になる形ですね。# .claude/skills/code-review.md
コードレビューを実施してください。以下の観点でチェックしてください:
1. バグやエラーハンドリングの漏れ
2. パフォーマンス上の問題
3. セキュリティ上のリスク
4. コードの可読性と保守性
5. テストカバレッジ
レビュー結果をMarkdown形式で出力してください。
テキトー教師.AI認定講師/code-review と入力するだけで呼び出せる。コミュニティのメンバーさんに教えると「これ便利すぎる!」ってなるやつですよね(笑)
室谷代表取締役コンテキストに常駐させたくない重めの指示はSkillsに切り出すのが賢い設計です。
テキトー教師.AI認定講師.claude/skills/ を管理すれば全員が同じコマンドを使えるようになります。
室谷代表取締役
テキトー教師.AI認定講師プロンプトエンジニアリングの実践:Claude Codeに特化したベストプラクティス
室谷代表取締役
テキトー教師.AI認定講師
室谷代表取締役1. 「探索→計画→実行」を分けて指示する
いきなり「これ全部実装して」という大きな指示より、最初はPlanモードで計画だけ出させるアプローチが効果的です。shift + tab でPlanモードに切り替えると、Claudeは実装せずに計画書を出すだけになる。計画を確認してから実装を承認する流れが安全です。
2. コードベース探索の指示を先に出す
「このバグを直して」と言う前に「まず関連するファイルを探してリストアップして」と言う。先に地図を作ってもらってから実装に入る形ですね。
3. 「なぜ」を添える
指示の意図を伝えると品質が上がります。「テストにモックを使わないで(なぜなら統合テストを重視しているから)」という形ですね。
テキトー教師.AI認定講師
室谷代表取締役
テキトー教師.AI認定講師
室谷代表取締役プロンプトの書き方でよくある失敗パターン
テキトー教師.AI認定講師失敗1: スコープが大きすぎる
「このアプリ全体をリファクタリングして」という指示は、Claude Codeにとっては「どこから手をつけるかわからない」状態になりがちです。「src/api/handlers/userHandler.tsのエラーハンドリングを整理して」のように具体的なスコープを示す方が良い結果が出ます。
失敗2: 制約を後から追加する
最初に「ログイン機能を実装して」と言ってから「あ、このライブラリは使わないで」「ファイル構造はこうして」と後から条件を追加すると、手戻りが発生しやすい。最初から全条件を伝える方が効率的です。
失敗3: 完了定義が曖昧
「いい感じに整理して」「ちゃんと動くようにして」という指示は、Claudeが「完了」の判断をしにくい。「このテストが全部通れば完了」「このコマンドの出力がXXになれば完了」という明確な完了条件を付けることが重要です。
室谷代表取締役
テキトー教師.AI認定講師Skillsを使ったプロンプト自動化:カスタムコマンドの実際
室谷代表取締役
テキトー教師.AI認定講師
室谷代表取締役コードレビュー系:
/security-review: セキュリティの観点でコードを確認する/performance-review: パフォーマンスボトルネックをチェックする/review-pr: PRの差分をレビューして問題点をリストアップする
開発フロー系:
/create-tests: 実装済みコードのテストを自動生成する/update-docs: コードの変更に合わせてドキュメントを更新する/commit: ステージングされた変更の適切なコミットメッセージを提案する
プロジェクト管理系:
/deploy-staging: ステージング環境へのデプロイ手順を実行する/check-deps: 依存パッケージのバージョンを確認して更新が必要なものを提案する
テキトー教師.AI認定講師繰り返し手動でやっていることをSkillsにするのが一番インパクトがある。
室谷代表取締役/review-pr と /create-tests が特に効いていますね。PRレビューにかかる時間が体感で半分以下になりました。
テキトー教師.AI認定講師オートメモリとセッション間の知識継承
室谷代表取締役
テキトー教師.AI認定講師
室谷代表取締役
テキトー教師.AI認定講師
室谷代表取締役/memory コマンドで保存された内容を確認・編集できます。「Claudeが勝手に覚えたこと」を定期的に見直して、間違ったことを覚えていないか確認するのも良いプラクティスですね。
テキトー教師.AI認定講師- CLAUDE.md → チームで共有すべき安定したルール
- オートメモリ → 個人のワークスタイルや、Claudeが発見した知見
という役割分担になりますね。サブエージェントも独自のオートメモリを持てるので、エージェントチームの場合はそれぞれが知見を蓄積していく設計になっています。
室谷代表取締役よくある質問(FAQ)
テキトー教師.AI認定講師Q: CLAUDE.mdとプロンプトの違いは何ですか?
室谷代表取締役Q: システムプロンプトは見られますか?
テキトー教師.AI認定講師--append-system-prompt で追記することは可能です。Q: プロンプトが長すぎてエラーになります
室谷代表取締役/compact コマンドでコンテキストを圧縮するか、新しいセッションを開始してください。CLAUDE.mdが長すぎる場合は、不要な内容を削って200行以内に収めることをおすすめします。Q: チームで同じプロンプトを共有したい
テキトー教師.AI認定講師.claude/skills/ にSkillsファイルを作ってGitで管理するのが一番スムーズです。CLAUDE.mdも .claude/settings.json もGitで共有できます。CLAUDE.local.md だけは個人設定なのでGitignoreに入れておきましょう。Q: プロンプトを改善したいが何から始めれば?
室谷代表取締役まとめ
室谷代表取締役
テキトー教師.AI認定講師
室谷代表取締役
テキトー教師.AI認定講師
室谷代表取締役
テキトー教師.AI認定講師