Tip
One command. No installers. No sign-ups.
The package pulls straight from npm and registers the discord-dev-bot command globally.
Important
Node.js 18 or newer must be installed first.
Run node --version β if the number is missing or below 18, install Node.js and reopen the terminal.
1. Install the package
2. Create your application in the Discord Developer Portal
3. Invite the bot to your server
4. Run: discord-dev-bot link --token <YOUR_BOT_TOKEN>
5. Run: discord-dev-bot status
6. Progress is tracked from then on
> discord-dev-bot setup
[1/4] Checking Node.js runtime ......... v20.11.0 OK
[2/4] Reading configuration ............. OK
[3/4] Connecting to Discord gateway ..... OK
[4/4] Ready. Run `discord-dev-bot status` to begin.
[β] Setup completeDiscord Active Developer is a small companion bot that turns the Active Developer badge requirements into a tracked checklist. Discord grants the badge based on activity signals from your application β the bot reads those signals through the official API, shows exactly which requirements are already met, and keeps a local log so you can see progress across sessions instead of guessing.
It automates the repetitive parts: application setup verification, guild presence checks, command-registration confirmation, and daily status refresh. Nothing is faked, spoofed, or emulated β the bot only reports what the API actually returns.
π‘ "Finally, a badge screen that tells you what is left instead of guessing for a week."
| β Auto Checklist | π Live Status | π Reminders |
|---|---|---|
| Every requirement verified automatically against the official API. No manual ticking. | Re-check status on demand and see a snapshot of each signal with a timestamp. | Optional notifications when a requirement is close or newly satisfied. |
| π§© Setup Verification | ποΈ Requirement Log | π Local-First |
|---|---|---|
| Confirms token scope, guild presence, command registration, and application state. | Every check is appended to a local log file you can read and archive. | Your token stays in your own config. No relay server, no analytics. |
The bot walks through each item Discord evaluates for the badge:
| Step | Requirement | Checked by bot |
|---|---|---|
| Application exists in Developer Portal | β | β |
| Bot user created and token issued | β | β |
| Application invited to at least one server | β | β |
| Slash commands registered globally | β | β |
| OAuth2 redirect configured | β | β |
| Ongoing activity signals observed | β³ | β |
| Verification phone added to account | β |
Note
The phone-verification step is account-level and cannot be automated. The bot flags it as manual and leaves it to you.
| Command | Description |
|---|---|
discord-dev-bot setup |
First-run wizard: runtime, config, gateway check |
discord-dev-bot link --token <token> |
Stores your bot token locally and validates scopes |
discord-dev-bot status |
Full checklist snapshot with timestamps |
discord-dev-bot check <requirement> |
Re-runs a single requirement check |
discord-dev-bot log --days 7 |
Prints the local requirement log |
discord-dev-bot refresh |
Forces an immediate re-check instead of waiting |
discord-dev-bot reset |
Clears stored config and local log |
# ~/.discord-dev-bot/config.yaml
bot:
token_env: "DISCORD_BOT_TOKEN" # read from environment, never stored in plain text
application_id: "" # optional, auto-detected on first link
checks:
refresh_interval: 3600 # seconds between automatic re-checks
guild_presence_required: true
command_registration_required: true
notifications:
enabled: true
channels: ["#dev-updates"]
mention_on_newly_met: true
logging:
level: "info" # debug, info, warn, error
retention_days: 30
file: "~/.discord-dev-bot/requirements.log"| Variable | Required | Default | Description |
|---|---|---|---|
DISCORD_BOT_TOKEN |
Yes | β | Bot token issued in the Developer Portal |
DISCORD_DEV_BOT_LANG |
No | auto |
Interface language |
DISCORD_DEV_BOT_REFRESH |
No | 3600 |
Override for check interval in seconds |
# Set the token for the current session only
$env:DISCORD_BOT_TOKEN = "your-token-here"
# Persist for future sessions
[Environment]::SetEnvironmentVariable("DISCORD_BOT_TOKEN", "your-token-here", "User")Important
Never commit your token to GitHub or paste it into a public issue. The bot reads it from an environment variable, and .env is already listed in .gitignore.
| Platform | Status | Notes |
|---|---|---|
| Windows 10 / 11 | β Full | PowerShell or CMD |
| macOS 12+ | β Full | Node.js runtime |
| Linux (Debian / RPM) | β Full | Global npm prefix may need sudo |
| Ubuntu / WSL | β Full | Runs inside the distro |
| ChromeOS | Linux container |
- Regenerate the token in the Developer Portal β old ones are invalidated on reset.
- Make sure you copied it without surrounding quotes or spaces.
- Confirm
DISCORD_BOT_TOKENis set in the shell where you run the bot.
- The bot needs the
applications.commandsscope to read your slash commands. - Re-run
discord-dev-bot link --token <token>after changing scopes.
- Invite the application to a server you own, then wait a few minutes and refresh.
- Role or channel permission levels can delay the signal on Discord's side.
- Run
discord-dev-bot refreshto force a re-check. - Check the
refresh_intervalvalue in your config if it was raised too high.
- Token is read from an environment variable and never written to disk
- No relay or proxy server β all calls go straight to the Discord API
- No telemetry, no analytics, no crash reporting
- Local log stays in your own profile folder and is deleted with
reset - Only official Discord endpoints are contacted
| Component | Minimum | Recommended |
|---|---|---|
| OS | Windows 10 | Windows 11 |
| Node.js | 18.x | 20.x LTS |
| RAM | 512 MB | 2 GB |
| Storage | 50 MB | 200 MB |
| Network | Stable connection | β |
β‘ Discord Active Developer
Setup | Tracking | Badge Progress
discord-bot active-developer discord-badge developer-portal slash-commands discord-tools