v1.10.22
Project Memory — execbro now remembers which device you use, per project.
When several devices are connected, a call without device= used to fail with "Multiple devices available", forcing a retry with an explicit device every session. It now auto-selects the most recently used device that is still running, and tells you which one it picked.
- Per-project store at
~/.execbro/projects/<hash>/, keyed by the directory execbro was started from — one bucket per repo, shared across iOS/Android and build flavors (differing bundle ids don't split it). - Remembers each resolved device — identifier, name, platform, first/last used, use count — plus static screen metrics (raw/delivered size and downscale; on iOS also logical points and device scale).
- Safe by construction: the auto-default only ever picks a currently-running device, never resurrects a shut-down one, and falls back to the original error when nothing remembered is connected. An explicit
device=always wins and updates the memory. - Visible, not silent:
tapandswipereport the choice viadeviceNote. - Local-only — never sent to telemetry, never written into your repo. Disable with
"projectMemory": { "enabled": false }in~/.execbro/config.json. - Forward-compatible on-disk format (self-describing envelope, preserve-unknown, never-downgrade) so concurrently running execbro versions can't clobber each other's data.