This is the separate Windows launcher for Bitaxe Agent. It runs the controller loop and the dashboard in one local application process.
Files:
windows_app.py: Windows launcherwindows.env.example: Windows-local config templatebitaxe-agent.spec: PyInstaller specbuild_windows.bat: build script
The Windows app now matches the current Linux project behavior more closely:
- it loads
.envautomatically on startup - if
.envdoes not exist, it creates it fromwindows.env.example - the packaged
.exenow runs without a console window - on Windows, the app now lives in the system tray
- the tray supports
Open DashboardandExit - it uses the current shared dashboard with:
- domain instability alerting
- domain guard status badge
- preset status detection
- controller restart and miner restart actions
- current guardrail config editing
The Windows app reads BITAXE_URL from .env.
First run:
- Copy
windows.env.exampleto.env - Set
BITAXE_URL, for example:
BITAXE_URL=http://192.168.1.50You can also change BITAXE_URL from the dashboard UI.
The Windows template includes the current stability rails:
BITAXE_MAX_ERROR_PERCENTAGE=20
BITAXE_MAX_DOMAIN_SPREAD_PERCENTAGE=10
BITAXE_CRITICAL_DOMAIN_SPREAD_PERCENTAGE=18
BITAXE_DOMAIN_SPREAD_POLLS=2That means the Windows app will use the same domain-spread rollback logic as the current Linux controller.
copy windows.env.example .env
python windows_app.pyThen open:
http://127.0.0.1:8787/
On a Windows machine with Python and PyInstaller installed:
build_windows.batThat produces:
dist\bitaxe-agent.exe
- The
.exemust be built on Windows for a real Windows executable. - The app writes runtime state to
status.jsonbeside the executable. - The dashboard and controller run inside the same Windows application process.
- The packaged build also includes
WINDOWS.md. - Double-click the tray icon to open the dashboard.
- Right-click the tray icon for
Open DashboardandExit.