GAIA on Discord
Chat with your AI assistant, manage todos, and run workflows without leaving Discord. GAIA’s Discord bot supports slash commands with autocomplete, DMs, and@mention responses in any channel.
Add GAIA to Your Server
Add Bot to Your Server
Invite the GAIA bot to your own Discord server
Join the GAIA Community
Chat with GAIA in the official GAIA Discord server
Getting Started (Users)
Once GAIA is in your server (or you’ve joined the community server), you can start using it right away.1. Link Your GAIA Account
Before using most commands, link your Discord account to GAIA:2. Start Chatting
Use the slash command in any channel:Notes
- All slash command responses are ephemeral (only visible to you) by default
- Responses are streamed — a typing indicator appears while GAIA is thinking
- Long responses are automatically truncated to Discord’s 2000 character limit
Developer Setup
This section is for developers who want to self-host the GAIA Discord bot.Prerequisites
- Node.js 18+ and pnpm
- A Discord Developer Account
- GAIA API running (see Self-Hosting Guide)
Step 1: Create a Discord Application
- Go to the Discord Developer Portal
- Click New Application and give it a name
- Navigate to the Bot section and click Add Bot
- Under Privileged Gateway Intents, enable:
- Message Content Intent
- Server Members Intent (optional)
- Copy the Bot Token
Step 2: Configure OAuth2 Scopes
- Go to OAuth2 → URL Generator
- Select scopes:
botandapplications.commands - Select bot permissions: Send Messages, Use Slash Commands, Read Message History
- Copy the generated URL and use it to invite the bot to your server
Step 3: Set Up OAuth for Account Linking
This enables users to link their Discord account from the GAIA web app via OAuth instead of the/auth bot command.
- In your Discord application, go to OAuth2
- Under Redirects, add:
- Copy your Client ID (shown at the top of the OAuth2 page)
- Click Reset Secret to generate a Client Secret and copy it
apps/api/.env:
The Client ID here is the same as your
DISCORD_CLIENT_ID used by the bot — it’s the application ID, not a separate credential.Step 4: Configure Environment Variables
Create a.env file in apps/bots/discord/:
GAIA_BOT_API_KEY must match the value configured in your GAIA API.
Step 5: Deploy Slash Commands
Register the bot’s slash commands with Discord:Step 6: Start the Bot
Troubleshooting
| Problem | Solution |
|---|---|
| Bot doesn’t respond to commands | Run nx run bot-discord:deploy-commands, check bot permissions |
| Authentication link doesn’t work | Verify GAIA_BOT_API_KEY matches API config |
| Bot offline | Check that the process is running and DISCORD_BOT_TOKEN is valid |

