Skip to content
Everruns Cloud is open in early access. Run agents without operating the platform.

Slack

IDslack
CategoryIntegrations
Featuresslack_actions
DependenciesNone

An agent published to a Slack endpoint can reply in its thread. This capability lets it do the rest — react to a message, rewrite one it posted, share a file, resolve a user ID to a name — as the same bot the workspace invited.

No second credential. The tools resolve the endpoint’s own bot token server-side, so there is nothing extra to provision, scope, or rotate.

The tools only work in a session a Slack message created. An agent that has the capability enabled but is running from the API, a schedule, or another channel has no Slack endpoint to act as, and every tool returns an error saying so rather than acting as some other endpoint’s bot.

Where an agent carries two Slack endpoints, each with its own bot, the tools act as the endpoint that created the session.

Your Slack app needs the scope for each action you use: reactions:write for reactions, chat:write for updates, files:write for uploads, and users:read for lookups. Slack answers a missing scope with an error the agent sees.

Add an emoji reaction to a message. The cheapest acknowledgement available — prefer it over posting “working on it”.

ParameterTypeRequiredDescription
channelstringyesChannel ID the message is in
timestampstringyesThe message’s ts
namestringyesEmoji name without colons (e.g. eyes)

Reacting with an emoji that is already there succeeds; the result says already_reacted.

Rewrite a message this bot posted. Use it to turn a status message into its result instead of posting a second message.

ParameterTypeRequiredDescription
channelstringyesChannel ID the message is in
timestampstringyesThe ts of the bot message to rewrite
textstringyesReplacement text; Markdown is rendered

Only messages this bot posted can be updated.

Resolve a Slack user ID to that person’s display name, real name, timezone, and whether they are a bot.

ParameterTypeRequiredDescription
user_idstringyesSlack user ID (the <@U…> mention form is accepted)

Returns only those addressing fields. Email, phone, and title are not exposed to the agent.

Share a file into the conversation. Use it for reports, diffs, and logs too long to read in a message.

ParameterTypeRequiredDescription
channelstringyesChannel ID to share into
filenamestringyesFilename shown in Slack, including its extension
contentstringyesThe file’s text content
thread_tsstringnoThread to share into; omit to post at channel level
initial_commentstringnoMessage posted alongside the file

Content is capped at 8 MiB.

  • Posting to an arbitrary channel is deliberately not offered. The blast radius of “anywhere the bot is” is wider than “the thread that asked”, and the reply path already answers in the thread.
  • A retired or disabled endpoint stops acting immediately, even for a session it created earlier.
  • Slack rate limits reach the agent with Slack’s own retry advice rather than as a generic failure.
  • The Slack MCP server stays supported for anything this does not cover. This removes the second credential for the common cases; it does not replace MCP.