Skip to content
BenKoncsik edited this page May 4, 2026 · 1 revision

GitRunnerManager

A lightweight menu bar / tray application for managing local GitHub Actions self-hosted runners. It shows runner status, current activity, network condition, battery/resource usage, launch-at-login state, and GitHub Actions context. You can start, stop, restart, switch automatic mode, add runner profiles, set up new GitHub runners, inspect workflow runs, and export diagnostics directly from the app.

Main Features

  • Runner control: Start, stop, and restart the GitHub Actions runner from the menu bar
  • Automatic mode: Network-aware and battery-aware automatic start/stop decisions
  • Activity monitoring: Detects when the runner is idle, busy with a job, or stopping
  • Resource monitoring: CPU and memory usage for runner processes
  • Network monitoring: Detects offline, metered/expensive, and unmetered connections
  • Battery monitoring: Detects battery state and can stop the runner on battery power
  • Launch at login: Enable or disable automatic launch at system startup
  • App updates: Built-in update checking with stable and preview channels
  • GitHub Actions integration (Avalonia): Auth, dashboard, workflow runs, job correlation, diagnostics export
  • Multi-runner management (Avalonia): Multiple runner profiles with per-runner policies
  • Runner setup wizard (Avalonia): Guided flow to register and configure new runners
  • Runner binary updates (Avalonia): Update the GitHub Actions runner to the latest version
  • Localization: English, Hungarian, and partial support for 40+ additional languages

Supported Implementations

The repository contains two separate implementations of the same product:

Implementation Stack Platform
SwiftUI (Native macOS) Swift 6.0, SwiftUI macOS 14.0+
Avalonia (Cross-platform) C# .NET 10, Avalonia UI macOS, Windows, Linux

Both implementations share the same product direction and reconciliation logic. The Avalonia implementation includes additional features such as multi-runner management, GitHub Actions integration, and a runner setup wizard.

Quick Navigation

  • Getting Started -- What GitRunnerManager does and how to set it up
  • Installation -- Build and install instructions for both implementations
  • Usage -- Menu bar controls and status indicators
  • Runner Management -- Process control, detection, and lifecycle
  • Monitoring -- Log, resource, network, and battery monitoring
  • Automation -- Automatic mode, network/battery decisions, reconciliation
  • Settings -- Configuration options for all settings sections
  • Architecture -- Technical architecture of both implementations
  • Development -- Repository structure, build commands, and conventions
  • FAQ -- Common questions and answers
  • Troubleshooting -- Solutions for common issues
  • Roadmap -- Current capabilities and future directions

Clone this wiki locally