옵션
집집 Skill 웹 개발 browser

CLI 명령어를 통해 자연어를 사용하여 웹 브라우저 상호작용을 자동화합니다. CAPTCHA 해결, 주거용 프록시 및 세션 지속성을 지원하는 로컬 및 원격 Browserbase 세션을 지원합니다.

...모든 것을 확장하십시오
0
업데이트 된 시간 2026년 9월 30일

브라우저 자동화

Claude와 함께 browse CLI를 사용하여 브라우저 상호작용을 자동화합니다.

설정 확인

모든 브라우저 명령을 실행하기 전에 CLI가 사용 가능한지 확인합니다:

which browse || npm install -g browse

환경 선택 (로컬 vs 원격)

CLI는 명령별 명시적인 환경 플래그를 지원합니다. 아무 작업도 수행하지 않으면, BROWSERBASE_API_KEY가 설정된 경우 다음 세션은 Browserbase로 기본값이 설정되고, 그렇지 않은 경우 로컬로 기본값이 설정됩니다.

로컬 모드

  • browse open <url> --local</url>은 깨끗하고 격리된 로컬 브라우저를 시작합니다
  • browse open <url> --auto-connect</url>은 이미 실행 중인 디버깅 가능한 Chrome에 연결합니다; 디버깅 가능한 Chrome이 없는 경우 --local을 사용하십시오
  • browse open <url> --cdp <port></port></url>은 특정 CDP 대상에 연결합니다
  • 최적의 사용 사례: 개발, 로컬호스트, 신뢰할 수 있는 사이트, 재현 가능한 실행

원격 모드 (Browserbase)

  • browse open <url> --remote</url>은 Browserbase 세션을 시작합니다
  • 로컬 플래그가 없으면 BROWSERBASE_API_KEY가 설정된 경우 Browserbase도 기본값입니다
  • 제공 기능: Browserbase ID, 검증된 브라우저, 자동 CAPTCHA 해결, 주거용 프록시, 세션 지속성
  • 원격 모드를 사용해야 하는 경우: 대상 사이트에 봇 감지, CAPTCHA, IP 속도 제한, Cloudflare 보호 또는 지리적 접근이 필요한 경우
  • 자격 증명은 https://browserbase.com/settings에서 확인하십시오

언제 어떤 것을 선택할지

  • 반복 가능한 로컬 테스트 / 깨끗한 상태: browse open <url> --local</url>
  • 로컬 로그인/쿠키 재사용: browse open <url> --auto-connect</url>
  • 간단한 브라우징 (문서, 위키, 공개 API): 로컬 모드가 적합합니다
  • 보호된 사이트 (로그인 벽, CAPTCHA, 스크래핑 방지): 원격 모드를 사용하십시오
  • 로컬 모드가 봇 감지 또는 접근 거부로 실패하는 경우: 원격 모드로 전환하십시오

명령어

데몬이 시작된 후 대부분의 드라이버 명령은 로컬, 원격 및 CDP 세션 전반에서 작동합니다.

탐색

browse open <url>                        # URL로 이동
browse open <url> --local                # 깨끗한 로컬 브라우저에서 URL로 이동
browse open <url> --remote               # Browserbase 세션에서 URL로 이동
browse reload                            # 현재 페이지 새로고침
browse back                              # 뒤로 이동
browse forward                           # 앞으로 이동
</url></url></url>

페이지 상태 (스크린샷보다 스냅샷 선호)

browse snapshot                          # 요소 참조가 포함된 접근성 트리 가져오기 (빠름, 구조화됨)
browse screenshot --path <path>          # 시각적 스크린샷 촬영 (느림, 비전 토큰 사용)
browse get url                           # 현재 URL 가져오기
browse get title                         # 페이지 제목 가져오기
browse get text                # 텍스트 콘텐츠 가져오기 ("body"를 사용하여 모든 텍스트 가져오기)
browse get html                # 요소의 HTML 콘텐츠 가져오기
browse get value               # 폼 필드 값 가져오기
</path>

페이지 상태를 이해하기 위한 기본값으로 browse snapshot을 사용하십시오 — 이는 상호작용에 사용할 수 있는 요소 참조가 포함된 접근성 트리를 반환합니다. 레이아웃, 이미지, 디버깅 등 시각적 컨텍스트가 필요한 경우에만 browse screenshot을 사용하십시오.

상호작용

