Skip to main content

Environment variables

The bot reads all of its configuration from environment variables, typically set in a .env file or passed to the container. See Setup for where each value comes from, and AI Providers for the AI_PROVIDER_* settings in depth.

Slack

VariableRequiredDefaultDescription
SLACK_BOT_TOKENYesBot User OAuth token (xoxb-…).
SLACK_APP_TOKENYesApp-level token with the connections:write scope (xapp-…), used for Socket Mode.
SLACK_BOT_DEBUG_MODENofalseEnable verbose debug logging.

UIGraph

VariableRequiredDescription
UIGRAPH_API_URLYesBase URL of your UIGraph API.
UIGRAPH_MCP_URLYesBase URL of your UIGraph MCP server, where the bot reads your architecture data.
UIGRAPH_TOKENYesService account API key / access token for the organization the bot answers for (uig_…).

AI model

See AI Providers for the supported providers and examples.

VariableRequiredDefaultDescription
AI_PROVIDER_API_KEYYesAPI key for your chosen model provider.
AI_PROVIDER_MODELYesModel to use, e.g. gpt-4o or claude-sonnet-5.
AI_PROVIDER_NPMNo@ai-sdk/openai-compatibleWhich provider to use.
AI_PROVIDER_API_URLNo*Endpoint URL. Required when using the default @ai-sdk/openai-compatible provider.
AI_PROVIDER_OPTIONSNoExtra provider settings as a single line of JSON.

* Required only for the default OpenAI-compatible provider.

Behaviour

VariableRequiredDefaultDescription
LLM_MAX_STEPNo100The most tool-calling steps the bot may take while answering one question.
LLM_MESSAGES_LIMITNo25The most recent messages of a thread the bot reads for context.
LLM_ATTACHMENT_IMAGENofalseLet the bot read image files shared with it.
LLM_ATTACHMENT_AUDIONofalseLet the bot read audio files shared with it.
LLM_ATTACHMENT_VIDEONofalseLet the bot read video files shared with it.
PORTNo3000Port the bot process binds to. Not used for incoming Slack traffic in Socket Mode.