Skip to main content
Agents

Vercel Eve

Use Rivet as the durable World for Vercel Eve.

This integration is in beta. APIs may change between releases.

Eve owns the agent runtime and session lifecycle, while agentOS maps every sandbox session to an isolated VM actor with a durable /workspace filesystem.

View the complete example →

Quickstart

Create an Eve agent

npx eve@latest init my-agent
cd my-agent

Install the integrations

npm add @rivet-dev/agentos @rivet-dev/agentos-eve @rivet-dev/vercel-world
  • @rivet-dev/agentos: Provides the durable VM actor.
  • @rivet-dev/agentos-eve: Connects Eve’s sandbox API to agentOS.
  • @rivet-dev/vercel-world: Runs Eve workflows on Rivet World.

Set up the Eve agent

Update agent/agent.ts:

import { defineAgent } from "eve";

export default defineAgent({
	build: {
		externalDependencies: [
			"@rivet-dev/agentos",
			"@rivet-dev/agentos-core",
			"@rivet-dev/agentos-eve",
			"@rivet-dev/agentos-runtime-core",
			"@rivet-dev/agentos-sidecar",
			"@rivet-dev/vercel-world",
			"@rivetkit/engine-cli",
		],
	},
	experimental: {
		workflow: { world: "./world.ts" },
	},
});

Register agentOS and Vercel World

Create registry.ts:

import { agentOS, setup } from "@rivet-dev/agentos";
import { vercelWorldActors } from "@rivet-dev/vercel-world/registry";

const vm = agentOS({
	// Configuration will go here.
});

export const registry = setup({
	use: {
		...vercelWorldActors,
		vm,
	},
});

Connect Eve to the combined registry

Create world.ts:

import { createWorld as createRivetWorld } from "@rivet-dev/vercel-world";
import { registry } from "./registry";

export const createWorld = () => createRivetWorld({ registry });

The first World operation starts this registry and waits for the Rivet envoy to be ready.

Use agentOS as the sandbox

Create agent/sandbox.ts:

import { agentOSBackend } from "@rivet-dev/agentos-eve";
import { defineSandbox } from "eve/sandbox";
import { registry } from "../registry";

export default defineSandbox({
	backend: agentOSBackend({ actor: "vm", registry }),
});

Run Eve

Run the agent:

eve dev

Using with other sandbox providers

agentOS is a drop-in replacement for any Eve sandbox backend.

Read the Eve sandbox documentation →

Configuring agentOS with Eve

agentOS() configures the VM’s filesystems, software, extensions, and limits.

Read the agentOS + Vercel Eve documentation →

Configuring Rivet World with Eve

Rivet World stores Eve’s runs in Rivet Actors so agents resume instead of restarting.

Read the Rivet World + Vercel Eve documentation →