AIニュース最前線
最新ニュースAI日報Hacker日報週報動画AIツールトレンド企業

AIニュース最前線

世界中のAI最新情報を日本語で毎時更新

最新ニュース日報トレンド企業プレミアムRSS
© 2026 ainew.jp特定商取引法に基づく表記
ニュース一覧元記事を開く
Vercel Blog·2026年6月17日 13:00·約21分で読める

eve の紹介:エージェント構築・実行・スケーリングのためのオープンソースフレームワーク

#Agent Framework#Open Source#Durable Execution#Vercel#Workflow SDK
TL;DR

Vercel は、エージェント開発における標準化と生産環境の準備を目的としたオープンソースフレームワーク「eve」を発表し、Web フレームワークである Next.js のような役割を果たすことを目指している。

AI深層分析2026年6月17日 19:03
4
重要/ 5段階
深度40%
5
関連度30%
5
実用性20%
4
革新性10%
4

キーポイント

1

生産環境対応の包括的機能

Durable execution(永続的な実行)、サンドボックス化された計算、人間による承認フロー、サブエージェント、評価機能など、本番運用に必要な機能が最初から組み込まれている。

2

ディレクトリベースのアーキテクチャ

エージェントを「ディレクトリ」として定義し、各ファイルがコンポーネントを表すことで、構造と動作を一目で把握できる設計を採用している。

3

開発者の負担軽減と標準化

従来の手動での基盤構築(plumbing)を排除し、モデル設定や指示ファイル(instructions.md)、ツール定義などの記述に集中できるよう設計された。

4

ワークフロー SDK による耐久性

オープンソースの Workflow SDK をベースに、セッションの一時停止、クラッシュからの復旧、長時間実行への対応を可能にする堅牢な基盤を提供する。

5

サンドボックスによるコード実行の分離

エージェントが生成したコードは信頼できないものとして扱い、ハルネスとは独立したセキュリティコンテキストで動作する個別のサンドボックス内で実行されます。

6

人間による承認と安全な接続管理

重要なアクションには人間の承認を必須とし、認証情報や URL をモデルに直接見せずにツールやデータへの安全な接続を実現します。

7

包括的なトレーシングと評価機能

すべての実行が OpenTelemetry 標準のトレースとして記録され、再現可能なログと CI 連携可能な評価スイートにより、エージェントの動作を詳細に追跡・検証できます。

影響分析・編集コメントを表示

影響分析

この発表は、エージェント開発がまだ「手作業による基盤構築」の段階にある現状を打破し、Next.js が Web 開発に標準化をもたらしたように、エージェント分野でも共通の抽象化とベストプラクティスを確立する重要な転換点となる。特に、本番運用に必要な耐久性やセキュリティ機能をフレームワークレベルで提供することで、開発者がビジネスロジックに集中できる環境を整え、業界全体の成熟度を加速させる可能性がある。

編集コメント

エージェント開発の「泥臭い」基盤構築を解消し、実用レベルでの標準化を促す画期的なフレームワークの登場です。特に本番運用に必要な耐久性とセキュリティ機能がデフォルトで備わっている点は、企業導入における大きな追い風となるでしょう。

本日、私たちはエージェントの構築、実行、スケーリングのためのオープンソースフレームワーク「eve」をご紹介できることを誇りに思います。eve は、生産環境で動作させるために必要なすべての部品を組み立てるのではなく、エージェントが何をするかを定義することこそが重要であるという考えに基づいて設計されています。代わりに、eve にはすでに生産環境向けの機能が組み込まれています:

永続的な実行(Durable execution)

サンドボックス化された計算リソース(Sandboxed compute)

人間による承認(Human-in-the-loop approvals)

サブエージェント(Subagents)

評価機能(Evals)

その他多数の機能

eve は、私たちが自社のエージェントを構築・実行するために使用するフレームワークです。

現在のアージェントは、ウェブがフレームワーク登場前の状態だったようなもので、誰もが同じ基盤部分を独自に作り上げており、次のプロジェクトへ引き継ぐものがありません。Next.js がウェブのこの状況を終焉させたように、eve もアージェントの世界で同様の役割を果たします。

エージェントとはディレクトリのことです

これが eve のエージェントです。

各ファイルはエージェントの構成要素の一つを記述しており、一目見ただけでツリー構造から、そのエージェントが何者であり、何をし、どこに存在し、いつ自律的に行動するかを知ることができます。

