Files
twenty/packages/twenty-apps/public/slack/README.md
T
Abdul Rahman 5ffa121e59 feat(slack): implement channel welcome message functionality (#23699)
https://github.com/user-attachments/assets/a77aa941-da48-4c30-8e14-587516c19ac4


Added a new feature that allows the bot to introduce itself when added
to a Slack channel. This includes a welcome message and a detailed
thread reply outlining its capabilities. The implementation includes new
utility functions for handling the welcome event, managing welcome
state, and posting messages. Updated relevant logic functions to support
this feature, ensuring the bot can provide a seamless introduction to
users in new channels.

- Introduced `slack-channel-welcome` logic function.
- Added constants for welcome message text.
- Implemented event parsing and handling for `member_joined_channel`.
- Updated `slack-events-resolver` to route welcome events appropriately.
2026-08-03 19:08:40 +00:00

2.2 KiB

Slack

Your CRM, in the conversation — ask Twenty anything from Slack and post back to any channel.

What you get

  • A CRM assistant in Slack@twenty how many open opportunities do we have? or @twenty create a company called ACME. It answers in-thread, remembers the thread, and can read, create, update and soft-delete records
  • Follow-ups without re-mentioning — once it has replied in a thread you can keep talking to it for 24 hours
  • Slack steps for your workflows — post, update or delete messages, send ephemerals, add reactions, list channels
  • Send from anywhere in Twenty — the Send Slack message command opens a side panel to pick a channel and post

🤖 The assistant

Mention the bot in a channel or DM it. It replies in the thread with your CRM data, using the recent conversation as context.

Anyone who can message the bot acts with the Slack Assistant role, which by default can read, create, update and soft-delete people, companies, opportunities, notes and tasks. Workspace members stay read-only and hard delete is off. Tighten the role in Settings → Roles if you want a narrower bot.

One Slack workspace answers into one Twenty workspace.

When the bot is added to a channel it introduces itself once, with a short message in the channel and the details (what to ask it, what it reads, and the shared-role caveat above) in a thread reply. It needs the member_joined_channel subscription, so leave that one off if you want the bot to arrive quietly.

🧰 The workflow steps

Step Slack API
slack-post-message chat.postMessage
slack-post-ephemeral-message chat.postEphemeral
slack-update-message chat.update
slack-delete-message chat.delete
slack-add-reaction reactions.add
slack-list-channels conversations.list

Pick a workspace shared or just for me Slack connection; steps run with that token.

💳 Billing

Free — no credits, no metering.

📌 Heads up

You need to create a Slack app and connect it — see SETUP.md. The assistant needs a few extra steps (signing secret and event subscriptions) on top of the base connection.