Battery & performance · Free Included in the free edition

BatteryGuard: Why Your Phone Does Not Get Hot

One authority decides what the phone can afford from battery, charging state and thermal status, and every heavy operation asks it first — then says so in plain words.

MyBenAI on Android: Battery & Performance, next to the benchmark
Android Battery & Performance, next to the benchmark

Running a neural network on a phone is a thermal problem before it is anything else. Most local-AI apps ignore this and let you discover it as a hot phone and a dead battery. MyBenAI has a single component whose entire job is deciding what the device can afford right now.

One authority, consulted by everything

No part of the app reads the battery or the thermal state directly. They all ask BatteryGuard for a budget and subscribe to changes. Loading a model, generating a reply, drawing an image, running a scheduled job, fanning out sub-agents, downloading weights — every one of them goes through it. One place to reason about, one place to change policy, and no path around it.

What it actually adjusts

  • Threads. Charging: most of your cores. On battery: about half, capped. In a low-power or serious thermal state: two.
  • Agent fan-out. Four in parallel while charging, fewer on battery, zero when the phone is low.
  • Whether the heavy thing runs at all. Below the threshold, image generation and model loads are refused.

Refusal in plain words

When something is blocked you are told what and why — "plug in to continue" — rather than being left with an app that has quietly become slow. If the model tries to use a blocked tool, it gets a structured refusal it can explain to you in the conversation.

The policy is tested code

The thresholds live in one pure function with unit tests around it, not scattered through the UI. That is why the behaviour is consistent, and why it can be tuned without breaking three unrelated screens.