Open Agents

Vercel 上でバックグラウンドのコーディングエージェントを動かすためのオープンソース・リファレンス実装(fork して拡張することを想定)。

1 — 概要

Open Agents は、Web UI・エージェントランタイム・Sandbox オーケストレーション・GitHub 連携をひとつのモノレポにまとめ、プロンプトからコード変更までを「ノート PC を開きっぱなしにしなくても」進められるようにする参照アプリ。公式デモは open-agents.dev。

3レイヤー構成
外部分離Agent と Sandbox
Workflow durable 実行
Vercel Sandbox VM
2 — 設計の核(エージェントは Sandbox の外)

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 の箇条書きに準拠)。
3 — リポジトリ構成
パス役割
apps/webNext.js。ワークフロー、認証、チャット UI。
packages/agentエージェント実装、ツール、サブエージェント、スキル。
packages/sandboxSandbox 抽象と Vercel Sandbox 連携。
packages/shared共有ユーティリティ。
4 — 主な機能
  • ファイル・検索・シェル・タスク・スキル・Web などのツールを備えたチャット駆動コーディングエージェント
  • Workflow SDK による durable な多段実行、ストリーミング、キャンセル
  • スナップショットベースで再開可能な隔離 Vercel Sandbox
  • Sandbox 内でのリポジトリ clone とブランチ作業
  • 成功ランの後の自動コミット・push・PR 作成(任意・設定依存)
  • 読み取り専用のセッション共有リンク
  • ElevenLabs による音声入力(任意)
5 — ランタイムの挙動
  • チャット API はエージェントをインライン実行するのではなく、ワークフロー run を開始する。
  • 各ターンは永続化された複数ステップにまたがって続行しうる。
  • 進行中の run は、既存ワークフローへのストリーム再接続で再開できる。
  • Sandbox はベーススナップショットを使い、ポート 3000 / 5173 / 4321 / 8000 を公開。無操作で休止する。
6 — 環境変数(段階別)

サーバー起動の必須

変数用途
POSTGRES_URLDB 接続
JWE_SECRETトークン系

ホスト上でサインインまで使う

変数用途
ENCRYPTION_KEYトークン暗号化
NEXT_PUBLIC_VERCEL_APP_CLIENT_IDVercel OAuth
VERCEL_APP_CLIENT_SECRETVercel 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 など。
7 — 開発・デプロイ

依存関係は 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 を根拠にしたビジュアル解説用の要約です。手順・環境変数の最終確認はリポジトリの最新ドキュメントを参照してください。