Skip to content
Dashboard

The framework for
building agents

$npx eve@latest init my-agent
Read docs
Like Next.js for web apps, but for agents. Markdown for instructions and skills, TypeScript for tools. Durable by default.

An agent is a directory

Define instructions and skills in markdown, tools in TypeScript, and deploy. The framework compiles the directory, wires up durable workflows, and connects channels.

1Start with instructions
instructions.md

An instructions.md file is a complete agent. Describe its role in Markdown, then run eve.

# Identity
You are an expert weather assistant.
You can fetch the weather for any
city in the world.
2Choose your model
agent.ts

Eve uses a default model. Add agent.ts when you want to choose a model or configure the runtime.

Leverages
import { defineAgent } from "eve";
export default defineAgent({
model: "openai/gpt-5.4-mini",
});
3Add reusable skills
skills/

Skills are Markdown playbooks loaded when they are relevant. The agent gets focused guidance without carrying it in every prompt.

---
description: Research unfamiliar topics
---
When the task is novel or ambiguous,
gather evidence first, then answer.
4Define tools in TypeScript
tools/

Add a TypeScript file to tools/ and the model can call it. The filename becomes the tool name. No registration required.

import { defineTool } from "eve/tools";
import { z } from "zod";
export default defineTool({
description: "Get the weather for a city",
inputSchema: z.object({
cityName: z.string(),
}),
async execute(input) {
const res = await fetch(
`${process.env.WEATHER_API_URL}/current?city=${input.cityName}`
);
const data = await res.json();
return data.current_condition[0];
},
});
5Customize the sandbox
sandbox/

Every agent includes an isolated sandbox and file tools. Add sandbox/sandbox.ts to choose a backend or customize its setup.

import {
defineSandbox,
vercelSandboxBackend,
} from "eve/sandbox";
export default defineSandbox({
backend: vercelSandboxBackend({
runtime: "node24",
}),
});
6Connect every channel
channels/

Add channel files to use the same agent in Slack, Discord, Teams, or the web.

import { connectSlackCredentials } from "@vercel/connect/eve";
import { slackChannel } from "eve/channels/slack";
export default slackChannel({
credentials: connectSlackCredentials("slack/my-agent"),
});
7Connect your stack
connections/

Connections handle authentication for services such as GitHub, Stripe, and Linear. Tools can call them without managing tokens.

import { connect } from "@vercel/connect/eve";
import { defineMcpClientConnection } from "eve/connections";
export default defineMcpClientConnection({
url: "https://mcp.linear.app/sse",
description: "Linear workspace: issues, projects, cycles, and comments.",
auth: connect("linear"),
});
8Delegate to subagents
subagents/

Add subagents for specialized work. The main agent delegates tasks and combines the results.

import { defineAgent } from "eve";
export default defineAgent({
description: "Investigate questions",
model: "openai/gpt-5.4",
});
9Run on a schedule
schedules/

Schedules run agents automatically for jobs such as daily reports and weekly digests. Work continues durably without an active session.

---
cron: "0 8 * * *"
---
Send the user a daily weather
digest for their saved cities.

Leverages all Vercel AI primitives

AI Gateway for model calls, Sandboxes, Workflows, and Connect. All critical agent infrastructure works out of the box, no gluing point solutions together.

Everything you need for production agents

Enterprise governance, observability, and sandboxed compute come standard. Focus on building, not infrastructure.

  • resolve_identity
    customer_summary
    search_context
    execute_sql
    data_integrity
    Durable executionWorkflows survive crashes and restarts. Every step is checkpointed. Agents park when waiting, resume on the next message.
  • agent_JKdWWzHCUoj7gKBqnTRunning4xCPU 8GB
    agent_yN8upsY7Kgh4DFTiYHyxStopped2xCPU 4GB
    agent_zDiBp4lFo7hYyv35y06DfRunning2xCPU 8GB
    agent_fORPyGtLtxG4VdlDtRnprStopping4xCPU 8GB
    agent_T0BqwUg0ierWhp6cD2TStopped2xCPU 8GB
    agent_SxbECNxlPDoaAFSOZzwRunning4xCPU 8GB
    agent_Qm2vTnLx8RpKdWe3BfHaRunning2xCPU 4GB
    agent_Hs9YpZcV4NtLmQr7XaPoStopping4xCPU 8GB
    agent_Lk4BdWnGpY6xTfRoZ2UyStopped2xCPU 8GB
    agent_Vc8MqJhDsK1uNbWp5YeoRunning4xCPU 8GB
    Sandboxed computeAgents spin up isolated VMs on demand. File system access, bash execution, and code runs, all completely isolated.
  • GitHubSlackDiscordMessenger
    Microsoft TeamsGoogle ChatWhatsapp
    LinearTwilioCronWeb ChatAPI
    Multi-channel deliveryOne agent codebase deploys to web chat, Slack, API, cron, CLI, and custom apps.
  • Human-in-the-loopTools that need confirmation trigger approval gates. Sessions park until resolved, then resume seamlessly.
  • SubagentsDelegate specialized work to child agents with their own prompts, tools, and sandbox.
  • EvaluationsDefine test suites with scoring rubrics. Run evals on every deployment and on a schedule.

Build your first agent today.