Follow-up to the host-input consent gate. Today kuri ios interactive input is implemented with macOS CGEvent posting to the focused Simulator.app window (kuri-mobile/src/ios/sim_input.zig), which inherently uses the host cursor/keyboard and requires bringing Simulator to the front. Even with the new --host-input consent gate, this can't run truly in the background.
Goal: an input backend that drives the simulator without synthesizing through the user's active pointer/focus — e.g. XCUITest, or idb ui tap/swipe/text. That would let agents run simulator interactions in the background safely (no consent gate needed for the isolated path).
Scope notes:
- Keep the CGEvent path as a fallback for environments without idb/XCUITest.
- Coordinate model should stay consistent (device pixels matching the screenshot).
Context: justrach/codegraff#237.
Follow-up to the host-input consent gate. Today
kuri iosinteractive input is implemented with macOSCGEventposting to the focused Simulator.app window (kuri-mobile/src/ios/sim_input.zig), which inherently uses the host cursor/keyboard and requires bringing Simulator to the front. Even with the new--host-inputconsent gate, this can't run truly in the background.Goal: an input backend that drives the simulator without synthesizing through the user's active pointer/focus — e.g. XCUITest, or
idb ui tap/swipe/text. That would let agents run simulator interactions in the background safely (no consent gate needed for the isolated path).Scope notes:
Context: justrach/codegraff#237.