@e2edev/agent-device 0.7.0 → 0.8.0-canary-20260914081513

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (2) hide show
  1. package/README.md +17 -17
  2. package/package.json +4 -4
package/README.md CHANGED
@@ -1,20 +1,20 @@
1
1
  # @e2edev/agent-device
2
2
 
3
- The mobile engine for [`@e2edev/e2e`](https://www.npmjs.com/package/@e2edev/e2e), built on
3
+ The mobile engine for [`e2e`](https://www.npmjs.com/package/e2e), built on
4
4
  [agent-device](https://github.com/callstack/agent-device): iOS simulators and
5
- Android emulators through the same `@e2edev/e2e/engine` contract the browser engine
5
+ Android emulators through the same `e2e/engine` contract the browser engine
6
6
  implements. A test written against `screen`, `expect`, `app`, and `agent` runs
7
7
  on a device target unchanged; nothing in `e2e` core knows this package exists.
8
8
 
9
9
  ## Install
10
10
 
11
- Run `npx @e2edev/e2e init` and choose **agent-device** for a Settings
11
+ Run `npx e2e init` and choose **agent-device** for a Settings
12
12
  example with optional AI testing. Init defaults to iOS on macOS and Android
13
13
  elsewhere; change the platform in `e2e.config.ts` when needed.
14
14
  Or add the packages to an existing project:
15
15
 
16
16
  ```bash
17
- npm install --save-dev @e2edev/e2e @e2edev/agent-device
17
+ npm install --save-dev e2e @e2edev/agent-device
18
18
  ```
19
19
 
20
20
  `agent-device` needs Xcode with an iOS simulator runtime, or the Android SDK
@@ -22,8 +22,8 @@ with an emulator. Run `npx agent-device doctor` once before handing the target
22
22
  to the runner.
23
23
 
24
24
  ```ts title="e2e.config.ts"
25
- import type { E2EConfig } from '@e2edev/e2e';
26
- import { createAgent } from '@e2edev/e2e/agent';
25
+ import type { E2EConfig } from 'e2e';
26
+ import { createAgent } from 'e2e/agent';
27
27
  import { agentDevice } from '@e2edev/agent-device';
28
28
  import { agentDeviceTools } from '@e2edev/agent-device/tools';
29
29
 
@@ -86,13 +86,13 @@ straight through, with no conditional spread.
86
86
  ## Trace cache
87
87
 
88
88
  The runner caches `agent.act` steps by their location anchor, and a device has
89
- no address bar. This engine reports one anyway: `app://device/<bundle
90
- id>/<screen title>`, with the title read off the navigation bar on iOS and the
91
- collapsing toolbar on Android. The cache compares pathnames, so the app
92
- identity is part of the path and two apps with a "General" screen never share
93
- an anchor. A step recorded on `/com.apple.preferences/General` replays only
94
- when that app is on that screen again, and a flow that stays within tap, type,
95
- and scroll replays with zero model calls. Pin `app` so every attempt starts on the same screen, and
89
+ no address bar. This engine reports one anyway: `<bundle id> / <screen
90
+ title>`, with the title read off the navigation bar on iOS and the collapsing
91
+ toolbar on Android. The app identity is part of the location, so two apps with
92
+ a "General" screen never share an anchor. A step recorded on
93
+ `com.apple.Preferences / General` replays only when that app is on that
94
+ screen again, and a flow that stays within tap, type, and scroll replays with
95
+ zero model calls. Pin `app` so every attempt starts on the same screen, and
96
96
  prefer the grammar over the `open_app` tool inside a step: a tool call is a
97
97
  replay gap.
98
98
 
@@ -103,7 +103,7 @@ Deterministic device management, recorded as `device.<method>` steps. Import
103
103
 
104
104
  ```ts
105
105
  import { test } from '@e2edev/agent-device';
106
- import { expect } from '@e2edev/e2e';
106
+ import { expect } from 'e2e';
107
107
 
108
108
  test('shows the version offline in dark mode', async ({ agent, device, screen }) => {
109
109
  await device.setAppearance('dark');
@@ -139,9 +139,9 @@ targets can hand the pack to one `createAgent`.
139
139
 
140
140
  ## Secrets
141
141
 
142
- Secret fills need an origin the runner can check, and an `app://` location has
143
- an opaque origin that no allowlist can name, so `type_secret` is denied on a
144
- device target before any plaintext reaches the device. Fill credentials
142
+ Secret fills need an origin the runner can check, and a device location is
143
+ not a URL, so it has no origin an allowlist can name: `type_secret` is denied
144
+ on a device target before any plaintext reaches the device. Fill credentials
145
145
  through a deterministic `screen` action in a setup step instead.
146
146
 
147
147
  ## Documentation
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@e2edev/agent-device",
3
- "version": "0.7.0",
3
+ "version": "0.8.0-canary-20260914081513",
4
4
  "description": "agent-device mobile engine (iOS and Android) for e2e agentic end-to-end testing",
5
5
  "keywords": [
6
6
  "e2e",
@@ -28,7 +28,7 @@
28
28
  "homepage": "https://github.com/tester-army/e2e/tree/main/packages/agent-device#readme",
29
29
  "publishConfig": {
30
30
  "registry": "https://registry.npmjs.org/",
31
- "access": "restricted",
31
+ "access": "public",
32
32
  "provenance": false,
33
33
  "tag": "beta"
34
34
  },
@@ -53,7 +53,7 @@
53
53
  "peerDependencies": {
54
54
  "agent-device": "0.21.x",
55
55
  "ai": "^7.0.0",
56
- "@e2edev/e2e": ">=0.9.0 <1"
56
+ "e2e": "0.15.0-canary-20260914081513"
57
57
  },
58
58
  "peerDependenciesMeta": {
59
59
  "ai": {
@@ -65,7 +65,7 @@
65
65
  "@types/pngjs": "6.0.5",
66
66
  "agent-device": "0.21.1",
67
67
  "ai": "7.0.97",
68
- "@e2edev/e2e": "0.14.0",
68
+ "e2e": "0.15.0-canary-20260914081513",
69
69
  "typescript": "7.0.2",
70
70
  "vitest": "5.0.0"
71
71
  },