数分で eve エージェントを作成

すべてのエージェントは定義から始まります。

agent.ts ファイルでは、エージェント自体の設定を行います。モデルは一行で定義でき、AI Gateway を通じてプロバイダーのフォールバックもサポートされています。また、コンパクションやモデルオプション、その他の任意フィールドも必要な時に用意されています。

エージェントに仕事と個性を与えることは、instructions.md ファイルを作成するだけで簡単です。このファイルは、eve がすべてのモデル呼び出しの前に配置するシステムプロンプトとして機能します。

あなたは、エージェントが行う作業のためにファイルを作成します。例えば、ツールやスキルには post_chart.ts や revenue-definitions.md といったファイルがあり、eve はこれらをボイラープレートや管理用の配管コードなしで動作するエージェントに接続します。あなたは、エージェントが「どのように」行うかではなく、「何を」行うかに集中できるのです。

なぜ eve を作ったのか

私たちは Vercel で長年、v0 なども含めてエージェントを構築してきました。しかし、コーディングエージェントによって誰にでもエージェントを作れるようになると、誰もがそれを行うようになりました。私たちは数百のエージェントと社内アプリをリリースし、まるで生産性の革命が起きたかのような状況でした。

しかしその裏側では、各チームはエージェントが何らかの作業を開始する前に、同じ配管コードを何度も構築・再構築しており、あるユースケースから次のユースケースへ引き継ぐものは一つもありませんでした。各エージェントは異なるタスクのために設計されていましたが、必要な要件や構造は共通しており、それに応えるための同じパターンが繰り返し現れていました。エージェントには一定の形状があるのです。

eve とは、その形状をフレームワーク化したものです。ソフトウェアのどの世代も、十分な数の人が同じものを苦労して構築した時点で、その抽象化を獲得します。そして今、エージェントにもそれが訪れています。

標準装備された機能

プロダクションでエージェントが必要とするものはすべて、このフレームワークに同梱されています。

すべての会話に対する永続的なセッション

エージェントは人間を待機し、低速なシステムを呼び出し、数時間から数日、あるいは数週間実行されることがあります。eve では、すべての会話が永続的なワークフローとして扱われ、各ステップがチェックポイントされます。これにより、セッションは一時停止したり、クラッシュやデプロイを生き延びたり、停止した場所から正確に再開したりできます。この耐久性は、オープンソースの Workflow SDK を基盤としています。

すべてのエージェントに対するサンドボックス

エージェントが作成するコードは信頼できないものとして扱うべきであるため、eve はエージェント生成のコードをアプリケーションランタイムから完全に排除します。各エージェントには独自のサンドボックスが用意され、シェルコマンド、スクリプト、ファイルの読み書きのための隔離された環境となります。これは、エージェントを制御するハーンとは別のセキュリティコンテキストで実行されます。このサンドボックスの背後にあるバックエンドはアダプターです。デプロイ時には Vercel Sandbox 上で動作し、ローカルでは Docker、microsandbox、または just-bash で動作します。また、他のプロバイダー向けに独自のアダプターを作成することも可能です。

人間による承認(Human-in-the-loop approvals)

エージェントは実際のシステムに対してアクションを実行しますが、その一部には人の承認を必要とするものがあります。eve 内のあらゆるアクションは承認を必須に設定可能であり、エージェントはその時点で一時停止して待機します。必要な場合は無期限に待機し、計算リソースは一切消費しません。承認が行われれば、eve は中断した地点からすぐにタスクを再開します。

ツール、データ、サービスへの安全な接続

エージェントはバックエンド、データ、およびその他のサードパーティ製サービスへ接続する必要があります。eve において、接続とは MCP サーバーまたは互換性のある OpenAPI ドキュメントを持つ任意の API を指し示すファイルです。

eve はリモートツールを発見し、モデルに手渡し、認証を仲介しますが、モデルは接続の URL や資格情報を決して知りません。Vercel Connect は、同意とトークンリフレッシュが組み込まれたインタラクティブな OAuth を処理します。ローンチ時点では、eve エージェントは Slack、GitHub、Snowflake、Salesforce、Notion、Linear に接続でき、OAuth、API キー、または MCP サーバーを介して到達可能な他のあらゆるものにも接続できます。

すべてのチャネルで同じエージェント

