djs-commandsv2 docs

djs-commands

Modern Discord.js command handler — TypeScript-first, Components V2 native, with pluggable persistence.

djs-commands is a modern command framework for Discord.js built around three ideas:

  1. TypeScript-first. Commands are plain objects with strongly-typed handlers. No magic decorators, no runtime reflection.
  2. Components V2 native. First-class support for the new Discord component model, so building rich, interactive responses is the default path — not an afterthought.
  3. Pluggable persistence. Cooldowns, guild prefixes, and user state plug into adapters you control: in-memory for dev, your own database in production.

v2.0 shipped. Packages are live on npm under @djs-commands/*. The legacy v1 package (@d3oxy/djs-commands) is preserved at the v1-final-commit tag and is no longer maintained — see the v1 → v2 migration guide to upgrade.

Quick start

npx create-djs-commands my-bot
cd my-bot
cp .env.example .env  # add DISCORD_TOKEN
bun run dev

Or scaffold by hand from Getting Started.

Where to start

Coming from v1?

If you have a bot built on @d3oxy/djs-commands, the Migration from v1 guide walks you through every API that moved or was dropped, with side-by-side examples.

  • GitHub — source, issues, discussions
  • npm org@djs-commands/* packages
  • Discord support — get help from the maintainers and community

On this page