browse click <ref>                       # 스냅샷의 참조로 요소 클릭 (예: @0-5)
browse type <text>                       # 포커스된 요소에 텍스트 입력
browse fill  <value>           # 입력 채우기; Enter가 필요한 경우 --press-enter 추가
browse select  <values...>     # 드롭다운 옵션 선택
browse press <key>                       # 키 누르기 (Enter, Tab, Escape, Cmd+A 등)
browse mouse drag <fromx><fromy><tox><toy>  # 한 지점에서 다른 지점으로 드래그
browse mouse scroll <x><y><deltax><deltay>  # 좌표에서 스크롤
browse highlight               # 페이지의 요소 강조 표시
browse is visible              # 요소가 표시되는지 확인
browse is checked              # 요소가 선택되었는지 확인
browse wait <type> [arg]                 # 대기: 로드, 선택자, 시간 초과
</type></deltay></deltax></y></x></toy></tox></fromy></fromx></key></values...></value></text></ref>

세션 관리

browse stop                              # 브라우저 데몬 중지
browse status                            # 데몬 상태 및 해결된 모드 확인
browse tab list                          # 열린 모든 탭 목록
browse tab switch <index-or-target-id>   # 인덱스 또는 대상 ID로 탭 전환
browse tab close [index-or-target-id]    # 탭 닫기
</index-or-target-id>

일반적인 워크플로우

환경이 중요한 경우, 첫 번째 브라우저 명령에 --local, --remote, --auto-connect 또는 --cdp <port></port>을 붙이십시오.

  1. browse open <url> --local</url> 또는 browse open <url> --remote</url> — 페이지로 이동
  2. browse snapshot — 접근성 트리를 읽어서 페이지 구조를 이해하고 요소 참조 가져오기
  3. browse click <ref></ref> / browse type <text></text> / browse fill <value></value> — 스냅샷의 참조를 사용하여 상호작용
  4. browse snapshot — 작업이 성공했는지 확인
  5. 필요에 따라 3-4 반복
  6. browse stop — 완료 시 브라우저 닫기

빠른 예제

browse open https://example.com
browse snapshot                          # 페이지 구조 + 요소 참조 보기
browse click @0-5                        # 참조 0-5가 있는 요소 클릭
browse get title
browse stop

모드 비교

기능로컬Browserbase
속도더 빠름약간 느림
설정Chrome 필요API 키 필요
기존 로컬 쿠키 재사용`browse open --auto-connect` 사용 시N/A
검증된 브라우저아니요예 (ID를 통한 Browserbase 검증된 브라우저)
CAPTCHA 해결아니요예 (자동 reCAPTCHA/hCaptcha)
주거용 프록시아니요예 (201개국, 지리적 타겟팅)
세션 지속성아니요예 (컨텍스트를 통해 쿠키/인증 지속)
최적의 사용 사례개발/간단한 페이지보호된 사이트, Browserbase ID + 검증된 접근, 프로덕션 스크래핑

최적의 관행

  1. 로컬 전략을 신중하게 선택하십시오: 깨끗한 상태에는 browse open <url> --local</url>을, 기존 로컬 자격 증명에는 browse open <url> --auto-connect</url>을, 보호된 사이트에는 browse open <url> --remote</url>을 사용하십시오
  2. 상호작용하기 전에 항상 먼저 browse open을 수행하십시오
  3. 페이지 상태를 확인하려면 browse snapshot을 사용하십시오 — 빠르고 요소 참조를 제공합니다
  4. 시각적 컨텍스트가 필요한 경우에만 스크린샷을 촬영하십시오 (레이아웃 확인, 이미지, 디버깅)
  5. 클릭/상호작용을 위해 스냅샷의 참조를 사용하십시오 — 예: browse click @0-5
  6. 완료 시 browse stop을 수행하여 브라우저 세션을 정리하고 환경 오버라이드를 지우십시오

문제 해결

  • "활성 페이지 없음": browse stop을 실행한 후 browse status를 확인하십시오. 여전히 실행 중으로 표시되는 경우 pkill -f "browse.*daemon"으로 좀비 데몬을 종료한 후 browse open을 다시 시도하십시오
  • Chrome을 찾을 수 없음: Chrome을 설치하고, 이미 디버깅 가능한 Chrome이 실행 중인 경우 browse open <url> --auto-connect</url>을 사용하거나 browse open <url> --remote</url>으로 전환하십시오
  • 작업 실패: 사용 가능한 요소와 해당 참조를 보려면 browse snapshot을 실행하십시오
  • Browserbase 실패: API 키가 설정되어 있는지 확인하십시오

원격 모드로 전환

