{"bin":{"agent-device":"bin/agent-device.mjs"},"bugs":{"url":"https://github.com/callstack/agent-device/issues"},"dist":{"shasum":"67715507e377c00abe3173e319407472d3f8a01b","tarball":"https://registry.npmjs.org/agent-device/-/agent-device-0.20.10.tgz","fileCount":319,"integrity":"sha512-baj3tQQ1JH/FbJ3x3FVmSn4nctOlFmdYsiz4LNZh3rEOj/8g3hkIq07lcUii07lMSQ7hCiY1m8+SyWPAX1ykow==","signatures":[{"sig":"MEQCIEXXN8DxVV6TSYXRCBtKsdyWSSRvd/br7MJGFZKAT6r6AiAM43Kwf4nq1+KcS2o0hsjabX4yZ+Xtj5NDI6CR49jciw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":3121970},"main":"dist/src/index.js","name":"agent-device","type":"module","types":"dist/src/index.d.ts","author":{"name":"Callstack"},"engines":{"node":">=22.12"},"exports":{".":{"types":"./dist/src/index.d.ts","import":"./dist/src/index.js"},"./io":{"types":"./dist/src/io.d.ts","import":"./dist/src/io.js"},"./batch":{"types":"./dist/src/batch.d.ts","import":"./dist/src/batch.js"},"./metro":{"types":"./dist/src/metro.d.ts","import":"./dist/src/metro.js"},"./ai-sdk":{"types":"./dist/src/ai-sdk.d.ts","import":"./dist/src/ai-sdk.js"},"./limrun":{"types":"./dist/src/limrun.d.ts","import":"./dist/src/limrun.js"},"./finders":{"types":"./dist/src/finders.d.ts","import":"./dist/src/finders.js"},"./artifacts":{"types":"./dist/src/artifacts.d.ts","import":"./dist/src/artifacts.js"},"./contracts":{"types":"./dist/src/contracts.d.ts","import":"./dist/src/contracts.js"},"./selectors":{"types":"./dist/src/selectors.d.ts","import":"./dist/src/selectors.js"},"./android-adb":{"types":"./dist/src/android-adb.d.ts","import":"./dist/src/android-adb.js"},"./remote-config":{"types":"./dist/src/remote-config.d.ts","import":"./dist/src/remote-config.js"},"./install-source":{"types":"./dist/src/install-source.d.ts","import":"./dist/src/install-source.js"}},"gitHead":"fda81c5121f0a4307966040c763bfb5edf0ccdf3","license":"MIT","mcpName":"io.github.callstack/agent-device","scripts":{"ad":"node bin/agent-device.mjs","gate":"node --experimental-strip-types scripts/gate/run.ts","lint":"oxlint . --deny-warnings","perf":"node --experimental-strip-types scripts/perf/run.ts","size":"node scripts/size-report.mjs","test":"pnpm test:unit","build":"tsdown","check":"pnpm check:tooling && pnpm check:fallow && pnpm check:unit","format":"node ./node_modules/oxfmt/bin/oxfmt --write","prepack":"pnpm check:mcp-metadata && pnpm package:npm","version":"pnpm sync:mcp-metadata && git add server.json","depgraph":"node --experimental-strip-types scripts/depgraph/build.ts","test:unit":"vitest run --project unit-core --project subprocess-stub","typecheck":"tsc -b packages/xml packages/kernel packages/contracts packages/capture-kit packages/platform-apple packages/platform-android packages/platform-harmonyos packages/platform-vega packages/platform-linux packages/platform-web packages/ad-script packages/selectors packages/ad-replay packages/maestro packages/replay-test packages/provider-webdriver packages/provider-limrun && tsc -p tsconfig.json && tsc -p examples/sdk/tsconfig.json","check:unit":"pnpm test:unit && pnpm check:tmpdir-leaks && pnpm test:smoke","fallow:all":"fallow --summary","test:smoke":"node --experimental-strip-types scripts/node-test-tmpdir.ts --test test/integration/smoke-*.test.ts","check:quick":"pnpm lint && pnpm typecheck","package:npm":"pnpm build:package && pnpm check:package","rebuild:cli":"pnpm build && pnpm clean:daemon","check:fallow":"fallow audit","clean:daemon":"node --experimental-strip-types scripts/clean-daemon.ts","format:check":"node ./node_modules/oxfmt/bin/oxfmt --check","fuzz:parsers":"node --experimental-strip-types scripts/fuzz/run.ts","mutation:run":"node --experimental-strip-types scripts/mutation/run.ts","test-app:ios":"pnpm --dir examples/test-app ios","build:android":"pnpm package:android-snapshot-helper:npm && pnpm package:android-ime-helper:npm","build:package":"pnpm build && pnpm build:xcuitest:ios && pnpm build:xcuitest:macos && pnpm build:xcuitest:tvos && pnpm build:xcuitest:visionos && pnpm build:macos-helper:clean && pnpm package:apple-runner:npm && pnpm build:android","check:package":"node --experimental-strip-types scripts/check-package.ts","check:tooling":"pnpm format:check && pnpm lint && pnpm typecheck && pnpm check:layering && pnpm depgraph:test && pnpm check:gate-manifest:test && pnpm check:gate-manifest && pnpm check:production-exports && pnpm check:tmpdir-leaks:test && pnpm check:xctest-selection && pnpm check:mcp-metadata && pnpm build && pnpm check:bundle-owner-files && pnpm check:package","depgraph:test":"node --experimental-strip-types scripts/node-test-tmpdir.ts --experimental-strip-types --test scripts/depgraph/model.test.ts scripts/depgraph/affected.test.ts","mutation:test":"node --experimental-strip-types scripts/node-test-tmpdir.ts --experimental-strip-types --test scripts/mutation/*.test.ts","test:coverage":"vitest run --coverage","build:xcuitest":"pnpm build:xcuitest:ios && pnpm build:xcuitest:macos","check:affected":"node --experimental-strip-types scripts/check-affected/run.ts","check:layering":"node --experimental-strip-types scripts/node-test-tmpdir.ts --experimental-strip-types --test scripts/layering/*.test.ts && node --experimental-strip-types scripts/layering/check.ts","clean:xcuitest":"node scripts/clean-xcuitest-derived.mjs","mutation:check":"node --experimental-strip-types scripts/mutation/run.ts --no-run","test-app:start":"pnpm --dir examples/test-app start","test:smoke:web":"pnpm build && node --experimental-strip-types scripts/node-test-tmpdir.ts --test test/integration/smoke-web-platform.test.ts","check:freerange":"fr","explain:command":"node --experimental-strip-types scripts/explain-command.ts","fallow:baseline":"fallow dead-code --save-baseline fallow-baselines/dead-code.json --summary && fallow health --report-only --save-baseline fallow-baselines/health.json --summary","release:prepare":"rm -rf .tmp/release && pnpm check:mcp-metadata && pnpm build:package && pnpm check:package -- --pack-destination .tmp/release","release:publish":"pnpm release:prepare && npm publish --ignore-scripts .tmp/release/*.tgz","test:replay:ios":"node --experimental-strip-types src/bin.ts test test/integration/replays/ios/simulator","daemon:state-dir":"node --experimental-strip-types scripts/print-daemon-state-dir.ts","test-app:android":"pnpm --dir examples/test-app android","test-app:install":"pnpm install --dir examples/test-app","test-app:maestro":"node scripts/run-test-app-maestro-suite.mjs","test:coverage:ci":"vitest run --coverage","test:integration":"pnpm test:integration:node && pnpm test:integration:provider","mutation:affected":"node --experimental-strip-types scripts/mutation/run.ts --affected","sync:mcp-metadata":"node scripts/sync-mcp-metadata.mjs","test:replay:linux":"node --experimental-strip-types src/bin.ts test test/integration/replays/linux","test:replay:macos":"node --experimental-strip-types src/bin.ts test test/integration/replays/macos","build:macos-helper":"node --experimental-strip-types scripts/swift-toolchain-tmpdir.ts swift build -c release --package-path apple/macos-helper","build:xcuitest:ios":"AGENT_DEVICE_XCUITEST_PLATFORM=ios sh ./scripts/build-xcuitest-apple.sh","check:command-docs":"vitest run --project unit-core src/__tests__/command-doc-coverage.test.ts","check:mcp-metadata":"node scripts/sync-mcp-metadata.mjs --check","check:tmpdir-leaks":"node --experimental-strip-types scripts/check-tmpdir-leaks.ts","clean:xcuitest:ios":"node scripts/clean-xcuitest-derived.mjs ios","test-app:typecheck":"pnpm --dir examples/test-app typecheck","test:fixture-cache":"node --experimental-strip-types scripts/node-test-tmpdir.ts --test test/ci/trusted-fixture-artifact.test.mjs","build:xcuitest:tvos":"AGENT_DEVICE_XCUITEST_PLATFORM=tvos sh ./scripts/build-xcuitest-apple.sh","check:affected:test":"node --experimental-strip-types scripts/node-test-tmpdir.ts --experimental-strip-types --test scripts/check-affected/model.test.ts scripts/check-affected/platform-packages.test.ts scripts/check-affected/run.test.ts","check:gate-manifest":"node --experimental-strip-types scripts/gate/check.ts","check:replay-compat":"node --experimental-strip-types scripts/check-replay-compat-provenance.ts","clean:xcuitest:tvos":"node scripts/clean-xcuitest-derived.mjs tvos","maestro:conformance":"node --experimental-strip-types scripts/node-test-tmpdir.ts --experimental-strip-types --test packages/maestro/test/conformance/verify.test.ts packages/maestro/test/conformance/differential/run.test.ts packages/maestro/test/conformance/differential/invariants.test.ts","test-app:replay:ios":"pnpm ad test examples/test-app/replays --platform ios --artifacts-dir .tmp/test-app-replay/ios","test:maestro-compat":"vitest run --project unit-core packages/maestro src/daemon/adapters/maestro src/compat/__tests__/replay-input.test.ts","test:output-economy":"vitest run --project output-economy","test:replay:android":"node --experimental-strip-types src/bin.ts test test/integration/replays/android/emulator","build:xcuitest:macos":"AGENT_DEVICE_XCUITEST_PLATFORM=macos sh ./scripts/build-xcuitest-apple.sh","clean:xcuitest:macos":"node scripts/clean-xcuitest-derived.mjs macos","test-app:maestro:ios":"pnpm test-app:maestro --platform ios","test:fixture-fallback":"sh ./test/scripts/setup-fixture-app-fallback-smoke.sh","test:integration:node":"node --experimental-strip-types scripts/node-test-tmpdir.ts --test --experimental-test-isolation=none test/integration/*.test.ts","bench:help-conformance":"node scripts/help-conformance-bench.mjs","check:coverage-changed":"node --experimental-strip-types scripts/coverage-changed/run.ts","check:xctest-selection":"node --experimental-strip-types scripts/check-xctest-selection.ts","test:replay:ios-device":"node --experimental-strip-types src/bin.ts test test/integration/replays/ios/device","build:xcuitest:visionos":"AGENT_DEVICE_XCUITEST_PLATFORM=visionos sh ./scripts/build-xcuitest-apple.sh","check:tmpdir-leaks:test":"node --experimental-strip-types scripts/node-test-tmpdir.ts --experimental-strip-types --test scripts/check-tmpdir-leaks-model.test.ts scripts/vitest-tmpdir-global-setup.test.ts scripts/node-test-tmpdir.test.ts scripts/swift-toolchain-tmpdir.test.ts","clean:xcuitest:visionos":"node scripts/clean-xcuitest-derived.mjs visionos","test-app:replay:android":"pnpm ad test examples/test-app/replays --platform android --artifacts-dir .tmp/test-app-replay/android","build:android-ime-helper":"AGENT_DEVICE_ANDROID_HELPER=ime sh ./scripts/build-android-helper.sh $(node -p \"require('./package.json').version\") .tmp/android-ime-helper","build:macos-helper:clean":"node --experimental-strip-types scripts/swift-toolchain-tmpdir.ts swift package --package-path apple/macos-helper clean && pnpm build:macos-helper","build:xcuitest:ios:clean":"pnpm clean:xcuitest:ios && pnpm build:xcuitest:ios","check:bundle-owner-files":"node --experimental-strip-types scripts/check-bundle-owner-files.ts","check:daemon-wire-compat":"node --experimental-strip-types scripts/wire-compat/run.ts","check:gate-manifest:test":"node --experimental-strip-types scripts/node-test-tmpdir.ts --experimental-strip-types --test scripts/gate/*.test.ts","check:production-exports":"fallow dead-code --config fallow-production-exports.json --production --unused-exports --fail-on-issues","package:apple-runner:npm":"node scripts/package-apple-runner-source.mjs","test-app:maestro:android":"pnpm test-app:maestro --platform android","test:concurrency-torture":"node --experimental-strip-types scripts/node-test-tmpdir.ts --test test/integration/nightly/concurrency-torture.test.ts","build:xcuitest:tvos:clean":"pnpm clean:xcuitest:tvos && pnpm build:xcuitest:tvos","test:integration:progress":"node --experimental-strip-types scripts/integration-progress.ts","test:integration:provider":"vitest run --project provider-integration","build:xcuitest:macos:clean":"pnpm clean:xcuitest:macos && pnpm build:xcuitest:macos","package:android-ime-helper":"AGENT_DEVICE_ANDROID_HELPER=ime sh ./scripts/package-android-helper.sh $(node -p \"require('./package.json').version\") .tmp/android-ime-helper","check:coverage-changed:test":"node --experimental-strip-types scripts/node-test-tmpdir.ts --experimental-strip-types --test scripts/coverage-changed/model.test.ts scripts/coverage-changed/run.test.ts","build:android-snapshot-helper":"AGENT_DEVICE_ANDROID_HELPER=snapshot sh ./scripts/build-android-helper.sh $(node -p \"require('./package.json').version\") .tmp/android-snapshot-helper","build:xcuitest:visionos:clean":"pnpm clean:xcuitest:visionos && pnpm build:xcuitest:visionos","check:daemon-wire-compat:test":"node --experimental-strip-types scripts/node-test-tmpdir.ts --experimental-strip-types --test scripts/wire-compat/model.test.ts","maestro:conformance:regenerate":"node --experimental-strip-types scripts/maestro-conformance/regenerate.mjs","package:android-ime-helper:npm":"rm -rf android/ime-helper/dist && AGENT_DEVICE_ANDROID_HELPER=ime sh ./scripts/package-android-helper.sh $(node -p \"require('./package.json').version\") android/ime-helper/dist","package:android-snapshot-helper":"AGENT_DEVICE_ANDROID_HELPER=snapshot sh ./scripts/package-android-helper.sh $(node -p \"require('./package.json').version\") v$(node -p \"require('./package.json').version\") .tmp/android-snapshot-helper","test:integration:progress:check":"node --experimental-strip-types scripts/integration-progress.ts --check","maestro:conformance:differential":"node --experimental-strip-types packages/maestro/test/conformance/differential/run.ts","package:android-snapshot-helper:npm":"rm -rf android/snapshot-helper/dist && AGENT_DEVICE_ANDROID_HELPER=snapshot sh ./scripts/package-android-helper.sh $(node -p \"require('./package.json').version\") v$(node -p \"require('./package.json').version\") android/snapshot-helper/dist"},"_npmUser":{"name":"thymikee","email":"thymikee@gmail.com"},"homepage":"https://agent-device.dev/","keywords":["agent","device","cli","automation","adb","simctl","devicectl","ios","android","tvos","macos","web","browser","react-native","observability","diagnostics","network","profiling","performance","mcp","model-context-protocol","mcp-server","ai-agent","mobile-automation","ios-simulator","android-emulator","xcuitest","e2e-testing","cursor","claude-code","expo","mobile-testing","qa-automation","ai-testing","ios-automation","android-automation","simulator","emulator","appium","maestro","detox"],"repository":{"url":"git+https://github.com/callstack/agent-device.git","type":"git"},"_npmVersion":"11.13.0","description":"Mobile app automation and verification for AI coding agents. CLI, MCP server, and typed Node.js API for iOS, Android, HarmonyOS, TV, web, macOS, and Linux.","directories":{},"maintainers":[{"name":"thymikee","email":"thymikee@gmail.com"}],"_nodeVersion":"26.1.0","dependencies":{"yaml":"^2.9.0","yauzl":"^3.4.0","undici":"7.29.0","ipaddr.js":"^2.5.0","tar-stream":"^3.2.0","@limrun/api":"^0.24.5"},"_hasShrinkwrap":false,"packageManager":"pnpm@11.17.0","devDependencies":{"ai":"^7.0.66","vite":"^8.0.16","oxfmt":"^0.42.0","pngjs":"^7.0.0","fallow":"^2.95.0","oxlint":"^1.69.0","tsdown":"^0.22.4","vitest":"^4.1.8","publint":"^0.3.22","fast-check":"^4.9.0","oxc-parser":"^0.138.0","typescript":"^7.0.2","@types/node":"^22.19.21","@types/pngjs":"^6.0.5","@types/yauzl":"^2.10.3","@agent-device/xml":"workspace:*","@types/tar-stream":"^3.1.4","@types/json-schema":"^7.0.15","@chenglou/freerange":"^0.0.1","@vitest/coverage-v8":"4.1.8","@agent-device/kernel":"workspace:*","@agent-device/maestro":"workspace:*","@arethetypeswrong/cli":"^0.18.5","@stryker-mutator/core":"9.6.1","@agent-device/ad-replay":"workspace:*","@agent-device/ad-script":"workspace:*","@agent-device/contracts":"workspace:*","@agent-device/selectors":"workspace:*","@agent-device/capture-kit":"workspace:*","@agent-device/replay-test":"workspace:*","@agent-device/platform-web":"workspace:*","@agent-device/platform-vega":"workspace:*","@agent-device/platform-apple":"workspace:*","@agent-device/platform-linux":"workspace:*","@agent-device/provider-limrun":"workspace:*","@agent-device/platform-android":"workspace:*","@stryker-mutator/vitest-runner":"9.6.1","@agent-device/platform-harmonyos":"workspace:*","@agent-device/provider-webdriver":"workspace:*"},"peerDependencies":{"ai":"^6.0.0 || ^7.0.0"},"peerDependenciesMeta":{"ai":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/agent-device_0.20.10_1787081592207_0.6010590150225539","host":"s3://npm-registry-packages-npm-production"},"_id":"agent-device@0.20.10","version":"0.20.10"}