Extend eve agents with installable extensions
Mirrored from Vercel — AI for archival readability. Support the source by reading on the original site.
You can now package tools, connections, skills, instructions, and hooks into extensions that any eve agent can import. Extensions can be published to package registries like npm, then installed, versioned, and upgraded like any other project dependency.
A browser-use extension might ship tools for navigating a site, a memory extension can capture context with hooks and recall it with tools, and a self-improvement extension pairs hooks with dynamic instructions.
Scaffold a new extension with a single command:
npx eve@latest extension init crmScaffolding an extension named crm
This creates the package, installs dependencies, and initializes Git. The generated package is shaped like an agent, with tools, connections, skills, and hooks following the same file conventions.
@acme/crm/ package.json extension/ extension.ts # defineExtension + config schema tools/search.ts connections/api.ts skills/triage/SKILL.md instructions.md hooks/audit.ts lib/http.tsThe generated extension package
When the extension is ready, running eve extension build generates the publishable package.
To use an extension, install the package and import it from a file in agent/extensions/:
import crm from "@acme/crm";export default crm({ apiKey: process.env.CRM_API_KEY! });Importing and configuring the extension in an agent
The filename sets the namespace, so the extension's search tool runs in the agent as crm__search.
Extensions allow you to:
Declare a config schema using a standard schema library, such as Zod. Consumer settings are validated on import and typed everywhere the extension reads them.
Require approval before an extension's tool runs, replace it with your own, or remove it with
disableTool().Narrow an extension tool's result type in hooks with
toolResultFrom.
Read the documentation to get started.
Discussion (0)
Sign in to join the discussion. Free account, 30 seconds — email code or GitHub.
Sign in →No comments yet. Sign in and be the first to say something.