Agent Framework

Vercel 開源 eve:agent 框架終於有了一個標準形狀

Vercel 開源 eve agent 框架:目錄即 agent、檔案即能力,durable session、sandbox、human-in-the-loop 與 evals 全部預裝。本文拆解其檔案系統設計、安全邊界、Vercel 內部一百個 agent 的自述戰績,以及深度綁定 Vercel 生態的取捨。

Vercel 開源 eve:agent 框架終於有了一個標準形狀 — 文章封面
本頁內容7 個段落
  1. 目錄即 agent:把形狀寫進檔案系統
  2. 生產能力預裝:durable session 與 sandbox
  3. 人機邊界:connections、channels 與 subagents
  4. 觀測與驗證:traces、evals 與部署節奏
  5. Vercel 自家的戰績:一百個 agent 在跑(廠商自述)
  6. 限制、取捨與 Builder 建議
  7. 參考來源

2026 年 6 月 17 日,Vercel 開源了 eve——一個 filesystem-first 的 agent 框架,也是 Vercel 內部一百多個 production agents 正在跑的同一套程式。它的賣點一句話說得完:durable execution、sandboxed compute、human-in-the-loop、subagents、evals 這些每個 agent 遲早都要重造的輪子,eve 全部預裝;你只定義 agent「做什麼」,框架處理它「怎麼在 production 裡活下來」。

目錄即 agent:把形狀寫進檔案系統

eve 的核心設計是:一個 agent 就是一個目錄,目錄結構就是 agent 的定義。

agent/
├── agent.ts          # defineAgent:一行指定 model
├── instructions.md   # 每次呼叫前置入的 system prompt
├── tools/            # 工具:一個 TypeScript 檔一個
├── skills/           # 領域知識:一個 Markdown 檔一份
├── subagents/        # 可委派的子 agent
├── channels/         # 通訊渠道 adapter
└── schedules/        # 排程任務

agent.tsdefineAgent 一行決定 model,provider fallbacks 由 AI Gateway 支撐,compaction、model options 等選項欄位要用再開;instructions.md 會被放在每一次 model call 之前。工具與技能不必註冊:檔名與位置就是定義,build time 自動載入,檔名直接成為 model 看到的 tool 名,沒有 boilerplate。skill 檔則用一段 description 聲明載入時機——例如「回答任何營收問題前先載入」——讓領域知識只在相關問題出現時進 context。這個手感與 Next.js 之於 routing 如出一轍:框架先約定形狀,你再填行為。

生產能力預裝:durable session 與 sandbox

每一個 conversation 都是一個 durable workflow:每個 step 都被 checkpoint,session 可以為了等批准暫停幾小時甚至幾天,撐過 crash 與 deploy 之後從中斷點原樣恢復。這套 durability 建構在開源的 Workflow SDK 之上。

sandbox 的預設立場更值得注意:agent 產生的 code 一律視為不受信任,每個 agent 有自己隔離的環境跑 shell、scripts 與 file I/O。官方給的實例是「把上週營收按區域拆開並畫圖」:agent 自己寫出 analysis/by_region.py、在 sandbox 裡用 bash 執行,回報美洲 $2.1M、歐非中東 $1.6M、亞太 $0.5M,圖存成 analysis/by_region.png。任務需要不存在的工具時,agent 可以現場寫一個。backend 是 adapter 設計——部署到 Vercel 用 Vercel Sandbox,本地開發可用 Docker、microsandbox 或 just-bash。

human-in-the-loop 被壓縮成 tool 上的一個欄位:needsApproval 可以設條件,例如查詢掃描量超過 50GB 才要求人工批准。agent 會在那裡無限期暫停、不消耗 compute,核准後從原處繼續。

人機邊界:connections、channels 與 subagents

對外連線用 connection 檔案管理:一個檔案指向一個 MCP server 或相容 OpenAPI 的 API,model 看不到 URL 或 credentials,OAuth 由 Vercel Connect 處理。launch 時可直連 Slack、GitHub、Snowflake、Salesforce、Notion、Linear。

