RustPilot is an open-source management app for a local Rust Dedicated Server on Windows 10/11 x64. It aims to provide the same practical experience as a foreground console application with a local web panel: RustPilot starts the backend, opens http://127.0.0.1:40815, manages SteamCMD, and starts RustDedicated.exe as a child process.
v0.1.0-alpha.8 is an early preview that is usable for local testing and early adopters. Core functionality is present: first-run setup, install directory selection, SteamCMD download, Rust Dedicated Server installation through Steam app 258550, SQLite settings, Steam login, owner/admin/viewer users, role permissions, CSRF protection, rate limiting, action logging, WebSockets, live console output, process management, WebRCON admin tools, CFG editing, log viewing, scheduled restarts, manual/automatic backups, backup restore, official Rust force wipe planning, additional custom wipe schedules, wipe seed handling, RustPilot branding, and a portable Windows ZIP with RustPilot.exe.
Do not use this version for unattended production hosting yet. Expect rough edges and test your install path before using existing server files.
RustPilot now includes a local Steam-login ownership flow, role permissions, CSRF protection, rate limiting, and action logging. RustPilot is local-first and binds to localhost by default. Remote access is optional and should be handled by your own VPN or HTTPS reverse proxy.
- Windows 10 or 11 x64
- Enough disk space for SteamCMD and Rust Dedicated Server
Node.js and npm are only required when developing RustPilot from source.
- Open the latest GitHub release.
- Download
RustPilot-v0.1.0-alpha.8-win-x64.zip. - Extract the ZIP to a normal folder, for example
C:\RustPilot. - Start
RustPilot.exe. - Keep the console window open while using RustPilot.
- RustPilot opens the local web panel at
http://127.0.0.1:40815.
The portable release includes the required Node runtime, production backend, production web panel, and runtime dependencies. You do not need to install Node.js or run npm run dev.
- Start
RustPilot.exe. - Open
http://127.0.0.1:40815if the browser does not open automatically. - Claim the local installation by logging in with Steam. The first successful Steam login becomes the owner.
- Complete the setup wizard.
- Choose an absolute install directory, for example
D:\RustServers\MyServer. Leave the field empty only if you want RustPilot to use its default local data folder. - Review the server name, identity, ports, world settings, and RCON password.
- Click
Installand wait for SteamCMD to download the Rust Dedicated Server files. - When setup is complete, use the dashboard or console page to start and manage the server.
If you want to test setup again, go to Settings, open DANGER ZONE, and use Reset installation. This stops the server, removes managed install folders and setup state, and sends RustPilot back to the setup wizard.
npm install
npm run devThen open http://127.0.0.1:40815. In development, the backend proxies to the Next.js dev server.
npm run test
npm run typecheck
npm run lintnpm run build
npm run startThe backend serves the static Next.js export from apps/web/out.
npm run package:winThis creates release/RustPilot-v<version>-win-x64.zip with a real RustPilot.exe launcher, a bundled Node runtime, production server files, production dependencies, and the static web panel. Users can unzip it and start RustPilot.exe; no npm run dev or local Node.js install is required.
The portable release stores runtime data in the data folder next to RustPilot.exe unless RUSTPILOT_DATA_DIR is set.
The portable release stores runtime data in the data folder next to RustPilot.exe unless RUSTPILOT_DATA_DIR is set.
Default layout:
data/
steamcmd/
servers/default/server/
servers/default/identity/
servers/default/backups/
logs/
app.db
config/
Absolute user paths are not hardcoded. SteamCMD is downloaded only from Valve's official SteamCMD ZIP URL. Rust server files are not bundled or redistributed by RustPilot.
- Alpha release for local testing and early adopters.
- Windows 10/11 x64 only.
- Local web panel only.
- One server profile.
- Console commands use WebRCON when the Rust server is running, with stdin fallback for local process shutdown.
- Steam login and local owner/admin/viewer users are implemented, but public remote-access hardening is not complete yet.
- No plugin management yet.
- Portable ZIP release, not a single standalone
.exe. KeepRustPilot.exe,runtime/, andapp/together.
RustPilot binds to 127.0.0.1 by default, accepts only local origins, uses Steam login for panel access, supports owner/admin/viewer users, checks role permissions server-side, requires CSRF tokens for mutating API calls, rate-limits auth and mutating requests, logs authenticated actions, and redacts RCON passwords in logs and API status.
RustPilot is local-first and binds to localhost by default. Remote access is optional and should be handled by your own VPN or HTTPS reverse proxy.
See CONTRIBUTING.md.