Devin と OpenInspect: バックグラウンドエージェントと自律コーディングへのシフト

Devin と OpenInspect: バックグラウンドエージェントと自律コーディングへのシフト

バックグラウンドエージェントへのシフト

AI コーディングは IDE での「ハンドホールディング」から、開発プロセスを自律的に推進するクラウドベースの「バックグラウンドエージェント」へと移行しています。2025 年 12 月頃にモデルの転換点が訪れ(Opus 4.5 や GPT 5.2 など)、エージェントが仕様から最小限の摩擦で完了した PR へと移行できる実用的な「spec‑to‑pull request」ワークフローが可能になりました。

Cognition では、このシフトによりマージされた PR が 7 倍に増加し、Devin に起因するコミット率が 1 月の 16% から 3 月には 80% に跳ね上がりました。

バックグラウンドエージェントのアーキテクチャ

本番環境で使用できるバックグラウンドエージェントを構築するには、エージェントの実行環境に対して主に 2 つのアーキテクチャパターンから選択する必要があります。

Harness In-the-Box と Harness Out-of-the-Box

  • Harness In-the-Box: エージェントはサンドボックス内で直接実行されます。状態管理はシンプルですが、シークレットをボックス内に配置しなければならず、予測不可能な AI による偶発的な情報流出リスクが高まります。
  • Harness Out-of-the-Box: 「脳」(エージェントのロジックとコントロールプレーン)は外部で動作し、サンドボックスは「手」(実行環境)として機能します。高権限シークレットとエージェントが操作するマシンを分離するため、より複雑ですが安全性が高いアーキテクチャです。

インフラとサンドボックスの要件

  • Full VMs vs. Docker: Docker はインフラ構築に便利ですが、エージェントが実際のアプリケーションを実行したり、ネストされた仮想化(例: Android エミュレータの実行)を行ったり、真のセキュリティ境界を提供するためにはフル VM が必要になることが多いです。
  • リポジトリ設定: エージェント展開における最も難しい課題の一つは「リポジトリ設定」― エージェントが正しい依存関係、認証情報、環境を備えてコードを自律的に実行・テストできるようにすることです。
  • 高速リストア: 起動時間の長さを回避するため、Cognition はブロック差分ファイルストレージ形式を開発しました。これにより、ディスク全体を処理するのではなくファイルシステムの差分だけを処理して VM を素早く起動・停止できます。

テストの課題

テストは単なる「コンピュータ使用」(画面上の座標をクリックできること)を超える、独自の問題解決課題です。効果的な自律テストを実現するためにエージェントは次のことを行う必要があります。

  1. 正しいコードバージョンでフロントエンドとバックエンドアプリケーションをどのようにオーケストレーションするかを推論する。
  2. 管理者権限や特定のフィーチャーフラグが必要になる場合がある、特定機能をトリガーする。
  3. スクリーンショットやビデオ録画を用いて結果を検証し、人間のレビュアーに「動作確認済み」のマージタイミングを提供する。

記憶と知識管理

記憶は依然として大きな未解決の検索問題です。現在のアプローチは以下の通りです。

  • 自動生成メモリ: Devin はユーザーに対してメモリを提案するシステムを使用します(例: "Cole がドラフト PR を好むことを覚えておきますか?")。ユーザーはそれを承認または拒否します。
  • メモリの剪定と編集: エージェントが既存のメモリを編集できるようにする仕組みが進化しています。好みが変わったときにメモリを更新できます。
  • ファイルシステムベースのメモリ: メモリをファイルシステム(例: memory.md ファイル)として扱い、エージェントが自律的にナビゲート・管理できるようにする流れがあります。

「バイブコーディング」およびコードベースの劣化リスク

制御されていない「バイブコーディング」― 厳密なレビューなしに AI コードを自動マージすること ― はコードベースの劣化を招きます。実験では、この方法でコードベースを維持できる期間は約 2 週間で、重複や一貫性のないパターンが増えて管理不能になります。

主なリスク:

  • 最悪のエンジニアへの退化: エンジニアがコード監査なしに AI を使用すると、AI はその悪いパターンを学習し、指数関数的に「スロップ」を増やします。
  • AI コードの匂い: Python での過剰な getattr 使用(クラッシュ回避のためのリワードハッキング)や、モジュール名変更を避けるための不要な後方互換インポートなど、AI が生成しがちなパターンがあります。

バックグラウンドエージェントの本番ユースケース

標準的な機能開発以外にも、バックグラウンドエージェントは以下のように活用されています。

  • SRE 自動トリアージ: エージェントが Sentry、DataDog などのアラートの一次対応者となり、ログやデータベースからコンテキストを収集し、人間が介入する前に問題を修正する PR を提案します。
  • エンジニア以外の貢献: プロダクトマネージャー(PM)やマーケティングチームが Slack のプロンプトを通じて迅速なバグ修正や変更を直接デプロイします。
  • カスタマーサポート: エージェントが顧客報告バグをコードベース全体のコンテキストで分析し、即座に技術的回答やエンジニア向けトリアージを提供します。
  • セキュリティスキャン: コードベースの継続的な自律セキュリティレビューを実施します。

要約: Walden Yan(Cognition)と Cole Murray(OpenInspect)は、ハンドホールド型 AI コーディングから「バックグラウンドエージェント」への移行について議論します。エージェントは仕様からプルリクエストまで自律的に進め、2025 年 12 月のモデル転換点がハイライトされています。

タイトル: Devin と OpenInspect: バックグラウンドエージェントと自律コーディングへのシフト

Sources