Onyx can connect to your Slack workspace and answer questions like an expert teammate.You can configure OnyxBot to respond to certain types of messages, in specific channels,
and with selected data from your index.
Click Create and you will be taken to the app page.
3
Generate an App Token
Scroll down to the App-Level Tokens section and click Generate Token and Scopes.Give your token a name, add the connections:write scope to the app-level token and click Generate.
Save this token for later.
You can customize your Slack bot’s name, description, and icon in the Display Information section.
4
Install the Slack App
Navigate to the OAuth & Permissions tab, click Install to Workspace,
and follow the instructions to install the app.Copy the Bot User OAuth Token and User OAuth Token (Recommended) and save it for later.
Onyx does not currently support token rotation.
5
Setup Onyx for the Slack Bot
Navigate to the Onyx Admin Panel and select the Slack Bots tab.Enter the Bot Token, App Token, and User Token (Recommended) and click Create!
6
Configure the Slack Bot's Behavior
Once your Slack bot is created, you can configure it’s universal behavior through the Default Configuration.You can also set channel-specific behavior using Channel Configurations.
There are a few ways to chat with the Onyx Slack bot:
Your admin may enable any or all of these methods in your Slack workspace. Additionally,
the configurations may change based on the channel you are in.
Tag the bot with your question
Copy
Ask AI
@onyxbot What is the best practice for handling 429 errors in connectors?
OnyxBot will respond in a thread to your message.
Use a slash command
Copy
Ask AI
/onyx How many PTO days do I get per year? Do they roll over?
OnyxBot will send an ephemeral message. This means only you will see the response.
Send a message in a channel with the bot added
Copy
Ask AI
What were the takeaways from Katie's meeting with our big prospect last week?
OnyxBot may be configured to answer any question in Slack even if you didn’t tag it. In this case,
it will respond in a thread to your message.
Direct message the bot
Copy
Ask AI
Look for conversations about this stack trace...
You can direct message the OnyxBot app to ask private questions.
OnyxBot may also be configured with none, some, or all of your indexed data.
Ask your admin what is available through your OnyxBot.
There are a set of advanced configuration options available via environment variables that control your Slack bot’s
behavior.You can find the full list of configuration options in the Onyx
GitHub.
These configuration options are rarely needed and should be used with caution.
DANSWER_BOT_NUM_RETRIES
Number of retry attempts for generating an answer before failing.Default: 5 (int)
MAX_THREAD_CONTEXT_PERCENTAGE
How much of the available input context can be used for thread context.Current value: 512 * 2 / 3072 ≈ 0.333 (float)
DANSWER_BOT_NUM_DOCS_TO_DISPLAY
Number of documents shown under “Reference Documents”.Default: 5 (int)
DANSWER_BOT_DISABLE_DOCS_ONLY_ANSWER
Disable responses that only show “Reference Documents” when the LLM cannot answer.Default: false (bool)
DANSWER_REACT_EMOJI
Emoji reaction shown while Onyx considers a message.Default: eyes (str)
DANSWER_FOLLOWUP_EMOJI
Emoji used to suggest that the user may need more help.Default: sos (str)
DANSWER_BOT_FEEDBACK_VISIBILITY
Visibility for AI answer feedback submitted to OnyxBot. Options: private (only the clicking user),
anonymous (public but anonymous), public (public with username).Default: private (str)
NOTIFY_SLACKBOT_NO_ANSWER
If enabled, OnyxBot sends a brief apology message when it cannot find an answer, so users aren’t left wondering.Default: false (bool)
DANSWER_BOT_DISPLAY_ERROR_MSGS
Show brief error explanations when something goes wrong answering a question (useful for debugging).Default: false (bool)
DANSWER_BOT_RESPOND_EVERY_CHANNEL
Respond in all channels by default, instead of only those configured in the UI.Default: false (bool)
DANSWER_BOT_MAX_QPM
Maximum questions per minute the bot can answer. Set to 0 or leave unset for uncapped.Default: uncapped (int)
DANSWER_BOT_MAX_WAIT_TIME
Maximum time in seconds a question will wait in the queue before timing out.Default: 180 (seconds; 3 minutes)
DANSWER_BOT_FEEDBACK_REMINDER
Minutes after which a reminder DM is sent to request feedback on an answer. Set to 0 to disable.Default: 0 (disabled; 0 minutes)
DANSWER_BOT_REPHRASE_MESSAGE
Rephrase Slack user messages before sending to the LLM (may improve clarity for the model).Default: false (bool)
DANSWER_BOT_RESPONSE_LIMIT_PER_TIME_PERIOD
Number of responses OnyxBot can send within a time window. Set to 0 to disable the limit.Default: 5000 (int)
DANSWER_BOT_RESPONSE_LIMIT_TIME_PERIOD_SECONDS
Length of the response limit window in seconds.Default: 86400 (seconds; 24 hours)