LG LeaseGate-Lite
Windows desktop

Throttle AI workloads, keep your PC smooth.

A one-tab MAUI control surface and local daemon that manages concurrency, rate limits, and thermal pressure for local AI — fewer stutters, fewer thermal spikes.

Start daemon

dotnet run --project src/LeaseGateLite.Daemon

Status

GET /status → { cpu: 42%, heat: "Calm", queue: 2 }

Throttle

POST /config → { maxConcurrency: 3, cooldown: 5s }

Features

Everything you need to keep AI workloads under control.

Live system metrics

Real CPU%, RAM%, queue depth, and heat state (Calm/Warm/Spicy) via Windows PerformanceCounter and GlobalMemoryStatusEx.

Adaptive throttling

Soft and hard thresholds with recovery rate and smoothing — automatically backs off when your system gets hot.

One-tab control panel

MAUI desktop app with an auditable checklist layout — every setting visible, every action explicit.

Per-app profiles

Override concurrency, rate limits, and presets per application — give your browser one budget and your batch jobs another.

Optional auth

Start with --require-auth to generate a local token and lock down the daemon API. Simulation endpoints are gated behind --enable-simulation.

195 tests

Config validation, flood simulation, redaction, diagnostics — all deterministic via FakeSystemMetrics dependency injection.

Usage

Start the daemon

# Start the local API daemon
dotnet run --project src/LeaseGateLite.Daemon

# Daemon listens on localhost:5177

Launch the control panel

# Build and run the MAUI app (Windows)
dotnet build src/LeaseGateLite.App \
  -f net10.0-windows10.0.19041.0
dotnet run --project src/LeaseGateLite.App \
  -f net10.0-windows10.0.19041.0

Daemon Endpoints

Local REST API on localhost:5177.

Method
Path
Description
GET
/status
Live snapshot: CPU%, RAM%, queue depth, heat state
GET
/config
Current configuration
GET
/config/defaults
Default config values
POST
/config
Apply new configuration
POST
/config/reset
Reset to defaults
POST
/service/start
Start the daemon
POST
/service/stop
Stop the daemon
POST
/service/restart
Restart the daemon
POST
/service/pause-background
Pause/resume background work
POST
/service/exit
Graceful daemon shutdown
GET
/autostart/status
Autostart toggle status
POST
/autostart
Enable/disable autostart
GET
/notifications
Notification settings
POST
/notifications
Enable/disable notifications
GET
/presets
List all presets
POST
/preset/apply
Apply a preset
GET
/profiles
Per-app profile overrides
POST
/profiles/apply
Set per-app profile override
POST
/diagnostics/export
Export JSON diagnostic bundle
GET
/events/tail?n=200
Event tail
GET
/events/stream
Poll for new events

Presets

Three built-in profiles to match your hardware.

Quiet

For laptops — conservative limits, aggressive thermal protection, lower concurrency.

Balanced

The default — sensible limits for typical desktop use with moderate AI workloads.

Performance

For desktops with headroom — higher concurrency, relaxed thresholds, maximum throughput.