「こんな感じで」のパワハラを許容する VIBE Coding
ここのところで、VIBE Codingという言葉をよく聞くようになった。この言葉は Open AI 共同設立者の Andrej Karpathy が提唱した「ノリ」に完全に身を任せ、AIエージェントの生成したコードを全て受け入れていくようなコーディングスタイルである。氏はこれを音声認識で行わせるため、キーボードにすらほとんど触らないという。
There's a new kind of coding I call "vibe coding", where you fully give in to the vibes, embrace exponentials, and forget that the code even exists. It's possible because the LLMs (e.g. Cursor Composer w Sonnet) are getting too good. Also I just talk to Composer with SuperWhisper…
— Andrej Karpathy (@karpathy) 2025年2月2日
VIBE Codingでは明文化しきれない曖昧な意図をAIに伝えてプログラムを生成させ、繰り返しの修正依頼を通じてアウトプットを形にする。 「このページ、ちょっとエモくして」「やっぱ、ダークモードにも対応して」といった、仕様書の初期段階では表現できなかったニュアンスをAIに伝えて製作作業を丸投げしていく。
眼に見える成果物からあるからこそ言いたくなる思いつきと修正を人間相手にぶつけ続けたら確実にパワハラの域である。「違う」「なんか違う」「もっとこう、バイブスで」……と繰り返す指示は、感情労働を強いる。しかしながらAIには感情も労働基準法もない。必要なのはちょっとしたAPI利用費だけだ。
AIとの共創関係を当たり前にするための開発宣言
「バイブスが合う」の曖昧さを乗りこなすには、履歴の積み重ねが必要となる。すなわち、メモリとパーソナライズの存在が鍵だ。VIBE Codingは、一回きりの魔法ではない。AIと繰り返しやりとりすることで、記憶の共有=嗜好の共有が進み、出力の精度が増していくところ醍醐味がある。
お前とペアプロをする前に 言っておきたいことがある
かなりきびしい話もするが 俺の本音を聴いておけ
Clineに自然言語で関白宣言することがちゃんと意味のある行為になっているし、毎回これは違うということを覚えさせれば大体は守ってくれる。大体ではあるけれど。製作過程をAIに任せてはいても、何が「違う」のか、なぜそれがダメなのかを最終的に決めるのは人間である。
安楽椅子で筋トレをする探偵
Vibe Codingは便利だ。
とりあえず自分のプロジェクトのディレクトリに行って、Claude Codeに内容を読ませて「こういう機能をつけろ」と言うだけでいい。 しかもそれが、やきとん屋に四時間並んでる間にできる。座る必要すらない。時々、指示を出すだけなんだから。
AIが生成をしている間、人間は別のことができる。特に『Replit – Build apps and sites with AI』といったサービスを利用するとiPhoneのモバイルアプリで指示を出せばコードが生成され、開発環境にデプロイされて動作確認までできる。待ち時間はそれなりにあるが、コード生成が終わるか追加判断が必要であれば通知がくる。ChatGPTのDeepResearchなどと同じで生成をいちいち見守る必要はない。
その間に別の作業をしていても良いのだけど、モバイルで適宜判断するだけで良いことは並行できる作業の幅を圧倒的に広げる。自分などはスポーツジムでの筋トレクールダウン中に指示出しすることもある。これはもはや「仕事」というより「呼吸」に近い。 常にタスクが手元にあるわけではなく、ふとした瞬間にAIが「返して」くるので、それに対してリアクティブに微修正する。
なんてことを言えば最先端のように感じるが、Eclipseでの開発が主流だった頃にビルドや開発サーバーの再起動でマシンが重くなるたびに、コーヒーを淹れにいっていた不毛な時間を思い出す。10分かけてビルドしたコードが最初の方でコケる絶望。その“待ち”による成果の精度と期待値が変わっただけと言えばそうだ。
通知があるのも便利だが、頻繁に割り込まれると並行タスクに集中できなくなるため、例えば「次のMTGが終わるまでの時間は仮定で進めて課題やQAを列挙しておいてもらう」という動き方をしてもらえるようになるとありがたい。AIエージェントにそこまで求めるようになったのはまさに従業員が増えるようなものだ。
それでも人間に残る大事な仕事
こう考えると未来がきたような気分になるが、見た目は正しそうなコードで実際に動くが再現性がないバグにあたってしまうと数時間があっという間に溶けるという弊害もある。AIが生成したコードを「そういうものだ」として理解しないまま適用してしまうと変な地雷を踏むことがある。 初めて触れる技術やライブラリでは、こうした事故が起こりやすい。
— Tristan T (@trirpi) 2025年3月19日
VIBE Coding中は笑顔だが、VIBE Debugging中は地獄。VIBE Codingがまともに成立するのは、ある程度その領域を知っており、長く利用するつもりもないツールに限る。自分が知らない技術領域では、AIの提案の真偽が判別できず「動くけどわかってない」コードが積み上がる。これは短期的には便利だが、長期的には不安定そのものである。メンテナンスも困難になる。
要するに、VIBE Codingは理解を前提としないが、理解を放棄すると破綻する——という矛盾した構造を持っている。今後のシステム会社に求めらえるのは処理の論理的正しさ、セキュリティ、例外処理と言ったことに対するレビューと修正に寄っていくことだろう。
そして、どれだけAIがコードを書こうが文章を生成しようが、それを「自分の作品」として世に出す決定を下すのは人間しかいない。倫理的責任、法的責任、社会的責任。そのすべてが人間に降りかかる。だからこそ必要になるのが、「自分は何を欲していたのか?」を、たとえ朧げであってもイメージできること。まさにバイブスと責任が人間に残る大事な仕事になっていくのだろう。