Configuration
All configuration is set via environment variables (loaded from .env file, supports hot-reload).
Required
| Variable | Description |
|---|---|
LLM_API_KEY | LLM provider API key |
Core
| Variable | Default | Description |
|---|---|---|
HTTP_PORT | 9090 | HTTP server port |
API_KEY | (none) | API authentication key (setup wizard on first run) |
JWT_SECRET | (none) | JWT signing secret |
LOG_LEVEL | info | Log level (debug/info/warn/error) |
LLM
| Variable | Default | Description |
|---|---|---|
LLM_BASE_URL | https://api.openai.com/v1 | LLM API endpoint |
LLM_MODEL | gpt-4o-mini | Default model |
LLM_FAST_MODEL | (auto) | Fast model (simple tasks) |
LLM_SMART_MODEL | (auto) | Smart model (general tasks) |
LLM_EXPERT_MODEL | (auto) | Expert model (complex reasoning) |
Multiple LLM providers can be registered dynamically via the Web UI (OpenAI/Anthropic/Google/local models, etc.).
Messaging Channels
| Variable | Description |
|---|---|
TELEGRAM_BOT_TOKEN | Telegram bot token |
FEISHU_APP_ID / FEISHU_APP_SECRET | Feishu app credentials |
DISCORD_BOT_TOKEN | Discord bot token |
SLACK_BOT_TOKEN | Slack bot token |
WHATSAPP_TOKEN | WhatsApp token |
WECOM_CORPID / WECOM_AGENT_ID / WECOM_SECRET | WeCom credentials |
DINGTALK_CLIENT_ID / DINGTALK_CLIENT_SECRET | DingTalk credentials |
LINE_CHANNEL_SECRET / LINE_CHANNEL_TOKEN | LINE credentials |
KOOK_TOKEN | Kook bot token |
QQ_APP_ID / QQ_APP_SECRET | QQ Official Bot credentials |
SATORI_ENDPOINT | Satori protocol endpoint |
RAG & Embeddings
| Variable | Description |
|---|---|
EMBEDDING_MODEL | Embedding model name |
JINA_API_KEY | Jina Reranker API key |
COHERE_API_KEY | Cohere Reranker API key |
Sandbox
| Variable | Description |
|---|---|
SANDBOX_BACKEND | Sandbox backend: process, docker, k8s, wasm |
SANDBOX_DOCKER_IMAGE | Sandbox Docker image |
E2B_API_KEY | E2B Desktop sandbox API key |
Hot Reload
Yunque supports config hot-reload — .env file changes are auto-loaded without restart. Implemented via ConfigLoader with support for change handlers.