OpenBot — 専用の実行環境と監査機能を備えたAIエージェント基盤
CopilotKit/OpenBot
★ 11,643 ・ TypeScript ・ MIT
概要
OpenBotは、AIエージェントを自社インフラやローカル環境で安全に運用するためのセルフホスト型ワークスペースです。開発元は、アプリケーションへのAI統合フレームワークを手掛けるCopilotKitです。
本プロジェクトでは、AIエージェントに対して「Bot Computer」と呼ばれる独立した環境(ブラウザ、ファイルシステム、各種ツール群)が割り当てられます。エージェントがアクションを実行する際には事前に人間の承認を挟むことができ、実行された操作はすべて事後に記録されます。
また、エージェント間通信のオープンプロトコルであるAG-UI(Agent-User Interface)や、ツール連携のためのMCP(Model Context Protocol)に対応しており、既存のエージェントフレームワークで作成したボットを統合して管理することが可能です。組織内のセキュリティやガバナンスを維持しつつ、自律型エージェントを業務フローに組み込みたいエンジニアやチームに適しています。
主な特徴
- Bot専用のコンピューティング環境: 各Botには独立したブラウザ、ファイル、ツール環境が割り当てられ、画面操作や自動化タスクを安全に実行できます。
- 人間の介入とガバナンス(Human-in-the-loop): すべてのアクションは実行前に決定・確認され、送信や危険な操作の前に人間の承認を待機させる設定が可能です。実行された動作は監査ログとして記録されます。
- マルチモデル・マルチエージェント対応: OpenAI、Claude、Geminiのほか、OpenAI互換エンドポイントを持つオープンモデルを利用できます。また、異なるスタックで構築されたエージェントを同一ワークスペースに接続できます。
- AG-UIおよびMCPによる拡張性: AG-UIプロトコル経由で多様なエージェントフレームワークと接続できるほか、MCP(Model Context Protocol)によるツール連携に対応しています。
- 柔軟な展開形態: macOS(Apple silicon / Intel)およびWindows向けに署名済みデスクトップアプリが提供されているほか、Kubernetes上でのチーム向けセルフホストが可能です。Web、モバイル(iOS / Android)、チャットツール(Slack / Teams)連携も用意されています。
使い方
OpenBotの利用方法は、手元のラップトップで完結するデスクトップアプリを利用する方法と、Kubernetes上にクラスタ展開する方法の大きく2つに分かれます。
ラップトップでのクイックスタート
個人の検証や手元での実験用途であれば、フロントエンドとDockerベースのバックエンドが一体となったインストーラーが最も手軽です。ターミナルや開発者向けツールの事前セットアップを必要とせず導入できます。
- macOS: Apple silicon向け、Intel Mac向けのNotarized(公証済み)
.dmg - Windows: x64向け署名済みインストーラー
Kubernetesへのデプロイ(評価環境)
チーム利用やインフラ検証向けには、Helmチャートを用いたKubernetes環境へのデプロイが案内されています。AWS EKS、Azure AKS、Google GKE、またはオンプレミスのKubernetesクラスタに対応しています。
まずはリポジトリからソースコードを取得します。
git clone https://github.com/CopilotKit/OpenBot.git
cd OpenBot
評価環境のクラスタには、amd64ノード、デフォルトのStorageClass、kubectl、Helm、および利用するLLMのAPIキー(OpenAIなど)が必要です。また、後述のCopilotKit Intelligenceの評価用ライセンスキーが必要となります。
技術的なポイント
システムアーキテクチャ
OpenBotのシステムは大きく以下の3つのコンポーネントで構成されています。
-
OpenBot frontends Mac、Windowsのデスクトップアプリをはじめ、Web、iOS、Android、Slack、Teamsといった多様なインターフェースが用意されています。対話画面、インタラクティブな出力表示、Botのコンピューター画面のプレビュー、承認UIが各サーフェスに合わせて提供されます。
-
OpenBot backend TypeScriptを主言語として構築されており、ワークスペースAPIの提供、組み込みBotの実行、外部エージェントやツールの接続、Botコンピューターの管理を行います。また、ユーザー認証、権限管理、アクションポリシーの適用、監査ログの収集といったガバナンス機能をAPIレイヤーで強制します。データストアとしてPostgreSQLおよび永続ストレージを使用します。
-
CopilotKit Intelligence 永続的な会話セッション管理、メモリ、Automatic Learning、エンタープライズ向けの統制サービスを提供するバックサイド基盤です。Kubernetes上でOpenBotとともに稼働します。
エージェントと外部ツールの連携方式
OpenBotは、CopilotKitが提唱する「AG-UI」規格を採用しています。これにより、AnthropicのClaude Agent SDK、Microsoft Agent Framework、Google ADK、AWS Strands、LangChain、Mastra、Pydantic AI、CrewAIなど、多種多様なフレームワークで作成されたエージェントをアダプターやAG-UIエンドポイント経由でワークスペースに接続できます。また、Amazon Bedrock AgentCoreのようにAG-UIを直接サポートするプラットフォームともシームレスに統合できます。
コンピュータの実行基盤(ブラウザやファイル環境)はプラグイン構造になっており、デフォルトのKubernetesセットアップを利用するだけでなく、互換性のある外部のコンピューティングプロバイダーに接続することも可能な設計となっています。
注意点
ライセンス体系の分離
導入にあたって最も注意すべき点は、コンポーネントによってライセンス形態が異なる点です。
- OpenBot本体: MITライセンスで提供されるオープンソースです。フォーク、改変、ホワイトラベル化が自由に行えます。
- CopilotKit Intelligence: 別途ライセンスが付与されます。個人のラップトップでの利用・実験用途には無料のローカルライセンスが自動で適用されます。一方、Kubernetesでの評価には無料トライアルライセンスの申請が必要であり、本番運用には有償ライセンス(OpenBot for Businessに含まれるもの)が必要です。
動作環境と通信要件
Kubernetesクラスタにデプロイする際、現行の評価手順ではamd64アーキテクチャのノードが前提とされています。また、完全ローカル環境で運用する場合でも、初回起動時のダウンロード、アカウント認証、ローカルライセンスの更新にはインターネット接続が必要です。さらに、クラウドモデル(OpenAI APIやClaude等)や外部Webサービスを利用する場合は、当然ながら外部への通信が発生します。
まとめ
OpenBotは、AIエージェントにブラウザやツールの実行環境を与えつつ、人間の承認フローや監査機能を備えたセルフホスト対応のワークスペースです。AG-UIやMCPといった標準規格を採用しているため、既存のエージェント資産や外部ツールを活かしながら自社インフラ上で安全にAI coworkerを運用したいチームにとって有力な選択肢となります。





