Repository navigation
Runner Manager v2.4.0
Download
| File | Use it for |
|---|---|
| RunnerManagerSetup-standalone.exe | New installs. Includes .NET; choose this one if you are not sure. |
| RunnerManagerSetup.exe | New installs on PCs that have the .NET 10 Desktop Runtime. |
| RunnerManager.exe | Used by updates. You do not need to download it. |
Existing installs update from Settings or the PC card. From 2.1 or earlier, run the setup once on each PC.
The setup is not code-signed: if Windows shows "Windows protected your PC", click More info → Run anyway.
Changes
This release fixes the problems found in an audit of the whole app. Pairing a new PC needs Runner Manager 2.4 on both
PCs, so update the PCs in your fleet first.
Runners
- Deleting a runner with its files deletes only that runner's own files. Before, a runner installed in a folder that
held other runners or files deleted all of them. Runners installed in a drive root can't be deleted with their files,
and junctions and links are removed without touching what they point to. - Renaming, repairing or converting a runner checks first that the name is free. If registering fails, the runner is
registered again with its old name and labels instead of disappearing. - The runner group, ephemeral, no-auto-update and no-default-labels settings are kept when a runner is edited,
repaired, converted or moved. - Moving a runner keeps its labels (it stops when they can't be read), never leaves both copies broken, keeps the old
copy from starting again at the next restart, and doesn't stop a runner that just started a job. - Deleting a leftover copy of a moved runner no longer unregisters the moved runner.
- A failed delete puts the runner's service and startup entries back. A failed install removes the registration and
service it left behind. - Converting a console runner to a service also turns off scheduled tasks and Run registry entries that start it.
Startup scripts that also start other runners are left alone. - Cleaning a work folder is no longer interrupted by auto-recovery. Restarting a runner that runs a job asks first.
- Console runners that update themselves show as restarting instead of offering Repair.
- Network folders and mapped drives are refused as runner folders. ARM64 PCs get the ARM64 runner and label.
- Organization runners: a clear message when your GitHub sign-in lacks the
admin:orgpermission.GH_HOST,
GH_TOKENandGITHUB_TOKENno longer override the account connected in Runner Manager. - Fewer GitHub API requests on each refresh.
Fleet
- Pairing is protected against a device in between that tries to make both screens show the same code.
- New: Settings → Fleet → Change code… gives the PCs you keep a new pairing code, for example after a laptop was
lost. PCs you leave out can no longer reach the fleet. - A renamed PC is recognized. Two PCs with the same name get a warning instead of receiving each other's commands.
- Waiting for a command on another PC no longer times out when several commands run at once or one waits behind a
long install. A request whose answer was lost is not run twice. - Updating or restarting a fleet agent waits until it has finished its work.
- The fleet agent retries when its network port is taken, and starts again within 5 minutes if it stops while you are
signed in. - A PC's address only changes after it answers there, so a stray network answer can't send commands elsewhere.
- Clock differences between PCs are reported as such. A damaged fleet.json keeps the pairing code and every setting
that can still be read. Settings saved at the same moment by the dashboard and the agent are no longer lost. - Remote Desktop Commander runs the version chosen at setup, uses Node.js from Program Files only, and stopping it no
longer ends other programs.
Updates
- Updates no longer need a GitHub sign-in, and the update banner shows on every PC.
- A failed update check says why instead of "up to date".
- If an update's fleet agent keeps failing to start, Runner Manager goes back to the previous version by itself.
- Runner Manager never replaces a newer installed version with an older one. Beta versions are offered the final
release.
AI assistants
- AI tools see progress while a runner is created or moved, so long calls no longer time out and get repeated. Asking
again for the same runner reports that it is already being created. - Approval windows appear one at a time in order, stay in front without taking your keyboard, have no default button,
and count as declined after 10 minutes. Cancelling in the AI tool closes them. - After you approve, the runner is checked again, and nothing changes if it started a job meanwhile.
- Runners with the same name in different repositories are no longer mixed up; approvals show the repository.
find_runner_for_repoandlist_runnersshow each runner's real labels and match renamed repositories.- Malformed requests get a clear error instead of making the tools look unavailable.
RunnerManager.exe --mcpchecks that it is talking to your own fleet agent. Text from repositories (run titles,
logs) is marked as data for the assistant.
App
- On a PC with several Windows users, one user runs the fleet agent, and the others can no longer take it over. A
standard user who approves with an administrator's password gets an explanation instead of an install in the other
account. - Exiting during an operation asks first. Uninstalling from Settings asks before closing Runner Manager, and
Remove data keeps your turned-off startup scripts in Documents. - Settings are saved safely; a damaged settings file keeps the values that can be read.
- The System theme follows Windows while Runner Manager runs, text is sharp on every monitor, and a window on a
disconnected monitor comes back on screen. - Less memory and CPU use while running in the notification area.
SHA-256
- RunnerManagerSetup-standalone.exe:
1c4962e9570bcb7bc5402d47f8eacf65f33ee06f19d9324c372c6bae2a90b610 - RunnerManagerSetup.exe and RunnerManager.exe:
fe55723edf7abe7646bf4e6aa034edf116876b6a7c00cffd066453b25d948843