Clone the repository:
git clone https://github.com/ArrowM/Queue-Bot
Create or reuse a Discord bot application and invite it to your server. See Discord.js guide.
Update the .env file with your bot's TOKEN and CLIENT_ID.
npm run dock
This will build the Docker image and run the bot in a container. The bot will automatically restart if it crashes.
Run the setup script (run each time you update the project):
npm run setup
Run the bot:
npm start
Please reference the other files as examples, they follow very similar structures. These instructions are more geared towards pointing you to the files that will need to be added/updated.
.command.ts file to the src/commands/commands directory. Commands should extend EveryoneCommand or AdminCommand.src/commands.command.loader.ts file.README.md file and the help commands in the src/commands/help.command.ts file..option.ts file to the src/options/options directory. Options should extend one of the base options at the bottom of
the src/options/base-options.ts file.src/options/options.loader.ts file..button.ts file in the src/buttons/buttons directory. Buttons should extend EveryoneButton or AdminButton.src/buttons/buttons.loader.ts file.If the code for your new command is complex or re-usable, consider placing your logic a utility file in the src/utils directory.
If you need to add or modify database tables or columns:
src/db/schema.ts file.src/db/store.ts file and the src/db/queries.ts file.drizzle-kit generate in the terminal. The drizzle command will generate the necessary SQL migration files for you, which will then
be applied with drizzle-kit push.Please lint before pushing:
npm run lint
This project is designed to run without compiling thanks to @swc-node/register/esm.
$ claude mcp add Queue-Bot \
-- python -m otcore.mcp_server <graph>