Beta. Battery v2 is a ground-up native rewrite: a small SwiftUI menu bar app plus a root helper, replacing v1's shell scripts and Electron app. It is not the default download yet, v1.4.0 stays the stable release. Please try it and report what you see.
Install
- Download
Battery-2.0.0-beta.1-mac-arm64.dmgbelow, drag Battery to Applications, open it. - Click Enable helper and approve Battery in System Settings → General → Login Items & Extensions (once).
- Switch on the charge limit. The default is 80%, change it in Settings → Charging.
Apple Silicon, macOS 14 or newer. Coming from v1? The first launch offers to remove v1's leftovers (/usr/local/bin/battery, sudoers entry, launch agent).
What's new
- No sudoers, no password prompts, no
visudo. A signed, notarized helper registered through macOS (SMAppService) does the SMC work. It holds the limit at boot, before login. - Works on macOS 15 and 26 (Tahoe): the charge-control method is picked by probing the Mac's SMC keys (
CHTE,CH0B/CH0C, firmwarebfD0/bfE0/bfF0, adapter cut), not by OS version. Writes are verified; if your Mac ignores the limit, the app says so. - Menu bar: battery icon with continuous fill, optional percentage, status line in the menu ("Holding at limit", "On battery · 2:10 left").
- Allow discharge (on by default): above the limit while plugged in, run on battery down to the limit. Paused while the lid is closed (clamshell mode needs the adapter).
- Charge to 100%, Discharge, Calibrate, a scheduled top-off to 100%, low-battery alert, launch at login.
- CLI for scripts:
battery status,battery maintain 80,battery maintain 70-80,battery charging on|off,battery logs,battery probe(turn it on in Settings → Helper). - Sleep/wake and plug/unplug re-check the limit; the helper repairs itself if macOS leaves it dead after an app replace.
Full list: CHANGELOG.
Known limits
- No automatic updates for betas. Grab new betas from this Releases page.
- macOS 27: the native macOS charge limit is not used yet.
- Intel Macs are not supported.
Reporting
Please open an issue with the v2 details:
battery version
battery status
battery probe
battery logs | tail -50
plus your Mac model and macOS version. Most useful: does the limit hold (charging stops at the limit and stays stopped, also after sleep and reboot)?
Going back to v1
Settings → Helper → Uninstall Battery… (restores normal charging, removes the helper), drag Battery to the Trash, then install v1.4.0.