Devin初心者こそ知ってほしい「Session Insights」によるAIコーディングの「振り返り」
生成 AI を利用した開発で欠かせないステップ、それは「振り返り」だと考えています。「なぜ今回のセッションはうまくタスクを進めることができたのか」や「なぜ今回は想定外のコードや要件ばかり提案されてきたのだろうか」、そして「どのようなルールやナレッジ・コンテキストを与えることで、再現性を高めたり問題を回避できるようになるか」を考える。このような PDCA サイクルに近いワークフローが最近の AI コーディングでは要求されているように感じます。
Devin を利用している場合、この振り返りについても Devin がアシストしてくれます。今回は Devin による振り返りアシスト機能「Session Insights」について紹介します。
Devinではセッションの振り返りができる
Devinのセッションを続けていると、セッションサイズなどを表示するアイコンエリアにカーソルを合わせると、「View Session Insights」ボタンが表示されるようになります。これをクリックすると、振り返りなどを行えるモーダル画面が開きます。

デフォルトで確認できるのは、現在のセッションでの ACU 利用量やセッションサイズです。セッションサイズは実行時間とメッセージの数から算出された目安で、サイズが大きくなればなるほど複雑なタスクをやらせている可能性が高いと判断できます。

「Generate Analysis」ボタンをクリックすると、現在のセッションについて分析が始まります。ボタンを押した時点での分析ですので、この後にセッションを続けた場合は、分析結果がまた変わります。

分析が終わると、英語でセッションにおける問題分析がレポートされます。画像の例では、ナレッジギャップが起きていることやReasoning issue(計画段階の問題)などが報告されていることがわかります。

また、Actionable Feedbackタブをクリックすると、プロンプトの改善やナレッジなどの提案が行われます。

プロンプトの改善提案については、「Start New Session」をクリックすることですぐに新しいセッションへ適用できます。これによって、「今回は上手くいかなかった。なのでPull Requestはクローズし、Session Analysisで作成されたプロンプトでやり直そう」という判断ができるようになります。
このように、DevinのSession Insights は、Devin セッションを振り返り、何がうまくいかなかったのかを自動的に分析してくれる機能です。まるで経験豊富な先輩エンジニアが、あなたの作業を振り返って的確なアドバイスをくれるような感覚といえるでしょう。
DevinやAIコーディングに慣れるために、Session Insightsを活用する
AIコーディングがうまくいかない原因の一つが、曖昧な指示です。「ログイン機能を作って」といった漠然とした指示では、Devin は何をどのように実装すればよいのか判断に迷ってしまいます。
Session Insights を適用後の改善例では、「ログイン機能を実装してください。要件:JWT認証、バリデーション付きフォーム、TDD原則に従ったテスト作成。完了後はPRを作成し、CIが通るまで待機してください。」といった具体的な指示に変わります。
テスト戦略の不明確さも頻繁に見られる問題です。「テストも書いて」という曖昧な指示ではなく、「TDD原則に従って、まず失敗するテストを作成し、その後実装を行ってください。テスト期待値を実装に合わせて変更することは避け、実装をテストに合わせて修正してください。」といった明確な指示を心がけましょう。
コンテキスト不足も大きな問題となります。「AWS接続でエラーが出る」という説明では情報が不十分です。改善後は「AWS接続でエラーが発生しています。環境:EC2インスタンス、IAMロール使用、具体的なエラーメッセージ:'AWS credentials are required'。既存のEC2設定との整合性を確認してください。」といった詳細な情報を提供することが重要です。
このようなプロンプトのトライアンドエラーや、なぜ上手くいかなかったのかの分析を1クリックで簡単に実現し、そこから次のチャレンジを促す仕組みがSession Insightsです。
つまり、Devinを新しく使い始めようとしている開発者や、プロトタイプ作りなどにDevinを使わせてみたいデザイナーやプロダクトマネージャーなどが迷子にならない道標として、初心者ほど使いこなすことが求められる機能と言えるでしょう。
まとめ
Session Insights 機能は、Devin 初心者にとって非常に価値の高い機能といえます。
得られるメリットとしては、客観的な問題分析で改善点が明確になること、自動生成される改善プロンプトで次回の効率向上が期待できること、パターン学習による継続的な改善が可能になることが挙げられます。
活用のポイントとして、長時間セッション後は必ず Session Insights を確認し、改善されたプロンプトを積極的に活用することが重要です。同じような問題を繰り返さないよう学習していくことも大切でしょう。
Session Insights を活用して、Devin とのより効率的な開発体験を実現してください。
Discussion