ほとんどのエージェントはちょうど 1 つの場所にしか存在しません。なぜなら、新しい表面(サーフェス)ごとに独自の統合を構築する必要があるからです。eve では、同じエージェントがすべての表面を担当し、各チャネルは小さなアダプターファイルに過ぎません。HTTP API はデフォルトで有効になっており、Slack、Discord、Teams、Telegram、Twilio、GitHub、Linear が含まれており、defineChannel でカスタムチャネルを定義できます。1 つのチャネルが別のチャネルへハンドオフすることも可能なので、インシデント Webhook が Slack 内で調査スレッドを開くことができます。

組み込みのトレーシングと評価

エージェントが何かを間違えた場合、最初の質問は「実際にエージェントは何をしたのか」です。eve では、すべての実行でトレースが生成されます。各モデル呼び出しとツール呼び出しは、その入力と出力とともに順序立てて表示され、サンドボックス内でエージェントが実行したコマンドに至るまで詳細に記録されるため、ログから断片的に組み立てるのではなく、実行を再生することができます。

スパンは標準的な OpenTelemetry 形式であり、Braintrust、Honeycomb、Datadog、Jaeger など、すでに運用中の任意のトレーシングサービスへエクスポートできます。Vercel では、これらは「Observability」セクション内の「Agent Runs」タブに表示され、すべてのセッションを一元で監視し、特定のランを詳細に調査できる場所を提供します。Evals を利用すればさらに先へ進み、ローカルで実行したり CI に組み込んだりできる、スコアリング付きのテストスイートを作成できます。

残されたのは、どのフレームワークも代わりに記述できない部分です:つまり、あなたのエージェントが実際に何を行うかという点です。

エージェントをファイルごとに拡張する

エージェントに機能を持たせる最も一般的な方法は、ツールを与え、スキルを使ってその機能を教えることです。今日では、これはツールの構築、スキルの記述、そしてそれら両方をエージェントループを実行する環境に接続することになります。eve では、ツールは 1 つの TypeScript ファイルで、スキルは 1 つの Markdown ファイルとして定義されます。

欠けているものにご注意ください。これらの接続や登録のためにすべてのボイラープレートコードを書く代わりに、eve がそれを代行してくれます。

ファイルの名前とツリー内での位置がその定義となります。eve はビルド時にツールとスキルを認識し、モデルにそれらの説明を手渡し、あとはモデル自身で処理を進めます。Next.js がルーティングを管理することでフォルダをルートに変えるように、eve もエージェントループを管理することでファイルを機能へと変換します。

人間による承認プロセスの追加

アクションに対する承認の要求は、ツールにおける 1 つのフィールドに過ぎません。

これで、高コストなクエリや破壊的な書き込み、あるいは監督なしで実行したくないあらゆる操作を保護できるようになりました。

エージェント自身にコードを書かせる

定義したツールが上限ではありません。eve はエージェントに実際のコンピュータとシェルを提供し、bash や grep、ターミナルで実行するあらゆるものを動かすことができます。ジョブに必要なコードが存在しない場合、エージェントはそれを記述して実行します。

あなたのエージェントは、安全なサンドボックス内で独自に問題を解決できます。データセットの再構築や単発分析の実行、あるいは既存のツールではカバーできない必要なコードの作成が可能です。

作業をサブエージェントに委任する

eve エージェントは作業の委任も可能です。サブエージェントは、1 レベル下の同じ形状を持ち、subagents/ ディレクトリ内のディレクトリとして存在し、独自の指示、ツール、サンドボックスを備えています。親エージェントは、ツールを呼び出すようにしてこれを呼び出します。

子エージェントはクリーンなコンテキストウィンドウと、あなたが与えたツールのみで開始され、作業を実行して結果を親エージェントに返します。

エージェントの起動と対話

ここからが、すべての開発者が楽しみにしている部分、つまりエージェントのテストです。従来はプロセスを開始し、質問を行い、ログを読み取る必要があり、どのツールが使用されたか、モデルが何を読み込んだか、なぜそのように回答したのかを簡単に把握できる表示はありませんでした。あなたはエージェントと対話し、その作業を見たいと考えていましたが、得られたのは標準出力(stdout)だけでした。eve では開発ループは 1 つのコマンドで完結します。

ローカルでエージェントを実行する

eve エージェントを開始するには、その開発サーバーを実行します。

