Copilot Workspaceからの招待
こんにちは、エンジニアの皆さん。GitHubの製品発表で「こりゃ凄い」という期待感があり、そこから暫く立って音沙汰もなく、、「本当にリリースされるの?」とか「やっぱりそんなツールは出来ないのでは?」などと議論があったかと思います。しかしながら本当にその日が来てしまいました。弊社のAI駆動開発チームメンバーにGitHubから通知があり早速使ってみました。魅力や使用感などとともに今後の課題など速報形式でお伝えしたいと思います。(スピード重視で雑に書きました。リライトするかも)使った感じからすると「便利すぎるので、もうコードは書かなくなりますね~」でした!ご参考になれば!
Copilot Workspaceの魅力とは?
- プロセスの可視化でブラックボックスを解消
コーディングに至るまでの思考やプロセスを段階的に示してくれるので、プロジェクトの全体像を把握しやすくなります。ブレインストーミングからプランニング、実装まで、一貫した流れで進められます。
- AIと人間の協調作業
各段階で人間が編集できるので、AIが見落とした点もフォロー可能。AIの提案に自分のアイデアを加えることで、より質の高い成果物が得られます。 - リポジトリ全体を一望
GitHub Workspaceはリポジトリ全体を見渡せるため、コードの一部分だけでなく、プロジェクト全体を理解しながら進められます。 - 自然言語でのコミュニケーション
AIとのやり取りは自然言語で行えるので、複雑なコマンドや設定は不要。最初のIssueにしっかりと要件を記述することで、スムーズにプロジェクトを進行できます。
具体的な利用ステップ
- Issueの作成
まず、自然言語でタスクを記述したIssueを作成します。 - ブレインストーミング
AIが現在の挙動と解決策を分析し、課題を整理してくれます。この段階で、自分でも訂正や追加が可能です。
- プランの作成
課題が整理できたら、具体的なコーディングプランをAIが提案します。ここでも自分の意見を反映できます。 - コーディング
プランを承認すると、AIがコードを生成します。必要に応じて自分でコードを追加したり、AIに質問・指示を出すこともできます。 - レビューとマージ
コードを確認し、問題なければプルリクエストをマージ。Issueもクローズされ、タスク完了です。
注意点とデメリット
- 部分的な視野になりがち
生成AIの提案部分に集中しすぎると、コード全体を見る機会が減る可能性があります。常に全体像を意識しましょう。 - 自然言語の精度が重要
AIに的確な指示を出すためには、明確で詳細なIssueを書く必要があります。
まとめ
- 便利すぎる弊害
コードメンテする時に影響調査などされるかと思いますが、勝手にやってくれるので認知漏れが発生しやすいです。超便利なDIYグッズがあり、自動で巨大な家が作れるのですが「おや?こんな部屋あったっけ?」みたいなことが起こるのではないか?と懸念してます。作業は減るのは間違いないかと思いますが、考えることが増えて、仕事中は腕組んで「う~ん」と唸っている人が増えるかな~