Documentation Index
Fetch the complete documentation index at: https://honeydew.ai/docs/llms.txt
Use this file to discover all available pages before exploring further.
Overview
Honeydew Analyst Slack Bot is a conversational AI tool that helps you analyze your data in Slack. You can ask questions about your data, get insights and visualizations without leaving your Slack workspace.Installation
To install the Honeydew Analyst Slack Bot, follow these steps:Add the Honeydew Analyst Slack Bot to your Slack workspace
Install the Honeydew Analyst Slack Bot using this link.
If you are not a Slack admin, please ask your Slack admin to install the bot.
Optional: Create a user group
Create a user group in Slack for users who can have access to the Honeydew Analyst Slack Bot.
Only users in that group will be able to access the bot.
You can add or remove users from the group to control who can access the bot.
More details on creating user groups can be found in the Slack documentation.
Optional: Create a dedicated monitoring slack channel
You can create a dedicated Slack channel that would mirror all the Honeydew Analyst Slack Bot activity.
This will help you keep track of all the questions asked and insights shared by the bot,
and be able to continuously monitor and improve its performance.
Make sure to add the
@Honeydew bot to the created channel.Configure the Honeydew Analyst Slack Bot
Authentication Methods
The Honeydew Analyst Slack Bot supports two authentication methods:OAuth Authentication (Recommended): Each user authenticates with their own Honeydew account. This is the recommended method, as it allows users to have personalized experiences and access control. This also enables utilizing individual Snowflake credentials when Snowflake OAuth authentication method is configured for your organization, enforcing data access policies at the user level.API Key Authentication (Legacy): Uses a shared service API key for all users. You can use this method if you want to make the bot available to users in Slack without requiring them to have a Honeydew account.You can configure authentication by either providing an API key and secret or leaving them empty in order to use OAuth.Configuration Steps
- In your Slack workspace, run
/honeydew-config, or sendconfigas a direct message to the bot. Click Edit Configuration to open the configuration panel. - Fill in the following details:
- API Key (Optional): Leave blank to use OAuth authentication (recommended). If you want to use API Key authentication, enter your API key here.
- API Secret (Optional): Required only if API Key is set. Leave blank for OAuth.
- Base URL: The base URL of your Honeydew instance.
By default that would be
https://api.honeydew.cloud. If your organization uses a custom Honeydew URL, you would be provided with this information along with the Slack app installation link. - Workspace: The Honeydew workspace you want the bot to connect to.
- Agent (Optional): Leave blank to enable agent routing. Enter a specific agent name to use that agent for all conversations.
- Log Channel (optional): The Slack channel where you want to log all the bot activity.
- User Group (optional): The Slack user group that will have access to the bot.
- Click Save. A confirmation message will appear showing the updated settings.
Prerequisites
Important: If using Snowflake Cortex as the LLM platform,
ensure the Snowflake Cortex Prerequisites are met,
before using the Honeydew Analyst Slack Bot
Usage
Once the Honeydew Analyst Slack Bot is installed and configured, you can start using it in your Slack workspace.Direct Conversations
You can send messages directly to the bot by clicking on the Honeydew app in the list of installed appears and going to the Messages tab.Conversations in a Channel
In order to ask the bot questions in a channel, it must be added to the channel. When in channel, the bot will answer questions when addressed directly using@Honeydew.
Logout (OAuth Mode Only)
When using OAuth authentication mode, you can sign out of your Honeydew account by running/honeydew-logout, or by sending logout as a direct message to the bot.
This will disconnect your Honeydew account from the Slack bot, and you’ll need to
re-authenticate to continue using the bot.
Agent routing
With agents configured in your workspace, Honeydew can automatically route each question to the most relevant agent. To enable agent routing, leave the Agent field blank in the Slack bot configuration. When routing is active, Honeydew selects the agent based on the content of the question:- Single match: routes to that agent automatically.
- Multiple matches: presents a choice in Slack — the user picks the agent to use.
- No match: replies that no configured agent fits the question.
To enable agent routing in a specific channel regardless of the workspace Agent setting,
add
Agent="" as a line in the channel’s description.
This is useful for testing routing behavior before enabling it workspace-wide.What the router considers
The router uses an LLM to match the question against every agent in the workspace. For each agent, it looks at:descriptionand AI context — the primary signals. Thedescriptionfrontmatter field and the agent’s AI context (the Markdown body) are equally weighted: both should precisely describe what data, topics, or business area the agent covers, from the user’s perspective.sample_questions— example questions the agent is designed to answer. These are the most direct routing hint: the closer a user’s question resembles a sample question, the more confidently the router picks that agent.domain— the domain the agent is connected to, which provides additional topical scope.
Writing effective agent metadata
The following shows the routing-relevant fields — see the full YAML schema for all required fields:Tips
- Write
descriptionfrom the user’s perspective, not the data model’s. “Analyzes sales pipeline” is more useful than “accesses the orders domain.” - Make
sample_questionsrepresentative of what real users will ask, not just technically valid queries. - When two agents cover adjacent topics, make their descriptions distinct enough to avoid ambiguous routing. The router will surface both as choices when it cannot differentiate between them.
Overriding default configuration
You can override the default Slack app configuration in a specific Slack channel. You can override the default workspace, branch, or agent. Possible use cases:- You have multiple workspaces and want to use the bot in different workspaces.
- You are making changes to the semantic model in a branch and want to test the bot with the new changes.
- You want to use a specific agent in a channel.
- Workspace:
Workspace=my_workspace_name_override(replacemy_workspace_name_overridewith the actual workspace name) - Branch:
Branch=my_branch_name_override(replacemy_branch_name_overridewith the actual branch name) - Agent:
Agent=my_agent_name_overrideto pin a specific agent in the channel, orAgent=""to force agent routing in that channel.
Make sure to add the Slack bot to the channel where you want to override the configuration
Useful Tips
- Treat it as a conversation: Sometimes AI will need additional context to answer well. Use follow-up questions to narrow down the data.
- Ask detailed questions: The more context you provide in your question, the better the bot can understand and provide accurate answers.
- Ask for possible values before asking to filter: If you asked for data with filter and the bot returned nothing, a common root cause is that the database values don’t match you filter. When that happens, instead first ask for the values in that category and then ask for the filtering as a follow-up question - when the bot sees the data first, it can construct much smarter filtering.
- Provide hints: If you get an unexpected or incomplete answer, ask again, and provide some additional information or context, or point out what was missing in the previous answer.
- Break very complex questions into few steps: If your question is very complex, ask it in steps and gradually make a journey through the data by adding context.