Claude Codeへの頼み方|同じことを頼んでも結果が変わる理由
指示の書き方ひとつで、返ってくるものは大きく変わります。難しいテクニックではなく、知っているかどうかだけの差を3つの原則にまとめました。
「ボタンを青くして」と頼むと、青いボタンが出てきます。それだけです。同じことを頼んでいるつもりでも、伝え方ひとつで返ってくるものは大きく変わります。難しいテクニックではなく、知っているかどうかだけの差を、3つの原則にまとめました。
まず結論
大事なのは3つだけです。
- 1
何のためにやりたいのかを先に伝える
手段だけ伝えると、そのとおりのものしか出てきません。
- 2
一度に頼む量を「1画面」「1機能」にする
大きすぎても小さすぎても、精度が落ちます。
- 3
うまくいかないときは、状況を3点セットで伝える
「何をした」「何が起きた」「何を期待していた」です。
原則1:目的を先に伝える
いちばん効果が大きいのがこれです。
悪い例
ボタンを青くして
良い例
申し込みボタンが目立っていなくて、押してもらえていないみたい。押してもらいやすくしたい。色を変えるのがいいと思うけど、他にいい方法があればそれでもいい。
前者では、青いボタンが出てくるだけです。後者だと、そもそも色以外の解決策があれば提案してもらえます。 「位置を変えたほうが効果的です」という答えが返ってくることもあります。
AIは、手段を実行するのは得意ですが、目的を推測するのは苦手です。 目的を伝えると、手段の選択まで任せられるようになります。
原則2:頼む量をそろえる
一度に頼む量が、多すぎても少なすぎても精度は落ちます。
大きすぎる例
ネットショップを作って
決めるべきことが多すぎて、望んだものになりません。商品の登録方法は? 支払いは? 在庫の管理は? 全部を勝手に決められてしまいます。
小さすぎる例
この行の記号を1つ消して
これは自分でやったほうが速い作業です。
ちょうどいい量
商品の一覧ページを作って。商品名と値段と写真を並べて、クリックしたら詳しいページに移るようにして。
「1つの画面」「1つの機能」くらいが最も安定します。 迷ったら、この単位に分けてください。
原則3:うまくいかないときの伝え方
実は、ここがいちばん差が出る部分です。
悪い例
動かない
情報がなさすぎて、AIは推測で動くしかありません。
良い例
送信ボタンを押すと、画面が真っ白になる。画面に
Cannot read properties of undefinedと表示されている。本当は、送信したあとに「完了しました」の画面に移ってほしい。
伝えるべきは3つです。
- 何をしたか(送信ボタンを押した)
- 何が起きたか(画面が真っ白、この文字が出た)
- 何を期待していたか(完了画面に移ってほしい)
エラーの文章は、そのままコピーして貼ってください。 要約すると、原因を特定するのに必要な情報が消えてしまいます。英語でも構いません。読めなくても、そのまま貼れば伝わります。
同じところを直し続けてしまうとき
作っていると、何度直しても直らないという状況に必ず遭遇します。
似たような修正案が繰り返し出てくるときは、作り方の方向そのものが間違っている可能性が高いです。
そういうときは、こう聞いてみてください。
さっきから同じところを直しているけど、解決していない。そもそもこの作り方が適切なのか、別のやり方があるなら教えてほしい。
これで方針の変更を提案してくれることがあります。それでも堂々巡りが続く場合は、いったん元に戻して作り直すほうが速いことが多いです。
3回直して直らなかったら、方向を疑う。 これを目安にしてください。
場面別・そのまま使える指示
原則を挙げましたが、実際に使う形にしておきます。コピーして使ってください。
新しく作り始めるとき
◯◯を作りたいです。プログラミングは初めてなので、進め方も教えてください。
作りたいもの:
・(機能を箇条書きで)
条件:
・まずは自分のパソコンの中で動く状態にしてください
・無料で始められる範囲でお願いします
機能を足すとき
(目的)したいです。
そのために(やりたいこと)を追加してほしいのですが、
もっといい方法があればそちらでも構いません。
目的を先に書くのがコツです。 手段だけ伝えると、そのとおりのものしか出てきません。
見た目を変えるとき
スマホから使う人が多いので、スマホで見やすくしてください。
・文字は大きめに
・ボタンは片手で押せる位置に
・色は落ち着いた雰囲気で
安全面を確認するとき
公開する前に、次を確認して、問題があれば直してください。
直す前に、まず現状を説明してください。
1. 他人のデータが見えてしまわないか(URLの番号を変えた場合も含む)
2. 管理画面にURL直打ちで入れてしまわないか
3. 鍵にあたる情報がブラウザから見えていないか
4. 変な値を入力されてもサーバー側で止められるか
データの保存・公開をするとき
データを保存できるようにして、インターネットに公開したいです。
無料で始められる方法で、手順を1つずつ教えてください。
パソコンの操作に慣れていないので、詳しくお願いします。
「無料で始められる方法で」を入れてください。 これがないと、有料前提の構成を提案されることがあります。保存は Supabase、公開は Vercel が選ばれることが多く、どちらも無料の範囲があります。
引き継ぐとき
これをエンジニアに引き継ぎます。引き継ぎ資料として次をまとめてください。
1. どういう画面と機能があるか
2. データをどこに、どういう形で保存しているか
3. 本番で使うには足りていない部分
4. 作り直したほうがよい箇所と、その理由
正直に書いてください。よく見せる必要はありません。
やってはいけないこと
動いているものを、まとめて書き換えさせる
「全体的に良くして」のように範囲を決めずに頼むと、動いていた部分まで壊れることがあります。
直したい場所を、はっきり伝えてください。
確認せずに次を頼む
1つ頼んだら、動くかどうか確かめてから次に進んでください。まとめて頼むと、どこで壊れたのかわからなくなります。
エラーを無視して進む
「今は動いているから」と警告を放置すると、後でまとめて問題が出てきます。
安全に関わる頼み方
これは覚えておくと役に立ちます。AIは頼まれていないことを考えないので、安全に関わることは自分から伝える必要があります。
ログインした本人のデータしか見えないようにして。画面で隠すだけでなく、データを保存している側でも制限してほしい。
このひと言があるかないかで、結果が大きく変わります。
なぜこれが重要なのかはAIでアプリができた!でも、そのまま公開して大丈夫?で説明しています。
よくある質問
Q. 日本語と英語、どちらがいいですか? A. 日本語で問題ありません。
Q. 長く書いたほうがいいですか? A. 長さより具体性です。短くても、目的と状況が明確なら十分伝わります。
Q. 専門用語を使わないと伝わりませんか? A. 使わなくて大丈夫です。「押したら次の画面に行くようにして」で通じます。
Q. 前に頼んだことを覚えていますか? A. 同じ会話の中なら覚えています。ただし長くなると曖昧になるので、大事なことは繰り返し伝えてください。
まとめ
- 目的を先に伝えると、手段の選択まで任せられる
- 頼む量は**「1画面」「1機能」**が最も安定する
- うまくいかないときは**「何をした / 何が起きた / 何を期待した」**の3点セット
- エラーの文章は要約せずそのまま貼る
- 3回直して直らなければ、作り方の方向を疑う
- 安全に関わることは、自分から明示的に頼む