Skip to content

Commit 040b518

Browse files
docs: document XCUITest pasteboard prompt suppression (#71)
Add Known Limitations page to the website and a brief note in the skills permissions reference covering the iOS "Allow Paste" dialog being suppressed under XCUITest automation. Co-authored-by: Cursor <cursoragent@cursor.com>
1 parent e6da093 commit 040b518

3 files changed

Lines changed: 30 additions & 0 deletions

File tree

skills/agent-device/references/permissions.md

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -22,6 +22,10 @@ If daemon startup fails with stale metadata hints, clean stale files and retry:
2222
- `~/.agent-device/daemon.json`
2323
- `~/.agent-device/daemon.lock`
2424

25+
## iOS: "Allow Paste" dialog
26+
27+
iOS 16+ shows an "Allow Paste" prompt when an app reads the system pasteboard. Under XCUITest (which `agent-device` uses), this prompt is suppressed by the testing runtime. Use `xcrun simctl pbcopy booted` to set clipboard content directly on the simulator instead.
28+
2529
## Simulator troubleshooting
2630

2731
- If snapshots return 0 nodes, restart Simulator and re-open the app.

website/docs/docs/_meta.json

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -43,5 +43,10 @@
4343
"name": "snapshots",
4444
"type": "file",
4545
"label": "Snapshots"
46+
},
47+
{
48+
"name": "known-limitations",
49+
"type": "file",
50+
"label": "Known Limitations"
4651
}
4752
]
Lines changed: 21 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,21 @@
1+
---
2+
title: Known Limitations
3+
---
4+
5+
# Known Limitations
6+
7+
Platform constraints that affect automation behavior.
8+
9+
## iOS: "Allow Paste" dialog suppressed under XCUITest
10+
11+
iOS 16+ shows an "Allow Paste" system prompt when an app reads `UIPasteboard.general` in the foreground. When an app is launched or activated through the XCUITest runner (which `agent-device` uses for iOS), the iOS runtime detects the testing context and silently grants pasteboard access — the prompt never appears.
12+
13+
This is an Apple platform constraint that affects all XCUITest-based automation tools.
14+
15+
**Workarounds:**
16+
17+
- **Pre-fill the pasteboard via simctl** — set clipboard content without triggering the dialog:
18+
```bash
19+
echo "some text" | xcrun simctl pbcopy booted
20+
```
21+
- **Test the dialog manually** — the "Allow Paste" UX cannot be exercised through XCUITest-based automation.

0 commit comments

Comments
 (0)