eve/ The Agent Framework Workshop

Framework FAQ

How is eve different from using the AI SDK directly?

The AI SDK gives you model, streaming, structured output, and tool-calling primitives. Eve uses those primitives inside a production agent harness and adds a filesystem convention, durable sessions, channels, sandboxes, approvals, connections, subagents, schedules, and evals.

Use the AI SDK directly when you want to own the loop and runtime architecture. Use eve when you want to author the agent's behavior and capabilities while the framework owns the durable harness.

Can I add eve to an existing application?

Yes. From a project with a package.json and no existing agent/ directory:

npx eve@latest init .

This adds the agent structure and missing runtime dependencies without replacing files the application already owns. In a Next.js app, eve can mount the agent and app into the same development server and deployment.

Do I have to use Vercel AI Gateway?

No. The default string model IDs route through AI Gateway, which is the fastest setup for this workshop. You can install an AI SDK provider package, configure its credential, and pass a provider model instance in agent/agent.ts.

Choose a provider and model that fit your latency, capability, privacy, residency, and compliance requirements.

Does an agent need Slack or a frontend?

No. A minimal agent needs instructions, and it can be exercised through the terminal or HTTP API. Channels are optional surfaces that adapt the same agent to Slack, Discord, GitHub, Teams, web chat, custom HTTP, WebSockets, and other transports.

What makes the agent durable?

Eve checkpoints the work as a Workflow-backed session. Completed steps are not re-run after a crash; parked approvals or questions can wait without holding a process; clients can reconnect to the event stream. An interrupted in-progress step may execute again, which is why external side effects still need idempotency.

Are connections the same as tools?

Both produce actions the model can call, but they are authored differently:

  • A tool is TypeScript code inside your agent.
  • A connection adapts an external MCP server or OpenAPI document into discoverable tools.

Use connections for service-owned contracts and tools for internal code, database access, transformations, or custom policy.

Can I bring an existing agent harness?

You can move incrementally. Start by carrying over the existing system prompt into instructions.md, expose stable functions as typed tools, and keep your current UI as an HTTP client. The main architectural decision is whether eve's durable session and harness should become the owner of the loop; avoid running two competing loops for the same conversation.

Is eve production-ready?

Eve includes production-oriented capabilities, but the framework is currently in preview and subject to change. Pin versions, read the versioned package docs, test upgrades, secure routes and credentials, gate sensitive actions, and run evals before promotion.

Where should I go next?