All skills
wshaddix avatar

/agent-browser

@0d51225

Browser automation CLI for AI agents. Use when the user needs to interact with websites, including navigating pages, filling forms, clicking buttons, taking screenshots, extracting data, testing web apps, or automating any browser task. Triggers include requests to "open a website", "fill out a form", "click a button", "take a screenshot", "scrape data from a page", "test this web app", "login to a site", "automate browser actions", or any task requiring programmatic web interaction.

Use this Skill: https://skilld.dev/gh/wshaddix/dotnet-skills/agent-browser

This session only. Nothing lands on disk.

referencesproxy-support.md

≈1.2k tokens on demand. Your agent reads this file only when SKILL.md points to it.

Proxy Support

Proxy configuration for geo-testing, rate limiting avoidance, and corporate environments.

Related: commands.md for global options, SKILL.md for quick start.

Contents

Basic Proxy Configuration

Set proxy via environment variable before starting:

# HTTP proxy
export HTTP_PROXY="http://proxy.example.com:8080"
agent-browser open https://example.com

# HTTPS proxy
export HTTPS_PROXY="https://proxy.example.com:8080"
agent-browser open https://example.com

# Both
export HTTP_PROXY="http://proxy.example.com:8080"
export HTTPS_PROXY="http://proxy.example.com:8080"
agent-browser open https://example.com

Authenticated Proxy

For proxies requiring authentication:

# Include credentials in URL
export HTTP_PROXY="http://username:password@proxy.example.com:8080"
agent-browser open https://example.com

SOCKS Proxy

# SOCKS5 proxy
export ALL_PROXY="socks5://proxy.example.com:1080"
agent-browser open https://example.com

# SOCKS5 with auth
export ALL_PROXY="socks5://user:pass@proxy.example.com:1080"
agent-browser open https://example.com

Proxy Bypass

Skip proxy for specific domains:

# Bypass proxy for local addresses
export NO_PROXY="localhost,127.0.0.1,.internal.company.com"
agent-browser open https://internal.company.com  # Direct connection
agent-browser open https://external.com          # Via proxy

Common Use Cases

Geo-Location Testing

#!/bin/bash
# Test site from different regions using geo-located proxies

PROXIES=(
    "http://us-proxy.example.com:8080"
    "http://eu-proxy.example.com:8080"
    "http://asia-proxy.example.com:8080"
)

for proxy in "${PROXIES[@]}"; do
    export HTTP_PROXY="$proxy"
    export HTTPS_PROXY="$proxy"

    region=$(echo "$proxy" | grep -oP '^\w+-\w+')
    echo "Testing from: $region"

    agent-browser --session "$region" open https://example.com
    agent-browser --session "$region" screenshot "./screenshots/$region.png"
    agent-browser --session "$region" close
done

Rotating Proxies for Scraping

#!/bin/bash
# Rotate through proxy list to avoid rate limiting

PROXY_LIST=(
    "http://proxy1.example.com:8080"
    "http://proxy2.example.com:8080"
    "http://proxy3.example.com:8080"
)

URLS=(
    "https://site.com/page1"
    "https://site.com/page2"
    "https://site.com/page3"
)

for i in "${!URLS[@]}"; do
    proxy_index=$((i % ${#PROXY_LIST[@]}))
    export HTTP_PROXY="${PROXY_LIST[$proxy_index]}"
    export HTTPS_PROXY="${PROXY_LIST[$proxy_index]}"

    agent-browser open "${URLS[$i]}"
    agent-browser get text body > "output-$i.txt"
    agent-browser close

    sleep 1  # Polite delay
done

Corporate Network Access

#!/bin/bash
# Access internal sites via corporate proxy

export HTTP_PROXY="http://corpproxy.company.com:8080"
export HTTPS_PROXY="http://corpproxy.company.com:8080"
export NO_PROXY="localhost,127.0.0.1,.company.com"

# External sites go through proxy
agent-browser open https://external-vendor.com

# Internal sites bypass proxy
agent-browser open https://intranet.company.com

Verifying Proxy Connection

# Check your apparent IP
agent-browser open https://httpbin.org/ip
agent-browser get text body
# Should show proxy's IP, not your real IP

Troubleshooting

Proxy Connection Failed

# Test proxy connectivity first
curl -x http://proxy.example.com:8080 https://httpbin.org/ip

# Check if proxy requires auth
export HTTP_PROXY="http://user:pass@proxy.example.com:8080"

SSL/TLS Errors Through Proxy

Some proxies perform SSL inspection. If you encounter certificate errors:

# For testing only - not recommended for production
agent-browser open https://example.com --ignore-https-errors

Slow Performance

# Use proxy only when necessary
export NO_PROXY="*.cdn.com,*.static.com"  # Direct CDN access

Best Practices

  1. Use environment variables - Don't hardcode proxy credentials
  2. Set NO_PROXY appropriately - Avoid routing local traffic through proxy
  3. Test proxy before automation - Verify connectivity with simple requests
  4. Handle proxy failures gracefully - Implement retry logic for unstable proxies
  5. Rotate proxies for large scraping jobs - Distribute load and avoid bans

Source: SKILL.md on GitHub

2 warnings14d3 checks · Risk SAFE
  • Gen Agent Trust Hub14d

    The skill provides browser automation capabilities including web navigation, interaction, and data extraction. Key security considerations include the potential for indirect prompt injection from untrusted websites and the ability to access local files via specific flags, which could be leveraged for data exfiltration.

  • Socket14d

    1 alert: gptAnomaly

  • Snyk14d

    Risk: MEDIUM · 1 issue

Signed by skilld at 0d51225. This ties the file your Agent reads to that commit on GitHub. It does not review the instructions.

Last checked against GitHub 2 months ago.

Dormantupdated 8 months ago
What it can do
Runs commands
All 1 allowed tools
Bash(agent-browser:*)

README badge

README badge for wshaddix/dotnet-skills/agent-browser