https://github.com/vercel/eve
The Framework for Building Agents
https://github.com/vercel/eve
agent framework harness javascript markdown sandbox typescript vercel workflows
Last synced: about 1 month ago
JSON representation
The Framework for Building Agents
- Host: GitHub
- URL: https://github.com/vercel/eve
- Owner: vercel
- License: apache-2.0
- Created: 2026-06-16T10:51:20.000Z (about 2 months ago)
- Default Branch: main
- Last Pushed: 2026-06-29T23:15:57.000Z (about 1 month ago)
- Last Synced: 2026-06-30T00:00:50.947Z (about 1 month ago)
- Topics: agent, framework, harness, javascript, markdown, sandbox, typescript, vercel, workflows
- Language: TypeScript
- Homepage: https://vercel.com/eve
- Size: 6.96 MB
- Stars: 2,923
- Watchers: 7
- Forks: 224
- Open Issues: 130
-
Metadata Files:
- Readme: README.md
- Contributing: CONTRIBUTING.md
- License: LICENSE
- Code of conduct: CODE_OF_CONDUCT.md
- Codeowners: CODEOWNERS
- Security: SECURITY.md
- Notice: NOTICE
- Agents: AGENTS.md
- Dco: DCO.txt
Awesome Lists containing this project
- awesome-agent-frameworks - Eve - Eve (The Framework for Building Agents) is Vercel's filesystem-first framework for durable AI agents, in public beta as of June 2026. (Agent graph / runtime)
- awesome-harness-engineering - eve - first framework for durable AI agents: instructions, typed tools, on-demand skills, message channels, and cron schedules live in conventional directories, making the harness inspectable and version-controlled by default. A concrete reference for treating the project filesystem as the agent authoring interface rather than burying configuration in framework internals.  (Design Primitives / Task Runners & Orchestration)
- awesome-typesafe - vercel/eve - The framework for building agents. (**1. Libraries** / AI)
- awesome-ai-agents-2026 - Vercel Eve - 🆕 **2026-06-17(Vercel Ship 2026)**。Vercel がオープンソース化した「ファイルシステムファースト」の TypeScript エージェントフレームワーク。エージェントはファイルのディレクトリ(指示・ツール・スキル)であり、Vercel がサンドボックス実行・承認・評価・OpenTelemetry を内蔵した永続サービスにコンパイルする。任意のモデル・任意の MCP サーバー、Slack / Discord / GitHub などのチャネルに対応し、「エージェントの Next.js」と称される。Apache-2.0。 (🏗️ エージェントフレームワーク / その他の標準)
README
eve is a filesystem-first framework for durable AI agents. Core agent capabilities live in
conventional locations, so projects are easier to inspect, extend, and operate.
## The filesystem is the authoring interface
A typical eve agent has this structure:
```text
my-agent/
└── agent/
├── agent.ts # Optional: model and runtime config
├── instructions.md # Required: the always-on system prompt
├── tools/ # Optional: typed functions the model can call
│ └── get_weather.ts
├── skills/ # Optional: procedures loaded on demand
│ └── plan_a_trip.md
├── channels/ # Optional: message channels (HTTP, Slack, Discord)
│ └── slack.ts
└── schedules/ # Optional: recurring cron jobs
└── weekly_recap.ts
```
Read the [documentation](https://beta.eve.dev/docs) for the full project layout and guides.
## Quick start
```bash
npx eve@latest init my-agent
```
This creates a new `my-agent` directory, installs its dependencies, initializes Git, and starts
the interactive terminal UI.
To add eve to an existing project, pass a path:
```bash
cd myapp
npx eve@latest init .
```
> [!NOTE]
> The `eve` package includes its full documentation, so coding agents can read it locally from
> `node_modules/eve/docs`.
### A minimal example
The generated project includes an `agent` directory. Replace `agent/instructions.md` with:
```md
You are a concise weather demo assistant. Tell users that the weather data is mocked.
```
Add a mock weather tool at `agent/tools/get_weather.ts`:
```ts
import { defineTool } from "eve/tools";
import { z } from "zod";
export default defineTool({
description: "Return mock weather data for a city.",
inputSchema: z.object({ city: z.string().min(1) }),
async execute({ city }) {
return { city, condition: "Sunny", temperatureF: 72 };
},
});
```
Choose the model in `agent/agent.ts`:
```ts
import { defineAgent } from "eve";
export default defineAgent({
model: "anthropic/claude-sonnet-4.6",
});
```
For a new scaffold, start the agent again:
```bash
npm run dev
```
That's a working agent. Add human-in-the-loop prompts, subagents, and schedules as needed.
Follow the [first-agent tutorial](https://beta.eve.dev/docs/tutorial/first-agent) for a complete
walkthrough.
## Community
The eve community lives on [GitHub Discussions](https://github.com/vercel/eve/discussions),
where you can ask questions, share ideas, and show what you've built.
## Contributing
Contributions are welcome. See [CONTRIBUTING.md](CONTRIBUTING.md) to get the repo
running locally and land a change, and use
[issues](https://github.com/vercel/eve/issues) and
[discussions](https://github.com/vercel/eve/discussions) to collaborate. By
participating, you agree to our [Code of Conduct](CODE_OF_CONDUCT.md).
## Security
Please do not open public issues for security vulnerabilities. Instead, follow
[SECURITY.md](SECURITY.md) and report responsibly to
[responsible.disclosure@vercel.com](mailto:responsible.disclosure@vercel.com).
## Beta terms
eve is currently in beta and subject to the [Vercel beta terms](https://vercel.com/docs/release-phases/public-beta-agreement);
the framework, APIs, documentation, and behavior may change before general availability.