1.「超かぐや姫!」を観て、昔のネットを懐かしむ
職場の同僚から「超かぐや姫!」を薦められて、観たんですよ。
まあネタバレは省略して、昔懐かしい、草の根BBSっぽい画面や某巨大掲示板が画面に出てきて、もう、インターネット爺さんにとって、目から汗が出てしまいました。昔、草の根BBSでいろいろ遊んだなぁ。と
2.生成AIで昔のゲームをリメイクしている人がいるんだ
昔のゲームを生成AIでプログラムごとリメイクしている人の記事を見かけた。
3.ChatGTPを使ってみたけど、ちょっと...
そこで、会社が法人契約でChatGTPのサブスク契約をしていたので、ChatGTPのチャットでプロンプトを動かして、コードを書かせてみた。
ある程度まで、そこそこなコード(Pythonで、WebアプリのコードをPython、HTML、JavaScriptを生成)が出来ていただ、ある程度プロンプトが大量になってくると、回答まで5分以上かかったり、プロンプトの入力自体が、昔のPCのキーボード入力遅延が発生していると同じ状況まで陥った上に、生成したコードが動作しないという、「使いものにならない」という生成結果に。
4.ClaudeCode って流行っているねぇ
ChatGTPが使い物にならなくなったので、他の生成AIを模索していたら、ClaudeCodeの記事をよく見かけるようになった。ClaudeCodeのコード生成部分をIDEなどと繋いで利用するには有料版が必要っぽいので、ちょっと躊躇する。
5.ClaudeCode のチャットからスタート
ChatGTPと同じ様に、Webブラウザでプロンプトを入力してチャット形式で生成物を出力するなら、ある程度無料で使えるみたいなので、とりあえず、そこからスタートする。
ChatGTPの時と同じ様にWebアプリのコードを生成させてみたところ、ここだけの話(謎)、コードのクオリティやコード解析や処理の説明の生成結果がChatGTPより、わかりやすい。
ChatGTPをダメな新卒の新入社員のPGとすると、ClaudeCodeは、そこそこ経験がある中堅社員のSEみたいな感じ。それくらいコード解析や処理の説明が的確で上手い(笑)
6.昔、草の根BBS時代に「マッチメーカー」ってハマっていたんです
話を戻して、草の根BBS時代の思い出を「超かぐや姫!」に思い出されてしまったので、草の根BBS時代に「マッチメーカー」というロボットを組み立てて対戦するゲームがあったなぁ。と思い出し、「マッチメーカー」を調べてみた。
調べて行くうちに、懐かしさも思い出して来た。
じゃあ、インスパイヤを「マッチメーカー」に受けたとして、リメイクしたゲームを作ってみようと、決意!!!!
7.ClaudeCode のチャットで、「マッチメーカー」を解析してみた
上記の「マッチメーカー」の説明をまとめて頂いているサイトがあったので、ClaudeCodeに、「このサイトの「マッチメーカー」というゲームを調べて」とプロンプトに入力したら、ClaudeCodeがサイトにアクセスして、ゲームの情報とゲームのルール、ゲームの内容、ゲームの生成物を調べて、きれいにまとめた上で、回答として出力してくれた。
その回答内容の正確さと、意味の分かりやすさが、こんな短時間に出来るのかと、ある意味怖かった(笑)
8.ClaudeCode がフレームモデルのサンプルを作ってくれた
調べるだけでなく、調べた結果を「実際に動作したものの方が分かりやすいでしょう」と、HTMLとJavaScriptとCSSで作られた、HTML1ファイルで動作するスタンドアロン版をたった1分程度で生成してしまった。
9.じゃあリメイクゲームを本格的に作りますよ
ClaudeCode のWeb版のチャットを利用して、「PythonのFlaskフレームワークを利用したWebアプリ」という前提条件だけで、チャットをスタートして、ClaudeCodeの前提知識として、上記の「マッチメーカー」というゲームの知識。そこに、私が要件定義を日本語で入力して、コードは一切書かない。というスタイルで、インフラ(AWS)、コード生成、デザイン(他の生成AIの画像生成エージェントを利用)を基本的にClaudeCodeに操作手順書まで書かせて、順調に出来てしまった。
元々のゲームには無い追加機能として、対戦時に、AK(ゲームの対戦ロボット)にAIを搭載(本当にClaudeCodeのAPIを利用した思考生成AIの疑似ロジックを搭載しています。AIが対戦結果ログに脚色を追加したり、戦闘方法もAIの成長で異なる思考生成AI処理を実装しています。(まあ、実装したのはClaudeCodeだけどね(笑))
ちなみに、画面(Webページ)のデザインは、ClaudeCodeがやってくれていて、画像(ロボットのパーツ部品)も、他の生成AIの画像生成エージェントを利用していますが、その画像生成エージェントを利用するためのプロンプト文は、ClaudeCodeが生成しています。
10.ということで、こんなゲーム出来ました。
「LAO Logic Accel Online」
まあ、まだ、開発期間が1週間も経っていないので、まだまだ機能拡張と品質改良をして行きますが、ちょっと賢い生成AIに、要件定義を言って、こんなシステムが5日程度で完成してしまうのと、自分では一切コードを書かないし、デバッグもしなくて、要件定義通り動作しているかの動作確認だけです。
11.まとめ
ClaudeCode を実験的に使用してみようという感じだったのに、気が付けば本格的に利用して、成果物として出来てしまった。という感じです。
ClaudeCode を使い続けている方々には、足元にも及びませんが、まだClaudeCode を使い始めて2週間でここまで出来ました。という報告というか自慢。
こんな自分ですが、ClaudeCodeを使ったWebアプリ開発の受託案件をして欲しい。なんて話も、ウェルカムです。(但し、受託開発はやりますが、SESはやりません)