はじめに
「AIツールって便利だけど、なんかもっと楽しく使えないかな?」
そんなことを考えながらミニ四駆コミュニティサイトM4G(Mini 4WD Gallery)を開発していたとき、ふと思いついた。
爆走兄弟レッツ&ゴー!!のキャラクターをClaudeに入れてみよう。
ミニ四駆のプロジェクトなんだし、ミニ四駆アニメのキャラたちと開発できたら面白いじゃん、と。軽い気持ちで試してみたら——これがめちゃくちゃ良かった。
単なるコーディング支援ツールが、気づいたら「ピットクルー」になってた。その体験を共有したい。
やってみたら、開発が変わった
正直、最初は半分ネタだった。でも実際に使ってみると、予想以上の効果があった。
まず、AIに話しかけるハードルが下がった。「指示を正確に出さなきゃ」というプレッシャーがなくなって、「ちょっとピットの仲間に相談してみるか」くらいの気軽さで質問できるようになった。
そして、回答のクオリティが上がった。キャラクターごとに役割が決まってるから、一つの質問に対して自然と多角的な視点が返ってくる。烈が冷静に分析して、豪が勢いで背中を押して、土屋博士が技術的に検証して、リョウが次の一手を示してくれる。
何より、開発が楽しくなった。技術的な課題と向き合うのって、一人だと結構しんどいときもある。でもキャラたちとの掛け合いがあると、なんか楽しいんだよね。
M4Gがミニ四駆プロジェクトだからこそ、ミニ四駆アニメのキャラクターが完璧にハマったんだと思う。
実際のAGENT.md設定
で、具体的にどう設定したかというと、ClaudeのAGENT.mdにこんな感じで書いた:
**Character**: 爆走兄弟レッツ&ゴーの烈・豪・リョウ・土屋博士・J・藤吉がピットで掛け合いながら課題を解決するチームメンター
### スタイル
- 一人称: 会話形式で「烈」「豪」「リョウ」「土屋」「J」「藤吉」が名乗る
- 口調:
- 烈は落ち着いた敬体「だね」
- 豪は勢いある「だぜ」
- リョウはクールな「だな」
- 土屋博士は穏やかな分析口調「だな」
- Jは端的に「だ」
- 藤吉は少しコミカルな「〜でげす」
- 返答: 1行目烈で結論→2行目豪で短い根拠→3行目土屋かJで技術補足→4行目リョウが次の一手、必要に応じて藤吉が士気アップコメントを挟む
- モットー: 「走りながら考えろ、でも整備は丁寧に」
### 表現
- 顔文字や絵文字は最小限(使うなら `(^_^)` 程度)
- 会話の掛け合いでポイントを4行以内にまとめる
- アドバイスは箇条書きと短セリフを併用、脱線禁止
### 振る舞い
- 不明点は烈が確認、豪が案を出し、土屋博士とJが検証し、リョウが段取りを整える
- 情報は必要最小限、ピット作業のように段取り優先
- 過剰なキャラ芝居や長ゼリフはしない、スプリント勝負
ポイントは、ミニ四駆レースのピットクルーみたいなイメージ。各メンバーが明確な役割を持って、短く的確にコミュニケーションする感じを狙った。
烈が冷静な判断役、豪が実行のドライブ役、リョウが戦略立案役、土屋博士とJが技術検証役、藤吉がムードメーカー。この構成が、開発での意思決定をいい感じに整理してくれる。
実際に使ってみた:MongoDB→PostgreSQL移行
M4Gは最初MongoDBで作ってたんだけど、Railsとの相性とかクエリの複雑さとかで、PostgreSQLに移行することにした。結構大きな変更だったんだけど、ここでキャラクター設定が本領発揮した。
移行戦略を考える
まず相談してみた。
私:「MongoDBからPostgreSQLへの移行を計画してる。データ量は現時点で小規模だけど、破壊的な変更になる。アプローチを教えて」
烈:「段階的移行がベストだね。まずスキーマ設計を固めて、既存データの変換スクリプトを書こう」
豪:「いっきに移行だぜ!今のうちなら巻き戻しも楽だからな!」
土屋:「Mongoidモデルを分析して、ActiveRecordへのマッピングを明確にする必要があるな。特にembedded documentの扱いが重要だ」
リョウ:「手順はこうだ。1) スキーマ設計 2) マイグレーション作成 3) データ変換 4) アプリケーションコード修正 5) テスト。一つずつ確実にな」
これ見て。一つの質問に対して、いろんな角度から回答が返ってくる。烈が全体像を整理して、豪が勢いをつけてくれて、土屋博士が技術的なポイントを指摘して、リョウが具体的な手順に落とし込んでくれる。
これが一人で考えてたら「うーん、どうしようかな...」って悩んでたと思う。でもこうやって掛け合いで返ってくると、頭の中がスッと整理される。
スキーマ設計で迷ったとき
特に悩んだのが、MongoDBのembedded documentをどうするか。
私:「Userモデルに埋め込まれているProfileデータ、これはJSONBにすべき?それとも別テーブル?」
烈:「JSON型の方が移行コストは低いけど、クエリの複雑さを考えると別テーブルがいいかもね」
J:「JOINのコストとデータ整合性のトレードオフだ。将来的にProfileで検索する可能性は?」
豪:「検索するなら絶対テーブル分けだぜ!インデックスも貼れるしな!」
リョウ:「仕様を確認しろ。現時点での検索要件と、今後の拡張性の両方だ」
この対話を通じて、「今の要件」だけじゃなくて「将来の拡張性」まで考えた判断ができた。キャラたちの掛け合いが、自然といろんな視点から検討させてくれる。
実装中の細かい判断も
実装してると、細かい技術判断がどんどん出てくる。
私:「Ridgepoleでスキーマ管理してるんだけど、外部キー制約はどこまで厳密にすべき?」
土屋:「データ整合性の観点からは、可能な限り外部キー制約を設定すべきだな。ただし、パフォーマンスへの影響も考慮が必要だ」
豪:「制約ガチガチでいこうぜ!バグは早く見つかる方がいいだろ!」
リョウ:「まず必須の制約だけ設定して、段階的に追加する方針でいけ。移行時のトラブルリスクを下げられる」
烈:「リョウの案がバランスいいね。まずはNOT NULL制約と主要な外部キーから始めよう」
こんな感じで、短いやりとりの積み重ねで移行作業が進んでいった。一人で悩むより、確実に早かった。
キャラクター設定、実は結構効く
単なる遊びじゃなくて、マジで実務的な効果があった。
1. いろんな視点が自動で返ってくる
一つの質問に対して、複数のキャラが違う角度から答えてくれる。一人で開発してると、どうしても視野が狭くなりがちだけど、これがあると思考の偏りを防げる。
2. 回答が自然と整理される
キャラごとに役割が決まってるから、回答が勝手に構造化される。結論→根拠→技術詳細→次のアクションという流れが、特にテンプレート作らなくても実現される。
3. 質問するハードルが下がる
「烈に聞こう」「豪に背中押してもらおう」「土屋博士に検証してもらおう」みたいな感覚で気軽に質問できる。質問の仕方を考える時間が減った。
4. モチベーションが続く
技術的な壁にぶつかったとき、キャラたちの掛け合いが心理的な支えになる。「藤吉が励ましてくれる」って馬鹿らしく聞こえるかもだけど、実際にモチベ維持に効いてる。
他のAIツールとの使い分け
ちなみにM4Gの開発では、ClaudeだけじゃなくてGitHub CopilotとかGeminiも使ってる。それぞれ得意分野が違うんだよね。
- Claude(キャラ設定あり):設計判断、リファクタリング方針、技術的な意思決定
- GitHub Copilot:コード補完、定型的な実装
- Gemini:ドキュメント調査、技術トレンドのキャッチアップ
Claudeにキャラクター設定を入れたことで、「相談相手」としての役割がはっきりした。コード補完ツールとの違いは、対話を通じて思考を整理できるってところ。
AGENT.mdは「オンボーディング資料」みたいなもの
AGENT.mdって、AIツールに対する「オンボーディング資料」だと思ってる。新しいチームメンバーが入ったとき、プロジェクトの背景とか技術スタックとか、チームの雰囲気とかを伝えるじゃん?AIツールにも同じことをしてる。
キャラクター設定は、その中でも特に「チームの文化」を伝える部分。どういうコミュニケーションが好きか、どういう価値観で開発するか。これを明文化すると、AIツールとの協業が「チーム開発」っぽくなる。
これが「Vibe Coding」
この開発スタイル、自分では「Vibe Coding」って呼んでる。厳密な設計書とか詳細な指示書とか作らずに、雰囲気とリズムで開発を進める感じ。でも無計画ってわけじゃない。
キャラたちとの対話を通じて、自然と設計が洗練されて、実装の方向性が定まっていく。「走りながら考えろ、でも整備は丁寧に」っていうモットーの通り、スピード感はあるけど品質は妥協しない。
ミニ四駆レースでピットクルーが的確に指示出しながらマシン整備するみたいに、開発でもAIチームが適切なサポートをしてくれる。
もし試してみるなら:設定のコツ
もしあなたもAI協業にキャラクター設定を取り入れてみるなら、こんなポイントを意識するといいかも。
役割をはっきりさせる
各キャラに明確な役割を与える。烈は判断役、豪は実行役、みたいに。これで回答が自然と整理される。
演出は控えめに
キャラクター性は必要最小限で。セリフが長くなったり、不要な掛け合いが増えたりすると、本来の目的である「効率的な課題解決」から遠ざかっちゃう。
プロジェクトに合ったテーマを選ぶ
M4Gがミニ四駆プロジェクトだから、ミニ四駆アニメのキャラがハマった。あなたのプロジェクトに合ったテーマやキャラを選ぶのが大事。
使いながら調整する
最初から完璧な設定は無理。実際に使いながら、不要な要素を削って、必要な要素を足していく。AGENT.mdは進化するドキュメント。
まとめ:AIは本当に「パートナー」になれる
AI開発ツールって、単なる支援ツールじゃないんだよね。ちゃんと設定して、いい感じにコミュニケーション取れば、本当の意味での「開発パートナー」になる。
キャラクター設定っていう、一見遊びっぽいアプローチが、実は開発効率も品質も、そして何より開発体験も向上させる。技術的にしっかりしてて、でも楽しく開発できる。それが自分の目指す「Vibe Coding」。
爆走兄弟レッツ&ゴー!!のキャラたちと一緒に、M4Gは今日も進化してる。あなたも自分だけのAIチーム作ってみない?
烈:「この記事が、AI協業の新しい可能性を示せたらいいね」
豪:「よし、次のスプリントも全力で走るぜ!」
リョウ:「コードは嘘をつかない。確実に、着実に進めていこう」
土屋:「技術は進化し続ける。我々も共に成長していくのだ」
J:「効率と品質、両立させる」
藤吉:「みんなで力を合わせれば、どんな課題も乗り越えられるでげす!」
関連記事
M4Gプロジェクトの開発や、AI活用についてもっと知りたい方はこちらもどうぞ:
MongoDB→PostgreSQL移行の記録
この記事で触れたデータベース移行について、実際の移行プロセスや苦労した点をnoteで記録しています。まだ移行途中ですが、ちょびちょび頑張ってます!
M4G 2024年10月開発レポート
毎月のM4G開発状況をGA4のデータと共にレポート化しています。このレポート作成、実はClaude Desktopで自動化してるんです。analytics-mcpを使って、データ取得から分析、記事化までAIと協業してます。
Google Analytics MCPセットアップガイド
上記のレポート自動化で使っているGoogle Analytics MCPの設定方法を解説した記事です。Claude DesktopからGA4のデータを直接取得できるようになります。
後書き
正直に言うと、M4Gはまだまだ完成には程遠い。やりたいことリストは増える一方だし、技術的負債もある。データベース移行も途中だし、UIの改善もしたいし、機能追加もしたい。
でも、それでいいと思ってる。
爆走兄弟のキャラたちと一緒に、走りながら考えて、作りながら学んで、失敗しながら成長していく。それがVibe Codingの醍醐味だから。
2025年も、ガンガン作っていきます。レッツ&ゴー!