{"slug": "vercel-eve-open-source-agent-framework-for-typescript", "title": "Vercel Eve: Open-Source Agent Framework for TypeScript", "summary": "Vercel launched Eve, an open-source agent framework for TypeScript, at Ship London. The framework treats an AI agent as a directory of files, automatically discovering tools, instructions, and subagents, and includes built-in production infrastructure like durable sessions, sandboxed compute, and human-in-the-loop approval gates without configuration.", "body_md": "Vercel shipped eve at Ship London yesterday — an open-source framework where an AI agent is a directory of files. Tools go in `tools/`\n\n. Instructions go in `instructions.md`\n\n. Skills, channels, schedules, and subagents each get their own folder. The framework discovers everything automatically and includes production infrastructure — durable sessions, sandboxed compute, human-in-the-loop approval gates — without a line of configuration code.\n\n## Agents Are Just Directories\n\nThe central idea sounds almost too obvious: the filesystem is the configuration. You want a tool called `run_sql`\n\n? Create `agent/tools/run_sql.ts`\n\n. You want a Slack channel? Run `eve channels add slack`\n\nand a `channels/slack.ts`\n\nfile appears. The directory tree is the agent contract.\n\nHere is the full layout of an eve agent:\n\n```\nagent/\n  agent.ts          ← model selection, runtime config\n  instructions.md   ← system prompt in Markdown\n  tools/            ← typed actions; filename = tool name\n  skills/           ← knowledge files loaded contextually\n  subagents/        ← delegated specialist agents\n  channels/         ← Slack, Discord, HTTP, cron endpoints\n  schedules/        ← timer-based autonomous triggers\n  connections/      ← MCP servers and OpenAPI backends\n```\n\nThis mirrors exactly how Next.js won the frontend framework wars: `pages/`\n\nfor routing, `app/`\n\nfor layouts, convention over configuration. Vercel is making the same bet for agents, and the pattern is familiar enough that TypeScript developers will recognize it on day one.\n\n## What Ships Bundled (The Part That Actually Matters)\n\nMost agent frameworks give you an agent loop and leave the rest to you. Eve ships six production capabilities that teams normally spend months building:\n\n**Durable execution**— Sessions checkpoint each step via Vercel Workflow’s event-log replay. Agents survive crashes, new deployments, and multi-day pauses without losing state.**Sandboxed compute**— Agent-generated code runs in ephemeral microVMs, not inside your application process.** Human-in-the-loop**— The`needsApproval`\n\ndirective pauses any tool call until a human confirms. No custom retry logic required.**Secure connections**— MCP and OpenAPI integrations route through Vercel Connect. Models never see raw API keys.** Multi-channel**— The same agent handles HTTP, Slack, Discord, Teams, Telegram, GitHub, and Linear without separate deployments.** Observability**— Per-turn OpenTelemetry spans for every model call, tool execution, and sandbox command, exportable to Datadog or Braintrust.\n\nInfrastructure is where agent projects go to die. Durability, sandboxing, and approval gates are not glamorous problems, but they are the ones that block production deployments. Eve removes those blockers from the start.\n\n## Getting Started in About a Minute\n\nThe minimal working agent requires two files:\n\n``` js\n// agent/agent.ts\nimport { defineAgent } from \"eve\";\nexport default defineAgent({ model: \"anthropic/claude-opus-4.8\" });\n// agent/instructions.md\nYou are a concise assistant. Use tools when they are available.\n```\n\nTo scaffold and start:\n\n```\nnpx eve@latest init my-agent   # scaffold, install deps, start dev server\neve dev                         # interactive terminal UI + HTTP API\neve eval                        # run test suites locally or in CI\nvercel deploy                   # ship to production unchanged\n```\n\nHere is a tool definition with an approval gate:\n\n``` js\n// agent/tools/run_sql.ts\nimport { defineTool } from \"eve/tools\";\nimport { z } from \"zod\";\n\nexport default defineTool({\n  description: \"Run a read-only SQL query.\",\n  inputSchema: z.object({ sql: z.string() }),\n  needsApproval: ({ toolInput }) => estimateScanGb(toolInput.sql) > 50,\n  async execute({ sql }) {\n    // query logic here\n  },\n});\n```\n\nThe filename becomes the tool name. The `needsApproval`\n\nfunction pauses execution before expensive queries and waits for confirmation in whatever channel the session is running on. The same directory that runs locally deploys to production with `vercel deploy`\n\n— no infrastructure changes.\n\n## Where Eve Fits (And Where It Does Not)\n\nThe TypeScript agent framework landscape now has two serious options: eve and [Mastra](https://mastra.ai). The key difference is platform coupling. Mastra is platform-agnostic — built by the Gatsby co-founders alongside a Next.js co-creator, runs on any Node.js host. Eve defaults to Vercel. That is not a limitation if you are already on Vercel, but it is a real constraint if you are not.\n\nAgainst [LangGraph](https://www.langchain.com/langgraph) — the most established agent framework — eve wins on TypeScript-first development and serverless compatibility. LangGraph is Python-first and does not support serverless environments natively. If your team writes TypeScript and your infrastructure is Vercel or edge-compatible, eve is the cleaner path.\n\nAgainst a DIY stack, the comparison is not close. Tool registration, durable state management, sandboxing, and deployment are months of engineering work. Eve replaces all of it with a directory structure.\n\n## Vercel Ran This in Production First\n\nEve is not a framework built for a launch announcement. Vercel ran the same pattern internally before open-sourcing it. Their Slack analyst handles 30,000 questions per month. Their SDR agent returns roughly 32x ROI. Their support agent resolves 92% of tickets without human intervention. Agent-triggered deployments on the Vercel platform grew from under 3% to over 50% of all deploys in the past six months.\n\nThat operational history matters. The six capabilities bundled into eve were extracted from real systems that needed to survive crashes, credential leaks, and runaway compute — not designed on a whiteboard.\n\n## Beta Caveats\n\nEve is in public beta. The documentation is explicit: “pin your versions and expect some churn if you build on this today.” APIs will change before general availability. This is not a framework to drop into a mission-critical system immediately, but it is a practical choice for new agent projects where the production infrastructure question would otherwise take months to answer.\n\nThe framework is available on [GitHub](https://github.com/vercel/eve) under Apache-2.0. The [official documentation](https://vercel.com/docs/eve) includes the full API reference. Start with `npx eve@latest init`\n\nand review the [Ship announcement](https://vercel.com/changelog/introducing-eve-an-open-source-agent-framework) for the full feature set.", "url": "https://wpnews.pro/news/vercel-eve-open-source-agent-framework-for-typescript", "canonical_source": "https://byteiota.com/vercel-eve-open-source-agent-framework-for-typescript/", "published_at": "2026-06-18 12:13:02+00:00", "updated_at": "2026-06-18 14:33:11.814452+00:00", "lang": "en", "topics": ["ai-agents", "developer-tools", "ai-infrastructure"], "entities": ["Vercel", "Eve", "Next.js", "Claude", "Anthropic", "Slack", "Discord", "GitHub"], "alternates": {"html": "https://wpnews.pro/news/vercel-eve-open-source-agent-framework-for-typescript", "markdown": "https://wpnews.pro/news/vercel-eve-open-source-agent-framework-for-typescript.md", "text": "https://wpnews.pro/news/vercel-eve-open-source-agent-framework-for-typescript.txt", "jsonld": "https://wpnews.pro/news/vercel-eve-open-source-agent-framework-for-typescript.jsonld"}}