Server actions
Kick, message, player lists, and performance queries over the API.
Connect links dash actions to in-game servers via the public API.
Connect is the bridge between dash.uebliche.net and your running server. It polls the public API for approved actions and executes them in-game.
connect.json.Tip: override the API base via JVM start options, for example -DCONNECT_API_BASE=http://localhost:8080/v1 or -Dconnect.apiBase=http://localhost:8080/v1.
For host-level actions and reduced API connections, deploy the Connect Agent on the server host and point Connect to the agent instead of the public API. The agent proxies /v1/connect/* to the API, caches permissions for short outages, and exposes host metrics/actions for Dash.
Default agent port: 47200.
Installations run the bootstrapper (uebliche-agent-bootstrap) as the system service. The bootstrapper fetches the update manifest, verifies downloads, and restarts the agent with the latest build.
Dash offers a cloud-init generator under Hosts to install the agent, join a network with a single-use token, and preload access for new hosts.
Connect can group multiple servers into a shared network via a networkKey. Reuse the same key for servers that should appear together (for example per game mode or region).
Connect currently supports:
Use /connect status in-game to see the current connection state, last poll result, and settings stream status.
JoinMe is available on Paper and Fabric. Use /joinme to open the JoinMe menu and start or stop a session. JoinMe requires a game-side integration that registers a JoinMeContextProvider so Connect can publish the current match metadata and player counts to the API.
Connect can subscribe to the settings stream and apply live updates for a named source (for example hub). Updates can also be published back to the API so dash can keep an editable history of configuration changes.
Set CONNECT_TEMP_INSTANCE=1 to mark a server as a temporary instance. You can optionally set CONNECT_TEMPLATE_ID to link the instance to a template server. Dash also supports setting temp: true in the connect settings source. Temporary instances are removed after about 15 minutes without a heartbeat.
Connect supports a readable server alias via CONNECT_SERVER_NAME (stored in connect.json after registration). The /connect status command prints the server name alongside the server id.
The Connect Agent can preload all permissions for a server by fetching the allowed user list and batch permissions from the API. This keeps permission checks available even when the API is temporarily unreachable and reduces per-user API calls.
Linux:
curl -fsSL https://install.uebliche.net/agent | shDocker (host network recommended for 127.0.0.1 binds):
docker run --rm --network host \
-v /etc/uebliche/agent:/etc/uebliche/agent:ro \
-v /var/run/docker.sock:/var/run/docker.sock \
-e AGENT_CONFIG=/etc/uebliche/agent/agent.toml \
ghcr.io/uebliche/agent:latestConnect checks in-game permissions for user-triggered actions:
uebliche.connect.statusuebliche.connect.command.kickuebliche.connect.command.messageuebliche.connect.command.list_playersuebliche.connect.command.list_performanceuebliche.connect.command.list_servers (Velocity only)uebliche.connect.command.add_server (Velocity only)uebliche.connect.command.remove_server (Velocity only)uebliche.connect.joinme (Paper only)uebliche.connect.settings.writeuebliche.connect.settings.<source>.write (scoped settings updates)