# Benson Mod Manager from hell, for Willy World ## Setup ```bash npm install ``` ## Configuration ### `config/config.json` ```json { "channel_id": "YOUR_CHANNEL_ID_HERE", "check_interval_minutes": 60, "minecraft_version": "1.21.10", "fabric_loader_version": "0.17.3", "loader_meta_version": "1.1.0", "modrinth_mods": [ "fabric-api", "lithium", "simple-voice-chat" ] } ``` ### `config/api.json` (for Discord bot) ```json { "token": "your-bot-token-here" } ``` ## Discord Bot Monitors Modrinth for mod updates and posts compatibility reports to a Discord channel. ```bash npm run bot ``` ## Server Manager CLI Interactive CLI for managing mods and server files. ```bash npm run benson ``` ``` ╔══════════════════════════════════════╗ ║ BENSON CLI v1.0 ║ ║ Fabric Mod Manager for MC 1.21.10 ║ ╚══════════════════════════════════════╝ Type 'help' for available commands. benson> _ ``` ### Commands | Command | Description | |---------|-------------| | `list-mods` | List configured mods | | `generate` | Download mods + server, run to generate files | | `merge` | (coming soon) | | `clean generated` | Remove generated server files | | `clean all` | (coming soon) | | `help` | Show available commands | | `exit` | Exit the CLI | ## Project Structure ``` Benson/ ├── lib/ │ ├── modrinth.js # Shared Modrinth API functions │ └── config.js # Shared config/cache utilities ├── bot/ │ └── app.js # Discord bot ├── updater/ │ └── cli.js # Interactive CLI ├── config/ │ ├── config.json # Main configuration │ └── api.json # Discord token (not in repo) ├── cache/ # Version cache (auto-generated) └── server/ # Server files (auto-generated) ```