channel 只是一個小 adapter 檔:HTTP API 預設開啟,內建 Slack、Discord、Teams、Telegram、Twilio、GitHub、Linear,defineChannel 支援自訂,channel 之間可以 handoff——同一個 agent 因此能同時存在於多個介面。

委派靠 subagents:子 agent 是 subagents/ 裡一個同樣形狀的目錄,有自己的 instructions、tools 與 sandbox;parent 像呼叫 tool 一樣呼叫它,child 以乾淨的 context window 開始,只帶被授予的 tools。

觀測與驗證:traces、evals 與部署節奏

每次 run 產生 trace,列出每個 model call 與 tool call 的輸入輸出,以及 sandbox 裡執行的指令;spans 是標準 OpenTelemetry,可匯出到 Braintrust、Raindrop、Arize、Honeycomb、Datadog 或 Jaeger。evals 同樣檔案化:defineEval 寫成 scored test suites,eve eval 能跑本地,也能直接指向部署中的 app;接進 CI 之後,它就是 deploy gate。

本地開發是 eve dev 一個命令:起 dev server 與 terminal UI。重點是 TUI 只是 client——agent 透過 HTTP 暴露同樣的 structured events,curl、測試腳本或 CI 都能驅動它。部署號稱零 provisioning:agent 就是普通的 Vercel project,vercel deploy 即上線,部署不打斷進行中的 session,schedules 部署為 Vercel Cron Jobs,每個 commit 有 preview deployment、可即時 rollback。

Vercel 自家的戰績:一百個 agent 在跑(廠商自述)

eve 最有力的論證是 Vercel 自己。這一百多個 agents 前身是各自獨立的專案、各自的技術棧,各有一套狀態保存、憑證仲介與日誌輸出——官方說,多數團隊就是在第二、第三個 agent 之後落到這個處境。如今它們活在同一個 monorepo,因為形狀相同,一百個 agent 用與一個相同的工具和慣例建構、觀測、升級。幾個被點名的案例(以下數字全部是 Vercel 自述,無第三方驗證):

Agent 角色 自述數字
d0 資料分析,Slack 問答,查詢權限隨提問者——你看不到的表它也看不到 每月 30,000+ 問題
Lead Agent 全天候跑最佳業務劇本 年成本約 $5,000,回報 32 倍
Athena RevOps 六週無工程師建成 pipeline coverage 近乎翻倍
Vertex 全天候 support 自解 92% tickets

表格外還有兩個營運細節值得記:Lead Agent 在新 lead 進來的當下就處理、自主跟進,不讓任何一條過夜變冷,一年只需一位工程師兼職維護;Athena 則以自然語言回答來自 Snowflake 與 Salesforce 的 pipeline 與 forecast 問題。旁證還有一個方向性數字:一年前 agents 觸發的 Vercel deployments 不到 3%,現在約 29%,官方預期很快過半。

限制、取捨與 Builder 建議

取捨要先講清楚:launch 部署目前僅支援 Vercel,其他平台官方只說 on the way;框架深度整合 Vercel 生態(Sandbox、AI Gateway、Observability),離開 Vercel 就要自己接 adapter,公告也未載明 license 名稱,引用時以 repo 為準。另一個容易誤會的點:公告正文從未出現 AI SDK 字樣,唯一的間接訊號是 trace span 的命名(如 ai.streamText)與 provider fallbacks——把它讀成 AI SDK 的封裝是推論,不是官方陳述。

它也不是 no-code 工具:工具仍是 TypeScript、知識仍是 Markdown,要學的是目錄慣例。對 builder 的建議很具體:eve 以 npm package 發佈,開發在 github.com/vercel/eve 公開;最便宜的驗證方式,是挑一個現有 agent 用它的目錄結構重寫一次,感受「一個檔案一個能力」把 boilerplate 消掉之後,剩下的程式碼有多貼近意圖。

參考來源

本文由 AI 協助自上述來源整理,經人工審核後發布。

這篇內容對你有幫助嗎?

支持本站繼續整理實用的 AI 文章、教學與開發筆記。

請我喝杯咖啡
分享X電郵