MCPcopy Index your code
hub / github.com/adainrivers/dune-dedicated-server-manager

github.com/adainrivers/dune-dedicated-server-manager @v0.3.16

Chat with this repo
repository ↗ · DeepWiki ↗ · release v0.3.16 ↗ · + Follow
1,512 symbols 3,528 edges 244 files 238 documented · 16%
What it actually does AI analysis from the code graph — generated when you open this
loading…
README

Dune Dedicated Server Manager

A desktop manager for existing Dune Awakening dedicated servers.

Dashboard — BattleGroup status, lifecycle actions, management service, and tunnel controls

The app manages already-provisioned Dune dedicated servers over SSH and Kubernetes control commands. It does not install the game server, create VMs, configure Hyper-V, provision Ubuntu, or manage external tools such as SteamCMD.

Features

  • Remote server profile management with SSH private-key authentication
  • BattleGroup status, start, stop, restart, and update controls
  • Component diagnostics, log viewing, and safe restart actions
  • Secure Director, File Browser, PostgreSQL, and PgHero access through local SSH tunnels
  • Bundled dune-server-service daemon for on-host scheduled maintenance (daily restarts with in-game warnings, automated backups, server update check + apply) — installed over SSH straight from the Management card
  • Admin console for in-game actions: item grants, vehicle spawns, skill/journey/XP tags, player lookup with live pawn location, and a logged history of every published command
  • Automated tasks tab with editable schedule settings (daily restart time, warning lead/frequency, update apply lead, IANA timezone) — saving auto-restarts the service so changes apply immediately
  • Welcome Package automation: a per-player onboarding chain (item grants, water refill, welcome whisper) driven by Postgres player detection, tracked in the management service's SQLite ledger, and configurable from the Welcome Package tab with both a visual editor and a raw JSON mode

Admin tab — granting items to online players with a searchable Funcom item picker

More management features coming soon.

Install

Download the latest release for your operating system from GitHub Releases.

  • Windows: run the NSIS installer.
  • Linux: use the AppImage or Debian package.
  • macOS: use the DMG for your Mac architecture.

After launching the app, add an existing server profile with its host, SSH user, and private key path, then refresh it to detect BattleGroups and management endpoints.

Managed Server Assumptions

The target server must already be installed and reachable over SSH. The app expects the Dune Kubernetes resources and vendor management scripts to exist on the server before you add it.

Required player-facing/server ports depend on your own server deployment. A typical dedicated-server deployment uses:

  • UDP 7777-7810 for game servers
  • TCP 31982 for RMQ

If you found a bug or are having other issues, please create an issue here: https://github.com/adainrivers/dune-dedicated-server-manager/issues

Building From Source

See Building From Source.

License

MIT License. See LICENSE.

Extension points exported contracts — how you extend this code

VmProvider (Interface)
VM lifecycle and import provider. [6 implementers]
crates/dune-manager-core/src/orchestration/providers/vm_provider.rs
Task (Interface)
(no doc) [7 implementers]
crates/dune-server-service/src/scheduler/task.rs
RemoteCommandRunner (Interface)
Runs commands on a remote guest and returns text or JSON output. [5 implementers]
crates/dune-manager-core/src/orchestration/kubernetes_ssh.rs
GuestBootstrapProvider (Interface)
Provider for the guest bootstrap phases. [4 implementers]
crates/dune-manager-core/src/orchestration/providers/guest_bootstrap_provider.rs
HostProvider (Interface)
Host-level discovery provider. [4 implementers]
crates/dune-manager-core/src/orchestration/providers/host_provider.rs
KubernetesProvider (Interface)
Kubernetes operations needed by battlegroup lifecycle orchestration. [2 implementers]
crates/dune-manager-core/src/orchestration/providers/kubernetes_provider.rs

Core symbols most depended-on inside this repo

failure
called by 160
crates/dune-manager-core/src/errors.rs
is_empty
called by 146
crates/dune-manager-core/src/cli/args.rs
get
called by 145
crates/dune-server-service/src/kubectl/cluster.rs
as_str
called by 47
crates/dune-server-service/src/store/welcome.rs
ok
called by 40
crates/dune-server-service/src/kubectl/mod.rs
info
called by 36
app/src-tauri/src/logging.rs
log_info
called by 33
crates/dune-server-service/src/scheduler/task.rs
as_str
called by 30
crates/dune-manager-core/src/orchestration/battlegroup_wrapper/wrapper.rs

Shape

Function 796
Method 468
Class 211
Enum 28
Interface 9

Languages

Rust88%
TypeScript12%

Modules by API surface

crates/dune-manager-core/src/orchestration/hyperv_initial_setup/tests/mock_providers.rs37 symbols
crates/dune-server-service/src/tasks/welcome_package.rs34 symbols
crates/dune-server-service/src/http/api_runs.rs33 symbols
app/src-tauri/src/commands/management_api.rs30 symbols
crates/dune-manager-core/src/orchestration/dune_vm_detection.rs26 symbols
app/src-tauri/src/commands/status_data.rs26 symbols
crates/dune-server-service/src/store/welcome.rs24 symbols
crates/dune-server-service/src/admin/mq.rs23 symbols
app/src-tauri/src/commands/management_service.rs23 symbols
crates/dune-server-service/src/store/runs.rs22 symbols
crates/dune-manager-core/src/orchestration/battlegroup_wrapper/wrapper.rs22 symbols
app/src/services/tauri.ts22 symbols

Datastores touched

duneDatabase · 1 repos

For agents

$ claude mcp add dune-dedicated-server-manager \
  -- python -m otcore.mcp_server <graph>

⬇ download graph artifact

Ask about this repo answers extend the page