All-in-one Discord bot for VRChat and gaming communities

April 13, 2026 - Bot running with 64 cogs, 925 tests passing, 0 errors
- Natural language server setup
- Interactive interview approach
- Health checks with scoring
- Template system (Gaming, Creative, Professional, Education, Community)
- Color palettes and theming
| Feature |
Description |
| Warn/Mute/Kick/Ban |
Full moderation suite with case tracking |
| Purge |
Bulk message deletion |
| Lock/Unlock |
Channel lockdown |
| Captcha Verification |
Image challenge with role assignment |
| AutoMod |
Anti-spam, anti-invite, bad words filter |
| Anti-Nuke |
Raid protection, webhook spam detection |
| Feature |
Description |
| Setup Wizard |
Guided first-run configuration |
| AI Wizard |
Natural language server setup |
| Sync System |
Detect and repair Discord drift |
| Tickets |
Threaded staff support |
| Snapshots |
Point-in-time backup/restore |
| Feature |
Description |
| Leveling |
XP, ranks, auto roles |
| Giveaways |
Interactive giveaways |
| Starboard |
Star reaction highlights |
| Polls |
Emoji polls with live results |
| Events |
Event creation with RSVP |
| Reminders |
Personal DM reminders |
| Feature |
Description |
| Currency |
Coins, daily rewards, work |
| Jobs |
Role-specific jobs |
| Gambling |
Slots, coinflip, blackjack |
| Shop |
Purchasable roles/items |
| Feature |
Description |
| Reports |
Member-submitted reports |
| Self-Roles |
Reaction role panels |
| Announcements |
Scheduled posts |
| Vanity URLs |
Custom invite management |
| Mod Applications |
DM interview workflow |
# Clone
git clone https://github.com/slothyproject/dissident.git
cd dissident
# Install
pip install -r bot/requirements.txt
# Configure
cp .env.example .env
# Edit .env with your DISCORD_BOT_TOKEN
# Initialize database
python -c "import asyncio; from bot.db.session import init_db; asyncio.run(init_db())"
# Start
python __main__.py
# Start with Docker
docker-compose -f docker-compose.prod.yml up -d
# View logs
docker logs -f dissident-bot
| Command |
Description |
/setup |
Run setup wizard |
/aiwizard |
AI-powered server setup |
/modlog |
Moderation log |
/ticket |
Ticket commands |
/help |
All commands |
| Command |
Description |
!ping |
Latency check |
!health |
Quick health check |
!uptime |
Bot uptime |
!aiwizard health |
Full health check |
dissident/
├── bot/
│ ├── bot.py # Main entry (64 cogs)
│ ├── config.py # Config loader
│ ├── cogs/ # 65 cog modules
│ │ ├── ai_advisor.py # AI Wizard (10K+ lines)
│ │ ├── moderation.py # Mod tools
│ │ ├── economy.py # Economy
│ │ └── ...
│ └── db/ # SQLAlchemy
├── web/
│ ├── backend/ # FastAPI
│ └── frontend/ # Next.js
├── tests/ # 925+ tests
├── docker-compose.yml # Dev stack
└── docker-compose.prod.yml # Prod (PostgreSQL)
- Bot: Python 3.10+ / discord.py
- Database: SQLite (dev) / PostgreSQL (prod)
- Cache: Redis
- AI: Ollama / LiteLLM
- Frontend: Next.js 14
- Deployment: Docker
# Using dissident.sh
./dissident.sh start # Start bot
./dissident.sh stop # Stop bot
./dissident.sh restart # Restart
./dissident.sh logs # View logs
./dissident.sh status # Check status
./dissident.sh test # Run tests
./dissident.sh rebuild # Rebuild Docker
| Metric |
Value |
| Cogs Loaded |
64 |
| Tests Passing |
925 |
| Lines of Code |
68,973 |
| Bot Status |
Online |
Railway Dashboard: https://railway.com/project/4e4e0f03-0c70-443a-ab59-757c492a8142
| Service |
URL |
Status |
| Bot |
railway-bot-production-4542.up.railway.app |
✅ Online |
| Dashboard |
dashboard-production-26dc.up.railway.app |
✅ Online |
| PostgreSQL |
railway.internal |
✅ Online |
| Redis |
railway.internal |
✅ Online |
URL: https://dashboard-production-26dc.up.railway.app
Login: admin / set via ADMIN_PASS environment variable
Add Dissident to your Discord server
- Fork the repository
- Create a feature branch:
git checkout -b feature/your-feature
- Make changes and test:
python -m pytest tests/
- Commit:
git commit -m "Add: your feature"
- Push:
git push origin feature/your-feature
- Open a Pull Request
See Contributing Guide for details.
MIT License - see LICENSE file.