GitHub · 项目涌现

vercel/eve

二〇二六年八月二十六日·★ 3,923·⑂ 368·TypeScript·Apache-2.0 ·最新发布 eve@0.26.1 · 2026-07-20 · GitHub 原仓库

Vercel 发布了开源 AI agent 框架 eve(beta 版),采用文件系统优先的设计,将 agent 能力(指令、工具、技能、通道、定时任务)组织在约定目录结构中,便于检查、扩展和运维。用户可通过 `npx eve@latest init` 快速创建项目,支持 Anthropic Claude Sonnet 5 等模型,并提供 TypeScript 工具定义与 Zod 输入验证。项目托管于 GitHub,社区通过 Discussions 协作。

eve 是一个以文件系统为先的持久化 AI agent 框架。核心 agent 能力位于约定位置,因此项目更易于检查、扩展和运维。

文件系统即创作界面

一个典型的 eve agent 具有以下结构:

my-agent/
└── agent/
    ├── agent.ts            # 可选:模型和运行时配置
    ├── instructions.md     # 必需:始终开启的系统 prompt
    ├── tools/              # 可选:模型可调用的类型化函数
    │   └── get_weather.ts
    ├── skills/             # 可选:按需加载的流程
    │   └── plan_a_trip.md
    ├── channels/           # 可选:消息通道(HTTP、Slack、Discord)
    │   └── slack.ts
    └── schedules/          # 可选:周期性 cron 任务
        └── weekly_recap.ts

阅读文档了解完整的项目布局和指南。

快速开始

npx eve@latest init my-agent

这会创建一个新的 my-agent 目录,安装其依赖,初始化 Git,并启动交互式终端 UI。

要将 eve 添加到现有项目,传入路径:

cd myapp
npx eve@latest init .

[!NOTE] eve 包包含其完整文档,因此编码 agent 可以从 node_modules/eve/docs 本地读取。

最小示例

生成的项目包含一个 agent 目录。将 agent/instructions.md 替换为:

你是一个简洁的天气演示助手。告诉用户天气数据是模拟的。

agent/tools/get_weather.ts 添加一个模拟天气工具:

import { defineTool } from "eve/tools";
import { z } from "zod";

export default defineTool({
  description: "返回某个城市的模拟天气数据。",
  inputSchema: z.object({ city: z.string().min(1) }),
  async execute({ city }) {
    return { city, condition: "Sunny", temperatureF: 72 };
  },
});

agent/agent.ts 中选择模型:

import { defineAgent } from "eve";

export default defineAgent({
  model: "anthropic/claude-sonnet-5",
});

对于新脚手架,再次启动 agent:

npm run dev

这就是一个可运行的 agent。根据需要添加人工介入 prompt、子 agent 和调度任务。按照首个 agent 教程获取完整指导。

社区

eve 社区位于 GitHub Discussions,你可以在那里提问、分享想法并展示你的成果。

贡献

欢迎贡献。请参阅 CONTRIBUTING.md 在本地运行仓库并提交变更,使用 issuesdiscussions 进行协作。参与即表示你同意我们的行为准则。

安全

请勿公开提交安全漏洞的 issue。请遵循 SECURITY.md 并负责任地向 responsible.disclosure@vercel.com 报告。

Beta 条款

eve 目前处于 beta 阶段,受 Vercel beta 条款约束;框架、API、文档和行为可能在正式发布前发生变化。

译自 GitHub · 项目涌现 · 录于 二〇二六年八月二十六日