Using Levix
Web panel
The control panel: what it covers, and the keys it needs.
The database is the source of truth, and the panel is how you edit it. There is no .env file and no config file — the prefix, every permission, every API key and every tuning value is a row in bot_settings, read at call time, so a change applies to the next message.
It's a React + TypeScript app built with Vite and Tailwind CSS, talking to the bot over a small API and a Socket.IO connection for live status.
What's in it
- Overview — status at a glance
- Connection — QR or pairing code, connection state
- Commands — rename, re-permission, switch off
- AI — provider, model, persona, capability toggles
- Groups — moderation settings
- Schedules — one-off and recurring jobs, delivery status, retry on failure
- Settings — prefix, panel password, server options
- Logs — what the bot has been doing
The features that need a key
The bot works without any key at all for most commands. AI replies and weather need one, and both are set in Settings → AI in the panel — never in a file:
| Feature | Where to get a key |
|---|---|
| AI replies (!gemini) | Gemini: aistudio.google.com/apikey · or bring an OpenAI, Anthropic, Groq or OpenRouter key — or point at a local Ollama, no key needed |
| Weather (!weather) | openweathermap.org/api |