Skip to main content

Documentation Index

Fetch the complete documentation index at: https://slackhive.mintlify.app/llms.txt

Use this file to discover all available pages before exploring further.

SlackHive stores configuration in a .env file in the install directory. slackhive init generates this file with safe defaults - you rarely need to edit it by hand.
.env contains encryption keys and the admin password. Never commit it. It’s already in .gitignore but double-check before pushing.

Claude Authentication

Pick one option. If both are set, the API key wins.

Option A: Anthropic API key

Best for teams, production, predictable billing.
ANTHROPIC_API_KEY=sk-ant-api03-...
All agents share this key. Billed per token via the Anthropic API.

Option B: Claude Pro or Max subscription

Best for individual developers.
# Leave ANTHROPIC_API_KEY unset
CLAUDE_BIN=/usr/local/bin/claude     # macOS (Intel) or Linux
# CLAUDE_BIN=/opt/homebrew/bin/claude  # macOS (Apple Silicon, Homebrew)
# CLAUDE_BIN=/usr/bin/claude           # Linux (package install)
Requirements:
  1. Run claude login on the host machine
  2. Set CLAUDE_BIN to the path returned by which claude
Token refresh behavior:
PlatformSource of truthRefresh
macOSKeychain → ~/.claude/.credentials.jsonSlackHive auto-syncs from Keychain on 401
Linux (GNOME)secret-tool~/.claude/.credentials.jsonRe-run claude login when it expires
Linux (headless)~/.claude/.credentials.json directlyRe-run claude login when it expires
See OAuth MCPs for how this flows through to MCP connections.

Dashboard Authentication

slackhive init sets these from the prompts - you don’t typically need to touch them:
VariablePurpose
ADMIN_USERNAMESuperadmin login
ADMIN_PASSWORDSuperadmin password
AUTH_SECRETSigns session cookies (rotating logs everyone out)
ENV_SECRET_KEYEncrypts the secret store (rotating breaks all stored secrets)
AUTH_SECRET and ENV_SECRET_KEY are generated automatically on first install with openssl rand -hex 32. If you need to regenerate:
openssl rand -hex 32
Do not rotate ENV_SECRET_KEY after initial setup without a plan. All stored secrets become unreadable - every MCP server referencing ${env:NAME} will fail until you re-enter each secret in Settings → Env Vars.

Platform

VariableDefaultPurpose
NODE_ENVproductionAffects log verbosity and error handling
PORTautoWeb server port (default 3001, auto-negotiates if taken)
RUNNER_INTERNAL_PORTautoRunner port (default 3002, auto-negotiates)
AGENTS_TMP_DIR~/.slackhive/agentsWhere per-agent workspaces live
DATABASE_TYPEsqliteAlways sqlite on CLI installs
ACTIVITY_DASHBOARDunsetSet to 1 to enable the Activity Dashboard. When unset, the writer hooks short-circuit and no tasks/activities/tool calls are recorded.

Where data lives

Everything is on disk under ~/.slackhive/:
PathContents
~/.slackhive/data.dbSQLite database - agents, memories, skills, history, settings
~/.slackhive/agents/<slug>/Per-agent workspace (CLAUDE.md, sessions, copies of assigned wiki folders)
~/.slackhive/knowledge/<folderId>/wiki/Compiled wiki for one Knowledge Library folder (source of truth; copied to assigned agents)
~/.slackhive/logs/runner.logRunner log stream
~/.slackhive/runner.lockSingleton runner lock - JSON with pid, startedAt, mode
~/.slackhive/slackhive.pidWeb server PID file
Back up ~/.slackhive/ to preserve your full install.

The .slackhive-native marker

The install directory contains a .slackhive-native file. It tells the CLI this is a CLI-managed install - slackhive commands will target it from any directory.

Complete .env.example

# --- Claude Authentication (choose ONE) ---

# Option A: API key
# ANTHROPIC_API_KEY=sk-ant-api03-...

# Option B: Pro/Max subscription
# CLAUDE_BIN=/usr/local/bin/claude

# --- Dashboard ---
ADMIN_USERNAME=admin
ADMIN_PASSWORD=change-me
AUTH_SECRET=generate-with-openssl-rand-hex-32
ENV_SECRET_KEY=generate-with-openssl-rand-hex-32

# --- Platform ---
NODE_ENV=production
DATABASE_TYPE=sqlite

# --- Feature flags ---
# ACTIVITY_DASHBOARD=1

Next steps

Slack App Setup

Create the Slack app for each agent.

MCP Servers

Use the encrypted env store to pass secrets to MCP tools.