エージェントが行ったすべての操作は、TUI(ターミナルユーザーインターフェース)上で確認できます。エージェントはスキルを読み込み、クエリを実行し、チームのルールに基づいて回答しました。これらの各行は、永続的なセッションにおけるチェックポイントされたステップです。ターミナル UI は単なるクライアントであり、エージェントは同じ構造化イベントを HTTP を介して提供します。したがって、curl やテストスクリプト、CI(継続的インテグレーション)システムを使用して、エージェントが何を行ったかを正確に駆動・検証することが可能です。

評価(evals)によるエージェントのテスト

エージェントとの対話は一度の実行ごとに確認するものです。一方、評価はプロジェクト内の他のすべての要素と同様にファイルに記述された採点チェックを用いて、ソフトウェアの残りの部分をテストする方法と同じように、あなたのエージェントをテストします。

eve eval をローカルで実行するか、デプロイ済みアプリケーションを指すことで、ユーザーが問題に気づく前に、プロンプトの変更やモデルの切り替えによって何が壊れたかを確認できます。

リリースする

このエージェントはすでに十分に長い間、あなたのラップトップ上で稼働しています。通常、リリースするステップでは、エージェントの開発作業が終了し、インフラストラクチャの構築が始まります。しかし、eve においてはプロビジョニング(環境設定)は不要です。なぜなら、エージェントは通常の Vercel プロジェクトであり、他のフロントエンドやバックエンドと同じ方法でデプロイされるからです。

エージェントをデプロイしても、その設定は変更されません。eve はアダプターを意識してゼロから設計されているためです。リリース時には Vercel へのデプロイが行われ、他のプラットフォームへの対応も進行中です。同じディレクトリが、ローカル環境で動作していたのと同じように本番環境でも実行されます。サンドボックスはコード変更なしで Vercel Sandbox に切り替わり、開発中に会話していたエージェントは、公開 URL でアクセス可能になります。デプロイによってエージェントの稼働が中断されることもありません。プッシュ時にタスクの途中だったセッションは、開始したバージョン上で完了します。

これらすべてにダッシュボードでの手順は不要です。エージェントを構築した同じコーディングエージェントが、その出荷と作業検証も担当します。

しかし、デプロイされたからといって、完了したわけではありません。本番環境では、エージェントには対応すべきユーザーがおり、独自のスケジュールで業務を行う必要があります。

eve をチームに紹介する

以前は Slack にエージェントを導入するには、まず Slack アプリを構築する必要がありました。アプリの設定、ボットトークン、イベント購読、Webhook エンドポイント、署名シークレットなど、エージェントが一言も発する前にこれらすべてを整える必要があったのです。eve では、チャンネルへの追加はコマンド 1 つで済みます。

コマンドを実行すると、channels/slack.ts という単一ファイルが生成され、他のコード変更と同様に配信されます。こうしてデプロイされたエージェントは、Slack で回答します。プラットフォームの機能はチャンネルに付随するため、承認は Slack ボタンとして表示され、質問は選択メニューとして表示され、作業中はタイプインジケーターが表示されます。認証情報を Vercel Connect を経由でルーティングすれば、.env ファイルにコピーするボットトークンも不要です。discord や teams で同じコマンドを再度実行すれば、同じエージェントが利用可能になります。チャンネルごとに 1 つのファイルです。

チャンネルはエージェントのユーザーインターフェースであり、セッションはそれらをまたいで移動します。Slack で質問された内容は Web 上で継続でき、HTTP を経由して到着するインシデント webhook は Slack で調査スレッドを開始し、チームがすでに作業している場所で完了できます。

エージェントをスケジュールに設定する

月曜日の収益レポートは、誰かが尋ねるのを待つ必要はありません。スケジュールはもう一つのファイルであり、cron 式と、独自のクロックでエージェントを開始するハンドラーです。

Vercel では、各スケジュールが Vercel Cron Job(cron ジョブ)としてデプロイされるため、誰も忘れることなく、毎週月曜日にレポートが投稿されます。

他のソフトウェアと同様にエージェントを実行する

チームが依存しているエージェントは本番環境のソフトウェアであり、その指示への変更はコードへの変更と同じように機能を破綻させる可能性があります。eve エージェントはディレクトリ内のファイルであるため、他のコードと同様に Git に存在し、新しいプロンプト、ツール、またはスキルは、差分(diff)付きのコミットとしてレビューされ、履歴が残ります。

eve の評価機能を CI に組み込み、あなたが作成したスイートをデプロイゲートとして機能させます。これにより、すべてのコミットがスコアリングされ、回帰問題は本番環境ではなく CI 内で検出・阻止されます。

