📄 EXAMPLES.md 7,283 bytes Apr 27, 2026 📋 Raw

Browser Automation Examples

This document provides detailed examples of common browser automation tasks using the CLI tool.

Example 1: Extract Product Information from E-commerce

User request: "Go to example.com/product/123 and extract the product details"

Workflow:

  1. Navigate to the product page:
    bash browser navigate https://example.com/product/123

  2. Extract product data with schema:
    bash browser extract "Extract the product information" '{"productName": "string", "price": "number", "currency": "string", "inStock": "boolean", "rating": "number", "reviewCount": "number"}'

  3. Close the browser:
    bash browser close

Expected result: JSON object with product details that can be analyzed or stored.


Example 2: Fill Out and Submit a Contact Form

User request: "Fill out the contact form on example.com with my information"

Workflow:

  1. Navigate to contact page:
    bash browser navigate https://example.com/contact

  2. Act: Fill in name field:
    bash browser act "Fill in the name field with 'John Doe'"

  3. Act: Fill in email field:
    bash browser act "Fill in the email field with 'john.doe@example.com'"

  4. Act: Fill in message field:
    bash browser act "Fill in the message field with 'I would like to inquire about your services'"

  5. Act: Submit the form:
    bash browser act "Click the Submit button"

  6. Screenshot to capture confirmation:
    bash browser screenshot

  7. Close the browser:
    bash browser close


Example 3: Research and Summarize News Articles

User request: "Check the latest tech news on techcrunch.com and summarize the top stories"

Workflow:

  1. Navigate to news site:
    bash browser navigate https://techcrunch.com

  2. Extract article headlines and summaries:
    bash browser extract "Extract the top 5 article headlines and their summaries" '{"headlines": "string", "summary": "string", "author": "string", "publishedDate": "string"}'

  3. Close the browser:
    bash browser close

  4. Analyze and summarize the extracted data using Claude's text analysis capabilities.


Example 4: Login and Navigate Authenticated Area

User request: "Log into example.com and navigate to my dashboard"

Workflow:

  1. Navigate to login page:
    bash browser navigate https://example.com/login

  2. Act: Fill in username:
    bash browser act "Fill in the username field with 'myusername'"

  3. Act: Fill in password:
    bash browser act "Fill in the password field with 'mypassword'"

  4. Act: Click login button:
    bash browser act "Click the Login button"

  5. Act: Wait for page load:
    bash browser act "Wait for the page to fully load"

  6. Navigate to dashboard:
    bash browser navigate https://example.com/dashboard

  7. Screenshot the dashboard:
    bash browser screenshot

  8. Close the browser:
    bash browser close

Note: This example uses Chrome's user profile (.chrome-profile/) which may preserve session cookies between runs.


Example 5: Search and Collect Results

User request: "Search Google for 'best TypeScript practices' and get the top 5 results"

Workflow:

  1. Navigate to Google:
    bash browser navigate https://www.google.com

  2. Act: Perform search:
    bash browser act "Type 'best TypeScript practices' in the search box and press Enter"

  3. Act: Wait for results:
    bash browser act "Wait for search results to load"

  4. Extract search results:
    bash browser extract "Extract the top 5 search results" '{"title": "string", "url": "string", "snippet": "string"}'

  5. Close the browser:
    bash browser close


Example 6: Download a File

User request: "Download the PDF file from example.com/documents/report.pdf"

Workflow:

  1. Navigate to the file URL:
    bash browser navigate https://example.com/documents/report.pdf

  2. Act: Wait for download to start:
    bash browser act "Wait for 5 seconds for the download to complete"

  3. Close the browser:
    bash browser close

Note: Files are automatically downloaded to ./agent/downloads/ directory due to CDP configuration.


Example 7: Debugging a Page Issue

User request: "Check why the submit button isn't working on example.com/form"

Workflow:

  1. Navigate to the form page:
    bash browser navigate https://example.com/form

  2. Screenshot initial state:
    bash browser screenshot

  3. Observe available elements:
    bash browser observe "Find all buttons and their states"

  4. Observe form fields:
    bash browser observe "Find all form input fields and their required status"

  5. Act: Try filling required fields:
    bash browser act "Fill in all required fields with test data"

  6. Screenshot after filling:
    bash browser screenshot

  7. Observe button state again:
    bash browser observe "Check if the submit button is now enabled"

  8. Close the browser:
    bash browser close

Analyze the screenshots and observations to determine the issue.


Example 8: Multi-Page Data Collection

User request: "Extract product information from the first 3 pages of results on example.com/products"

Workflow:

  1. Navigate to products page:
    bash browser navigate https://example.com/products

  2. Extract products from page 1:
    bash browser extract "Extract all products on this page" '{"name": "string", "price": "number", "imageUrl": "string"}'

  3. Act: Click next page:
    bash browser act "Click the Next Page button"

  4. Extract products from page 2:
    bash browser extract "Extract all products on this page" '{"name": "string", "price": "number", "imageUrl": "string"}'

  5. Act: Click next page:
    bash browser act "Click the Next Page button"

  6. Extract products from page 3:
    bash browser extract "Extract all products on this page" '{"name": "string", "price": "number", "imageUrl": "string"}'

  7. Close the browser:
    bash browser close

Combine and process all extracted data.


Tips for Success

  • Be specific with natural language: "Click the blue Submit button in the footer" is better than "click submit". This is extremely important because there's much ambiguity in many websites.
  • Wait when needed: After navigation or actions that trigger page changes, explicitly wait
  • Use observe for discovery: When unsure what elements exist, use observe first
  • Take screenshots for debugging: Visual confirmation helps understand what the browser sees
  • Handle errors gracefully: If an action fails, try breaking it into smaller steps
  • Clean up resources: Always close the browser when done to free up system resources