phone_hold
Pause a user-requested iPhone task for a set time so a person can enter a PIN or approval code without the idle watchdog releasing the device. Clear the hold when done.
Instructions
Keep the phone for a bounded human-in-the-loop pause inside the current user-requested task (the operator types a PIN, approves a prompt, fetches a code): the idle watchdog will not release it for secs seconds (0 clears the hold; max 14400). When the person signs in (passcode, Face ID, a code), pass private=true: the screen is not read or streamed until you clear the hold; pass private=true again when extending it, since a hold without it lifts the privacy. Not for initialization, health checks, or keeping the phone ready; clear it when the step is done. Fails with device_release_in_progress if the daemon is already releasing, and with phone_owned if another session holds the phone lease.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| secs | Yes | Seconds to keep the phone (0 clears the hold; at most 14400). | |
| private | No | The person is signing in (passcode, Face ID, a code): nothing reads the screen until the hold ends or is cleared — screenshots, elements and live views are refused with `screen_private`. | |
| instance | No | Installed local instance name, such as i13 or default. Omit to use the configured daemon. No fallback on failure. |