Discord Client
The Discord Client enables your agent to interact with Discord servers, supporting message handling, voice interactions, and slash commands. Visit Elizaos Discord client docs for more details.
Installation
Section titled βInstallationβ-
Install required packages:
Terminal window Terminal window Terminal window -
Configure environment variables:
Terminal window # Required Discord credentialsDISCORD_API_TOKEN=your_bot_token
Basic Setup
Section titled βBasic Setupβimport { AgentBuilder, ModelProviderName } from "@iqai/agent";import DiscordClient from "@elizaos/client-discord";import SqliteAdapter from "@elizaos/adapter-sqlite";
async function main() { const agent = new AgentBuilder() .withDatabase(SqliteAdapter) .withClient(DiscordClient) .withModelProvider( ModelProviderName.OPENAI, process.env.OPENAI_API_KEY ) .withCharacter({ name: "DiscordBot", bio: "A helpful Discord assistant", username: "brain-bot" }) .build();
await agent.start();}
main().catch(console.error);
Best Practices
Section titled βBest Practicesβ- Always initialize with a database adapter
- Set appropriate character configuration for Discord context
- Handle client startup errors appropriately
- Implement proper Discord permission handling