Skip to content

slothyproject/dissident

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

428 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Dissident Bot

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

Tests Python License

April 13, 2026 - Bot running with 64 cogs, 925 tests passing, 0 errors


Features

AI Wizard

  • Natural language server setup
  • Interactive interview approach
  • Health checks with scoring
  • Template system (Gaming, Creative, Professional, Education, Community)
  • Color palettes and theming

Moderation & Safety

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

Server Management

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

Engagement

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

Economy

Feature Description
Currency Coins, daily rewards, work
Jobs Role-specific jobs
Gambling Slots, coinflip, blackjack
Shop Purchasable roles/items

Staff Tools

Feature Description
Reports Member-submitted reports
Self-Roles Reaction role panels
Announcements Scheduled posts
Vanity URLs Custom invite management
Mod Applications DM interview workflow

Quick Start

Development (SQLite)

# 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

Production (PostgreSQL)

# Start with Docker
docker-compose -f docker-compose.prod.yml up -d

# View logs
docker logs -f dissident-bot

Commands

Slash Commands

Command Description
/setup Run setup wizard
/aiwizard AI-powered server setup
/modlog Moderation log
/ticket Ticket commands
/help All commands

Prefix Commands

Command Description
!ping Latency check
!health Quick health check
!uptime Bot uptime
!aiwizard health Full health check

Architecture

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)

Tech Stack

  • Bot: Python 3.10+ / discord.py
  • Database: SQLite (dev) / PostgreSQL (prod)
  • Cache: Redis
  • AI: Ollama / LiteLLM
  • Frontend: Next.js 14
  • Deployment: Docker

Management

# 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

Status

Metric Value
Cogs Loaded 64
Tests Passing 925
Lines of Code 68,973
Bot Status Online

Production Deployment

Railway Dashboard: https://railway.com/project/4e4e0f03-0c70-443a-ab59-757c492a8142

Services

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

Web Dashboard

URL: https://dashboard-production-26dc.up.railway.app

Login: admin / set via ADMIN_PASS environment variable

Invite Bot

Add Dissident to your Discord server


Documentation


Contributing

  1. Fork the repository
  2. Create a feature branch: git checkout -b feature/your-feature
  3. Make changes and test: python -m pytest tests/
  4. Commit: git commit -m "Add: your feature"
  5. Push: git push origin feature/your-feature
  6. Open a Pull Request

See Contributing Guide for details.


License

MIT License - see LICENSE file.


Links

About

Dissident — all-in-one Discord bot for VRChat and gaming communities. Moderation, verification, automod, tickets, and more.

Topics

Resources

Contributing

Security policy

Stars

Watchers

Forks

Packages

 
 
 

Contributors