CAPTCHA(reCAPTCHA, hCaptcha, Turnstile), 봇 감지 페이지("브라우저 확인 중..."), HTTP 403/429, 콘텐츠가 있어야 하는 사이트의 빈 페이지 또는 사용자가 요청하는 것을 감지하면 원격 모드로 전환하십시오.

간단한 사이트(문서, 위키, 공개 API, 로컬호스트)에는 전환하지 마십시오.

browse open <url> --local          # 깨끗하고 격리된 로컬 브라우저
browse open <url> --auto-connect   # 기존 디버깅 가능한 Chrome에 연결
browse open <url> --remote         # Browserbase 세션
</url></url></url>

모드 플래그는 세션 시작 시 적용됩니다. browse stop 후 다음 시작은 환경 변수 기반 자동 감지로 돌아갑니다. 데몬이 실행되는 동안 browse status를 사용하여 해결된 모드와 대상을 검사하십시오.

자세한 예제는 EXAMPLES.md를 참조하십시오. API 레퍼런스는 REFERENCE.md를 참조하십시오.

GitHub에서 보기
---
name: browser
description: Automate web browser interactions using natural language via CLI commands. Supports local and remote Browserbase sessions with CAPTCHA solving, residential proxies, and session persistence.
license: MIT
---

# Browser Automation

Automate browser interactions using the browse CLI with Claude.

## Setup check

Before running any browser commands, verify the CLI is available:

```bash
which browse || npm install -g browse
```

## Environment Selection (Local vs Remote)

The CLI supports explicit per-command environment flags. If you do nothing, the next session defaults to Browserbase when `BROWSERBASE_API_KEY` is set and to local otherwise.

### Local mode
- `browse open <url> --local` starts a clean isolated local browser
- `browse open <url> --auto-connect` attaches to an already-running debuggable Chrome; use `--local` when no debuggable Chrome is available
- `browse open <url> --cdp <port|url>` attaches to a specific CDP target
- Best for: development, localhost, trusted sites, and reproducible runs

### Remote mode (Browserbase)
- `browse open <url> --remote` starts a Browserbase session
- Without a local flag, Browserbase is also the default when `BROWSERBASE_API_KEY` is set
- Provides: Browserbase Identity, Verified browsers, automatic CAPTCHA solving, residential proxies, session persistence
- **Use remote mode when:** the target site has bot detection, CAPTCHAs, IP rate limiting, Cloudflare protection, or requires geo-specific access
- Get credentials at https://browserbase.com/settings

### When to choose which
- **Repeatable local testing / clean state**: `browse open <url> --local`
- **Reuse your local login/cookies**: `browse open <url> --auto-connect`
- **Simple browsing** (docs, wikis, public APIs): local mode is fine
- **Protected sites** (login walls, CAPTCHAs, anti-scraping): use remote mode
- **If local mode fails** with bot detection or access denied: switch to remote mode

## Commands

Most driver commands work across local, remote, and CDP sessions after the daemon starts.

### Navigation
```bash
browse open <url>                        # Go to URL
browse open <url> --local                # Go to URL in a clean local browser
browse open <url> --remote               # Go to URL in a Browserbase session
browse reload                            # Reload current page
browse back                              # Go back in history
browse forward                           # Go forward in history
```

### Page state (prefer snapshot over screenshot)
```bash
browse snapshot                          # Get accessibility tree with element refs (fast, structured)
browse screenshot --path <path>          # Take visual screenshot (slow, uses vision tokens)
browse get url                           # Get current URL
browse get title                         # Get page title
browse get text <selector>               # Get text content (use "body" for all text)
browse get html <selector>               # Get HTML content of element
browse get value <selector>              # Get form field value
```

Use `browse snapshot` as your default for understanding page state — it returns the accessibility tree with element refs you can use to interact. Only use `browse screenshot` when you need visual context (layout, images, debugging).

### Interaction
```bash
browse click <ref>                       # Click element by ref from snapshot (e.g., @0-5)
browse type <text>                       # Type text into focused element
browse fill <selector> <value>           # Fill input; add --press-enter if Enter is needed
browse select <selector> <values...>     # Select dropdown option(s)
browse press <key>                       # Press key (Enter, Tab, Escape, Cmd+A, etc.)
browse mouse drag <fromX> <fromY> <toX> <toY>  # Drag from one point to another
browse mouse scroll <x> <y> <deltaX> <deltaY>  # Scroll at coordinates
browse highlight <selector>              # Highlight element on page
browse is visible <selector>             # Check if element is visible
browse is checked <selector>             # Check if element is checked
browse wait <type> [arg]                 # Wait for: load, selector, timeout
```