すべてのコミットには独自のプレビューデプロイも付随し、エージェントのチャネルも一緒に引き継がれます。チームは、毎日使用している Slack ボットを置き換える前に、次のバージョンと直接対話することができます。

そして、評価で捕捉できなかった形で変更が失敗した場合でも、本番環境を直ちに前のバージョンにロールバックできます。

Vercel における eve の運用方法

Vercel では、本番環境で 100 以上のエージェントを稼働させており、これらは会社の日常業務の一部となっています。各エージェントはビジネス上の特定の役割を担っています。以下にいくつか例を示します。

データアナリスト

Vercel で最も頻繁に使用されている社内ツールはエージェントであり、月間 30,000 件以上の質問に対応しています。Slack で d0 に何を聞いても、データウェアハウスから回答が得られます。すべてのクエリは質問者の権限範囲に限定されるため、d0 があなたに見せるテーブルは、あなたがすでにアクセスできるもの以外にはなりません。

自律型 SDR(営業開発担当者)

Lead Agent は、当社の最優秀担当者のプレイブックを 24 時間体制で実行します。新しいリードが到着した瞬間に即座に処理し、自らフォローアップを行うため、夜間にリードが冷めてしまうことはありません。年間約 5,000 ドルの運用コストで、その 32 倍の収益を生み出し、エンジニアがパートタイムで 1 名のみ維持管理しています。

営業コックピット

RevOps はエンジニアを介さず、6 週間で Athena を構築しました。Snowflake と Salesforce のパイプラインおよび予測に関する質問に自然言語で回答し、稼働後はパイプラインのカバレッジがほぼ倍増しました。

サポートエンジニア

Vertex は、ヘルプセンター、ドキュメント、Slack 全体を 24 時間 365 日対応する当社のサポートエージェントです。いつでも問い合わせが来ても迅速な回答を提供し、チケットを読み込んで適切な回答を見つけ、92% のチケットを単独で解決します。残りのチケットはサポートチームへエスカレーションされ、彼らは最も注意が必要な問題に集中できます。

コンテンツエージェント

Vercel にはコンテンツチームだけでなく、誰でも執筆が可能です。draft0 は完全なレビューパイプラインを実行し、到達する前に最も明らかな問題を捕捉し、その記事が実際に何についてのものであるかの分析を構築します。私たちに届く頃には、基本的な作業は完了しており、必要なものが何かを明確に把握しています。これにより、小さな記事は迅速に進み、このように注力が必要なものに対しては全力で対応できます。

ルーティングエージェント

私たちは毎日何百ものエージェントを利用していますが、どのエージェントがどのような負荷を担当しているかを追跡するのは非効率的です。そのため、タスクを自分でルーティングするのではなく、すべてまず Slack の V へ送られます。V が実際にそのタスクに対応できるエージェントを特定し、そこにルーティングします。これにより、一〇〇もの異なる選択肢ではなく、一つのエージェントのように全体 fleet が機能します。

これらのエージェントはすべて、異なるスタック上の別々のプロジェクトとして始まりました。それぞれに独自のステート保持方法、認証情報の仲介方法、ログ出力方法があり、多くのチームが2番目または3番目のエージェントを作成した後に直面するのがこの状況です。今日では、これらは1つのモノレポ内にあり、どのチームが所有しているかに関わらず、同じ方法で構築・監視・アップグレードされています。すべてのエージェントが同じ形状を共有しているため、100 個のエージェントが同じツールと同一の規約を用いて、まるで一つの存在のように動作しています。

始め方

1 年前、Vercel のデプロイメントのうち、エージェントによってトリガーされるものは 3% 未満でした。現在では約 29% を占めており、近い将来にはすべてのデプロイメントの半分がエージェントから発生すると予想されています。すでにあなたもエージェントを構築しているかもしれませんが、次のプロジェクトはゼロから始める必要はありません。

パブリックプレビューは本日より開始され、CLI ウィザードがモデルの選択から実行中の開発サーバーまで、1 分未満で最初のエージェント作成をサポートします。

コーディング用エージェントにはプロンプトが必要です:

eve ができることはすべて docs.eve.dev で確認でき、開発は github.com/vercel/eve で公開されており、課題・議論・貢献を歓迎しています。

Vercel ではすでに数百個のエージェントが eve 上で稼働しています。あなたは何を構築しますか?

