Per-Person Apple ID
Library/Accounts is swapped per Person, so each container signs in to its own iCloud / App-Store account. One Apple ID per Person, never shared.
Docker-style container isolation on a single jailbroken iPhone. Every Person boots its own Apple ID, App Store, Safari, keychain and app data — fully partitioned, switchable by name.
Not a profile. Not a toggle. A genuine partition of the device's identity surface — swapped on disk at switch, re-filtered on the home screen.
Library/Accounts is swapped per Person, so each container signs in to its own iCloud / App-Store account. One Apple ID per Person, never shared.
Third-party home directories are redirected per Person. Apps see only their own container's data — no leakage across identities.
SecItem reads & writes are transparently prefixed mpN., giving each Person its own keychain partition inside the device store.
Safari and App Store sandboxes + global data are physically swapped at switch — separate history, logins, downloads and tabs per Person.
Sign a Person in, sign out, or wipe its account to blank — orchestrated on-device, with the swapped store made live by a daemon bounce.
Drive everything by name over :8899 — register, switch, sign-in, wipe, manage apps. Built for Umbrella-scale automation.
A native switch overlay, a browser control panel served by the daemon, and a license screen — every Person addressable by name.
Any client names a Person over the LAN.
Kills Safari/Store, swaps the per-Person sandbox + global data, commits the active pointer.
Reloads context on a Darwin notify and re-filters the home-screen icons.
Persons are addressed by case-insensitive name in every call. Identity for fleet automation is one GET away — internal numeric ids never leave the device.
# who's active right now? $ curl -s http://$DEV:8899/identity { "name": "Personal", "primary": false } # switch a Person by name (data swapped on disk) $ curl -X POST http://$DEV:8899/switch?name=Work { "ok": true, "name": "Work" } # sign that Person into the App Store $ curl -X POST http://$DEV:8899/signin \ -d '{"name":"Work","email":"…","password":"…"}' { "ok": true, "exit": 0, "result": "signed_in" }
One key, one device. The clock starts the day it's installed. Expire → only Primary works, until you renew.
:8899 API.
Install on a rootful Palera1n iPhone, key in a license, and start switching Persons by name.