はじめに:なぜ指示がうまく伝わらないのか
Claude Code(クロード コード)を使い始めて「思った通りに動いてくれない」「毎回説明をやり直している」と感じたことはありませんか?
その多くは、AIの性能の問題ではなく、指示の書き方に原因があります。Claude Code は非常に高性能ですが、曖昧な指示には曖昧な結果を返します。逆に言えば、指示の書き方を工夫するだけで、作業効率は劇的に上がります。
この記事では、実際によくある失敗例と改善例を比較しながら、伝わる指示の書き方を10選でご紹介します。
① 曖昧な指示 vs 具体的な指示:基本の比較
まず最も基本的な改善から見ていきましょう。
悪い例
「このコードを直して」
良い例
「booking-system/api/bookings.php の32行目付近で、POST リクエスト時に 500 エラーが返る。原因を調べて修正してください。」
「直して」という指示では、何を、どのように直せばよいか Claude Code には伝わりません。ファイル名・行番号・症状・期待する結果の4点をセットで伝えるのが基本です。
② 作業範囲をファイル名で絞る
プロジェクトが大きくなると、Claude Code がどのファイルを見ればよいか迷うことがあります。
悪い例
「ログイン機能を修正して」
良い例
「admin/js/common.js の api() 関数と、api/auth.php のみを対象に、ログイン失敗時のエラーメッセージを日本語に変更してください。他のファイルは触らないでください。」
対象ファイルを明示することで、不要なファイルへの変更を防ぎ、意図しない副作用を避けられます。「他のファイルは触らないでください」という一文を加えるのも効果的です。
③ 「確認してから進めて」で暴走を防ぐ
Claude Code は優秀なぶん、指示を先読みしてどんどん進めてしまうことがあります。大きな変更を加える前に一度確認を挟みたい場合は、明示的に伝えましょう。
例:「データベースのスキーマを変更する前に、変更内容を日本語で説明してください。内容を確認してから進めてと言うので、それまで実際の変更は行わないでください。」
この書き方は特に本番環境に影響するファイルや、元に戻しにくい変更を行う前に有効です。
④ 出力形式を指定する
「○○を教えて」という質問でも、出力の形式を指定すると格段に使いやすい結果が返ってきます。
悪い例
「このプロジェクトの構成を教えて」
良い例
「このプロジェクトのディレクトリ構成を、Markdownのツリー形式で、2階層まで表示してください。」
「箇条書きで」「表形式で」「コードブロックで」などの形式指定は、出力を使いやすくするシンプルな工夫です。
⑤ 「なぜ」を一緒に伝える
Claude Code は目的を理解すると、より適切な実装を選んでくれます。
悪い例
「ボタンを赤くして」
良い例
「削除ボタンは危険な操作であることをユーザーに直感的に伝えたいので、赤系の色(#e74c3c など)に変更してください。」
目的を伝えることで、色の選択だけでなく、アクセシビリティ(視認性)まで考慮した提案が返ってくることがあります。
⑥ 一度に複数の作業を頼みすぎない
「○○して、△△して、□□も直して」という複合指示は、どれかが漏れたり、優先順位を間違えたりする原因になります。
一つの指示につき一つの作業を基本とし、作業が完了したことを確認してから次に進む習慣をつけましょう。
どうしてもまとめて依頼したい場合は、番号で整理します。
- 1. api/bookings.php のバリデーション追加
- 2. 完了したら admin/bookings.html の表示を確認
- 3. 問題なければ変更内容をまとめて報告
⑦ CLAUDE.md に「常に守ってほしいルール」を書く
CLAUDE.md(クロード エムディー)とは、プロジェクトのルールを Claude Code に事前に伝えておくための設定ファイルです。毎回同じことを指示する必要がなくなります。
特に効果的な記載内容の例を紹介します。
- コーディングスタイル:「コメントは日本語で書く」「インデントはスペース2つ」
- 禁止事項:「機密ファイルは読み込まない・編集しない」
- 確認フロー:「DBに影響する変更は必ず事前に説明してから実行する」
- 技術スタック:「自動化スクリプトは Python で書く」
CLAUDE.md はプロジェクトルートに置くとそのプロジェクト専用の設定になります。ホームディレクトリの ~/.claude/CLAUDE.md に置くと全プロジェクト共通の設定として機能します。
⑧ 失敗例を一緒に伝える
「うまくいかない」という報告だけでなく、試したこと・エラーの内容・期待していた結果をセットで伝えると、原因究明が速くなります。
例:「php -l で構文チェックしたがエラーなし。ブラウザのコンソールには Uncaught TypeError: api is not a function と表示されます。api/config.php と admin/js/common.js を確認して、原因を教えてください。」
⑨ 作業後の確認を依頼する
変更が終わったあと、Claude Code 自身に動作確認を促す言葉を加えると、見落としを減らせます。
例:「修正が終わったら、変更したファイルと変更箇所の一覧を日本語でまとめてください。また、他のファイルへの影響がないか確認してください。」
⑩ よくある失敗パターンと対策まとめ
- 指示が漠然としている:ファイル名・行番号・症状を明示する
- 複数作業を一度に頼む:番号で整理して順番に依頼する
- 毎回同じルールを伝えている:CLAUDE.md に書き込む
- 変更後に想定外の副作用が起きる:「他のファイルは変更しないで」と明示する
- 大きな変更が元に戻せない:「確認してから進めて」を使う
まとめ
Claude Code は「賢いツール」ですが、指示の質によって結果は大きく変わります。今回紹介した10の工夫は、どれも難しいものではありません。
まずは「ファイル名を明示する」「CLAUDE.md を使う」の2点から始めてみてください。それだけで、Claude Code との対話がぐっとスムーズになるはずです。