赤いエラーメッセージが画面を覆うと、心臓がドキッとします。英語がびっしり並び、見慣れない単語ばかりで、何を間違えたのかも教えてくれないように見えます。そこで多くのバイブコーダーはエラーメッセージを読まずに閉じて、AIに「動きません、直して」と伝えます。そしてAIは見当違いの場所を修正し始めます。
ここに落とし穴があります。エラーメッセージは実は犯人が残した自白書です。何が、どこで起きたのかはすでに書かれています。読み方のコツさえ分かれば半分は解決したも同然で、そのままAIに渡せば残り半分も早く進みます。今回はエラーメッセージの読み方、AIへの正しい伝え方、そしてAIが同じバグを直せず堂々巡りするときの脱出法まで扱います。
エラーメッセージの構造:3つだけ探せばいい
どんなエラーでも構造は同じです。3つの部分だけ探せば十分です。
- 何が起きたか(エラー名と説明):通常は1行目です。たとえば
TypeError: Cannot read properties of undefinedのようなものです。直訳すると「空のものから何かを取り出そうとした」という意味です。宅配便が届いていないのに箱を開けようとするような状況です。 - どこで起きたか(ファイルと行番号):
app/page.tsx:42のような表記があれば、app/page.tsxファイルの42行目という意味です。犯行現場です。 - どの経路で起きたか(スタックトレース):その下に並ぶ一覧は、事件に至るまでの呼び出し経路です。怖がる必要はありません。最初の数行が現場に最も近い記録だと覚えておけば十分です。
すべてを理解する必要はありません。「何が起きたか+どこで起きたか」だけ分かれば、エラーを読まない人よりすでに10倍有利です。
エラーが潜む場所は2つ
第1回の区分がここでも登場します。エラーが表示される場所は2つあり、症状によって見る場所が異なります。
- ブラウザーコンソール(フロントエンドの悲鳴):画面が真っ白、ボタンが反応しない、画面の一部が崩れるときです。ブラウザーでF12(または右クリック → 検証)を押し、Consoleタブを開きます。
- サーバーログ(バックエンドの悲鳴):保存、ログイン、決済、AI呼び出しが失敗するときです。開発中は開発プログラムを実行しているターミナルに、デプロイ後は第4回で見たデプロイサービスのダッシュボードにあるLogsメニューに表示されます。
画面には「問題が発生しました」としか出ないのに、サーバーログには本当の原因が書かれていることがよくあります。画面だけを見て「エラーメッセージがありません」と済ませず、両方を開く習慣をつけましょう。
AIへの伝え方:全文を状況と一緒に
エラーを見つけたら、次のようにAIへ伝えます。
- **全文をコピーします。**後半に手がかりがあることが多いので、最初の1行だけ切り取って送ってはいけません。スクリーンショットよりテキストのコピーがおすすめです。
- 状況も一緒に書きます。「会員登録ボタンを押したら」のように何をしていて起きたのか、そして「本来はウェルカムページへ遷移するはず」のように期待する動作も伝えます。
- どこで見つけたかを書きます。「ブラウザーコンソール」なのか「サーバーログ」なのか。この一言だけで、AIが調べる範囲は半分になります。
悪い質問と良い質問の差はこれほど大きいものです。「保存できません、直して」は、地図なしでAIに捜索させるようなものです。「保存ボタンを押しても画面は変わらず、サーバーログにこのエラーが出ています。(エラー全文を貼り付け)本来は一覧に新しい記事が表示されるはずです」なら、犯行現場と自白書を渡せます。
AIが堂々巡りするとき:4つの脱出法
同じバグをAIが3、4回続けて直せないなら、試行回数を増やすより盤面を変えるほうが早いです。
**1. 新しい会話を開きます。**失敗した試みが積み重なった会話では、AIは自分が作った誤った仮説に引きずられ続けます。新しい会話を開き、現在の症状とエラーだけを整理して伝え直すと、最初の試みで解決することも意外に多いです。
**2. ロールバックして、小さくやり直します。**第3回のセーブポイントがここで役立ちます。修正が修正を上書きしてコードがつぎはぎになったなら、最後のコミットに戻り、先ほど失敗した修正をより小さな単位で1つずつ実行させます。
3. まず原因を調査させます。「直して」ではなく、「まだ直さず、このエラーの原因候補を3つ挙げ、それぞれの確認方法を教えて」と指示します。AIは直せと言われると焦って修正し、調査せよと言われると意外なほど冷静に調べます。原因を絞り込んでから修正させると、命中率は大きく上がります。
**4. エラーの原文を検索します。**エラーの1行目をそのまま検索欄に入力します。世界のどこかですでに誰かが経験し、解決している可能性は高いです。検索結果のリンクをAIに渡し、「この解決策が自分の状況に合うか確認して」と頼む組み合わせも強力です。
まとめ
- エラーメッセージは自白書です。「何が起きたか(1行目)+どこで起きたか(ファイル:行番号)」だけ見つけても、半分は解決します。
- エラーはブラウザーコンソール(画面の問題)とサーバーログ(保存・ログイン・決済の問題)の2か所にあります。両方を開いてください。
- AIには、エラー全文+何をしていて起きたか+どこで見つけたかの3つをセットで伝えます。
- AIが堂々巡りしたら、試行回数を増やさず盤面を変えます。新しい会話、ロールバックして小さく、まず調査、原文検索です。
次回は、ミステリーのように見える古典的な問題を扱います。「昨日までは動いていたのに、今日は動きません」。コードに触れていないのに突然動かなくなる理由を、犯人候補ごとに順番に見ていきます。

![[バイブコーダー #5] エラーメッセージの読み方と、AIがバグを直せず堂々巡りするときの脱出法のカバー画像](/assets/images/posts/7130fab4-6bf4-482f-baa3-e0f1e30625a6/error-message-confession-1.jpg)