Slint:UIの「バイブスコーディング」に最適な言語?
SlintはRustベースのUIツールキットで、LSPによるリアルタイムフィードバック、ホットリロード、そして新たなMCPにより、AIが実行時のレイアウトツリーを直接参照・操作できるようにし、UI開発を加速します。ヘッドレスモードでのCI実行や、複数言語での利用に対応。
バイブスコーディングをよりスムーズに
最近、「Rustが理想的なバイブスコーディング言語である」という記事に触発されました。UXデザイナー兼開発者として、私は実際にプロトタイプを構築して検証する手法を取っていますが、それは時間がかかります。5つのアイデアが1つ、せいぜい2つのプロトタイプに絞られるのが普通です。
AIはこの状況を変えました。実験のコストをほぼ「無料」にし、より多くのアイデアを試し、より速く学ぶことを可能にしました。SlintはUIのバイブスコーディングに理想的な言語になるでしょうか?アプリケーションの「ずさん化」を避けられるでしょうか?AIを活用してSlintの開発プロセスを加速できるでしょうか?
LSP基盤の活用
AIがSlintコードを生成する際、LSPがリアルタイムでフィードバックを提供します。構文エラー、バインディングループの検出、コードリンティングなどを行います。ホットリロードによりコンパイルステップが不要で、AIはエラーを生成と同時に修正できます。
AIスキル
リポジトリには「AIコーディングアシスタント」のドキュメントページがあり、Claude Code、Codex、CursorスタイルのフローにSlintスキルをインストールできます。これらのスキルにより、コーディングアシスタントがSlintを最大限活用できます。
Slint MCPの導入
AIの視覚推論能力は限定的です。従来はUIファイルをすべてスキャンして実行時の見た目を推測していましたが、これは遅く、大量のトークンを消費し、エラーが発生しやすかったです。新しいSlint MCPは外部サービスではなく、アプリにコンパイルされ、AIが内部状態を確認できるようにします。スクリーンショットも可能ですが、画像処理は遅くトークンを消費します。代わりに、AIは実際のレイアウトツリーにアクセスできます。UIの推測は不要で、実行時の現在の状態を確認し、問題に応答できます。
AIが実際のアプリと対話できるように
MCPはウィンドウの一覧表示、プロパティの検査、要素ツリーの取得/クエリ、アクセシビリティプロパティの検査に加え、クリック、ドラッグ、キーボードイベントのディスパッチも行えます。これにより、目標を設定し、AIが人間の介入なしに進捗を確認できます。ビューやダイアログのナビゲーションが必要な場合、AIが自身でUIを操作し、目的のページに移動してスクリーンショットを取得できます。チャットウィンドウに作業中のスクリーンショットがインライン表示されるのは非常に魔法のように感じられます。
ヘッドレスMCP
エージェントはCI、コンテナ、サンドボックスで実行されることがよくあります。SLINT_BACKEND=headlessを使用してMCPを実行でき、スクリーンショットも含めてディスプレイサーバーは不要です。これにより、AIは生成された内容を「見て」検証できます。
ホットリロードとの連携
これは古典的なUI開発ループです。一見単純ですが、Rustのコンパイルには数分かかることがよくあります。Slint RustアプリでもUIをホットリロードできることをご存じですか?RustアプリがインタプリタモードでUIを実行し、変更されたSlintファイルをホットリロードする方法を導入しました。RustコードまたはSlint UIとRust間のブリッジAPIが変更されない限り、Rustの再コンパイルは不要です。
AIがコードを更新している間、これは非常に高速になります。このループがMCPと連携することで、エージェントはライブUIを「見て」、問題をより速く修正・検証できます。
Rustだけではない
始めるにはドキュメントを参照し、Slintスキルにより、C++、Python、Node.jsを含むすべてのサポート言語でセットアップが完了します。Figmaのデザインにアクセスできる場合は、Figma MCPを使用してAIにSlintでデザインを実装させることも効果的です。ClaudeやCodexのデスクトップアプリにスクリーンショットをドロップしてテストすることもできます。
これは最初のステップに過ぎません。同じループは、トークン使用量の削減、UI生成の予測可能性向上、より良いツールによる本番アプリケーションの磨き上げとレビューの機会をさらに提供します。