Slack
Ask Escher to send a Slack message in plain English. Escher formats the message and sends it via your Slack workspace.
How it works
Slack is the one integration that Escher handles in-house rather than via script generation. When you ask Escher to post something to Slack:
- The integrations agent classifies the request as
slack - A formatter prompt (Claude Haiku) turns your request into a Slack Block Kit message
- Escher emits a
client-actionSSE event with the formatted message - The desktop app posts the message to your Slack workspace using your stored Slack token
There is no Code-Gen Agent involvement for Slack — the message is formatted and sent directly.
What you can ask
"Post a summary of today's findings to #escher-alerts."
"Tell #ops-channel that the cost-spike incident is resolved, with a link to the Canvas."
"Send the SOC 2 readiness summary to #compliance with the failing controls highlighted."
Escher composes the Block Kit JSON, including formatting (sections, headers, lists, dividers) appropriate to the content.
Setup
You need a Slack app installed in your workspace and a bot token configured in Escher.
- Create a Slack app at api.slack.com/apps → Create New App → From scratch
- Add OAuth scopes:
chat:write,channels:read,incoming-webhook - Install to your workspace; copy the Bot User OAuth Token (
xoxb-...) - In Escher → Settings → Integrations → Slack → Connect → paste the token
- Invite the bot to each channel it should post in:
/invite @escher-bot
What's not supported
Today, Slack support means Escher → Slack message generation triggered by your prompt. Specifically not implemented:
- Saved notification rules ("notify me whenever X happens")
- Continuous monitoring posting to Slack on a schedule
- Inbound
/escherslash commands processed by the Slack app - Two-way Slack channel listening
If you want recurring Slack posts, ask Escher each time, or wire your own scheduled job (the Escher scheduler plugin can drive this) to call the same flow.