Complete reference for every SlackHive configuration variable, grouped by category.
All SlackHive configuration lives in a single .env file in the project root. The slackhive init CLI generates this file for you automatically. For manual setup, copy the example file and fill in the values:
cp .env.example .env
Never commit your .env file to version control. It contains passwords and cryptographic keys. It’s already listed in .gitignore, but double-check before pushing.
Best for individual developers on a Claude Pro or Max plan (100–200/month for unlimited usage).
# Leave ANTHROPIC_API_KEY unset (comment it out)CLAUDE_BIN=/usr/local/bin/claude
First, run claude login on the host machine to authenticate. Then mount the credentials into the runner container by adding this to docker-compose.yml:
runner: volumes: - ~/.claude:/root/.claude
The CLAUDE_BIN variable tells the runner where the claude binary lives on your host. Find the path with which claude.
Generate strong values for AUTH_SECRET and ENV_SECRET_KEY:
openssl rand -hex 32
Run this command twice — once for each variable. Each should be unique.
Do not rotate these keys after your initial setup without planning ahead.
Rotating AUTH_SECRET immediately invalidates all active user sessions — everyone gets logged out.
Rotating ENV_SECRET_KEY makes all stored secrets unreadable. You must re-enter every secret manually in Settings → Env Vars before any MCP servers using envRefs will work again.
# ============================================================# SlackHive — Environment Configuration# Copy to .env and fill in your values.# ============================================================# --- Claude Authentication (choose ONE) ---# Option A: Anthropic API key (pay-per-token)# ANTHROPIC_API_KEY=sk-ant-api03-...# Option B: Claude Pro or Max subscription# Leave ANTHROPIC_API_KEY unset. Run `claude login` on the host first.# CLAUDE_BIN=/usr/local/bin/claude# --- PostgreSQL ---POSTGRES_DB=slackhivePOSTGRES_USER=slackhivePOSTGRES_PASSWORD=change-me# --- Redis ---REDIS_PASSWORD=change-me# --- Dashboard Auth ---ADMIN_USERNAME=adminADMIN_PASSWORD=change-meAUTH_SECRET=generate-with-openssl-rand-hex-32ENV_SECRET_KEY=generate-with-openssl-rand-hex-32# --- Platform ---NODE_ENV=production