How noobindahause/martin works
Martin is a modular Discord bot: users issue slash commands, which the bot’s command tree checks and routes to feature cogs; those cogs perform moderation or owner actions and respond through Discord. Moderation includes member actions, warnings, temporary bans, and mod-log configuration, with persistent records handled through a shared SQLite data manager. General commands provide bot information and latency checks, while owner commands manage cogs, settings, and the blacklist. The README documents these capabilities; unsampled modules are represented only where documented, without assuming their internal wiring.
Main entry points: bot.py Martin bot · moderation.py Moderation commands · owner.py Owner commands · general.py General commands
Components 19
Bot runtime
- Application entry
main.py - Martin bot
Martin/bot.py - Settings
Martin/settings.py - Slash command tree
Martin/tree.py
Command features
- General commands
Cogs/General/general.py - Owner commands
Cogs/Owner/owner.py - Owner controls
Cogs/Owner/views.py
Moderation
- Moderation commands
Cogs/Moderation/moderation.py - Moderation objects
Cogs/Moderation/objects.py - Moderation utilities
Cogs/Moderation/utils.py - Moderation data access
Cogs/Moderation/moderation_data_manager.py
Shared services
- Cog SQLite files
cogs_data - SQLite data manager
Utilities/data_manager.py - Command checks
Utilities/checks.py - Formatting helpers
Utilities/formatting.py - Argument transformers
Utilities/transformers.py - Interactive views
Utilities/views.py
Other components
- Discord user
- Discord platform
Connections 30
- Application entry → Settings: loads settings
- Application entry → Martin bot: starts bot
- Martin bot → Settings: reads and saves
- Martin bot → Discord platform: connects to
- Martin bot → Slash command tree: configures tree
- Martin bot → General commands: loads extension
- Martin bot → Owner commands: loads extension
- Martin bot → Moderation commands: loads extension
- Discord user → Discord platform: issues commands
- Discord platform → Slash command tree: delivers interactions
- Slash command tree → Command checks: applies checks
- Slash command tree → Martin bot: checks blacklist
- General commands → Discord platform: replies to
- General commands → Martin bot: reads bot status
- General commands → Interactive views: uses views
- Owner commands → Martin bot: manages bot
- Owner commands → Owner controls: opens controls
- Owner commands → Argument transformers: resolves users
- Owner commands → Interactive views: uses views
- Owner commands → Discord platform: replies to
- Moderation commands → Discord platform: moderates members
- Moderation commands → Moderation data access: reads and writes
- Moderation commands → Moderation objects: uses objects
- Moderation commands → Moderation utilities: uses helpers
- Moderation commands → Command checks: applies checks
- Moderation commands → Argument transformers: parses arguments
- Moderation commands → Formatting helpers: formats responses
- Moderation commands → Interactive views: uses views
- Moderation data access → SQLite data manager: uses data access
- SQLite data manager → Cog SQLite files: reads and writes