Skip to content
Back to skills

Browser Control

ASecurity

Remote browser access for login, 2FA, captcha, and manual verification. Protected by Google OAuth - only the configured email can access. Use when you need the user to log into a website, complete 2FA/MFA, solve a captcha, or do any manual browser action.

  • 16 stars
  • 0 votes
  • 0 copies
  • 0 views
  • Added June 7, 2026
securityrustgobashsecurity

Works with

  • cli

Security analysis

A100/100

Pro scans all 6 files and shows the line behind each finding

Scanned June 7, 2026

npx -y skills add modbender/skill-library-mcp --skill browser-control --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of Browser Control?

Add the live security badge to your README. It updates with every re-scan.

Security grade badge for Browser Control
[![Security: A โ€” Skills Directory](https://www.skillsdirectory.com/api/skills/modbender-browser-control/badge)](https://www.skillsdirectory.com/skills/modbender-browser-control)

More formats (shields.io, HTML) on the badges page. Keep it an A: scan every change in CI with Pro.

Download with Pro
SKILL.md
---
name: browser-control
description: Remote browser access for login, 2FA, captcha, and manual verification. Protected by Google OAuth - only the configured email can access. Use when you need the user to log into a website, complete 2FA/MFA, solve a captcha, or do any manual browser action.
---

# Browser Control

Remote browser access for login, 2FA, captcha, and manual verification.
Protected by Google OAuth - the user must login with their Google account.

## Installation (First Time Only)

Before using this skill, run the installer to configure ngrok and Google OAuth:

```bash
bash ~/.openclaw/skills/browser-control/install.sh
```

The installer will:
1. Install dependencies (VNC, noVNC, ngrok)
2. Ask for your **ngrok authtoken** (get it from https://dashboard.ngrok.com/get-started/your-authtoken)
3. Verify your **Google account** (only this email will be able to access the browser)

This only needs to be done once per machine.

## When to use

When you need the user to:
- Log into a website
- Complete 2FA / MFA
- Solve a captcha
- Do any manual browser action

## Check if running

```bash
~/.openclaw/skills/browser-control/status.sh
```

Returns JSON with status of VNC, noVNC, and ngrok tunnel.

## Start if not running

```bash
~/.openclaw/skills/browser-control/start-tunnel.sh
```

Starts VNC + noVNC + ngrok tunnel with Google OAuth. Takes ~30 seconds.

## Get URL

**โš ๏ธ ALWAYS read this file fresh before sending the URL to the user. Never use cached values.**

```bash
cat ~/.openclaw/skills/browser-control/config.json
```

Returns:
```json
{
  "novncUrl": "https://xxx.ngrok.app/vnc.html?password=xxx&autoconnect=true",
  "tunnelUrl": "https://xxx.ngrok.app",
  "allowedEmail": "user@gmail.com",
  "cdpUrl": "http://localhost:9222"
}
```

The URL changes every time the tunnel restarts. Always read the file, don't trust memory.

## Workflow

1. Check status with `status.sh`
2. If not running, start with `start-tunnel.sh`
3. **Read `config.json` NOW** (not from memory!) for URL
4. Send user the link
5. User logs in with their Google account
6. User does the manual action (login, 2FA, etc.)
7. Wait for user to say "done"
8. Continue using browser via CDP (localhost:9222)

**Important:** The tunnel URL changes frequently. Always `cat config.json` right before sending the link.

## Example message to user

```
๐Ÿ” I need you to log in.

Open: https://xxx.ngrok.app/vnc.html?password=xxx&autoconnect=true

You'll need to sign in with your Google account.
Let me know when you're done!
```

**Note:** Do NOT mention passwords. The link includes auto-login. The user just needs to:
1. Click the link
2. Login with Google
3. Do the action
4. Tell you "done"

## Security

- Protected by Google OAuth
- Only the email configured during install can access
- No password to leak - authentication is via Google
- Tunnel URL changes on restart (adds obscurity)

## Stop when done (optional)

```bash
~/.openclaw/skills/browser-control/stop-tunnel.sh
```

## After server reboot

**The tunnel does NOT auto-start on reboot.** You must run `start-tunnel.sh` again.

Always check `status.sh` first before assuming the tunnel is running.

## Files

```
~/.openclaw/skills/browser-control/
โ”œโ”€โ”€ SKILL.md           # This file
โ”œโ”€โ”€ start-tunnel.sh    # Start everything
โ”œโ”€โ”€ stop-tunnel.sh     # Stop everything
โ”œโ”€โ”€ status.sh          # Check status
โ”œโ”€โ”€ config.json        # Current URL (read this before sending to user!)
โ”œโ”€โ”€ ngrok-config.json  # Configured email
โ”œโ”€โ”€ vnc-password       # VNC password (auto-included in URL)
โ””โ”€โ”€ ngrok.log          # ngrok logs
```

Files in this skill

  • SKILL.md3.7 KB
  • install.sh18.8 KB
  • start-chrome.sh533 B
  • start-tunnel.sh5.7 KB
  • status.sh1.3 KB
  • stop-tunnel.sh458 B

Attribution

Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.

Comments

Loading commentsโ€ฆ

Newsletter

Get the weekly list of safe new skills, and the ones we pulled.