Failure PatternDecision layer

The MacRun Idle Rack Trap: Why Agencies Fail With MacRun When Agents Run 24/7

Symptom: Monthly invoices hold steady at $119 or $139 per machine while pull request output for the client drops to a handful per week. Root cause: MacRun bills per dedicated machine per month, not per build minute or per task, so an idle M4 16GB/256GB runner costs the same $119 whether it processes 400 builds or four.

By InnovaAI ResearchPublished Updated

How do you recognize it?
  • •Monthly invoices hold steady at $119 or $139 per machine while pull request output for the client drops to a handful per week
  • •Two or more MacRun instances sit on the same hardware tier even though only one client codebase is actively dispatched to
  • •Agents stall mid-task and nobody notices until the next billing cycle, because no one opened the browser desktop session to approve a login
  • •The client's retainer is priced per project milestone, so idle MacRun capacity never appears in any deliverable line item
Why does it happen?
  • •MacRun bills per dedicated machine per month, not per build minute or per task, so an idle M4 16GB/256GB runner costs the same $119 whether it processes 400 builds or four
  • •Each machine is single-tenant and stays awake with a persistent logged-in session, which means capacity cannot be shared across client codebases without reconfiguring the runner and its credentials
  • •The CI runner plan advertises unlimited macOS build minutes with no meter, which removes the usage signal an agency would normally use to spot an underused machine
  • •Agent work is dispatched from a phone via the Claude and ChatGPT apps, so approvals and interventions happen outside any ticket queue the agency tracks
How do you fix it?
  • •Audit every MacRun instance in the browser portal and cancel any machine that has not produced a merged pull request in the last 14 days
  • •Move occasional macOS build clients onto a single GitHub Actions runner plan and reserve the agent plan for clients with continuous coding work
  • •Set a weekly calendar check to open the browser desktop session on each machine and confirm the persistent login has not lapsed
  • •Reprice the client retainer to include a fixed infrastructure line at the MacRun monthly rate so idle capacity is visible to both sides