annie-mei service in the repository root.
What the bot service does
The bot service:- connects to Discord and registers slash commands
- handles
/ping,/help,/anime,/manga,/search,/recommend,/character,/songs,/register,/unregister,/whoami, and/settings - connects to PostgreSQL with an async connection pool
- runs bot-owned SQLx migrations for Annie Mei settings tables
- connects to Redis for API response caching
- builds the AniList OAuth start link that sends members to the auth service
Required dependencies
Before you run the bot service, make sure you have:- a Discord bot token
- PostgreSQL
- Redis
- Spotify API credentials
- MyAnimeList API client ID
- auth service configuration values, including
AUTH_SERVICE_BASE_URL - (optional) a Gemini or OpenAI-compatible API key for
/search
The bot currently loads OAuth configuration during startup. That means
AUTH_SERVICE_BASE_URL and OAUTH_CONTEXT_SIGNING_SECRET are part of the normal bot setup, not optional extras.Configure the bot environment
Create.env in the repository root and set the bot service variables:
Run the bot service locally
Verify in Discord
Try these slash commands after the bot is online:/register returns a link button but the browser flow fails, finish the Auth service setup and make sure both services share the same OAUTH_CONTEXT_SIGNING_SECRET.
