Enable your agents to manage team communication through Slack. Send messages, search conversations, manage channels, and coordinate team activities to streamline your collaboration workflows with AI-powered automation.
channel (string, required): Channel name or ID - Use Connect Portal Workflow Settings to allow users to select a channel, or enter a channel name to create a new channel
message (string, required): The message text to send
botName (string, required): The name of the bot that sends this message
botIcon (string, required): Bot icon - Can be either an image URL or an emoji (e.g., “:dog:”)
blocks (object, optional): Slack Block Kit JSON for rich message formatting with attachments and interactive elements
authenticatedUser (boolean, optional): If true, message appears to come from your authenticated Slack user instead of the application (defaults to false)
SLACK_SEND_DIRECT_MESSAGE
Description: Send a direct message to a specific user in Slack.
Parameters:
memberId (string, required): Recipient user ID - Use Connect Portal Workflow Settings to allow users to select a workspace member
message (string, required): The message text to send
botName (string, required): The name of the bot that sends this message
botIcon (string, required): Bot icon - Can be either an image URL or an emoji (e.g., “:dog:”)
blocks (object, optional): Slack Block Kit JSON for rich message formatting with attachments and interactive elements
authenticatedUser (boolean, optional): If true, message appears to come from your authenticated Slack user instead of the application (defaults to false)
from crewai import Agent, Task, Crewfrom crewai_tools import CrewaiEnterpriseTools# Get enterprise tools (Slack tools will be included)enterprise_tools = CrewaiEnterpriseTools( enterprise_token="your_enterprise_token")# Create an agent with Slack capabilitiesslack_agent = Agent( role="Team Communication Manager", goal="Facilitate team communication and coordinate collaboration efficiently", backstory="An AI assistant specialized in team communication and workspace coordination.", tools=[enterprise_tools])# Task to send project updatesupdate_task = Task( description="Send a project status update to the #general channel with current progress", agent=slack_agent, expected_output="Project update message sent successfully to team channel")# Run the taskcrew = Crew( agents=[slack_agent], tasks=[update_task])crew.kickoff()
from crewai_tools import CrewaiEnterpriseTools# Get only specific Slack toolsenterprise_tools = CrewaiEnterpriseTools( enterprise_token="your_enterprise_token", actions_list=["slack_send_message", "slack_send_direct_message", "slack_search_messages"])communication_manager = Agent( role="Communication Coordinator", goal="Manage team communications and ensure important messages reach the right people", backstory="An experienced communication coordinator who handles team messaging and notifications.", tools=enterprise_tools)# Task to coordinate team communicationcoordination_task = Task( description="Send task completion notifications to team members and update project channels", agent=communication_manager, expected_output="Team notifications sent and project channels updated successfully")crew = Crew( agents=[communication_manager], tasks=[coordination_task])crew.kickoff()
from crewai import Agent, Task, Crewfrom crewai_tools import CrewaiEnterpriseToolsenterprise_tools = CrewaiEnterpriseTools( enterprise_token="your_enterprise_token")notification_agent = Agent( role="Notification Manager", goal="Create rich, interactive notifications and manage workspace communication", backstory="An AI assistant that specializes in creating engaging team notifications and updates.", tools=[enterprise_tools])# Task to send rich notificationsnotification_task = Task( description=""" 1. Send a formatted project completion message to #general with progress charts 2. Send direct messages to team leads with task summaries 3. Create interactive notification with action buttons for team feedback """, agent=notification_agent, expected_output="Rich notifications sent with interactive elements and formatted content")crew = Crew( agents=[notification_agent], tasks=[notification_task])crew.kickoff()
from crewai import Agent, Task, Crewfrom crewai_tools import CrewaiEnterpriseToolsenterprise_tools = CrewaiEnterpriseTools( enterprise_token="your_enterprise_token")analytics_agent = Agent( role="Communication Analyst", goal="Analyze team communication patterns and extract insights from conversations", backstory="An analytical AI that excels at understanding team dynamics through communication data.", tools=[enterprise_tools])# Complex task involving search and analysisanalysis_task = Task( description=""" 1. Search for recent project-related messages across all channels 2. Find users by email to identify team members 3. Analyze communication patterns and response times 4. Generate weekly team communication summary """, agent=analytics_agent, expected_output="Comprehensive communication analysis with team insights and recommendations")crew = Crew( agents=[analytics_agent], tasks=[analysis_task])crew.kickoff()