mirror of
https://github.com/obra/superpowers.git
synced 2026-07-10 03:59:04 +08:00
docs(skills): name concrete macOS tools in the computer-use ladder
This commit is contained in:
@@ -48,19 +48,19 @@ Accessibility automation on a real desktop is not always available cleanly.
|
|||||||
Climb a ladder of approaches, and when a rung is blocked, record *why* before
|
Climb a ladder of approaches, and when a rung is blocked, record *why* before
|
||||||
trying the next one:
|
trying the next one:
|
||||||
|
|
||||||
1. **Scripting API** (e.g. an OS-level accessibility scripting bridge) — the
|
1. **Accessibility scripting** (on macOS, `osascript`/AppleScript) — the cheap
|
||||||
cheap default. Blocked signature: a permission error before any command
|
default. Blocked signature: a permission error before any command runs
|
||||||
runs (no Accessibility grant).
|
(no Accessibility grant, e.g. `osascript` error `-1719`).
|
||||||
2. **UI-test harness** (a first-class automated-testing framework for the
|
2. **UI-test harness** (on macOS, an XCUITest automation session) — the
|
||||||
platform) — the "proper" way to drive the real app end to end. Blocked
|
"proper" way to drive the real app end to end. Blocked signature: the
|
||||||
signature: the harness process itself never establishes its automation
|
harness process itself never establishes its automation session (an
|
||||||
session (e.g. an unsigned test runner killed before it attaches) — that's
|
unsigned test runner killed before it attaches) — that's the harness
|
||||||
the harness failing to bootstrap, not a bug in the app under test.
|
failing to bootstrap, not a bug in the app under test.
|
||||||
3. **Raw input injection** (a coordinate-based click/keystroke tool plus a
|
3. **Raw input injection** (on macOS, a coordinate-clicking tool such as
|
||||||
screenshot after each action) — the fallback of last resort when both of
|
`cliclick` plus `screencapture` after each action) — the fallback of last
|
||||||
the above are blocked. Coarser than element-indexed driving, so screenshot
|
resort when both of the above are blocked. Coarser than element-indexed
|
||||||
after every action and confirm the click landed on the intended window
|
driving, so screenshot after every action and confirm the click landed on
|
||||||
before trusting the result.
|
the intended window before trusting the result.
|
||||||
|
|
||||||
Every rung you tried belongs in the report, including the ones that failed —
|
Every rung you tried belongs in the report, including the ones that failed —
|
||||||
not only the one that worked. Diagnose each blocked rung enough to state the
|
not only the one that worked. Diagnose each blocked rung enough to state the
|
||||||
|
|||||||
Reference in New Issue
Block a user