GitHub Copilot CLIでローグライクゲームを構築、コード生成の実力を実証

AIペアプログラミングの実践

Copilot CLIの/delegateで非同期コード生成
Go未経験でも動作するゲームを短期間で完成
機能設計に集中し実装はAIに委任

手続き的生成の仕組み

BSPアルゴリズムでダンジョン自動生成
リポジトリのコミットSHAをシード値に利用
同じコードベースから再現可能なマップを生成

開発者体験の変化

エージェントワークフロー反復開発を加速
ドキュメント生成もCopilotエージェントに委任
詳細を読む

GitHubのシニアプログラムマネージャーLee Reilly氏が、GitHub Copilot CLIを使い、リポジトリのコードベースをローグライク風ダンジョンゲームに変換するCLI拡張「GitHub Dungeons」を開発しました。普段使わないGoで書かれたこのゲームは、Copilot CLIチャレンジへの参加がきっかけで誕生しています。

開発の鍵となったのは、Copilot CLIの/delegateコマンドです。これはタスクをクラウド上のCopilotコーディングエージェントに委任する機能で、自然言語で機能を記述して実行を任せ、完了後にプルリクエストとして結果を受け取ります。難易度調整やチートコード追加など、複数の機能がこの方法で実装されました。

ゲームの核心技術はBinary Space Partitioning(BSP)と呼ばれるアルゴリズムです。空間を再帰的に分割して部屋を生成し、兄弟ノード同士を廊下で接続することで、構造的でありながら毎回異なるダンジョンを生成します。シード値にはリポジトリの最新コミットSHAを使用するため、同じコードからは同じマップが生成され、コードが変われば地形も変化します。

この開発体験について同氏は、Copilot CLIによって実装の詳細からゲームデザイン思考を切り替えられたと述べています。ボイラープレートやエッジケースの処理をAIに任せることで、プレイヤー体験の設計に時間を割けるようになりました。

GitHub Dungeons はオープンソースとして公開されており、`gh extension install leereilly/gh-dungeons`で導入できます。5つのレベルを攻略する本格的なターミナルゲームで、霧の中の視界制限やオートアタックなどの機能も備えています。AIコーディングツールが単なる補助ではなく、未経験言語でのプロダクト構築を可能にする水準に達していることを示す事例です。