Windows Installation

MultiAgent installs on Windows with a setup wizard — the XedantMultiAgent-Setup-<version>.exe program. The wizard installs MultiAgent as a Windows service: it starts by itself when the computer boots and keeps managing your servers even when nobody is logged in, and after a Windows crash the system restarts it automatically. The web interface opens at http://localhost:3990; servers connect over SSH. No Docker or SSH tools are needed on this Windows machine — MultiAgent installs everything the servers need on the servers themselves. When agents should run on this very machine, the service can manage a local WSL distribution (see below).

System requirements

  • Windows 10 or newer (64-bit);
  • administrator rights — the install is machine-wide: the wizard creates the service, writes registry keys and, when needed, adds a firewall rule, so confirm the UAC prompt;
  • at least 1 GB of RAM and about 500 MB of free disk space;
  • no .NET runtime needed — the installer includes everything, nothing extra to install;
  • for managing remote servers, no Docker or SSH tools are needed on this computer; agents on the machine itself need WSL2 with Docker (see “Local servers in WSL”).

The setup wizard

Run the installer and follow the wizard steps:

  • Port — 3990 by default, the web interface will run at http://localhost:3990; you can change the port during installation (range 1–65535);
  • Data folder — C:\ProgramData\Xedant\MultiAgent\data by default: the database, keys and certificates live here, plus the activated license file. The folder sits outside the application directory, so your data survives reinstalls and uninstalls; re-running the installer remembers the folder you chose before. To opt out of the local database, point MULTIAGENT_DATABASE at a PostgreSQL address;
  • Login — username (admin by default) and password (stored as a protected hash). The account is created on the service’s first launch, and re-running the wizard updates the password; leave the password field empty and the current one stays;
  • License — an empty key gives you the built-in 30-day trial license; you can enter a key right away or update it later with the wizard or the license dialog inside the app. You can buy a license on the Licensing page;
  • Service — when it should start: “Automatic” (the default), “Automatic (delayed)” or “Manual”, plus the “Allow connections from other computers” checkbox (off): it opens the chosen port in the Windows firewall and binds all network interfaces — otherwise the web interface is reachable only from the machine itself;
  • Desktop shortcut — optional.

What gets installed

  • Application files in C:\Program Files\Xedant\MultiAgent: the executable and .NET libraries, the web client, the built-in tool and product templates, translation files;
  • the Windows service “MultiAgent (Xedant)”: it starts with the system and restarts after a crash; manage it like any other service — through services.msc or the sc command;
  • service settings — the service’s Environment value under the registry key HKLM\SYSTEM\CurrentControlSet\Services\XedantMultiAgent (the Windows analog of the environment block in Docker) and the mirror key HKLM\Software\Xedant\MultiAgent\XedantMultiAgent, from which the wizard prefills its previous answers on a re-run;
  • a Start menu group Xedant MultiAgent: the shortcuts open the web interface in a browser — the port belongs to the service, no need to run the program separately.

Environment variables

The service reads its settings from its own Environment value — the Windows analog of the environment block in Docker. The wizard writes everything needed there by itself:

  • MULTIAGENT_DATA — the data root (database, keys, certificates, license);
  • MULTIAGENT_PROJECT_PATH — the application root (brand translation files);
  • ASPNETCORE_URLS — the web interface’s address and port;
  • AGENT_TOOLS / AGENT_PRODUCTS — the built-in tool and product templates;
  • MULTIAGENT_LOGIN / MULTIAGENT_PASSWORD — the user account: created on the service’s first launch, and the password is updated when the hash changes (the password is a SHA256 hash);
  • AGENT_LICENSE — the license key on first launch.

Optional variables can be appended to the same Environment value (with a registry editor, for example) followed by a service restart:

  • MULTIAGENT_DATABASE — a PostgreSQL connection string instead of the local database in the data folder;
  • MULTIAGENT_BRAND — pin the interface brand; normally it is detected from the exe file name;
  • AGENT_API_URL / AGENT_API_KEY / MULTIAGENT_HASH — wiring up the own assistant: the built-in chat and the programmatic API (the inbound key is accepted as a fingerprint). On the agent’s own side, the MultiAgent address arrives in MULTIAGENT_URL and the key in MULTIAGENT_KEY.

Optional settings are best kept not in the registry but in a .env file next to the application files (its address is held in MULTIAGENT_PROJECT_PATH): the service reads the file at startup and on the fly, and values from it win over the service’s variables. Lines look like KEY=VALUE; MULTIAGENT_PROJECT_PATH must not be set in the file. Details — on the Docker installation page.

The same exe can also be run manually from a command line with administrator rights — then MultiAgent works as an ordinary console application and reads the service’s settings. For a one-off launch, parameters can be passed directly on the command line in KEY=VALUE format:

:: Change the port for one launch
XedantMultiAgent.exe --urls=http://localhost:3992

:: Point the data folder somewhere else
XedantMultiAgent.exe MULTIAGENT_DATA=D:\MultiAgentData

:: Use PostgreSQL instead of local SQLite
XedantMultiAgent.exe MULTIAGENT_DATABASE="Host=db.local;Port=5432;User Id=multiagent;Password=secret;Database=multiagent"

Local servers in WSL

When agents should run not on a remote server but on this very computer, add a server with the “Local WSL” connection type and pick a distribution. No password, key or address is needed: the Windows service itself runs the commands inside the distribution. The list shows the installed distributions (Docker Desktop’s service distributions are hidden); the “Default distribution” is the one the wsl command starts, and the “Other…” item lets you type a name by hand.

The mode appears only where WSL is available — Linux and Docker deployments do not offer this choice. WSL2 with Docker inside the distribution is required: either the Docker Desktop WSL integration enabled for it, or docker-ce with systemd. From there, such a server works exactly like a remote one: checks, deployments, files, the terminal and routes.

While the address field holds localhost, app links open only from this computer; enter the machine’s network name or address to open them from other devices too. The service runs under the Windows SYSTEM account, which is what lets it work with WSL; if the distribution list turns out empty, run the service under the account that registered those distributions.

After installation

Open the shortcut in the Start menu → Xedant MultiAgent → MultiAgent: it opens the web interface in a browser. Log in with the credentials you set during installation and add the first server: name, host, SSH port, user and a password or private key (keys are stored encrypted in the database) — or the “Local WSL” connection type. Everything else — installing Docker and its dependencies on the servers — MultiAgent does by itself.

When the web interface does not open, look at the <data folder>\service.log journal: the service appends its output there, and the cause is most often a busy port. The service is managed like any other — in services.msc it is listed as “MultiAgent (Xedant)”, and sc stop XedantMultiAgent and net start XedantMultiAgent work from the command line.

The interface brand is detected from the executable’s file name: keep the name XedantMultiAgent.exe, or pin the brand explicitly with the MULTIAGENT_BRAND variable.

Updating and uninstalling

To update, run the new version’s installer again: the wizard offers “Reconfigure or update” — you can change any setting (the port, the data folder, the credentials, the license, the service startup), the service is recreated, the files are replaced and the data folder stays untouched. When an old per-user install (0.1.x) is still on the computer, the wizard removes it by itself and adopts the previous data folder — the database, keys and license move over.

To uninstall, use Settings → Apps or pick “Uninstall” in the wizard: along with the application files, the service, the firewall rule and the registry keys are removed, but the data folder stays — the wizard asks separately whether to delete the database, SSH keys and certificates.

← Back to documentation