Devinを触って感じた未来感
先日、AI開発エージェントの Devin を触る機会がありました。
Devin は、コードを書くだけでなく、実行やテストまで含めて開発作業を進められるAIソフトウェアエンジニアとして紹介されています。公式ドキュメントでも、コードを書き、実行し、テストできる自律的なAIソフトウェアエンジニアとして説明されています。
参考: Introducing Devin - Devin Docs
実際に触ってみると、未来を少し近くに感じました。
ただ、同時に「もう全部任せられる」という感じではありませんでした。
AIエージェントは確実に便利になります。ですが、今の段階では、人間側が何を任せるか、どこで確認するか、どこまで責任を持つかを決める必要があります。
普通のチャットAIとは少し感覚が違う
普通のチャットAIは、一つの質問に答えてもらう感覚があります。
たとえば、
- このエラーの原因を教えて
- このコードをリファクタリングして
- この文章を整理して
のように、こちらが投げた内容に対して返事をもらいます。
一方で、DevinのようなAIエージェントは、もう少し作業者に近い感覚があります。
チケットやタスクを渡すと、コードを読んで、変更して、動かして、確認するところまで進めようとします。
これは大きな違いです。
チャットAIは「相談相手」に近く、AIエージェントは「作業を進める相手」に近いです。
うまくいくには、タスクの切り方が必要
AIエージェントに作業を任せるとき、いちばん大事なのはタスクの切り方だと感じました。
曖昧な依頼をすると、AI側も曖昧に進めます。
たとえば、
この画面をいい感じに直して
だと、人間同士でも認識がずれます。
AIエージェントに渡すなら、もう少し具体的にしたいです。
目的:
- 一覧画面で未完了タスクを見つけやすくする
変更してよい範囲:
- tasks/index.html.erb
- task_card_component.rb
- task_card_component.css
完了条件:
- 未完了タスクが上に表示される
- 完了済みタスクは薄く表示される
- 既存の作成・編集導線は変えない
- テストが通る
これくらい書いておくと、AIも進めやすくなりますし、人間側もレビューしやすくなります。
AIに質問する前に、AIが理解しやすい文章へ直す と同じで、AIに渡す前の言語化が結果を左右します。
AIエージェントに任せやすい作業
実際に使うなら、いきなり大きな設計判断を任せるより、確認しやすい作業から始めるのがよさそうです。
たとえば、
- 小さなUI修正
- テスト追加
- 既存コードの調査
- 使っていないコードの削除
- エラー再現手順の整理
- ドキュメント更新
こういう作業は、完了条件を決めやすいです。
一方で、
- 事業判断が絡む仕様変更
- セキュリティ影響が大きい変更
- データ移行を伴う変更
- 既存仕様が曖昧な大規模改修
は、人間側の設計と確認を厚くしたいです。
主導権は人間側に残す
AIエージェントは、作業を前に進めてくれます。
ですが、主導権まで渡してよいわけではありません。
特に見たいのは、次の観点です。
- その変更は本当に必要か
- 既存仕様を壊していないか
- 不要なファイル変更が混ざっていないか
- テストで確認できているか
- 将来の保守で困らないか
GitHub Copilot ChatのAgentモードを使ってみた。便利だけど主導権は人間に残す でも書いたように、AIエージェントを使っても主導権は人間側に残したいです。
レビューできない領域は任せすぎない
AIエージェントに任せるときに、自分が大事だと思っている基準があります。
それは、差分を見て良し悪しが判断できるかどうかです。
自分がレビューできない領域を丸ごと任せると危険です。
たとえば、セキュリティまわりや決済まわりなど、影響が大きい領域では、AIの出力をそのまま信じるのではなく、公式ドキュメントや既存実装と照らし合わせる必要があります。
AI時代の開発者に必要なセキュリティの基本 と同じで、AIが書いたコードでも責任は人間に残ります。
明日からできること
AIエージェントを使うなら、まずは次の形で試すのがよさそうです。
- 30分から1時間で終わる小さなタスクを選ぶ
- 完了条件を箇条書きにする
- 触ってよい範囲を書いておく
- 途中で差分を確認する
- 最後に自分で動作確認する
これだけでも、丸投げではなく共同作業に近づきます。
まとめ
Devinを触って、AIエージェントの未来は少し見えました。
ただ、その未来は「人間が不要になる」という話ではなく、「人間の仕事の渡し方が変わる」という話だと思います。
AIエージェントに任せるなら、タスクを切る力、完了条件を書く力、差分をレビューする力が必要になります。
AIで速くなるからこそ、意図と責任は人間側に残しておきたいです。