Running agent workloads on my own hardware
- Problem
- Heavy PR traffic and a lot of parallel agent runs made GitHub Actions minutes expensive.
- What I did
- I moved the heavy jobs onto computers I already had. GARM runs the self-hosted runners and CLIProxyAPI lets agents on every machine share the same subscriptions. Both already did the hard part well, so I built the dashboards they were missing: which PR a runner is working on, what usage costs, and what's slow.
┤ GARM Dashboard ├
Active 2026Active 2026
Which PR is that self-hosted runner working on, and is it slower than usual?
A read-only dashboard that joins GARM's pools and runners with the GitHub Actions API: live runs grouped by PR with each job against its usual duration, plus 24h/7d/30d stats for queue wait, p50/p90 workflow time, boot time per pool, and the slowest and failing jobs.
┤ CLIProxy Dashboard ├
Active 2026Active 2026
A better management UI for CLIProxyAPI, plus the usage history it doesn't keep.
Quota windows on a timeline with pace against the reset, cost and tokens by provider, model, machine and key, OAuth account management, client key setup, and a config editor that shows a diff and snapshots the previous file on every save.
- [TypeScript]
- [React]
- [Hono]
- [Vite]
- [Docker]
github ↗built onCLIProxyAPI ↗
