
How to Use
About
Manage and operate BrowserWing — an intelligent browser automation platform. Install dependencies, configure LLM, create/manage/execute automation scripts, use AI-driven exploration to generate scripts, browse the script marketplace, and troubleshoot issues.
BrowserWing Admin Skill
Overview
BrowserWing is an intelligent browser automation platform that allows you to:
- Record, create, and replay browser automation scripts
- Use AI to autonomously explore websites and generate replayable scripts
- Execute scripts via HTTP API or MCP protocol
- Manage LLM configurations for AI-powered features
API Base URL: http://localhost:8080/api/v1
Authentication: Use X-BrowserWing-Key: <api-key> header or Authorization: Bearer <token>
1. Installing Google Chrome (Prerequisite)
BrowserWing requires Google Chrome to be installed on the host machine.
Linux (Debian/Ubuntu)
wget -q -O - https://dl-ssl.google.com/linux/linux_signing_key.pub | sudo apt-key add -
echo "deb [arch=amd64] http://dl.google.com/linux/chrome/deb/ stable main" | sudo tee /etc/apt/sources.list.d/google-chrome.list
sudo apt-get update
sudo apt-get install -y google-chrome-stable
macOS
brew install --cask google-chrome
Windows
Download and install from: https://www.google.com/chrome/
Verify Installation
google-chrome --version
# or on macOS:
# /Applications/Google\ Chrome.app/Contents/MacOS/Google\ Chrome --version
Using Remote Chrome (Alternative)
If Chrome is running on a remote machine with debugging enabled:
google-chrome --remote-debugging-port=9222 --remote-debugging-address=0.0.0.0 --no-sandbox
Then configure BrowserWing's config.toml:
[browser]
control_url = 'http://<remote-host>:9222'
2. LLM Configuration
AI features (AI Explorer, Agent chat, smart extraction) require an LLM configuration.
List LLM Configs
curl -X GET 'http://localhost:8080/api/v1/llm-configs'
Add LLM Config
curl -X POST 'http://localhost:8080/api/v1/llm-configs' \
-H 'Content-Type: application/json' \
-d '{
"name": "my-openai",
"provider": "openai",
"api_key": "sk-xxx",
"model": "gpt-4o",
"base_url": "https://api.openai.com/v1",
"is_active": true,
"is_default": true
}'
Supported providers: openai, anthropic, deepseek, or any OpenAI-compatible endpoint.
Test LLM Config
curl -X POST 'http://localhost:8080/api/v1/llm-configs/test' \
-H 'Content-Type: application/json' \
-d '{"name": "my-openai"}'
Update LLM Config
curl -X PUT 'http://localhost:8080/api/v1/llm-configs/<config-id>' \
-H 'Content-Type: application/json' \
-d '{"api_key": "sk-new-key", "model": "gpt-4o-mini"}'
Delete LLM Config
curl -X DELETE 'http://localhost:8080/api/v1/llm-configs/<config-id>'
3. AI Autonomous Exploration (Generate Scripts Automatically)
Use AI to browse a website, perform a task, and automatically generate a replayable script.
Start Exploration
curl -X POST 'http://localhost:8080/api/v1/ai-explore/start' \
-H 'Content-Type: application/json' \
-d '{
"task_desc": "Go to bilibili.com, search for 'AI', and get the first page of video results",
"start_url": "https://www.bilibili.com",
"llm_config_id": "my-openai"
}'
Response: Returns a session id for tracking.
Stream Exploration Events (SSE)
curl -N 'http://localhost:8080/api/v1/ai-explore/<session-id>/stream'
Returns real-time Server-Sent Events: thinking, tool_call, progress, error, script_ready, done.
Stop Exploration
curl -X POST 'http://localhost:8080/api/v1/ai-explore/<session-id>/stop'
Get Generated Script
curl -X GET 'http://localhost:8080/api/v1/ai-explore/<session-id>/script'
Save Generated Script
curl -X POST 'http://localhost:8080/api/v1/ai-explore/<session-id>/save'
Saves the generated script to the local script library for future replay.
4. Script Management
List All Scripts
curl -X GET 'http://localhost:8080/api/v1/scripts'
Returns all local scripts with their id, name, description, actions, tags, group, etc.
Get Script Details
curl -X GET 'http://localhost:8080/api/v1/scripts/<script-id>'
Get Script Schema / Summary
curl -X GET 'http://localhost:8080/api/v1/scripts/summary'
Returns a concise summary of all scripts, including names, descriptions, input parameters (variables), and action counts. Useful for programmatic discovery.
Create a New Script
curl -X POST 'http://localhost:8080/api/v1/scripts' \
-H 'Content-Type: application/json' \
-d '{
"name": "Search Bilibili",
"description": "Search for a keyword on Bilibili",
"url": "https://www.bilibili.com",
"actions": [
{"type": "navigate", "url": "https://www.bilibili.com"},
{"type": "click", "identifier": ".nav-search-input"},
{"type": "type", "identifier": ".nav-search-input", "value": "${keyword}"},
{"type": "press_key", "key": "Enter"},
{"type": "wait", "timeout": 3}
]
}'
Variables: Use `${variable_nam
