01
Install the daemon
Pick the install path that matches how you manage the host. Each installer resolves the matching GitHub Release asset, verifies the checksum, and places the binary in your user install directory.
macOS / Linux
Homebrew
Best for machines already managed with Homebrew.
brew install dvaJi/tap/argos-daemonmacOS / Linux
Shell installer
Installs to ~/.argos/bin unless ARGOS_INSTALL_DIR is set.
curl -fsSL https://raw.githubusercontent.com/dvaJi/argos/main/distro/install/install.sh | shWindows
PowerShell installer
Installs to %USERPROFILE%\.argos\bin unless ARGOS_INSTALL_DIR is set.
irm https://raw.githubusercontent.com/dvaJi/argos/main/distro/install/install.ps1 | iexPin a release when reproducibility matters
Use ARGOS_VERSION=v0.1.0 before the shell installer or$env:ARGOS_VERSION="v0.1.0" before the PowerShell installer.
02
Start local, then pair a browser
argos-daemon --web --paircurl http://127.0.0.1:9527/healthThe health endpoint returns status, version, and uptime. The printed URL contains a short-lived, single-use pairing token. Open it in a browser to establish a revocable session, then the browser connects to the daemon over WebSocket.
Route API
POST /api/v1/route
Event stream
ws://host:port/api/v1/events
Data directory
~/.argos-daemon
03
Configure runtime settings
Flags are best for one-off runs. Environment variables are better for services, containers, and remote machines where config should live outside the process command.
CLI flags
--host <host>Bind address. Defaults to 127.0.0.1.
--port <port>Bind port. Defaults to 9527. Use 0 for an automatic port.
--data-dir <path>Store daemon data in a custom directory. Defaults to ~/.argos-daemon.
--webServe the web UI. Defaults to ./web; override with --web-root or ARGOS_WEB_ROOT.
--web-root <path>Directory containing built web assets. Defaults to ./web.
--pairGenerate a one-time pairing token and print the URL at startup.
--log-level <level>Use debug, info, warn, or error. Defaults to info.
--no-update-checkSkip the startup update availability check.
Environment
ARGOS_HOSTSame as --host.
ARGOS_PORTSame as --port.
ARGOS_DATA_DIRSame as --data-dir.
ARGOS_DESKTOP_BOOTSTRAPDesktop bootstrap secret (set by Electron main).
ARGOS_WEBSame as --web (1/true).
ARGOS_WEB_ROOTSame as --web-root.
ARGOS_LOG_LEVELSame as --log-level.
ARGOS_NO_UPDATE_CHECKSame as --no-update-check.
Remote access
Non-loopback requests require an authenticated session. For browser access, restart with --web --pair and open the printed one-time URL. Desktop-launched daemons receive ARGOS_DESKTOP_BOOTSTRAP automatically.
04
Keep it current
argos-daemon updatesudo systemctl restart argos-daemonThe update command downloads, verifies, and atomically swaps the installed binary. The daemon also checks GitHub Releases on startup and logs when a newer version is available.
Disable update checks
Use this on locked-down hosts or environments that block GitHub API calls.
--no-update-check
ARGOS_NO_UPDATE_CHECK=1
05
Deploy it on a VPS
Linux servers can use the reference unit at distro/systemd/argos-daemon.service. Copy it, adjust the user, binary path, data directory, and environment, then enable the service. Keep the daemon bound to 127.0.0.1; a reverse proxy on the same host should terminate HTTPS and forward HTTP plus WebSocket traffic to it.
sudo install -m 0755 argos-daemon /usr/local/bin/argos-daemon
sudo install -m 0644 distro/systemd/argos-daemon.service /etc/systemd/system/
sudo systemctl daemon-reload
sudo systemctl enable --now argos-daemon01
Install the binary
Use the installer that matches the host. The daemon ships as one standalone executable per platform.
02
Start local first
The default bind address is 127.0.0.1 on port 9527. Confirm health before wiring clients.
03
Pair for remote access
Run argos-daemon --web --pair to print a one-time pairing URL for browser clients.
04
Promote to a service
For Linux servers, run it under systemd and put an HTTPS reverse proxy in front of the loopback daemon.
Do not publish the daemon port directly
The daemon speaks plain HTTP and WebSocket. Put it behind a TLS-capable reverse proxy or a private network such as Tailscale, preserve WebSocket upgrades, and expose the proxy rather than port 9527. Argos is a single-user daemon, not a multi-tenant hosted service.
06
Debug the obvious things first
What the browser does not replace
The web workspace covers chat, sessions, providers, MCP, skills, memory, scheduled tasks, sync, and server-side agent runtimes. It does not replace Electron features that need a local operating system.
Use the desktop app for native windows, the embedded browser panel, overlays, and screen capture.
Use the desktop app for file and directory dialogs, opening or revealing local files, and image clipboard actions.
System fonts, app restart and update controls, tray integration, and desktop notifications are not browser features.
Treat web mode as a useful single-user server workspace, not a promise of full desktop parity.