Install on Windows
This guide covers installing Astromesh Node as a Windows Service on Windows 10/11 and Windows Server 2019/2022.
Prerequisites
Section titled “Prerequisites”| Requirement | Version | Check |
|---|---|---|
| Windows | 10 21H2+ / 11 / Server 2019+ | winver |
| PowerShell | 5.1+ (included in Windows) | $PSVersionTable.PSVersion |
| Architecture | x64 | echo %PROCESSOR_ARCHITECTURE% |
| Python | None — the archive carries its own CPython 3.12 in C:\Program Files\Astromesh\python (since v0.1.9) | — |
| Network | Outbound to LLM provider or local Ollama | — |
Administrator privileges are required for installation.
Download
Section titled “Download”Node archives are attached to the node-v* releases on GitHub (the repository’s “latest” release is the core, so releases/latest/download/... does not find them):
$Version = "0.1.10"Invoke-WebRequest ` -Uri "https://github.com/monaccode/astromesh/releases/download/node-v$Version/astromesh-node-$Version-windows.zip" ` -OutFile astromesh-node.zipInstall
Section titled “Install”Extract the archive and run the installer script as Administrator:
Expand-Archive -Path astromesh-node.zip -DestinationPath .\astromesh-nodecd .\astromesh-node.\install.ps1If PowerShell script execution is blocked, run:
Set-ExecutionPolicy -Scope Process -ExecutionPolicy Bypass.\install.ps1The installer:
- Creates
C:\ProgramData\Astromesh\config\,data\andlogs\ - Copies the bundled CPython and the virtualenv to
C:\Program Files\Astromesh\{python,venv}\, replacing any previous copy - Adds
C:\Program Files\Astromesh\venv\Scripts\to the systemPATH
It does not register the Windows Service — see Register and start the service.
Open a new terminal (to pick up the PATH update) and verify:
astromeshctl versionExpected output:
astromesh-cli 0.3.1astromesh core 0.61.0Configure
Section titled “Configure”astromeshctl init only writes to the system directory on Unix when run as root; on Windows it always writes to .\config. Run it from C:\ProgramData\Astromesh so that lands in the directory the daemon reads:
cd C:\ProgramData\Astromeshastromeshctl init --devFor a non-interactive setup:
astromeshctl init --dev --role full --non-interactiveThis creates config\runtime.yaml and config\providers.yaml. The Windows archive ships neither role profiles nor sample agents, so runtime.yaml is empty (all services on, port 8000 — the full defaults) and config\agents\ starts empty: add your *.agent.yaml files there. An API key you enter goes to C:\ProgramData\Astromesh\.env, which the service does not read — set it as a system environment variable instead.
See Configuration for the full schema.
Register and start the service
Section titled “Register and start the service”The service wrapper astromeshd-service.py ships in the archive (not in the installed venv). From the extracted folder, as Administrator:
& "$env:ProgramFiles\Astromesh\venv\Scripts\python.exe" .\astromeshd-service.py --startup auto installStart-Service astromeshdThe service is named astromeshd (display name “Astromesh Agent Runtime Daemon”). To stop it:
Stop-Service astromeshdVerify
Section titled “Verify”astromeshctl statusInvoke-RestMethod http://localhost:8000/v1/healthWindows Firewall
Section titled “Windows Firewall”To allow external access to the API (optional, only needed if accessing from other machines):
New-NetFirewallRule ` -DisplayName "Astromesh API" ` -Direction Inbound ` -Protocol TCP ` -LocalPort 8000 ` -Action AllowLog Access
Section titled “Log Access”The service writes no log file. To see the daemon’s output, stop the service and run it in a terminal:
astromeshd --foregroundFilesystem Paths
Section titled “Filesystem Paths”| Path | Purpose |
|---|---|
C:\ProgramData\Astromesh\config\ | Configuration files |
C:\ProgramData\Astromesh\data\ | Persistent state |
C:\Program Files\Astromesh\venv\ | Virtualenv (Scripts\astromeshd.exe, Scripts\astromeshctl.exe) |
Upgrade
Section titled “Upgrade”install.ps1 does not stop the service. Stop it first; since v0.1.9 the installer replaces the old python\ and venv\ itself:
Stop-Service astromeshd# download + Expand-Archive + .\install.ps1 as aboveStart-Service astromeshdUninstall
Section titled “Uninstall”# Stop and remove the serviceStop-Service astromeshdsc.exe delete astromeshd
# Remove the virtualenvRemove-Item "C:\Program Files\Astromesh" -Recurse -ForceAlso remove C:\Program Files\Astromesh\venv\Scripts from the system PATH. To remove all configuration and data:
Remove-Item "C:\ProgramData\Astromesh" -Recurse -ForceNext Steps
Section titled “Next Steps”- Configuration — Customize runtime.yaml and profiles
- CLI Reference — Full astromeshctl reference
- Troubleshooting — Common Windows issues