続きを読む

原文を表示

Today, we are proud to introduce eve, an open-source agent framework for building, running, and scaling agents. eve is designed around the idea that building an agent should mean defining what it does without assembling all of the pieces that it needs to run in production. Instead, eve comes with production already built in:

Durable execution

Sandboxed compute

Human-in-the-loop approvals

Subagents

Evals

And more

eve is the framework that we build and run our own agents on.

Agents today are where the web was before frameworks, with everyone hand-rolling the same plumbing and nothing carrying over to the next one. Next.js ended this for the web, and eve is doing the same for agents.

An agent is a directory

This is an eve agent.

Each file describes one component of the agent, so at a glance, the tree tells you what an agent is, what it does, where it lives, and when it acts on its own.

Create an eve agent in minutes

Every agent starts with its definition.

The agent.ts file is where you configure the agent itself. You can define the model with one line, with provider fallbacks supported through AI Gateway, and compaction, model options, and other optional fields are there when you need them.

Giving your agent a job and personality is as simple as creating an instructions.md file, which serves as the system prompt that eve puts in front of every model call.

You create files for what your agent does, like post_chart.ts and revenue-definitions.md for tools and skills, and eve wires them into a working agent without any boilerplate or plumbing to manage. You can just focus on what your agent does instead of how it does it.

Why we built eve

We had built agents for years at Vercel, v0 among them. But once coding agents made building one something anyone could do, everyone did. We shipped hundreds of agents and internal apps, and it looked like a productivity revolution.

But underneath it, every team was building and rebuilding the same plumbing before their agent could do anything, and none of it carried over from one use case to the next. Each agent was designed for a different task, but they all had the same needs, and the same structure kept emerging to meet them. Agents have a shape.

eve is that shape made into a framework. Every generation of software earns its abstractions once enough people have built the same thing the hard way, and agents are there now.

Batteries included

Everything an agent needs in production ships with the framework.

A durable session for every conversation

Agents wait on people, call slow systems, and run for hours, days, or weeks. In eve, every conversation is a durable workflow with each step checkpointed, so a session can pause, survive a crash or a deploy, and resume exactly where it stopped. This durability is built on the open-source Workflow SDK.

A sandbox for every agent

The code your agents write should be treated as untrusted, so eve keeps agent-generated code out of your application runtime entirely. Every agent gets its own sandbox, an isolated environment for shell commands, scripts, and file reads and writes, running in a separate security context from the harness that controls the agent. The backend behind this sandbox is an adapter. When deployed, it runs on Vercel Sandbox. Locally, it runs on Docker, microsandbox, or just-bash, and you can write an adapter for any other provider.

Human-in-the-loop approvals

Agents act on real systems, and some of those actions should require a person to approve them. Any action in eve can be configured to require approval, and the agent will pause there and wait, indefinitely if it has to, without consuming any compute. Once approved, eve continues the task right from where it left off.

Secure connections to tools, data, and services

Agents need to connect to your backends, data, and other third-party services. In eve, a connection is a file that points at an MCP server or any API with a compatible OpenAPI document.

eve discovers the remote tools, hands them to the model, and brokers the auth, and the model never sees the connection's URL or credentials. Vercel Connect handles interactive OAuth with consent and token refresh built in. At launch, eve agents can connect to Slack, GitHub, Snowflake, Salesforce, Notion, and Linear, plus anything else you can reach over OAuth, an API key, or an MCP server.

The same agent on every channel

Most agents live in exactly one place because every new surface is its own integration to build. In eve, the same agent serves every surface, and each channel is just a small adapter file. The HTTP API is on by default, with Slack, Discord, Teams, Telegram, Twilio, GitHub, and Linear included, and defineChannel covers custom channels. One channel can also hand off to another, so an incident webhook can open an investigation thread in Slack.

Tracing and evals built in

When an agent gets something wrong, the first question is what the agent actually did. In eve, every run produces a trace. Each model call and tool call appears in order with its inputs and outputs, down to the commands the agent ran in its sandbox, so you can replay the run instead of piecing it together from logs.

The spans are standard OpenTelemetry and export to any tracing service you already run, whether that is Braintrust, Honeycomb, Datadog, or Jaeger. On Vercel, they surface in an Agent Runs tab under Observability, giving you one place to watch every session and drill into any run. Evals let you go further, with scored test suites you can run locally or wire into CI.

That leaves the part no framework can write for you: what your agent actually does.

