Open Agents
Vercel 上でバックグラウンドのコーディングエージェントを動かすためのオープンソース・リファレンス実装(fork して拡張することを想定)。
何をするプロジェクトか
Open Agents は、Web UI・エージェントランタイム・Sandbox オーケストレーション・GitHub 連携をひとつのモノレポにまとめ、プロンプトからコード変更までを「ノート PC を開きっぱなしにしなくても」進められるようにする参照アプリ。公式デモは open-agents.dev。
3レイヤー構成
外部分離Agent と Sandbox
Workflow durable 実行
Vercel Sandbox VM
データフロー
README が強調するのは「エージェント本体は VM の中ではなく外で動き、ファイル操作・シェル・検索などのツール経由で Sandbox と対話する」という分離である。
flowchart TD
W["Web UI\n認証・セッション・チャット"]
A["Agent workflow\nVercel 上 durable"]
S["Sandbox VM\nfs / shell / git / dev server"]
W --> A
A -->|"ツール API"| S
分離の効用: エージェント実行が単一 HTTP リクエストに縛られないこと、Sandbox の休止・再開を独立させられること、モデルやプロバイダと Sandbox 実装を別々に進化させられること、VM を単純な実行環境のまま保てること(README の箇条書きに準拠)。
パッケージ対応
| パス | 役割 |
|---|---|
apps/web | Next.js。ワークフロー、認証、チャット UI。 |
packages/agent | エージェント実装、ツール、サブエージェント、スキル。 |
packages/sandbox | Sandbox 抽象と Vercel Sandbox 連携。 |
packages/shared | 共有ユーティリティ。 |
README 記載の能力
- ファイル・検索・シェル・タスク・スキル・Web などのツールを備えたチャット駆動コーディングエージェント
- Workflow SDK による durable な多段実行、ストリーミング、キャンセル
- スナップショットベースで再開可能な隔離 Vercel Sandbox
- Sandbox 内でのリポジトリ clone とブランチ作業
- 成功ランの後の自動コミット・push・PR 作成(任意・設定依存)
- 読み取り専用のセッション共有リンク
- ElevenLabs による音声入力(任意)
実装メモ
- チャット API はエージェントをインライン実行するのではなく、ワークフロー run を開始する。
- 各ターンは永続化された複数ステップにまたがって続行しうる。
- 進行中の run は、既存ワークフローへのストリーム再接続で再開できる。
- Sandbox はベーススナップショットを使い、ポート
3000/5173/4321/8000を公開。無操作で休止する。
最低限・サインイン・GitHub・任意
サーバー起動の必須
| 変数 | 用途 |
|---|---|
POSTGRES_URL | DB 接続 |
JWE_SECRET | トークン系 |
ホスト上でサインインまで使う
| 変数 | 用途 |
|---|---|
ENCRYPTION_KEY | トークン暗号化 |
NEXT_PUBLIC_VERCEL_APP_CLIENT_ID | Vercel OAuth |
VERCEL_APP_CLIENT_SECRET | Vercel OAuth |
GitHub(clone / push / PR)
GitHub App の Client ID / Secret、App ID、秘密鍵、slug、Webhook 秘密など(README の一覧に準拠)。
任意:
REDIS_URL / KV_URL(スキルメタのキャッシュ)、本番 URL 系、VERCEL_SANDBOX_BASE_SNAPSHOT_ID、ELEVENLABS_API_KEY など。
ローカルとコマンド
依存関係は Bun。ルートで bun install → apps/web/.env.example を .env にコピーして埋める → bun run web。
bun run web
bun run check
bun run typecheck
bun run ci
bun run sandbox:snapshot-base
Vercel へのデプロイは README の手順(DB・秘密鍵生成・OAuth コールバック・GitHub App 設定)に従う。
公式・ソース
本ページは
repos/open-agents/README.md を根拠にしたビジュアル解説用の要約です。手順・環境変数の最終確認はリポジトリの最新ドキュメントを参照してください。