はじめに
AIエージェントに「要件」を投げれば、それっぽいアプリが数分で組み上がる。いわゆる「Vibe Coding(ノリと雰囲気のコーディング)」全盛の時代です。しかし、我々が主戦場とする WASM (WebAssembly) × marimo のような極限の制約環境において、Vibe Coding は「技術的負債の時限爆弾」に他なりません。
我々「Marimo App Project」は、これまで厳格なSSOT(Single Source of Truth)という「ルール」でAIを縛るアプローチをとってきました。しかし、結論から言います。ルール(プロンプト)だけでは、AIの微細なハルシネーション(幻覚)は防げません。
本記事では、AIをルールで縛るフェーズから一歩先の次元、「システム的な安全装置(ハーネスエンジニアリング)」 へと進化した我々の最新アーキテクチャと、泥臭い失敗から生まれた「自律テストループ」の実践を公開します。
1. ルールの限界と「システム的ハーネス」への移行
これまでの我々は、AIに「このコンポーネントは使うな」「データ型を厳守せよ」とプロンプトレベル(SSOT)で徹底的に叩き込んでいました。しかし、複雑な計算ロジックや状態管理が絡むと、AIは時折予期せぬ None を混入させたり、暗黙の型変換を行ったりします。ルール違反による「サイレントクラッシュ」です。
「AIに気をつけてと指示する」ことの限界を悟った我々は、marimo v0.23.1 の新仕様を逆手にとった「The Fail-Safe Protocol」を導入しました。
Exception Blocking による物理的遮断
marimo v0.23.1 では、上位のセルでエラーが発生した場合、下位のセルの実行を自動的にブロックする機能(Exception Blocking)が強化されています。我々はこの恩恵を最大化するため、AIに対して「プロンプトで注意を促す」のではなく、「少しでも異常があれば mo.stop() 等のガード節で物理的に処理を落とす」 システム的ハーネス(安全装置)をアーキテクチャの根底に組み込みました。
AIが暴走した瞬間、システムが下流への汚染を物理的に遮断する。これが「ルール」から「ハーネスエンジニアリング」への進化です。
2. ブラウザの呪縛と「Headless自律QAループ」の発見
「AIが書いたコードを、AI自身にテストさせる」。言葉にするのは簡単ですが、我々はこの実践において 「30分間のデッドロック(死のループ)」 という地獄を味わいました。
当初、我々は自律QAエージェント(Antigravity)にブラウザを直接操作させ、UIの描画からエンドツーエンドでテストさせようと試みました。しかし、WASM環境特有のサーバーブロッキングや、描画遅延による非同期処理の壁にエージェントが衝突。エラーを解決しようとリロードを繰り返し、永遠にログを吐き出し続ける「死のループ」に陥ったのです。
GUIを捨て、純粋な論理デバッグへ
この痛ましい失敗から、我々は「AIに人間と同じようにブラウザを操作させること」の無意味さを悟りました。
現在の我々の解は、UIの描画テストを完全に諦め、--headless モードへエージェントを解き放つことです。ブラウザという「GUIの呪縛」から解放されたAIエージェントは、特有の「純粋な論理デバッグ能力」を爆発的に発揮します。WASM環境の制約に邪魔されることなく、内部ロジックの整合性や状態(State)の遷移のみを高速で検証する「Headless自律QAループ」こそが、真の自動化の正解でした。
3. Vibe Codingの終焉と「制約の美学」
世の多くのエンジニアが「AIにいかに自由に、賢くコードを書かせるか」に腐心しています。しかし、AIに自由を与えれば与えるほど、プロジェクトはブラックボックス化し、後から人間が手出しできないスパゲティコード(例えば、動的ループの崩壊など)が生み出されます。
我々は真逆のアプローチをとります。それが 「Safe-Block Protocol」 などの絶対的な制約のハードコードです。
例えば、marimo の DAG(依存関係グラフ)の純度を死守するため、動的データの生成時に AI が for ループを使用することを物理的に封殺し、「純粋なリスト内包表記」を強制しています。
人間の仕事は「コードを書くこと」から「レールを敷くこと」へ
AIを自由に走らせることではなく、「AIが絶対に脱線・事故を起こさない堅牢なレール(ハーネス)を設計すること」。これこそが、次世代のエンジニア(The Architect)に求められる真の役割です。
「Marimo App Project」は、この圧倒的に泥臭く堅牢なアーキテクチャを武器に、次なるステージ『The Automation Initiative』へと進軍します。Vibe Coding に限界を感じているエンジニア諸氏、今こそ「制約の美学」と「ハーネスエンジニアリング」の世界へ足を踏み入れてみませんか。
おまけ
今まで作成したアプリについては、以下のページから参照いただけます。
※ v0.23.1 にアップグレードしたアプリ開発プロジェクトを現在進行中です。