Skip to content

Commit f7423c0

Browse files
committed
docs: clarify deterministic bootstrap routing
1 parent 7702e24 commit f7423c0

2 files changed

Lines changed: 18 additions & 9 deletions

File tree

skills/agent-device/SKILL.md

Lines changed: 13 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@ description: Automates interactions for Apple-platform apps (iOS, tvOS, macOS) a
55

66
# agent-device
77

8-
Use this skill as a router with mandatory defaults. Read this file first. For normal device tasks, then load `references/bootstrap-install.md` and `references/exploration.md` before acting.
8+
Use this skill as a router with mandatory defaults. Read this file first. If target, app, or session readiness is uncertain, load `references/bootstrap-install.md` first. Once the app session is open and stable, use `references/exploration.md` for inspection and interaction.
99

1010
## Default operating rules
1111

@@ -16,24 +16,28 @@ Use this skill as a router with mandatory defaults. Read this file first. For no
1616
- Do not browse the web or use external sources unless the user explicitly asks.
1717
- Re-snapshot after meaningful UI changes instead of reusing stale refs.
1818
- Prefer `@ref` or selector targeting over raw coordinates.
19+
- Ensure the correct target is pinned and an app session is open before interacting.
1920
- Keep the loop short: `open` -> inspect/act -> verify if needed -> `close`.
2021

2122
## Default flow
2223

23-
1. Choose the correct target and open the app or session you want to work on.
24-
2. Start with plain `snapshot` if the goal is to read or verify what is visible.
25-
3. Escalate to `snapshot -i` only if you need refs for interactive exploration or a requested action.
26-
4. Use `get`, `is`, or `find` before mutating the UI when a read-only command can answer the question.
27-
5. End by capturing proof if needed, then `close`.
24+
1. Decide whether the correct target, app install, and app session are already ready.
25+
2. If readiness is uncertain, or there is no simulator, device, app install, or open app session yet, load [references/bootstrap-install.md](references/bootstrap-install.md) and establish that deterministically.
26+
3. Once the app session is open and stable, load [references/exploration.md](references/exploration.md).
27+
4. Start with plain `snapshot` if the goal is to read or verify what is visible.
28+
5. Escalate to `snapshot -i` only if you need refs for interactive exploration or a requested action.
29+
6. Use `get`, `is`, or `find` before mutating the UI when a read-only command can answer the question.
30+
7. End by capturing proof if needed, then `close`.
2831

2932
## QA modes
3033

3134
- Open-ended bug hunt with reporting: use [../dogfood/SKILL.md](../dogfood/SKILL.md).
3235
- Pass/fail QA from acceptance criteria: stay in this skill, start with [references/bootstrap-install.md](references/bootstrap-install.md), then use the QA loop in [references/exploration.md](references/exploration.md).
3336

34-
## Required references
37+
## Deterministic routing
3538

36-
- For every normal device task, after reading this file, load [references/bootstrap-install.md](references/bootstrap-install.md) first, then [references/exploration.md](references/exploration.md), before acting.
39+
- Load [references/bootstrap-install.md](references/bootstrap-install.md) when target, install, open, or session readiness is uncertain, especially in sandbox or cloud environments.
40+
- Load [references/exploration.md](references/exploration.md) once the app session is open and stable.
3741
- Load additional references only when their scope is needed.
3842

3943
## Decision rules
@@ -43,6 +47,7 @@ Use this skill as a router with mandatory defaults. Read this file first. For no
4347
- Use `get`, `is`, or `find` when they can answer the question without changing UI state.
4448
- Use `fill` to replace text.
4549
- Use `type` to append text.
50+
- If there is no simulator, no app install, or no open app session yet, switch to `bootstrap-install.md` instead of improvising setup steps.
4651
- Use the smallest unblock action first when transient UI blocks inspection, but do not navigate, search, or enter new text just to make the UI reveal data unless the user asked for that interaction.
4752
- Do not use external lookups to compensate for missing on-screen data unless the user asked for them.
4853
- If the needed information is not exposed on screen, say that plainly instead of compensating with extra navigation, text entry, or web search.

skills/agent-device/references/bootstrap-install.md

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22

33
## When to open this file
44

5-
Open this file when you still need to choose the right target, start the right session, install or relaunch the app, or pin automation to one device before interacting.
5+
Open this file when you still need to choose the right target, start the right session, install or relaunch the app, or pin automation to one device before interacting. This is the deterministic setup layer for sandbox, cloud, or other environments where install paths, device state, or app readiness may be uncertain.
66

77
## Main commands to reach for first
88

@@ -17,6 +17,10 @@ Open this file when you still need to choose the right target, start the right s
1717

1818
Do not start acting before you have pinned the correct target and opened an `app` session. In mixed-device environments, always pass `--device`, `--udid`, or `--serial`.
1919

20+
## Deterministic setup rule
21+
22+
If there is no simulator, no app install, no open app session, or any uncertainty about where the app should come from, stay in this file and use deterministic setup commands or bootstrap scripts first. Do not improvise install paths or app-launch flows while exploring.
23+
2024
## Common starting points
2125

2226
These are examples, not required exact sequences. Use the smallest setup flow that matches the task.

0 commit comments

Comments
 (0)