macOS and Linux
curl -sSfL https://xynthis.com/install.sh | bash
The script needs only curl, uname, and tar. It then:
- Detects your platform. Supported: macOS arm64 and x86_64, Linux x86_64 and arm64.
- Resolves the latest release from GitHub (
github.com/Xynthis/xynthis-release) and downloads the matching tarball. The tarball contains stripped release binaries only: no source, no debug symbols.
- Verifies the download’s SHA-256 against the
.sha256 sidecar published next to every tarball. A mismatch aborts the install.
- Extracts and installs three binaries into
~/.xynthis/bin/: xynthis (the CLI), xynthis-brain (the brain), and xynthis-mcp (the MCP bridge). On macOS it also removes the quarantine attribute so Gatekeeper doesn’t block the downloaded binaries.
- Adds
~/.xynthis/bin to your shell PATH.
- Registers the brain as a service and starts it, then waits up to 7.5 seconds for
~/.xynthis/brain.sock to appear.
Two environment variables change the download:
XYNTHIS_VERSION=0.2.0 curl -sSfL https://xynthis.com/install.sh | bash # pin a version
XYNTHIS_DOWNLOAD_BASE=https://my-mirror/xynthis curl -sSfL … | bash # use a mirror
Auto-start
On macOS the installer writes a launchd agent to ~/Library/LaunchAgents/com.xynthis.brain.plist and loads it. The brain starts at login and restarts automatically if it crashes. On Linux it writes a systemd user unit to ~/.config/systemd/user/xynthis-brain.service, enables and starts it (Restart=on-failure), and calls loginctl enable-linger so the brain keeps running after you log out.
Both platforms log to the same place, so tail -f ~/.xynthis/logs/brain.err.log works everywhere.
The macOS app
The menu-bar app is a separate install: download the DMG from xynthis.com and drag Xynthis to Applications. The app is a resident menu-bar client. It spawns the bundled brain and daemon on launch, so it works on its own; you don’t need the CLI install first, though the two share ~/.xynthis/ when both are present.
The app updates itself: it polls for new releases and applies SHA-256-verified DMG updates in place. The current version is 1.0.89. See The macOS app for what’s inside.
Windows
irm https://xynthis.com/install.ps1 | iex
Windows gets the CLI and the brain, not the app (the app is a macOS-only client). The installer requires 64-bit Windows and tar.exe, which Windows 10 (1803+) and Windows 11 ship by default. It downloads the x86_64-pc-windows-msvc tarball, verifies its SHA-256, installs xynthis.exe, xynthis-brain.exe, and xynthis-mcp.exe into %LOCALAPPDATA%\xynthis\bin, adds that directory to your user PATH, and starts the brain as a background process.
On Windows the CLI, the MCP bridge, and the brain talk over a named pipe instead of a Unix socket. Access to the pipe is restricted to your own user account.
There is no Windows service registration yet. The brain runs as a detached process and will not survive a reboot or logout. Re-run the installer, or run xynthis-brain.exe directly, to bring it back. Pin a version with $env:XYNTHIS_VERSION = "0.2.0" before the install line.
Upgrading
Re-run the installer. It is idempotent: it re-copies the binaries and reloads the service while preserving ~/.xynthis/{bmc,skill,logs,auth.json,config.toml}; your memory, keys, and config are never touched. The macOS app upgrades itself independently through its built-in updater.
Uninstalling
macOS:
launchctl unload ~/Library/LaunchAgents/com.xynthis.brain.plist
rm -rf ~/.xynthis/bin ~/Library/LaunchAgents/com.xynthis.brain.plist
Linux:
systemctl --user disable --now xynthis-brain.service
rm -rf ~/.xynthis/bin ~/.config/systemd/user/xynthis-brain.service
Windows:
Stop-Process -Name xynthis-brain
Remove-Item -Recurse "$env:LOCALAPPDATA\xynthis\bin"
All of these remove the binaries but preserve your memory in ~/.xynthis/{bmc,skill} (or %LOCALAPPDATA%\xynthis on Windows). For a full wipe, delete the whole directory: