agent-browser 0.27.1 → 0.27.2

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.
package/README.md CHANGED
@@ -90,6 +90,10 @@ agent-browser screenshot page.png
90
90
  agent-browser close
91
91
  ```
92
92
 
93
+ Clicks fail early when another element covers the target's click point,
94
+ for example a consent banner or modal. Dismiss or interact with the reported
95
+ covering element, then take a fresh snapshot before retrying the original ref.
96
+
93
97
  Headless Chromium screenshots hide native scrollbars for consistent image output.
94
98
  Pass `--hide-scrollbars false` when launching to keep native scrollbars visible.
95
99
 
@@ -883,6 +887,10 @@ agent-browser get text @e1 # Get heading text
883
887
  agent-browser hover @e4 # Hover the link
884
888
  ```
885
889
 
890
+ When a ref click is blocked by an overlay, the error includes the covering
891
+ element, such as `covered by <div#consent-banner>`. Click the banner or dialog
892
+ control first, then run `snapshot` again before reusing refs.
893
+
886
894
  **Why use refs?**
887
895
 
888
896
  - **Deterministic**: Ref points to exact element from snapshot
Binary file
Binary file
Binary file
Binary file
Binary file
Binary file
Binary file
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "agent-browser",
3
- "version": "0.27.1",
3
+ "version": "0.27.2",
4
4
  "description": "Browser automation CLI for AI agents",
5
5
  "type": "module",
6
6
  "packageManager": "pnpm@11.1.3",
@@ -25,7 +25,7 @@
25
25
  "build:macos": "npm run version:sync && (cargo build --release --manifest-path cli/Cargo.toml --target aarch64-apple-darwin & cargo build --release --manifest-path cli/Cargo.toml --target x86_64-apple-darwin & wait) && cp cli/target/aarch64-apple-darwin/release/agent-browser bin/agent-browser-darwin-arm64 && cp cli/target/x86_64-apple-darwin/release/agent-browser bin/agent-browser-darwin-x64",
26
26
  "build:windows": "npm run version:sync && docker compose -f docker/docker-compose.yml run --rm build-windows",
27
27
  "build:all-platforms": "npm run version:sync && (npm run build:linux & npm run build:windows & wait) && npm run build:macos",
28
- "build:docker": "docker build -t agent-browser-builder -f docker/Dockerfile.build .",
28
+ "build:docker": "docker build --platform linux/amd64 -t agent-browser-builder -f docker/Dockerfile.build .",
29
29
  "release": "npm run version:sync && npm run build:all-platforms && npm publish",
30
30
  "postinstall": "node scripts/postinstall.js",
31
31
  "build:dashboard": "cd packages/dashboard && pnpm build"
@@ -1,5 +1,5 @@
1
1
  #!/bin/bash
2
- set -e
2
+ set -euo pipefail
3
3
 
4
4
  # Build agent-browser for all platforms using Docker
5
5
  # Usage: ./scripts/build-all-platforms.sh
@@ -22,21 +22,32 @@ mkdir -p "$OUTPUT_DIR"
22
22
 
23
23
  # Build the Docker image if needed
24
24
  echo -e "${YELLOW}Building Docker cross-compilation image...${NC}"
25
- docker build -t agent-browser-builder -f "$PROJECT_ROOT/docker/Dockerfile.build" "$PROJECT_ROOT"
25
+ docker build --platform linux/amd64 -t agent-browser-builder -f "$PROJECT_ROOT/docker/Dockerfile.build" "$PROJECT_ROOT"
26
26
 
27
27
  # Function to build for a target
