はじめに
GitHubが毎週配信しているライブストリーム「Rubber Duck Thursdays」にて、2026年4月17日、GitHub Copilot CLIを活用してCLIアプリを構築するデモが公開されました。本稿では、その制作過程を通じてCopilot CLIのPlanモード、Autopilotモード、そしてマルチモデルワークフローの実践的な使い方を解説します。
参考記事
- タイトル: Building an emoji list generator with the GitHub Copilot CLI
- 著者: Cassidy Williams
- 発行元: GitHub Blog
- 発行日: 2026年4月17日
- URL: https://github.blog/ai-and-ml/github-copilot/building-an-emoji-list-generator-with-the-github-copilot-cli/
関連記事



要点
- GitHubのRubber Duck Thursdaysストリームで、GitHub Copilot CLIを使い絵文字リストジェネレーターをライブ構築した
- CLIにリストを貼り付けてCtrl+Sを押すと、各項目に適切な絵文字が付与されクリップボードにコピーされる仕組みである
- 計画フェーズにClaude Sonnet 4.6、実装フェーズにClaude Opus 4.7を使い分けるマルチモデルワークフローが採用された
- PlanモードとAutopilotモード、GitHub MCPサーバー、–allow-all-toolsフラグを組み合わせて構築された
- プロジェクトはオープンソースとして公開されている
詳細解説
Rubber Duck Thursdaysとは
GitHub Blogによれば、GitHubチームは毎週「Rubber Duck Thursdays」と呼ばれるライブストリームを配信しており、コミュニティとともにリアルタイムでプロジェクトを構築し、質問に答えながらコーワークする場となっています。プログラミングにおける「ラバーダック・デバッグ」——問題をゴム製のアヒルに説明することで思考を整理する手法——から名付けられたこのストリームは、視聴者参加型の開発デモとして機能しています。今回のセッションでは、絵文字リストジェネレーターの制作を通じてCopilot CLIの実践的な使い方が紹介されました。
このストリームについては、以前の配信でCopilot CLIの「Rubber Duck」モード(異なるAIモデルが計画をクロスレビューする機能)を取り上げた記事もあわせてご参照いただければと思います(https://jobirun.com/github-copilot-cli-rubber-duck-cross-model-review/)。
作ったものの概要
今回制作した「Emoji List Generator」は、次のような動作をするCLIアプリです。GitHub Blogの説明によれば、ターミナル上でリストを貼り付けるか直接入力し、Ctrl+Sを押すと各箇条書き項目に関連する絵文字が自動的に付与され、結果がクリップボードにコピーされます。
使用した主な技術スタックは3つです。ターミナルUI構築には @opentui/core(OpenTUI)、AI処理には @github/copilot-sdk、クリップボード操作には clipboardy が採用されました。OpenTUIはコミュニティの提案から採用されたとのことで、こうしたリアルタイムのフィードバックがライブ配信の特徴と言えます。
PlanモードとAutopilotモードの分業フロー
構築プロセスで注目されるのは、計画と実装で異なるAIモデルを使い分けるマルチモデルワークフローです。
まず、GitHub Copilot CLIの Planモード で Claude Sonnet 4.6 を使用しました。Planモードはコードを書く前に要件を整理し、実装計画を plan.md ファイルとして生成する機能です。今回のプロンプトには「ターミナル上で箇条書きを入力したら適切な絵文字に置き換え、クリップボードにコピーするCLIアプリ」という要件が渡され、モデルが技術スタックやライブラリについて確認質問を重ねながら計画を精緻化しました。
次に、計画ファイルをもとに Autopilotモード で Claude Opus 4.7 を使い実装が進められました。Claude Opus 4.7 は2026年4月16日に一般提供が開始されたばかりのモデルで(https://jobirun.com/claude-opus-4-7-launch-features-use-cases/)、高度なコーディング能力が特徴です。Autopilotモードはエージェントとしてファイル操作やコード編集などのツール実行を自律的に行う機能であり、計画から実装まで数分で完成したとのことです。
Sonnet 4.6で計画を立て、Opus 4.7で実装する、という役割分担はリソース効率と品質のバランスを取る一つの実践例として参考になると思います。
使用したCopilot CLIの機能
GitHub Blogによれば、今回のプロジェクトでは以下のCopilot CLI機能が組み合わせて活用されました。
Planモード は要件から実装計画を生成する機能です。複雑な要件をAIと対話しながら整理できるため、特に新しいプロジェクトの立ち上げに有効と考えられます。Autopilotモード はその計画をもとにコードを自律的に書き進めるエージェント機能です。マルチモデルワークフロー により、フェーズごとに最適なモデルを選択できます。–allow-all-toolsフラグ はモデルがファイル操作やコマンド実行などのツールを使用することを許可するオプションです。また GitHub MCPサーバー を接続することで、リポジトリ操作などGitHub固有の機能をAIから利用できます。
これらを組み合わせることで、要件定義から実装まで一貫したワークフローをターミナル内で完結できる点が、Copilot CLIの特徴と言えます。Copilot CLIの基本的な使い方については、入門記事(https://jobirun.com/github-copilot-cli-beginners-guide/)でも整理していますので、あわせてご覧いただければと思います。
オープンソースとして公開
今回制作された絵文字リストジェネレーターは、GitHubのリポジトリ(https://github.com/cassidoo/emoji-list-generator)でオープンソースとして公開されています。ライブストリームで構築したプロジェクトをそのまま公開している点は、開発のリアルな経緯を追えるという意味で参考になるかもしれません。また、GitHub Copilot SDKやOpenTUIを実際にどう組み合わせているかを確認する素材としても活用できると思います。
まとめ
Rubber Duck Thursdaysで公開されたこの事例は、GitHub Copilot CLIのPlanモードとAutopilotモードを組み合わせ、計画から実装まで一貫してターミナル内で完結させる実践的なワークフローを示しています。Claude Sonnet 4.6とOpus 4.7のマルチモデル活用という点も、開発現場での参考になるのではないかと思います。
