• 2025/11/21 掲載

【図解】なぜCursorの「AI開発」は失敗する?成功率爆上げの“3つの手順”

会員(無料)になると、いいね!でマイページに保存できます。
AIエージェントを活用した自動プログラミング 「バイブコーディング」はエンジニアでなくてもアプリやサービスの制作が可能な画期的な手法だ。ただその反面、うまく指示を行わないと、高度なアプリを作ることは難しいし、完成しても技術的負債が多すぎてメンテやアップデートが不可能になったりする。それを避けて完成度の高いコーディングを行わせるためには、正しくAIに指示を行う必要がある。そのためには一体何が必要なのか。カギとなる「コンテクストエンジニアリング」と実践における3ステップを解説する。
執筆:根岸 智幸

根岸 智幸

1963年生まれ。Webコンサルタント、プロデューサー、編集者、ライター、エンジニア。90年代のIT雑誌を皮切りにWebクチコミサイト、SNS、電子書籍出版システム、ニュースメディアのグロースなどで、時代を先取りしてきた。

photo
バイブコーディング成功に重要な「コンテクストエンジニアリング」とは
(出典:筆者が作成)

AIへの指示は「コンテクスト」が超重要なワケ

 CursorやClaude Codeなどの生成AI搭載開発ツールが次々と登場し、プログラミング経験がほぼゼロの初心者でもアプリやWebサービスを開発できる時代になった。バイブコーディングのブームに乗って、「自分もアプリを作ってビジネスをやってみたい」と考える人も増えている。

 しかし現実には、多くの初心者が苦労しているようだ。よくあるパターンは、AIに「〇〇というアプリを作ってください」と簡単に頼むだけで終わらせるケース。AIが吐き出したコードは一応動くかもしれない。だが、しばらくするとセキュリティ上の穴が見つかったり、新機能を追加しようとしても既存コードとの整合性が取れなくなったりする。こうした問題が起きる根本的な理由は、AIがあなたの意図を十分に反映できるだけの情報を受け取っていないからだ。

画像
【画像付き記事全文はこちら】
コンテクストなしの指示では、AIが勝手に判断してコードを生成するため、ユーザーの本来の意図とズレが生じる。一方、コンテクストが十分に与えられれば、AIの判断精度が飛躍的に向上し、一貫性のある高品質なコードが生成される
(出典:筆者が作成)

 ここで重要になるのが「コンテクスト」という考え方である。ちょっと難しく聞こえるかもしれないが、シンプルに言えば「AIにできるだけ詳しく背景情報を教える」ということだ。

 ユーザーは誰なのか。何のために使うアプリなのか。どんなデザインにしたいのか。安全性はどこまで重要か。といった情報をあらかじめAIに渡しておく。こうした情報があれば、AIはあなたの意図を正しく反映して、より適切で質の高いコードを書くようになる。

 わかりやすく比べてみよう。「ログイン画面を作ってください」という指示と、「小学生でも使える、シンプルで安全なログイン画面。ユーザー名とパスワードは暗号化して保存する。デザインはポップで親しみやすい色合い。ログインに失敗したら『もう一度試してね』と優しく表示する」という指示では、AIが作る成果物の完成度がまったく異なるはずだ。

画像
左は曖昧な指示「ログイン画面を作ってください」で生成されたもの、右は詳細な背景情報を含む指示で生成されたものの画面イメージ。必ずこうなるワケではないが、同じAIでも、与えられるコンテクストの量と質で、完成品の使いやすさや美しさが大きく変わる
(出典:筆者が作成)

【図解】出力精度上げる「コンテクストエンジニアリング」とは

 インターネットで「生成AIをうまく使うコツ」として広まっているのが「プロンプトエンジニアリング」だ。これは「質問や指示の仕方を工夫する」というアプローチだ。「〇〇で、△△に注意して、□□という形式で答えてください」というふうに、その都度、細かく指示を工夫する。

 単発的な質問や簡単なタスクであれば、プロンプトエンジニアリングは有効だ。しかし、アプリケーション開発のような複雑で長期的なプロジェクトには、それだけだと限界がある。毎回、同じような背景説明が必要で、AIに「このプロジェクトはこういうスタイルで進めるんだな」という全体像が伝わりにくいのだ。その結果としてコードの完成度が低くなる。

 コンテクストエンジニアリングは、まったく異なるアプローチだ。アプリ開発を始める前に、「このプロジェクトはこういう考え方で作るんですよ」という背景や方針をまとめて、事前にAIに教える。すると、それ以後はAIが基本方針に合わせて判断してくれるようになるのだ。 これは、プロンプトエンジニアリングの発展形であり、生成AIの出力精度を高めるための“環境設計技法”と言える。

画像
プロンプトエンジニアリングは毎回の質問の工夫に重点が置かれるため、複雑で長期的なプロジェクトでは一貫性が失われやすい。一方、コンテクストエンジニアリングは事前に背景情報を整理して伝えるため、プロジェクト全体に統一性が生まれ、後続の指示が効率化される
(出典:筆者が作成)

 学校の文化祭を思い浮かべてほしい。実行委員会から「出し物は何でもいいから好きにやってください」と言われた場合と、「今年は『80年代のレトロゲーム』がテーマです。その枠の中で自由に企画してください」と言われた場合では、どう変わるだろう? 後者のほうがコンセプトが明確な、まとまりのある文化祭になるはずだ。

 バイブコーディングによるアプリ開発も、それと似たメカニズムが働く。AIとのやり取りはセッションごとに独立しており、前回の会話内容を記憶していない場合が多い(改善の動きはあるし、長期記憶を実現するというMCPもあるが)。だからこそ、最初にしっかりとテーマや方針を共有しておくことが重要になる。

画像
テーマが明確に与えられた文化祭では、各クラスの企画が自然とまとまる。これと同じ仕組みをアプリ開発でもAIに適用することで、一貫性のあるコード生成が実現できる
(出典:筆者が作成)
【次ページ】【実践編】初心者でも大丈夫「3ステップ」
関連タグ タグをフォローすると最新情報が表示されます
あなたの投稿

    PR

    PR

    PR

処理に失敗しました

人気のタグ

投稿したコメントを
削除しますか?

あなたの投稿コメント編集

通報

このコメントについて、
問題の詳細をお知らせください。

ビジネス+ITルール違反についてはこちらをご覧ください。

通報

報告が完了しました

コメントを投稿することにより自身の基本情報
本メディアサイトに公開されます

基本情報公開時のサンプル画像
報告が完了しました

」さんのブロックを解除しますか?

ブロックを解除するとお互いにフォローすることができるようになります。

ブロック

さんはあなたをフォローしたりあなたのコメントにいいねできなくなります。また、さんからの通知は表示されなくなります。

さんをブロックしますか?

ブロック

ブロックが完了しました

ブロック解除

ブロック解除が完了しました

機能制限のお知らせ

現在、コメントの違反報告があったため一部機能が利用できなくなっています。

そのため、この機能はご利用いただけません。
詳しくはこちらにお問い合わせください。

ユーザーをフォローすることにより自身の基本情報
お相手に公開されます

基本情報公開時のサンプル画像