コードが読めなくてもAI生成コードを確認する方法:2026年、非プログラマー向けの7つのチェック項目
MarkdownAIがコードを書いたけれど、読み方がわからない?公開前に壊れたコードやセキュリティ上の穴を見つけるための、7つのチェック項目とプロンプトをまとめたすぐ使えるチェックリストです。
記事の全文を読む
重要なポイント
AIは数分でコードを書いてくれますが、それを確認するのは今やあなたの仕事です。以下の7つのチェック項目で、プロジェクトを誰かに見せる前に、動かないコードやセキュリティ上の穴、AIのでっち上げを見つけられます。コードを読む必要はありません。
AIが一晩でウェブサイトやボットを組み立ててくれました。すべてが開き、ボタンも動き、問題なく動いているように見えます。プロジェクトを人に見せた翌日、支払いフォームで課金はされるのに注文が届かないとわかったり、顧客の電話番号が入ったデータベースがインターネット全体に公開されていたとわかったりします。
私も以前は、最初のプロジェクトをそんなふうに公開していました。動いているように見えたものが、実際のユーザーを相手にすると問題を起こすのです。今は人に見せる前に、毎回同じチェックリストでプロジェクトを確認します。その間、コードを一行も読みません。私はそのためにここに来たわけではありませんし、あなたもそうではないでしょう。
これは取り越し苦労ではありません。AnthropicはClaude Codeの40万件のセッションを分析しました。7か月の間に、壊れたコードの修正に費やされた作業の割合は33%から19%に下がりました。減りはしましたが、なくなったわけではありません。5回に1回のセッションは、今も「AIが壊したものを直す」作業です。
コードを書くこと自体は、もはやボトルネックではありません。今重要なのは、タスクをどれだけ理解しているか、そして結果をどれだけ適切に確認できるかです。
ツールの設定に関する追加資料はAilootのドキュメントでご覧いただけます。
動いているのに、なぜAI生成コードを確認するのか?
重要なポイント
「動く」ことと「正しく動く」ことは別です。AIはコードを実行できる状態にして、完成したように見せることを優先します。安全で、費用がかからず、あなたの意図どおりに動くかどうかは別問題です。確認することで、実際のユーザーを相手にしたときに起きる思わぬ問題から身を守れます。
AIは、ひと目見ただけなら問題のなさそうなコードを書きます。実行できて画面も表示され、デモも説得力があります。しかし、公開してみても、お金の計算が正しいか、データベースが外部に公開されていないか、100人目のユーザーが来たときにすべてがクラッシュしないかはわかりません。
数字もそれを裏付けています。FrontierCodeベンチマークは、2026年6月に、AI生成コードが修正なしで実際の作業にどれだけ使えるかを調べました。最も難しいタスクでさえ、最高性能のモデルでその割合は約13%でした。つまり、難しいタスクでは、AI生成コードの大半は信頼して使えるようになるまで手作業での修正が必要です。
よい知らせは、誰でも確認できることです。同じ40万件のセッションを分析してAnthropicが導き出した結論を見てみましょう。
成功を左右するのは、プログラミングができるかどうかではなく、解決しようとしているタスクをどれだけ理解しているかです。
あなたが誰かに頼んだプログラマーより優れている点は、自分のタスクを理解していることです。確認も理解に関わることなので、コードを読む必要はありません。以下のチェック項目は、面倒な手間をかけずに自分でできるものばかりです。
AI生成コードでは、実際にどんな問題が起こりうる?
重要なポイント
問題は5種類あります。コードが動かない、動くが意図どおりではない、セキュリティ上の穴がある、費用がかかる・遅い、AIが何かをでっち上げる、の5つです。以下の7つのチェック項目は、それぞれ一つ以上のリスクに対処します。確認を始める前にこの5種類を知っておくと、各手順で何を探すべきかがわかります。
確認する前に、何を探せばよいかを知っておくと役立ちます。AI生成コードによくある問題は5種類あり、コードを読まなくても、プロジェクトの動作を見るだけでどれも見つけられます。
| 問題 | 目に見える症状 |
|---|---|
| 動かない | ボタンをクリックできない、ページが真っ白、「error 500」と表示される |
| 正しく動かない | 支払いは完了するのに注文が作成されない、メールが別の人に届く |
| セキュリティ上の穴 | 秘密鍵がコード内に見える、データベースが公開されている、入力によってフォームを壊せる |
| 費用がかかる、または遅い | サイトの読み込みに10秒かかる、月末にAI APIの請求が届く |
| AIがでっち上げた | 存在しないツールを参照している、実データの代わりにテストデータを使っている |
ここから、順番に7つのチェック項目を見ていきます。最初の項目は「動かない」「正しく動かない」問題を見つけ、中盤ではセキュリティ上の穴やでっち上げを確認し、最後の項目では公開前の安全策を扱います。ひとつずつ順番に進めましょう。それぞれの項目は、前の確認が済んでいることを前提にしています。
チェック1:AIにコードの内容を平易な言葉で説明させる
重要なポイント
私が最初にするのは、AIにコード抜きで、普通の言葉を使って何をしたのかを要約させることです。要約が頼んだ内容と合っていなければ、動いたとしてもコードはすでに間違っています。この方法で、AIがタスクをあなたと同じように理解していたかを確認できます。
あなたは言葉でタスクを説明し、AIはそれをコードに変換しました。この2つの段階の間で意味が失われることがあります。AIが違う意味に理解したり、あなたに代わって内容を補ったり、手を抜いたりした可能性があります。コードを読まなくても、何をしたのか平易な言葉で説明するよう頼めば、食い違いに気づけます。
プロンプト:AIに何をしたのか説明させる
たった今行ったことを、コードを使わず平易な言葉で、正確に説明してください。
このコードが解決するタスク
ユーザーがボタンをクリックするかフォームを送信したときに起きること
データが保存される場所と、アクセスできる人
どのような状況で何が壊れる可能性があるか
プログラミングをしたことのない人に説明するように書いてください。正しいかどうか確信が持てない部分があれば、はっきりそう伝えてください。
答えを読んで、自分が想定していた内容と比べてください。一致していれば次へ進みます。AIが「ごまかしたり」、自分の説明に混乱したり、頼んだことと違う内容を説明したりするなら、何を作ったのかを完全には理解していないということです。言葉をうのみにせず、内容を明確にして修正を頼みましょう。
ちなみに、AIが頼んだとおりにしないことがよくあるなら、原因はモデル自体ではなく、タスクの伝え方にあることが多いです。Claudeが頼んだとおりに動かない理由については、別の記事で解説しています。
AIの出力を確認することは、コンテキストエンジニアリングの一部です。AIに入力として何を与えるかと、出力された結果をどう評価するかの両方をあなたが管理します。そのためのツールキットには、AIクローン、セカンドブレイン、コンテキストエンジニアリングが含まれます。そうすればClaudeは「幻覚を起こすアシスタント」ではなく、プロジェクトを安心して任せられるツールになります。
チェック2:実際のユーザーのようにシナリオを試す
重要なポイント
プロジェクトを開き、ユーザーがするように登録、支払い、フォーム送信を行います。それから、意味のない入力をしたり、2回クリックしたり、入力欄を空のままにしたりして、意図的に問題を起こしてみます。コードを一行も見なくても、問題の半分はここで見つかります。支払いは特に注意して個別に確認しましょう。課金されたとき、注文も作成されましたか?
AIのデモでは、正しいデータを入力して一度クリックすれば、すべてうまくいくという理想的な流れになります。実際のユーザーはそのように使うとは限りません。間違えたり、違うボタンをクリックしたり、電話番号欄に絵文字を入力したりします。あなたの仕事は、ユーザーの立場でプロジェクトを操作することです。
主なシナリオを最初から最後まで実行する
プロジェクトの目的となる操作を行います。登録、注文、問い合わせの送信などを、途中で止めずに最後まで進めます。
支払いを個別に、実際に確認する
プロジェクトでお金を受け取るなら、テストモードで自分が最低金額の支払いを行います。注文が作成され、ステータスが変わり、自分と顧客にメールが届くことを確認します。「支払いは通った」のに注文が作成されないのは、気づかれにくい典型的な失敗です。
意図的に問題を起こしてみる
入力欄を空のままにします。数字が必要な欄に文字を入れます。「送信」を続けて2回クリックします。間違った形式のファイルをアップロードします。よいプロジェクトなら「その操作はできません」と丁寧に伝えます。悪いプロジェクトはクラッシュするか、データを黙って捨ててしまいます。
スマートフォンで開く
利用者の半数はスマートフォンからアクセスします。レイアウトが崩れていないことと、同じボタンがそこで動くことを確認してください。
見つけた問題をすべて一つのリストにまとめてAIに伝えます。「この手順で見つかった問題です。原因を説明して修正してください。」一つずつ対処するのではなく、リストをまとめて渡します。そうすればAIが全体像を把握でき、ひとつ直すときに別の部分を壊す可能性も下がります。
チェック3:AIにセキュリティを確認させるためのプロンプト
重要なポイント
セキュリティ上の問題は、プログラマーでない人には目で見えませんが、被害は最も深刻です。鍵の流出、データベースの公開、侵入を許すフォームなどがその例です。自分で探す必要はありません。AIに監査させ、見つかった問題を一つずつ平易な言葉で説明させましょう。以下のすぐ使えるプロンプトで、よくある5つの穴を確認できます。
壊れたボタンはすぐにわかります。セキュリティ上の穴はそうではありません。誰かに悪用されるまで、問題がないかのようにプロジェクトは動き続けます。バイブコーディングのプロジェクトでよくある問題は、秘密鍵をコードに直接書くこと、データベースをインターネットに公開すること、悪意のある入力を送れるフォームです。直接尋ねれば、AIはこうした問題を見つけられます。
プロンプト:プロジェクトのセキュリティ上の穴を確認する
このプロジェクトのセキュリティ上の問題を監査し、専門用語を使わず平易な言葉で、見つかった問題を一つずつ説明してください。次の項目を確認してください。
秘密鍵、パスワード、トークンがコードに直接書かれていないか確認してください。秘密情報はサーバー上だけで使い、`.env`などのローカル設定をGitから除外します。ただし`.env`と`.gitignore`は、フロントエンド・公開用の変数がブラウザービルドへ入るのを防ぎません。実際に渡されるJavaScript、ソースマップ、HTML、通信応答を調べ、秘密鍵がないことを確認してください。
データベースがインターネットに公開されていないか、誰がアクセスできるか確認してください。
入力によってフォームを壊せないか確認してください。データベースクエリへのインジェクションや、テキスト欄へのコードの追加などがないか調べてください。
ユーザーが悪意のあるデータを送信したら何が起きますか?
内部ページや管理パネルがパスワードなしで公開されていないか確認してください。
各項目について、問題の有無、リスクの具体例、修正方法を説明してください。最も危険な問題から始めてください。
また、プロジェクトが外部から受け取ったものを何でも無条件に実行しないかも確認してください。これは間接プロンプトインジェクションと呼ばれます。メール、コメント、他人のファイルなどに隠された命令を、AIエージェントがタスクだと勘違いして実行してしまう状態です。プロジェクトが外部データを読み取って処理するなら、そのデータに隠された指示が含まれていた場合に何が起きるかAIに尋ねてください。
これは奥の深いテーマで、プロンプト一つですべて確認することはできません。プロジェクトが金銭や顧客の個人情報を扱うなら、バイブコーディングのセキュリティについての別のガイドを読んでください。
チェック4:AIはライブラリやデータをでっち上げていないか?
重要なポイント
AIは、ときどき存在しないツールを参照したり、実データの代わりにテストデータを残したりします。もっともらしく見えても、後で問題になります。AIに直接質問してプロジェクトを一度動かせば、すぐに見つけられます。同じ質問で、攻撃者がでっち上げたライブラリ名を使って偽装する他人のコードからも身を守れます。
AIは、存在しないものを自信たっぷりに書くことがあります。実在しないのに、ありそうな名前のライブラリを追加することがあります。また、実際のデータの代わりにテスト用の仮データをプロジェクトに残すこともあります。「Example」という商品、example@example.comというメールアドレス、実際の内容の代わりの埋め草などです。デモでは見逃しやすくても、実際のユーザーにとっては恥ずかしいことや、動作不良の原因になります。
2つの手順で見つけられます。まず、直接尋ねます。
プロンプト:でっち上げがないか自分で確認させる
プロジェクト全体を確認して、次の点に正直に答えてください。
追加した外部ツールやライブラリはすべて実在し、正しくインストールできますか?何かをでっち上げていませんか?
実データの代わりに、テスト用の仮データ、サンプル、埋め草が残っていませんか?
プロジェクト内のリンク、住所、連絡先は、仮のものではなくすべて実在しますか?
見つかったものを一覧にし、何に置き換えるべきか提案してください。
次に、プロジェクトを実行して中を見てみます。でっち上げたライブラリがあると、ほとんどの場合、起動時にエラーが発生します。仮データも簡単に見つけられます。ページに「Product 1」と表示されているなら、まだ置き換えていません。
でっち上げたライブラリには別の危険もあります。攻撃者は、AIが思いつきそうな名前のツールを意図的に登録します。それをインストールすると、他人のコードがプロジェクトに入り込みます。だからこそ「このライブラリは本当に実在するのか?」という問いを真剣に考える必要があります。これはプロジェクトのセキュリティに直結します。
チェック5:別のモデルに最初のモデルを確認させる
重要なポイント
コードを書いたAIは、確認役としては頼りになりません。自分の意見に同意しがちだからです。別のモデルにプロジェクトをレビューさせましょう。少なくとも新しいセッションを使えば、最初のモデルが見落とした点を新鮮な視点で見つけられます。手術の前に別の医師へセカンドオピニオンを求めるのと同じです。
AIには厄介な癖があります。相手に同意するのです。「ここは全部大丈夫?」と尋ねると、期待されている答えに合わせて、大丈夫だと確認することがあります。これはAIの追従性と呼ばれ、別の記事で解説しました。このような対話相手は、自分の仕事に甘くなります。
解決策は簡単です。別の意見を聞きましょう。新しいセッションを開くか別のモデルを使って、チェック3と同じプロンプトでプロジェクトを確認させ、次の一文を加えます。「別のAIがこのコードを書きました。弱点を見つけてください。」新しいモデルは前の会話に縛られないので、問題を指摘しやすくなります。
新しいセッションを開くか、別のモデルを使う
別のモデルを使うか、タスクの履歴がない新しいウィンドウで同じモデルを使います。
プロジェクトを渡し、意図を明確に伝える
「別のAIがこのコードを書きました。あなたの仕事は褒めることではなく、エラーとリスクを見つけることです」とはっきり伝えます。こうすることで、追従性を抑えられます。
2つの意見を比べる
両方が同じ意見なら、おそらく正しいでしょう。意見が違う場合は、その点を調べてください。そこが興味深いところです。
業界では、まさにこうしたことが起きています。AIが書き、AIが確認し、最後の判断は人が下します。モデルに任せきりにはできません。それはあなたの仕事です。
チェック6:編集で何かが壊れたとき、どう元に戻す?
重要なポイント
編集を始める前に、gitで動作するバージョンを保存します。次のチェックで何かが壊れても、プロジェクトを作り直さず、一つのコマンドで元に戻せます。10秒でできる安全策です。コードを読む必要はありません。AIに簡単な依頼を2つするだけで済みます。
このチェックリストにある項目から編集が必要になることはよくありますが、編集によって動いていたものが壊れることもあります。大事にならないよう、修正を行う前に毎回、動作するバージョンをgitに保存してください。ゲームのセーブと同じです。何かを壊してしまったら、最後のセーブポイントを読み込みます。
コードを読む必要はありません。AIに「変更する前に、現在動作しているバージョンを明確なラベルを付けてgitに保存してください」と頼むだけです。編集後にすべてがうまくいかなくなったら、「プロジェクトを以前に保存したバージョンに戻してください」と頼みます。
gitがまだよくわからない場合は、2つのガイドをご覧ください。Claude Codeで変更を元に戻す方法と、AIがデータベースを削除したときにすることです。2つ目は、すでに元に戻せない状態でも、まだ復旧できる場合のためのガイドです。
チェック7:公開前に最後に確認すべきことは?
重要なポイント
公開前に最後の動作確認を行います。支払いをテストモードから本番モードに切り替える、秘密情報がサーバーだけにありクライアントへ渡すファイルにないことを確かめる、データをバックアップする、公開とドメインが動くことを確認する、の4点です。短いリストを確認してから公開しましょう。プロジェクトは動くのに設定を一つ忘れたため、最初の支払いを受け損なう人がここでよく出ます。
最初の6つのチェックは、コードが何をするかを確認するものです。7つ目は、プロジェクトを公開してユーザーに届ける準備ができているかを確認します。ここでつまずく人がよくいます。プロジェクトは動いているのに、支払いをテストキーから本番キーに切り替えるのを忘れて、最初の顧客が「ごっこ」の支払いをしてしまうのです。
支払い:テストから本番へ
支払いを受け付けるなら、テストキーではなく、本番用の決済キーが接続されていることを確認してください。最低金額で実際に支払いを行い、自分に返金します。
秘密情報を正しい場所に置く
AIに「秘密鍵をサーバーだけで使い、
.envをGitから除外していますか?公開用変数やソースマップを含め、実際のブラウザービルドやクライアント応答に秘密鍵はありませんか?」と尋ねます。元の.envだけでなく、ビルド済みファイルとブラウザーの通信応答を確認してください。Gitからの除外は、値がフロントエンドへ入るのを防ぎません。データをバックアップする
データベースがどこかに自動保存されていることを確認します。プロジェクトを自分のサーバーで動かす場合は、Coolifyガイドで公開方法を説明しています。
自分の端末以外からも公開先が動くことを確認する
自分のコンピューターだけでなく、外部リンクを使ってスマートフォンでプロジェクトを開きます。ローカルで動いていても、公開後に動くとは限りません。
4つすべてを確認すれば、安心してプロジェクトを人に見せられます。確認できない点があれば、後で不満を持つ顧客に対応するより、今30分かけて解決するほうがよいでしょう。
確認に時間がかかりすぎるなら、AIを信じてよい?
重要なポイント
AIは賢いのだから、なぜ二重に確認するのか。そう思う誘惑は強いものです。しかし、確認せずに信じるのは、契約書を読まずに署名するようなものです。確認には数分しかかかりませんが、実際の人に影響を及ぼすプロジェクトの不具合は、評判とお金を失わせます。確認する力はすぐ習慣になります。結果に責任を持つのはあなたであり、その責任をモデルに渡すことはできません。
その誘惑はよくわかります。確認は退屈に感じられますし、「AIを使った目的とは違う」と思うかもしれません。しかし、結果に責任を持つのはモデルではなくあなたです。AIには評判がなく、結果への責任もありません。コードを作って、そのことを忘れてしまいます。支払いが通らなかった顧客に対応するのは、あなたです。
Claude Codeの開発者は、さらに広い視点を示しています。
コードを書くことは、もはやボトルネックではありません。AIが引き受けたからです。価値は別のところにあります。タスクを理解し、できあがったものを確認することです。あなたの強みはそこにあります。顧客にとってどんな結果が望ましいかは、外部の開発者よりあなたのほうがよくわかっています。
なぜ確認は一度きりの作業ではなく、スキルなのか?
重要なポイント
チェックリストを一度実行するだけでも役立ちます。しかし、確認がAIとの仕事の進め方の一部になったとき、本当の違いが生まれます。入力時に適切なコンテキストを与え、出力された結果を確認する習慣をつけるのです。そうすれば、AIは当たり外れのあるものではなく、使えるツールになります。その後に作るプロジェクトは、毎回ひとつ前よりも早く完成するようになります。
この7つのチェックは、「公開したけれど動くことを願う」状態と、「公開して、動くとわかっている」状態を分けるための最低限のものです。一度確認すれば、顧客が気づく前に大半の問題を見つけられます。
そこから確認が習慣になります。入力としてAIに適切なコンテキストを与え、出力された結果を確認すれば、ゼロから始めずに済むため、新しいプロジェクトをより早く完成させられます。
AIクローン、セカンドブレイン、コンテキストエンジニアリングなど、ツールの活用に関する追加資料はAilootのドキュメントでご覧いただけます。
詳細を見る
コードが読めなくてもAI生成コードを確認する方法:2026年、非プログラマー向けの7つのチェック項目:よくある質問
APIキーを.envに置けば、秘密を保てますか?
それだけでは足りません。秘密鍵はサーバーだけで使います。.envと.gitignoreはGit管理には役立ちますが、公開用変数はブラウザービルドへ入る場合があります。実際にクライアントへ届くファイルと応答を調べてください。
説得力のあるデモ以上に、決済フローの何を確認しますか?
利用者の目的のシナリオを完了し、注文、状態、領収書やメール、決済後に保存された結果を確認します。空欄、重複送信、失敗時の処理も試してください。請求成功だけで注文の正しい作成は証明できません。