diff options
| author | hachem <im@hachem.wtf> | 2026-08-29 11:02:20 +0200 |
|---|---|---|
| committer | hachem <im@hachem.wtf> | 2026-08-29 11:02:20 +0200 |
| commit | d8b2d27b1f1ccccfe26fe0d45dbb624d453272d3 (patch) | |
| tree | a5978cd48c7f4e87139e04bb11f599bd5965c982 | |
| parent | af4a6f4c5e9a3e3a501deac71d92bbbcd12ef81f (diff) | |
docs: refactor README
| -rw-r--r-- | README.md | 56 |
1 files changed, 56 insertions, 0 deletions
@@ -5,5 +5,61 @@ Benson started as a little server manager for the Minecraft server a few friends It's probably way more complicated than it needs to be, but that's kind of the point. The only reason this is public is because a friend of mine told me it might be useful for other people. +> [!NOTE] +> This is the Go rewrite of Benson. The original was held together with duct tape and Node.js and shipped as two separate programs; this version is a single self-contained binary with no runtime dependencies. The server manager and the Discord bot are now the same executable. + +## Install +You need Go 1.26+ to build it. Java is only needed for the `generate` command. + +```bash +go install github.com/hachem-wtf/benson@latest +``` + +Or build from source: + +```bash +git clone https://github.com/hachem-wtf/benson.git +cd benson +go build -o benson . +``` + +## Configure +Benson keeps its configuration under `config/`. The easiest way to set it up is the interactive wizard: + +```bash +benson setup # server manager: versions, paths, mods +benson setup bot # discord bot: token, channel, interval +``` + +`setup` writes `config/config.json` and `setup bot` also writes `config/api.json` (which holds your bot token). The bot is entirely optional — if you only want the server manager, you never have to touch it. You can also edit the files by hand; see `config/config.example.json` for the shape. + +## Server manager +Run Benson with no arguments to open the interactive CLI: + +```bash +benson +``` + +It provides the following commands: + +| Command | Description | +| ----------------- | ----------------------------------------------------------------- | +| `list-mods` | List the configured mods | +| `check` | Check whether the configured mods are compatible | +| `generate` | Download the server and mods and generate a server directory | +| `merge` | Back up the existing server and merge the generated files into it | +| `clean generated` | Remove the generated server directory | +| `clean latest` | Remove the latest backup | +| `clean all` | Remove both generated files and the latest backup | +| `help` | Show available commands | +| `exit` | Exit Benson | + +## Discord bot +The Discord bot periodically checks the configured mods on Modrinth and posts compatibility reports to a given channel. Since it's the same binary as the manager, you can host it wherever you like: + +```bash +benson bot +``` + ## License Benson is licensed under the Apache License 2.0. See [LICENSE](LICENSE) for more details. |
