The Typefully Social Media Agent is an open-source eve framework template from Vercel Labs that turns a Slack bot into a full social media manager, drafting and scheduling posts for X, LinkedIn, Threads, Bluesky, and Mastodon through Typefully.
What is the Typefully Social Media Agent?
This is a TypeScript (strict ESM) template for the eve agent framework. Team members @mention the bot in Slack and it handles their social presence: drafting posts and threads, scheduling and managing the publishing queue, uploading media, reading analytics, and pulling briefs from Notion. Long-form pieces are shared as Notion pages. The template deploys to Vercel and is licensed under MIT.
Key Features
- Slack-native interface — Answers @mentions and DMs, replies in threads, and renders approvals as clickable buttons.
- Typefully integration — Uses your Typefully API key (set as
TYPEFULLY_API_KEY) to run against your real workspace. Drafting is friction-free; scheduling a post withpublish_ator deleting drafts, comments, or threads pauses for approval. - Notion briefs and long-form drafts — Pulls briefs and source material from Notion pages through user-scoped OAuth (Vercel Connect), drafts long pieces back as Notion pages, and gates page updates and moves on approval.
- Vercel Blob asset storage — Upload, list, inspect, download, and delete assets through Blob tools, authenticated by the project's OIDC token.
- Weekly analytics digest — A Monday cron pulls Typefully post and follower analytics and posts two tables to the Slack channel set in
TYPEFULLY_ANALYTICS_CHANNEL. - Researcher and reviewer subagents — The
researcherruns with a fresh context and web tools only; thereviewerre-checks drafts with its own copy of the writing-quality skill. - Per-platform style skills — Five skills for X, LinkedIn, Threads, Bluesky, and Mastodon, each with platform-specific voice guidance and a
banned-words.jsonlist checked by thelint_against_styletool. - Approval gates — Publishing, scheduling, deleting assets, and updating Notion pages pause for a human decision before the MCP tool executes.
Who is it for?
- Social media managers who spend their day in Slack and want an AI assistant to draft platform-specific posts from Notion briefs.
- Marketing teams using Typefully that need a bot to schedule content across multiple networks after a quick Slack approval.
- Developers building AI agents who want a reference implementation of eve with Vercel Connect, Blob, Sandbox, OIDC auth, and a
pnpm validateworkflow using Ultracite (Biome).
What can you do with it?
- Social managers: @mention the bot to draft an X thread or a LinkedIn post from a Notion brief, get it reviewed by the
reviewersubagent, then schedule it through Typefully with a button-based approval. - Content teams: Encode brand voice in the five platform-style skills and run
lint_against_styleto catch banned words before publishing. - Operators: Receive a weekly Monday analytics digest in Slack, with two tables of post and follower metrics from Typefully.
- Developers: Extend the agent by dropping new tool files into
agent/tools/(filename becomes the tool name) or pair this agent with the eve content agent template using remote subagents andvercelOidc()deployment-to-deployment auth.
How does it work?
The agent reads a workflow in agent/instructions.md: load the right skill first, ground work in the user's real social sets and drafts, draft freely but schedule and delete only on approval, draft long pieces into Notion, and get a fresh-eyes review before proposing a draft. Deploying with the Vercel button creates a Slack connector (event trigger at /eve/v1/slack), a Notion connector, prompts for your Typefully API key, and provisions a public Vercel Blob store. Once deployed, you @mention the bot in Slack to start.
For local development you run vercel link, vercel env pull, then pnpm dev to open the TUI and use /model to link a model provider. The Slack surface only runs against a deployment — ship changes with eve deploy.
Pros and cons
- Pros: MIT license; only one secret to manage (the Typefully API key), since Slack and Notion use Vercel Connect and Blob and AI Gateway use Vercel OIDC; built-in per-platform style skills; approval gates prevent accidental publishes.
- Cons: The Slack surface does not work locally — it only runs in a deployment; scheduling, publishing, and deletions always require human approval, so fully hands-off automation is not possible; you need a Typefully account and a Vercel project to use it.
FAQ
What does the Typefully Social Media Agent do?
It is an eve-framework agent that lives in Slack. When team members @mention it, it drafts posts and threads for X, LinkedIn, Threads, Bluesky, and Mastodon through Typefully, schedules and manages the publishing queue, uploads media, reads analytics, and pulls briefs from Notion.
How do I deploy the template?
Use the "Deploy with Vercel" button on the GitHub page. It provisions a Slack connector with the event trigger pointed at /eve/v1/slack, a Notion connector, a Vercel Blob store, and prompts you to set the TYPEFULLY_API_KEY environment variable. After deployment, @mention the bot in Slack.
Which social networks does it support?
It supports X, LinkedIn, Threads, Bluesky, and Mastodon through Typefully. The template includes five corresponding style skills, each with platform-specific guidance and a banned-words.json list used by the lint_against_style tool.
What credentials do I need?
The one secret you supply is a Typefully API key, stored as TYPEFULLY_API_KEY. Slack and Notion authenticate through Vercel Connect, while Vercel Blob and AI Gateway authenticate through Vercel OIDC — so no additional keys are needed.
Does this template replace the eve content agent?
No. The content agent template covers long-form surfaces like blog posts, release notes, and newsletters. The Typefully agent documents how to deploy the content agent as a separate Vercel project and delegate to it via a remote subagent using vercelOidc() authentication, so both agents can work together.








