--- name: ictrl-phone-control description: Control an iPhone over HTTP to automate real apps — tap, type, swipe, read the screen's view tree, launch apps, take screenshots. Use when the user asks to operate a phone, drive an iOS app, automate a mobile task (search a product, check an order, fill a form), or inspect what's on a device's screen. The service is iCTRL, JSON-RPC 2.0 on port 8200; requests are encrypted, so drive it with a client downloaded from the device (a static CLI needing no interpreter, or a Python one) rather than hand-written HTTP. skill_version: "1.98.13" --- # iCTRL — control an iPhone over HTTP iCTRL runs on the iPhone and serves UI automation as **JSON-RPC 2.0 over HTTP, port 8200**, encrypted. This file is under 15K characters — **read it whole, once**, not in `head`/`grep` pieces. ## Quick start On the phone (e.g. Minis) — the device is `127.0.0.1`: ```bash C=~/.ictrl/bin; I="sh $C/ictrl.sh" [ -f $C/ictrl ] || { mkdir -p $C && wget -qO $C/ictrl http://127.0.0.1:8200/skill/clients/cli && wget -qO $C/ictrl.sh http://127.0.0.1:8200/skill/clients/cli.sh; } $I call device_info # 401 → $I pair (user taps Allow) $I call resolve_app '{"text":"||"}' # every name it may go by $I call launch_app '{"bundle_id":""}' $I call page_source '{"visible_only":true,"max_children":50}' $I call find_element '{"element_id":"