読み込み中…
読み込み中…
OpenGov は政府向け ERP ソフトウェア企業として、顧客向け AI エージェント「OG Assist」の開発とスケーリングに取り組んでいます。彼らは既存のフレームワークから脱却し、TypeScript の Effect ライブラリを活用した独自のエージェントループを構築することで、完全な制御性と拡張性を確保しました。A2A プロトコルの採用や、人間による承認が必要な操作における「ヒューマン・イン・ザ・ループ」、コード実行用のサンドボックス環境など、実運用に必要なセキュリティと信頼性の仕組みを実装しています。さらに、長文コンテキストの管理や生成 UI の実現、Effect による自動トレーシングを活用した観測性の実現など、生産環境での AI エージェント構築における具体的なベストプラクティスを提示しています。
AI エージェントの実装において「フレームワーク依存からの脱却」と「セキュリティ担保」のバランスを取るための貴重なケーススタディです。特に Effect ライブラリを活用した独自ループ設計は、複雑なビジネスロジックを扱うシステムへの応用が期待できます。
LangGraph から脱却し、TypeScript の Effect ライブラリを活用して完全な制御権を持つ独自エージェントループを構築した事例。
Google が策定した Agent-to-Agent (A2A) プロトコルを採用し、フロントエンドとバックエンド間の厳格な契約と連携を確立した。
コード実行用のサンドボックス環境の導入と、変更操作における人間承認フローの実装により、安全性と信頼性を担保している。
Effect の自動トレーシング機能を活用した可視化と、CI 内の自動化された評価(Evals)およびユーザーフィードバックループの確立。
この事例は、大規模なエンタープライズ環境において AI エージェントを安全かつ効果的に運用するための具体的なアーキテクチャパターンを提供しており、特に独自ループの構築とセキュリティ対策の重要性を示しています。業界全体として、単なるプロトタイプ開発から、堅牢な観測性と評価システムを備えた本番導入への移行における重要な指針となるでしょう。
政府向け ERP ソフトウェア企業である OpenGov は、顧客向け AI エージェント「OG Assist」の開発と運用において、既存のフレームワークへの依存から脱却し、TypeScript の Effect ライブラリを活用した独自ループを構築しました。この事例は、単なるプロトタイプ段階を超え、セキュリティと観測性を徹底して担保した本番環境での AI エージェント運用における具体的なベストプラクティスを示しています。
OpenGov のエンジニアチームが直面したのは、大規模化に伴う複雑なユースケースへの対応でした。当初は LangGraph を使用していましたが、スケールするにつれ「完全な制御権」を持つ必要性を痛感しました。そこで選んだのが、TypeScript 向けのオープンソースライブラリである「Effect」です。
「Agent Loop を構築することで、もし複雑なユースケースや機能が必要になった場合、私たちはそれらを構築する必要があり、その際 Agent Loop の完全に制御できるようになります。」
LangGraph から Effect Native エージェントループへ移行した最大のメリットは、トレーシング、構造化された並行処理、ロギングなどの機能がループ全体に波及し、細粒度な制御が可能になった点です。Effect AI パッケージを活用することで、チャットや言語モデルの依存性注入を柔軟に行い、ホットスワップ(モデルの差し替え)も容易になりました。これにより、チームはレバーをすべて握り、モデルの真の能力を引き出す完全なポテンシャルを手に入れています。
エージェント間の通信には、Google が策定した「Agent-to-Agent (A2A) プロトコル」を採用しました。これは単なる仕様書ではなく、フロントエンドとバックエンド双方が消費・生成する「厳格な契約」として機能しています。
A2A では「エージェントカード」に名前や説明などのメタデータを定義し、開発の整合性を高めています。プロトコルには拡張性があり、メタデータの追加や A2UI(ユーザーインターフェースの標準化)など、多様な機能をサポートします。この厳格な仕様に従うことで、システム間のアライメントが強化され、安定した連携が可能になりました。
本番環境で AI エージェントを運用する上で最も重要なのが「安全性」です。OpenGov は以下の 2 つの仕組みにより、リスクを最小化しています。
エージェントがコードを実行したりファイルを作成したりする場合、すべては安全で一時的な隔離された空間である「サンドボックス内」で行われます。例えば、「PDF を作成してダウンロードできるように」というリクエストに対し、エージェントはサンドボックス内で誠実に処理を行い、結果のみをユーザーに提供します。処理後は自動的に破棄(tear down)されるため、本番システムへのリスクは一切ありません。
データの変更や重要な操作を行う際、エージェントは決定論的にループを中断し、人間の承認を待ちます。UI 上で「受け入れ」または「拒否」を選択できる仕組みにより、ユーザーがエージェントの行動を明示的にコントロールできます。
「特にエージェントが変異操作を行おうとする際は常に、人間が運転席に座っていることを確認しています。」
この仕組みは、信頼関係を築きながら安全性を担保する上で不可欠な要素となっています。
「見えないものはスケールできません」という言葉通り、OpenGov は Effect の自動トレーシング機能を活用した強力な観測性を実現しています。Effect を使用すると、関数呼び出しの詳細なドリルダウンやスパンのタグ付けが自動的に発生し、API 呼び出しからエラー発生までの経路を可視化できます。
また、開発プロセスには以下の評価システムを組み込んでいます。
これらを組み合わせることで、ツールの改善やスキル向上を迅速に反復し、エージェントの精度を継続的に高めています。
長い会話におけるトークン制限という課題に対し、OpenGov は「ローリングサマライゼーション」を採用しています。一定数のメッセージごとに進行中の要約を出力し、直近のメッセージのみを参照する仕組みです。また、過去の会話内容を検索できる「記憶コンポーネント」を備えることで、「前に話してたあれ」のような文脈の保持も可能にしました。
さらに、エージェントがその場で UI を生成する「生成型 UI」の実現にも成功しています。ユーザーからのリクエストに応じて、ランタイムでフォームや選択肢を動的に構築・レンダリングすることで、よりパーソナライズされた臨場感のある体験を提供しています。
OG Assist の構築を通じて得た知見は、顧客向けサービスだけでなく、社内の開発ワークフローにも還元されています。Claude や Cursor などの AI ツールを活用し、コードの読み書き、レビュー、リリースプロセスを加速。ツールとスキルこそがすべてであるという信念のもと、社内でもエージェントを積極的に導入することで、開発スピードの向上を実現しています。
OpenGov の事例は、AI エージェントを単なる実験室の成果物から、堅牢な観測性と評価システムを備えた本番導入へと移行させるための重要な指針となっています。完全な制御権を持つ独自ループと、安全性への徹底的なこだわりが、大規模エンタープライズ環境における AI 活用の成功を可能にしています。
この記事はAIが動画の内容を記事化したものです。正確な発言は動画および文字起こしをご確認ください。