### Session management
```bash
browse stop                              # Stop the browser daemon
browse status                            # Check daemon status and resolved mode
browse tab list                          # List all open tabs
browse tab switch <index-or-target-id>   # Switch to tab by index or target ID
browse tab close [index-or-target-id]    # Close tab
```

### Typical workflow
If the environment matters, put `--local`, `--remote`, `--auto-connect`, or `--cdp <port|url>` on the first browser command.

1. `browse open <url> --local` or `browse open <url> --remote` — navigate to the page
2. `browse snapshot` — read the accessibility tree to understand page structure and get element refs
3. `browse click <ref>` / `browse type <text>` / `browse fill <selector> <value>` — interact using refs from snapshot
4. `browse snapshot` — confirm the action worked
5. Repeat 3-4 as needed
6. `browse stop` — close the browser when done

## Quick Example

```bash
browse open https://example.com
browse snapshot                          # see page structure + element refs
browse click @0-5                        # click element with ref 0-5
browse get title
browse stop
```

## Mode Comparison

| Feature | Local | Browserbase |
|---------|-------|-------------|
| Speed | Faster | Slightly slower |
| Setup | Chrome required | API key required |
| Reuse existing local cookies | With `browse open <url> --auto-connect` | N/A |
| Verified browser | No | Yes (Browserbase Verified browser via Identity) |
| CAPTCHA solving | No | Yes (automatic reCAPTCHA/hCaptcha) |
| Residential proxies | No | Yes (201 countries, geo-targeting) |
| Session persistence | No | Yes (cookies/auth persist via contexts) |
| Best for | Development/simple pages | Protected sites, Browserbase Identity + Verified access, production scraping |

## Best Practices

1. **Choose the local strategy deliberately**: use `browse open <url> --local` for clean state, `browse open <url> --auto-connect` for existing local credentials, and `browse open <url> --remote` for protected sites
2. **Always `browse open` first** before interacting
3. **Use `browse snapshot`** to check page state — it's fast and gives you element refs
4. **Only screenshot when visual context is needed** (layout checks, images, debugging)
5. **Use refs from snapshot** to click/interact — e.g., `browse click @0-5`
6. **`browse stop`** when done to clean up the browser session and clear the env override

## Troubleshooting

- **"No active page"**: Run `browse stop`, then check `browse status`. If it still says running, kill the zombie daemon with `pkill -f "browse.*daemon"`, then retry `browse open`
- **Chrome not found**: Install Chrome, use `browse open <url> --auto-connect` if you already have a debuggable Chrome running, or switch to `browse open <url> --remote`
- **Action fails**: Run `browse snapshot` to see available elements and their refs
- **Browserbase fails**: Verify API key is set

## Switching to Remote Mode

Switch to remote when you detect: CAPTCHAs (reCAPTCHA, hCaptcha, Turnstile), bot detection pages ("Checking your browser..."), HTTP 403/429, empty pages on sites that should have content, or the user asks for it.

Don't switch for simple sites (docs, wikis, public APIs, localhost).

```bash
browse open <url> --local          # clean isolated local browser
browse open <url> --auto-connect   # attach to existing debuggable Chrome
browse open <url> --remote         # Browserbase session
```

Mode flags are applied when a session starts. After `browse stop`, the next start falls back to env-var-based auto detection. Use `browse status` to inspect the resolved mode and target while the daemon is running.

For detailed examples, see [EXAMPLES.md](EXAMPLES.md).
For API reference, see [REFERENCE.md](REFERENCE.md).

모든 파일

4개 파일

browser 설치

스킬 파일을 다운로드하여 .claude/skills/ 디렉토리에 추출하세요.

ZIP 다운로드

저장소를 클론하고 스킬 파일을 프로젝트에 복사하세요.

git clone https://github.com/browserbase/skills/tree/main/skills/browser # Copy SKILL.md to your .claude/skills/ directory

복사 복사
빠른 설정: 스킬 폴더를 .claude/skills/에 복사하세요. Claude가 자동으로 감지하고 사용합니다.
저장소 browserbase/skills

관련 스킬

github-code-search
업데이트 된 시간 2026년 6월 29일
drizzle-orm
업데이트 된 시간 2026년 6월 29일
prisma-client-api
업데이트 된 시간 2026년 6월 29일
clickhouse-io
업데이트 된 시간 2026년 6월 29일
OR