Continuous AI とは、バックグラウンドのエージェントが継続的インテグレーション(CI)のジョブと同じようにリポジトリ内で動作しつつ、ルールではなく推論を要するタスクに充てられるパターンである。GitHub は 実践における Continuous AI:エージェント型 CI で開発者が今日自動化できること において、これを「自然言語のルールとエージェントによる推論を、リポジトリ内で継続的に実行する」という一文で定式化している。実際には、コードベースについて何が成り立っているべきかを平易な言葉で表現し — とりわけその期待がルールやヒューリスティクスに還元できない場合に — エージェントにリポジトリを評価させ、パッチの提案、Issue、ディスカッション、知見など、開発者がレビューできる成果物を生成させることを意味する。
このパターンは CI を置き換えるものとしてではなく、CI との対比によって定義されている。CI は二値的な結果のために設計され、正しさを曖昧さなく表現できる領域で優れていると特徴づけられており、情報源はこれを欠点ではなく強みとして扱っている。Continuous AI は、正しさが解釈や意図に依存するケースのための、異なる種類の自動化として位置づけられている。同記事は、これが新しい製品ではないこと、従来の CI は引き続き不可欠であること、そして問題を決定論的に表現できる場合には CI を拡張するのが正しいアプローチであることを明言している。
用法
このパターンが対象とする作業は、判断の比重が大きく文脈に依存するもの — 意図が依然として保たれているかどうか — と特徴づけられている。挙げられている例は、実装と食い違うドキュメンテーション文字列、アクセシビリティのリンティングは通過するのに依然としてユーザーを混乱させるテキスト、メジャーバージョンを上げずに振る舞いを変える依存関係、ループ内でコンパイルされる正規表現、そして操作を通じてしか見えない UI の振る舞いである。
ワークフローは、制約と許可される出力を伴う意図の記述として書かれる。情報源の例には、ドキュメントに記された振る舞いが実装と一致しているかを確認して具体的な修正を提案すること、アクティビティとバグの傾向に関する週次レポートを生成すること、クリティカルパスにおけるパフォーマンスの劣化にフラグを立てること、ユーザーフローにおける意味上の回帰を検出することが含まれる。情報源は、これらを一行で書けるものと読むことに注意を促している。開発者がこうしたワークフローを一度で書き上げることはまれで、エージェントと協働しながら意図を洗練させ、許容される出力を定義していくとされる。
7 つのカテゴリが、理論上のものではなく実際のリポジトリで試されたものとして提示されている。ドキュメントと振る舞いの整合、Issue・プルリクエスト・コミット・CI の結果を横断して統合する定期レポートの作成(その価値はレポートそのものではなく統合にあるとされる)、原文が変更されたときの翻訳の再生成、依存関係のドリフトの検出(エージェントが CLI のヘルプテキストを前日までのものと差分比較し、文書化されていないフラグについて Issue を起票したというデモが報告されている)、テストカバレッジの底上げ、バックグラウンドでのパフォーマンス改善、そしてエージェントをプレイテスターとして用いて UX の劣化を検出する自動インタラクションテストである。
適用される場面
このパターンが当てはまるのは、コードベースについての期待が重要であるにもかかわらず、意味を失わずにはルールに還元できない場面である。GitHub Next の責任者が示す判定基準は、そのタスクをルールやフローチャートとして表現できるかどうかである。前提となるのは、トリガーとなるイベントシステムを備えたリポジトリと、宣言された範囲内でのみ行動を許されたエージェントである。
安全上の前提条件として挙げられているのは Safe Outputs である。エージェントはデフォルトで読み取り専用で動作し、ワークフローが明示的に許可した成果物しか生成できない。想定されている役割分担では、開発者の判断が最終的な権限であり続ける。エージェントはコードをマージせず、情報源はこのパターンを、開発者の判断を置き換えるのではなく、コードベース全体にわたってその判断をスケールさせる助けとなるものと説明している。決定論的な作業に適用するのは誤用であり、そうした作業については YAML、スキーマ、ヒューリスティクスが引き続き正しい道具であると情報源自身が述べている。
確立の度合い: これは 1 つのベンダーによる研究段階のパターンであり、その研究開発グループによって探究され、ワークフローを CI のアクションへとコンパイルするプロトタイプを通じて試されたものである。上記のカテゴリは実際のリポジトリで試されたと報告されている。その大半は効果の測定なしに記述されているが、テストカバレッジの事例は例外で、45 日間で 1,400 件を超えるテストにより、約 80 ドル分のトークンでカバレッジを約 5% からほぼ 100% に引き上げたと報告されている。
関連用語
- Safe Outputs — このパターンが依拠するパーミッションモデル
- 実践における Continuous AI:エージェント型 CI で開発者が今日自動化できること — この説明の情報源
- エージェント型コーディング — このパターンがリポジトリの自動化に適用する、より広い実践
- ヒューマン・イン・ザ・ループ — このパターンが維持するレビューのチェックポイント
- ランタイム監視としてのコードレビュー — レビューを継続的な制御として用いる関連する用法