Operator guide
Keep the next operation predictable.
Use small checks before making changes. Learn the shared commands, then follow the details for your module and runtime.
A small command vocabulary
| Command | Use it to |
|---|---|
create <module>
|
Register a server identifier and module. |
setup
|
Download files and configure the server. |
start / stop / restart
|
Control its lifecycle. |
status / query / info
|
Inspect process state and the game's supported readiness/information surfaces. |
doctor
|
Inspect effective runtime, image, and container expectations. |
logs / connect / send / message
|
Read logs, attach or follow output, send console input, or broadcast when supported. |
set
|
Discover and change supported settings. |
backup / restore
|
Protect and recover state on modules with the corresponding hooks. |
update
|
Update game files when implemented by the module. |
Examples here use the host entry point ./alphagsm. In the Docker-manager workflow, use ./alphagsm-docker with the same server command arguments. Consult the complete command reference and ./alphagsm mymc --help for exact options.
Inspect before changing
./alphagsm mymc status
./alphagsm mymc query
./alphagsm mymc info --json
./alphagsm mymc doctor
./alphagsm mymc logs -n 200
./alphagsm '*' listQuoted '*' selects this user's managed servers rather than shell filenames. Use the game's diagnostic output and tracker notes together. For the subprocess backend, connect follows logs; use send for console input.
Discover settings instead of guessing
./alphagsm mytf2 set --list
./alphagsm mytf2 set gamemap --describe
./alphagsm mytf2 set gamemap --values
./alphagsm mytf2 set gamemap cp_dustbowlSettings are module-specific. Use --describe before changing a value. Minecraft Vanilla version and download URL are setup options, rather than arbitrary set keys.
Update the game and the manager separately
Steam game files
./alphagsm mytf2 update
./alphagsm mytf2 update -v -rA normal Steam update stops a running server and leaves it stopped. -v validates files and -r restarts afterwards. The flags and update path vary for non-Steam games.
AlphaGSM itself
./alphagsm self-update --check
./alphagsm self-updateTracked stable Git checkouts update by fast-forwarding; the updater refuses dirty, diverged, detached, or development-branch checkouts. Standalone releases follow their own asset/checksum path. Read the update guide before changing an installation.
Backups, restore, and world management
./alphagsm mymc backup
./alphagsm mymc restore
./alphagsm mymc restore backup-filename.zipThe first restore command lists available backups. A restore stops the server and restores the selected ZIP archive; treat it as a state-changing operation. Keep a separate copy of valuable data before recovery. Backup hooks vary by module: TF2 exposes the shared command but currently has no backup hook.
World reset deletes world data. reset-world (also wipe) lists its targets and asks for confirmation. Read the world-management guide and use a disposable server when learning. Do not add a prompt-skipping flag without understanding the scope.
Server-side mods and plugins
The reproducible TF2 example uses AlphaGSM's checked-in manifest after completing server setup:
./alphagsm mytf2 mod add manifest metamod
./alphagsm mytf2 mod add manifest sourcemod
./alphagsm mytf2 mod apply
./alphagsm mytf2 mod list
mod add records desired content; mod apply installs it and tracks owned files. mod cleanup removes AlphaGSM-owned addon files. Supported providers and content types vary by module. TF2 accepts validated multiplayer maps from Workshop items and collections, applies them through its native loader, and selects them with set map workshop/ITEM_ID; cosmetic uploads are rejected. Mod installation covers manifests, plugins, providers, and cleanup. Anonymous Workshop has the per-game commands for the 21 process and Docker passes. The upstream reference remains Installing Mods. Framework packs such as Oxide/uMod, Carbon, BepInEx, and CounterStrikeSharp are module-specific; use the matching game guide for installation and runtime requirements. To have Cursor, Claude, or Codex run these commands, start from the AI agent skill catalogue.
Troubleshooting by symptom
| Symptom | Next check |
|---|---|
| The module will not create | Read its support class. Disabled modules refuse creation; AUTH/BYO entries need their stated prerequisites. |
| Docker is unavailable | Confirm daemon/CLI access for your non-root account, then use doctor to inspect the effective runtime. |
| The server starts but players cannot connect | Check real readiness, game-port/protocol settings, logs, and firewall rules; use the matching game guide. |
| A Java-based server exits | Match the Java runtime to the selected game version and inspect startup logs. |
| Manager/game paths disagree | For Docker-manager deployment, keep server data under the shared host-visible state path at the same absolute location. |
| A provider or download fails | Read the current game/mod guide, confirm required accounts or supplied files, and retain the diagnostic error. |
| A self-update is refused | Check the tracked branch, clean working tree, and divergence; preserve local work rather than forcing a reset. |
Still blocked? Write a useful issue report with the command, module, runtime, versions, and redacted logs.