🎲

Amazon Q CLIですごろくゲームを作る

に公開

はじめに

ギリギリですが、以下キャンペーンにエントリします
https://aws.amazon.com/jp/blogs/news/build-games-with-amazon-q-cli-and-score-a-t-shirt/

始め方は、ステップバイステップガイドを参考にAWS Builder IDの取得と、Amazon Q CLI をインストールすれば完了です。

作成したもの

https://rubihiko.github.io/amazonq-sugoroku-game/

すごろくゲーム

2人対戦型のすごろくゲームです。AWSに関するクイズも含まれており、楽しみながらAWSの知識を学ぶことができます。


メインゲーム画面 - プレイヤー1とプレイヤー2が交互にサイコロを振って進みます


AWSクイズ画面 - 青いマスに止まるとAWSに関するクイズが出題されます

どのようなやり取りをしたのか

履歴は、/save で保存できます。また、!で外部コマンドが呼び出せます。
プロンプトの部分だけ抜き出してみると、以下のようやりとりしていました。
※1,2は雑談

> /save ../save.json

✔ Exported conversation state to ../save.json

> !jq -r '.history[][] | select(.content.Prompt) | .content.Prompt.prompt' ../save.json | nl

     1	こんにちは
     2	改行のテストです
     3	簡単なすごろくゲームを作りたいです。言語はJavascriptで、ブラウザで動く簡単なものにしてください。
     4	いいですね!少し機能を追加したいです。特殊マスにプレイヤーの選択を迫るようなイベントを追加してください。テーマとしては、AWSに関するクイズがいいですね。
     5	もともとあった、マスを進む、戻るなどは残しておいてもいいと思います。修正できますか?
     6	二人で対戦できるようにしてください。
     7	この内容でOKです。GitHub Pagesで公開したいです。
     8	開発用のバックアップファイルは不要ですので、削除し、READMEを修正してください
     9	READMEからライセンス表記を削除してください
    10	index.htmlについて、脆弱性の観点から修正の必要がありますか? あれば修正してください
    11	onclickや、window.onload については大丈夫でしょうか?
    12	そもそもすごろくができなくなりました。脆弱性対応をすることでゲームができなくなる問題を解消してください
    13	いえ、すごろくができません
    14	ゲーム画面のスクリーンショットをREADMEに追加してください
    15	ここまでの内容をコミットしてください
    16	不要なファイルを削除し、これまでのコミット内容を一つのコミットにしてください。

基本的に、自分でコードは書かずにプロンプトだけで作成できました。

  • 言語はJSを指定
  • すごろくの機能について会話しながら改修
  • 公開にあたり、ファイルや履歴の整理をしてもらう

というような感じで進めていきました。

作業内容については、逐一報告してくれるし、修正内容についても確認できます。

  • 差分
  • コマンド実行
  • サマリ
  • デプロイ方法
  • など

感想

  • 壁打ちしながら作れるのは楽しい
  • 命令に対して、過程を見せてくれるので何をしているか確認できるのが便利
  • READMEをいい感じに作ってくれる

アイデアが固まってなかったり、相談しながら作りたい場合はこういう形で作るといいなと思います。プロトタイプをサクッと作りたい場合に重宝しそうです。READMEをいい感じに作ってくれるのも助かりますね。
また、途中の修正で動かなくなることがあったので、テスト結果も出すようにすればよかったなと思いました。

Discussion