- start.ps1 fallback 8080 -> 8081 (reads data/settings.json which is now 8081)
- server.py argparse --port default 8080 -> 8081 (bare server.py lands on 8081)
- (desktop Agentic OS.url already points at 127.0.0.1:8081; settings.json
change kept local since it's git-ignored with api_keys)
Single consistent port story across WSL start.sh, Windows start.ps1,
bare server.py, and the desktop shortcut.
- install.ps1: wrap desktop shortcut creation in try/catch so a COM
failure doesn't abort the whole installer (ErrorActionPreference=Stop)
- start.ps1: coerce dashboard.port to int on the Python side so a float
value in settings.json doesn't crash the [int] cast
- start.sh: fail loudly with a clear error if no free port is found in
20 attempts, instead of silently launching on an unverified port
start.ps1/start.sh now fall back to the next free port instead of
crashing when the configured port is already taken (e.g. by another
local app), and auto-open the dashboard in the browser once it's up.
install.ps1 also creates a desktop shortcut (Launch-Dashboard.bat) so
the dashboard can be started without typing any commands.