28
28
  build_target() {
29
- local target=$1
30
- local output_name=$2
31
-
32
- echo -e "${YELLOW}Building for ${target}...${NC}"
33
-
29
+ local rust_target=$1
30
+ local build_target=$2
31
+ local output_name=$3
32
+
33
+ echo -e "${YELLOW}Building for ${build_target}...${NC}"
34
+
35
+ rm -f "$OUTPUT_DIR/$output_name"
36
+
34
37
  docker run --rm \
38
+ --platform linux/amd64 \
35
39
  -v "$PROJECT_ROOT/cli:/build" \
36
40
  -v "$OUTPUT_DIR:/output" \
37
41
  agent-browser-builder \
38
- -c "cargo zigbuild --release --target ${target} && cp /build/target/${target}/release/agent-browser* /output/${output_name} && chmod +x /output/${output_name} 2>/dev/null || true"
39
-
42
+ -c "set -euo pipefail
43
+ cargo zigbuild --release --target ${build_target}
44
+ source_path=/build/target/${rust_target}/release/agent-browser
45
+ if [ -f \"\$source_path.exe\" ]; then
46
+ source_path=\"\$source_path.exe\"
47
+ fi
48
+ cp \"\$source_path\" /output/${output_name}
49
+ chmod +x /output/${output_name} 2>/dev/null || true"
50
+
40
51
  if [ -f "$OUTPUT_DIR/$output_name" ]; then
41
52
  echo -e "${GREEN}✓ Built ${output_name}${NC}"
42
53
  else
@@ -47,25 +58,25 @@ build_target() {
47
58
 
48
59
  # Build for each platform
49
60
  # Linux x64
50
- build_target "x86_64-unknown-linux-gnu" "agent-browser-linux-x64"
61
+ build_target "x86_64-unknown-linux-gnu" "x86_64-unknown-linux-gnu.2.28" "agent-browser-linux-x64"
51
62
 
52
63
  # Linux ARM64
53
- build_target "aarch64-unknown-linux-gnu" "agent-browser-linux-arm64"
64
+ build_target "aarch64-unknown-linux-gnu" "aarch64-unknown-linux-gnu.2.28" "agent-browser-linux-arm64"
54
65
 
55
66
  # Windows x64
56
- build_target "x86_64-pc-windows-gnu" "agent-browser-win32-x64.exe"
67
+ build_target "x86_64-pc-windows-gnu" "x86_64-pc-windows-gnu" "agent-browser-win32-x64.exe"
57
68
 
58
69
  # macOS x64 (via zig for cross-compilation)
59
- build_target "x86_64-apple-darwin" "agent-browser-darwin-x64"
70
+ build_target "x86_64-apple-darwin" "x86_64-apple-darwin" "agent-browser-darwin-x64"
60
71
 
61
72
  # macOS ARM64 (via zig for cross-compilation)
62
- build_target "aarch64-apple-darwin" "agent-browser-darwin-arm64"
73
+ build_target "aarch64-apple-darwin" "aarch64-apple-darwin" "agent-browser-darwin-arm64"
63
74
 
64
75
  # Linux musl x64 (Alpine)
65
- build_target "x86_64-unknown-linux-musl" "agent-browser-linux-musl-x64"
76
+ build_target "x86_64-unknown-linux-musl" "x86_64-unknown-linux-musl" "agent-browser-linux-musl-x64"
66
77
 
67
78
  # Linux musl ARM64 (Alpine)
68
- build_target "aarch64-unknown-linux-musl" "agent-browser-linux-musl-arm64"
79
+ build_target "aarch64-unknown-linux-musl" "aarch64-unknown-linux-musl" "agent-browser-linux-musl-arm64"
69
80
 
70
81
  echo ""
71
82
  echo -e "${GREEN}Build complete!${NC}"
@@ -367,8 +367,9 @@ agent-browser snapshot -i
367
367
  ```
368
368
 
369
369
  **Click does nothing / overlay swallows the click**
370
- Some modals and cookie banners block other clicks. Snapshot, find the
371
- dismiss/close button, click it, then re-snapshot.
370
+ Some modals and cookie banners block other clicks. If `click` reports
371
+ `covered by <...>`, interact with that covering element first. Otherwise,
372
+ snapshot, find the dismiss/close button, click it, then re-snapshot.
372
373
 
373
374
  **Fill / type doesn't work**
374
375
  Some custom input components intercept key events. Try:
@@ -71,6 +71,11 @@ agent-browser drag @e1 @e2 # Drag and drop
71
71
  agent-browser upload @e1 file.pdf # Upload files
72
72
  ```
73
73
 
74
+ Clicks fail before dispatch when another element covers the target's click
75
+ point. The error names the covering element, for example
76
+ `covered by <div#consent-banner>`. Dismiss or interact with that element, run a
77
+ fresh snapshot, then retry the original action.
78
+
74
79
  ## Get Information
75
80
 
76
81
  ```bash