Extend an agent one file at a time

The most common way to give an agent capabilities is to give it tools, and to teach it how to do things with skills. Today that means building the tool, writing the skill, and then wiring both into whatever runs your agent loop. With eve, a tool is one TypeScript file and a skill is one markdown file.

Notice what is missing. Instead of writing all of the boilerplate to wire these up and register them with your agent, eve handles it for you.

A file's name and place in the tree are its definition. eve picks up the tool and skill at build time, hands the model their descriptions, and the model takes it from there. Just as Next.js turns a folder into a route by owning the routing, eve turns a file into an ability by owning the agent loop.

Add human-in-the-loop approval

Requiring approval for an action is one field on the tool.

Now you can guard the expensive query, the destructive write, or anything else you would not want running unsupervised.

Let the agent write its own code

The tools you define aren't the ceiling. eve gives your agent a real computer with a shell, so it can run bash, grep, and anything else you'd run in a terminal. When a job calls for code that doesn't exist yet, the agent writes and runs it.

Your agent can solve problems on its own in a secure sandbox, reshaping a dataset, running a one-off analysis, or writing whatever code a job needs that no tool covers.

Delegate work to a subagent

An eve agent can also delegate. A subagent is the same shape one level down, a directory inside subagents/ with its own instructions, tools, and sandbox. The parent calls it just like it calls a tool.

The child starts with a clean context window and only the tools you gave it, does the work, and hands the result back to the parent.

Start and interact with your agent

Now comes the part every developer looks forward to, testing their agent. That used to mean starting the process, asking a question, and reading logs, with no simple view of which tools were used, what the model loaded, or why it answered the way it did. You wanted to talk to your agent and watch it work, and what you got was stdout. With eve, the dev loop is one command.

Run the agent locally

To start an eve agent, you run its dev server.

Everything the agent did is visible in the TUI. The agent loaded the skill, ran the query, answered by the team's rules, and each of those lines is a checkpointed step in the durable session. The terminal UI is just a client, and the agent serves the same structured events over HTTP, so curl, a test script, or CI can drive it and check exactly what it did.

Test the agent with evals

Talking to the agent proves one run at a time. Evals test your agent the way you test the rest of your software, with scored checks written in files like everything else in the project.

You can run eve eval locally or point it at a deployed app, so a prompt change or a model swap shows you what it broke before your users do.

Ship it

The agent has lived on your laptop long enough. Shipping it is normally the step where the agent work stops and the infrastructure work begins. With eve there is nothing to provision, because the agent is an ordinary Vercel project, and it deploys the way any other frontend or backend does.

Nothing about your agent changes when you deploy, because eve was designed from the ground up with adapters in mind. At launch eve deploys to Vercel, with support for other platforms on the way. The same directory runs in production exactly as it ran on your laptop. The sandbox swaps to Vercel Sandbox without a code change, and the agent you were talking to in dev is now reachable at a public URL. Deploying does not even interrupt the agent; a session that is mid-task when you push finishes on the version it started on.

There is no dashboard step required in any of this. The same coding agent that built your agent can ship it and verify its work.

But deployed is not the same as done. In production, an agent has users to meet and work to do on its own schedule.

Introduce the agent to your team

Getting an agent into Slack used to mean building a Slack app first, including the app config, bot token, event subscriptions, webhook endpoint, and signing secret, all before the agent said a word. With eve, a channel is one command.

The command writes channels/slack.ts, a single file that ships like any other code change, and the agent you just deployed now answers in Slack. The platform affordances come with the channel, so approvals render as Slack buttons, questions as select menus, and the agent posts typing indicators while it works. Route the credentials through Vercel Connect and there is no bot token to copy into a .env file. Run the command again with discord or teams, and the same agent is there too, one file per channel.

Channels are the user interface of your agents, and sessions move between them. A question asked in Slack can continue on the web, and an incident webhook arriving over HTTP can open an investigation thread in Slack and finish the work where the team already is.

Put the agent on a schedule

The Monday revenue report should not wait for someone to ask. A schedule is one more file, a cron expression and a handler that starts the agent on its own clock.

On Vercel, each schedule deploys as a Vercel Cron Job, so the report posts every Monday with nobody on the hook to remember it.

Run the agent like the rest of your software

An agent your team depends on is production software, and a change to its instructions can break it as surely as a change to its code. Because an eve agent is files in a directory, it lives in Git like the rest of your code, and a new prompt, tool, or skill is a commit with a diff, a review, and a history.

