Skip to content
New Project

eve Memory Agent

eve agent with long-term memory powered by Vercel Blob.

DeployView Demo

Remember me, eve.

Slack-based assistant built on eve that saves the preferences people share with it. Personal preferences and shared channel conventions are saved separately and recalled at the start of every conversation.

Getting started

Vercel's project setup flow creates a repository in your Git account and a Vercel project. You'll create and install a Slack app via Vercel Connect and configure a private Vercel Blob store to save user and channel preferences.

Once you've deployed the agent, add it to a Slack channel and @mention it to start your first conversation.

Tech stack

LayerTechnology
Agent frameworkeve
Slack integrationVercel Connect
Memory storageVercel Blob
SandboxVercel Sandbox

How memory works

The agent has two memories, each defined as a file in agent/memory/:

MemoryFileShared by
User preferencesuser-preferences.tsOne Slack user, across every channel and DM
Channel preferenceschannel-preferences.tsEveryone in one Slack channel

Before the agent responds to each message, eve recalls both memories, and the model saves or removes entries with each memory's own tools. agent/instructions.md tells it to use channel memory only when someone states a preference for the whole channel, and to follow a user's own preference over the channel's.

Memory is tied to the verified Slack user and channel, never to anything the model or user writes. DMs have no shared channel, so they only use user memory.

On Vercel, memory is stored in the connected private Blob store. During local development with pnpm dev, memory lasts only while the development server runs and is cleared each time you restart it.

Slack identity

Before responding to each message, the agent looks up the Slack profile of everyone involved in the thread, including people who are mentioned. It adds their names and profile images to the conversation as context, but never email addresses.

To skip profile lookups for selected bot or service accounts, set the SLACK_IDENTITY_EXCLUDED_USER_IDS environment variable to a comma-separated list of their Slack user IDs:

SLACK_IDENTITY_EXCLUDED_USER_IDS=U0123456789,U0987654321

Local development

Use Node.js 24 with pnpm. Install the Vercel CLI, then clone your repository and run:

pnpm install
vercel link
vercel env pull .env.local
pnpm dev

Choose your deployed project when vercel link prompts you. vercel env pull .env.local saves your project's development environment variables to .env.local.

pnpm dev opens eve's interactive chat in your terminal. Type a message such as "Remember that I prefer short answers" to talk to the agent, then type /new to start a new conversation and check that it follows the preference. Locally, every conversation shares one user memory and one channel memory.

Local sessions use just-bash instead of Vercel Sandbox, and don't look up Slack profiles. Test Slack identity and separate memories for different users and channels through the agent in Slack.

Before deploying, check your changes and confirm the agent builds:

pnpm validate
pnpm exec eve info
pnpm build

Use pnpm fix to apply automatic formatting and lint fixes. When the checks pass, deploy with:

vercel deploy --prod

Customization

CustomizeWhere
What the agent remembers about usersdescription in agent/memory/user-preferences.ts
What the agent remembers about channelsdescription in agent/memory/channel-preferences.ts
Who shares a memoryscope in each memory file
When to save, and response styleagent/instructions.md
Model and session limitsagent/agent.ts

For more ways to customize the agent, including how to build your own memory provider, see CUSTOMIZATION.md.

Extend your agent with Vercel Drives

Memory suits short preferences the agent saves during conversations. To give it longer documents your team maintains, such as runbooks or a glossary of internal terms, store them on a Vercel Drive and mount it into the agent's sandbox. The agent searches the files when a question calls for them but can't change them, so you stay in control of what they say.

See Give the agent shared reference files for setup steps.

GitHub
Ownervercel-labs
Repositoryeve-memory-agent-template
Use Cases
Starter
AI
CDN
Stack
eve
Database
Vercel Blob

Related Templates

eve Marketing Team

Marketing team in Slack: one lead, five specialists. Blog drafts in Notion, posts in Typefully, campaigns in Resend, on approval.
eve Marketing Team thumbnail

eve Software Factory

Software factory built on eve: AI agents work each stage of the development loop, and people make the judgment calls.
eve Software Factory thumbnail

eve Mem0 Agent

eve agent with long-term memory powered by Mem0.
eve Mem0 Agent thumbnail
Deploy
LicenseView License