Compare · camelRun by camelAI

Vercel eve alternative

Your AI agent as an API you call from any host.

camelRun by camelAI is a hosted runtime for durable AI agents. Keep each agent's configuration in agent.yaml next to your code.

Vercel eve
agent/
├── agent.ts
├── instructions.md
├── tools/
├── channels/
└── schedules/
3 directories, 2 files
camelRun
support
├── Vercel
├── Workers
├── Bun · Deno
├── Node
├── Python
└── CLI
const run = await agent.run("Summarize ticket 123", { user: "alice" });
from Vercel → turn_start

Migrating from eve

Move eve agents to camelRun

Your prompt stays a Markdown file and your tools stay TypeScript. Here is where the parts of an eve agent go.

In eveIn camelRun
my-agent/
└── agent/
  1. agent.tsmodel: anthropic/claude-sonnet-5-5 (agent.yaml)
  2. instructions.mdsystemPromptFile: prompts/support.md (agent.yaml)
  3. tools/mcpServers: [{ name: app, url: … }] (agent.yaml)
  4. channels/Console › Channels (console)
  5. schedules/agent.schedule({ text, everySeconds }) (your code)
Also in eve
  1. subagentsdelegate: { agents: [...] } (agent.yaml)
  2. approvalsneedsApproval: true (your tool)

After the move

Your eve agent as agent.yaml, next to your Next.js app

agent.yaml holds what agent.ts did and points at your instructions as a Markdown prompt. Your app serves the tools, and camelrun deploy puts the agent live from your laptop or CI.

The CLI and agent.yaml
key: support
systemPromptFile: prompts/support.md
builtins: [web_search, ask_user]
mcpServers:
  - name: app
    url: https://app.example.com/mcp
    auth: { type: bearer, token: "${APP_MCP_TOKEN}" }
agents:
  - key: support
Terminal
npm install -g @camelai/camelrun
added 94 packages in 6s
camelrun login # an API key from the console's API tokens page
API key (create one at https://run.camelai.com/console/tokens): art_...
Logged in as maya-acme on https://run.camelai.com (key saved to /Users/maya/.config/camelrun/credentials.json)
camelrun init support # writes agent.yaml
Wrote /Users/maya/acme-help/agent.yaml. Edit it, then: camelrun deploy
camelrun deploy # the definition, and the agents it lists
support: created (def_8e2d5a71c40f93b6e1d7, revision 1)
tools from app: 3 tools
agent support: ready (client_9f2c41d0e8b7a63519c4f0d2e7a81b6c5d3f9e02)

Next.js and the AI SDK

Keep your Next.js app and useChat on Vercel

Building Vercel agents with Next.js and the AI SDK? Keep your pages, routes and useChat where they are. Each customer gets an agent of their own in camelRun, made from the support definition you deployed, and replies stream from camelRun straight to the browser, so a long answer never holds a function open.

help.acme.comNext.js on Vercel
Acme Helpstreaming
My invoice shows 12 seats. We have 9.
app__get_invoicedone

You're right: 3 of your 12 seats belong to people who left in September. Remove them under Settings

Message the agent…
// app/api/agent/route.ts (Next.js App Router)
import { createAgentHandler } from "@camelai/run/server";

export const POST = createAgentHandler({
  // CAMELAI_API_KEY from the environment, or apiKey: "…"
  authorize: async request => {
    const user = await getUser(request);          // your session check
    return user ? { userId: user.id, name: user.name } : null;   // null: 401
  },
  agent: { definition: "def_…" },
});
Add the chat to your app

Connect your AI agent to Slack, Discord, Telegram and GitHub

Add a channel in the console and pick the agent's definition. Every Slack thread it's @mentioned in, DM, Telegram chat, pull request or issue gets an agent of its own, and webhooks from services like Sentry and Linear can start one too.

How channels work
run.camelai.com/console/agentsConsole
camelRun
AgentsDefinitionsWorkspacesVolumes
Agents

Agents in your account. Your application creates them with the SDK or POST /v1/agents. Learn more

Refresh
NameStatus
supportRunning
Slack: U07HM2QX4Asleep
GitHub: acme/help#1187: Fix seat count on invoicesRunning
Telegram: @jonas_kAsleep
Discord: @raviAsleep
Webhook: sentry-4821Asleep

Vercel eve or camelRun: which fits your project

Vercel eve fits when
  • Your team ships everything on Vercel and wants each agent to be its own project directory.
  • You want Vercel Sandbox, Workflows and AI Gateway underneath your agents.
camelRun fits when
  • You want to call agents from the app you already run, in TypeScript or Python, with tools that stay in your own code.
  • You want to pay only while agents work: $0.01 an agent-hour in a run, prepaid, and idle or sleeping agents cost only storage.
  • You want to run the whole runtime on your own servers, or bring your own model keys and model servers.

Both are open source: eve under Apache-2.0, camelRun's runtime under the AGPL with MIT SDKs and CLI.

eve details from vercel.com/eve and github.com/vercel/eve, checked October 22, 2026.

Questions about moving from Vercel eve

  1. What is Vercel eve?

    The eve agent framework is Vercel's open-source framework for durable AI agents, in beta since June 2026. An eve agent is a directory of Markdown instructions and skills, TypeScript tools, channels and schedules, which eve deploys to Vercel.

  2. What's the difference between Vercel eve and camelRun?

    Vercel eve is a framework: an agent is a project directory, tools included, that you deploy to Vercel. camelRun by camelAI is a hosted runtime: each agent lives under a key you pick, its tools stay in the app you already run, and your code calls it from any host in TypeScript or Python.

  3. Can I run durable AI agents outside Vercel?

    Yes. camelRun runs your agents at run.camelai.com or on your own servers with one container and Postgres. Your agents keep going through deploys and crashes, and a tool call is never sent twice.

  4. Can I keep my Next.js app and the AI SDK on Vercel?

    Yes. Add one route with createAgentHandler, point useChat at it with AgentRuntimeChatTransport, and serve your tools with serveTools. Using Vercel AI Gateway? Add its key on the console's Models & keys page.

  1. Can my camelRun agent answer in Slack and Discord like an eve agent?

    Yes. Connect Slack, Discord, Telegram, GitHub or a signed webhook in the console, with no channel code, and each conversation gets an agent of its own.

  2. How do I move an eve agent to camelRun?

    Point agent.yaml's systemPromptFile at your instructions.md, set the model, and serve your tools from your app as an MCP server that agent.yaml names. Then run camelrun deploy, add your channels in the console, and move your schedules to agent.schedule().

  3. What does a durable AI agent cost on camelRun?

    camelRun is prepaid, with no subscription, no seats and no per-agent fee: $0.01 for each hour an agent spends in a run, $0.10 per GB-month of storage, $0 for tokens on your own provider keys, the provider's price with no markup on tokens on ours, and idle and sleeping agents cost only storage.

Your AI agent as an API

support
Next.js on Vercel
Cloudflare Workers
Python
npm install -g @camelai/camelrun
camelrun login
camelrun init support
camelrun deploy
your coding agent
Set up with your coding agent

Read https://run.camelai.com/SKILL.md and set up camelRun in this project. Ask me what the agent should do.

Paste into Claude Code, Codex, Cursor or any coding agent. It asks what your agent should do, then builds it.