Wire eve eval into CI and the suites you wrote become the deploy gate, scoring every commit so a regression stops in CI rather than in production.

Every commit also gets its own preview deployment, and it carries the agent's channels with it. The team can talk to the next version of your Slack bot before it replaces the one they use every day.

And when a change goes bad in a way no eval caught, you can roll production back to the previous version instantly.

How we run Vercel on eve

We run more than a hundred agents in production at Vercel, and they are part of how the company operates every day, each one taking on a role in the business. Here are a few of them.

The data analyst

The most-used internal tool at Vercel is an agent, handling more than 30,000 questions a month. Anyone can ask d0 anything in Slack and get an answer from the warehouse. Every query is scoped to the asker's own permissions, so d0 can never show you a table you could not already see.

The autonomous SDR

Lead Agent runs the playbook of our best rep around the clock. It works every new lead the moment it comes in and follows up on its own, so none go cold overnight. It costs about $5,000 a year to run, returns 32 times that, and one engineer maintains it part-time.

The sales cockpit

RevOps built Athena in six weeks without engineers. It answers pipeline and forecast questions from Snowflake and Salesforce in plain language, and pipeline coverage nearly doubled after it went live.

The support engineer

Vertex is our support agent that handles tickets across the help center, docs, and Slack around the clock, ensuring people get a fast response no matter when they ask. It reads the ticket, finds the right answer, and responds, solving 92% of tickets on its own and escalating the rest to the support team so they can focus on the problems that most need their attention.

The content agent

Anyone at Vercel can write, not just the content team. draft0 runs a full review pipeline, catching the most glaring issues and building up an analysis of what the piece is actually about before it ever reaches us. By the time it does, the obvious work is done and we have a much clearer picture of what it needs. That means smaller pieces move fast, and we can give our full attention to the ones that demand it, like this one.

Routing agent

We rely on hundreds of agents every day, but keeping track of which one handles what workloads is not efficient. So instead of routing tasks ourselves, everything goes to V in Slack first. V figures out which agent can actually answer the task and routes it there, which means the whole fleet works like one agent instead of a hundred different options.

These agents all began as separate projects on separate stacks, each with its own way of holding state, brokering credentials, and emitting logs, which is where most teams find themselves after their second or third agent. Today they live in one monorepo, and are built, observed, and upgraded the same way, no matter which team owns them. Because they all share the same shape, a hundred agents run with the same tools and the same conventions as one.

Get started

A year ago, agents triggered less than 3% of the deployments on Vercel. Now, they trigger around 29%, and we expect half of all deployments to come from agents soon. You have probably built an agent already, and the next one does not have to start from scratch.

The public preview is open today, and the CLI wizard walks you through your first agent, from picking a model to a running dev server, in under a minute.

Coding agents just need a prompt:

Everything eve can do is at docs.eve.dev, and development happens in the open at github.com/vercel/eve, where issues, discussions, and contributions are welcome.

Hundreds of agents already run on eve at Vercel. What will you build?

Read more

この記事をシェア

関連記事

Vercel Blog★42026年6月17日 09:00

エージェント構築・運用・スケーリングのためのオープンソースフレームワーク「eve」の公開

Vercel が、ファイル構成でエージェントを定義し、耐久性実行やサンドボックス機能などを備えたオープンソースフレームワーク「eve」を一般プレビューとして発表した。

MarkTechPost★42026年6月18日 02:22

Vercel がオープンソース AI エージェントフレームワーク「Eve」をリリース:各エージェントは機能にマッピングされたファイルディレクトリとして定義される

Vercel は、生産環境で百以上のエージェントを実行している自社開発の基盤となるオープンソースフレームワーク「Eve」を公開した。このツールでは、エージェントの動作を定義する際にインフラ構築の手間を省き、各機能をファイルディレクトリにマッピングして管理できる仕組みを提供する。

Allen AI (AI2)★42026年6月18日 17:00

Domyn と AISquared が Ai2 のオープンリリースをどう活用したか

Domyn と AISquared は、透明性やライセンス管理が不可欠な規制業界向けに AI モデルを開発する際、Ai2 のオープンソースリリースを活用している。これにより顧客の信頼とコンプライアンス確保を実現している。

今日のまとめ

AI日報で今日の重要ニュースをまとめ読み

ニュース一覧に戻る元記事を読む