← AI Tools
workflowbeginner

Stagehand v3

자연어 기반 브라우저 자동화 — act·extract·observe·agent 4대 프리미티브

- 4대 핵심 프리미티브 — `act()`, `extract()`, `observe()`, `agent()`: `act()`는 자연어 지시("로그인 버튼을 클릭해")로 단일 브라우저 액션을 실행하고, `extract()`는 Zod 스키마 기반으로 페이지에서 구조화된 데이터를 추출하며, `observe()`는 현재 페이지에서 실행 가능한 액션 목록을 사전 탐색하고, `agent()`는 다단계 워크플로우를 자율 실행. 이 네 가지를 조합해 결정적(deterministic) 단계 제어와 자율 에이전트 실행을 하나의 SDK로 통합 - v3 아키텍처 리라이트 — Playwright 내부 의존성 제거: v3에서 내부 Playwright 의존성을 완전히 제거하고 CDP(Chrome DevTools Protocol) 엔진을 직접 통신하는 구조로 전환. Playwright, Puppeteer, Patchright 중 선택하여 백엔드로 사용 가능. `act()`, `extract()`, `observe()` 전반에 걸쳐 20-40% 속도 향상 달성 - 3가지 에이전트 모드 — CUA, DOM, Hybrid: CUA(Computer Use Agent) 모드는 비전 기반 좌표 클릭으로 화면을 직접 인식, DOM 모드는 접근성 트리(Accessibility Tree) 분석으로 시맨틱 액션 실행, Hybrid 모드(v3.4.0부터 기본값)는 비전과 DOM을 결합하여 정확도와 속도를 동시에 확보. 비호환 모델은 자동으로 DOM 모드로 라우팅 - 멀티 LLM 프로바이더 지원: Vercel AI SDK 기반으로 OpenAI, Anthropic(Claude), Google Gemini 등 주요 프로바이더를 자유 전환. Computer Use API는 Anthropic, OpenAI, Google, Microsoft 모두 지원. Browserbase 사용 시 Model Gateway로 단일 API 키로 모든 지원 모델 접근 - 셀프힐링(Self-Healing) 자동화: 자연어 기반 지시는 런타임에 AI가 해석하므로 웹사이트 마크업이 변경되어도 스크립트가 자동 적응. CSS 셀렉터 하드코딩 방식 대비 유지보수 비용을 근본적으로 제거. v3에서 Shadow DOM(open/closed 모드 모두)과 iFrame 자동 트래버설 추가 - 액션 캐싱 시스템: Browserbase 서버사이드 캐시(지시 + 페이지 콘텐츠 기반 캐시 키, HIT 시 100ms 미만 응답)와 로컬 파일 캐시(`cacheDir` 설정) 이중 구조. v3의 자동 액션 캐싱은 CUA 실행을 추론 없는 결정적 스크립트로 자동 전환 가능 - v3 신규 non-AI 프리미티브: `page`, `locator`, `frameLocator`, `deepLocator`(iFrame + Shadow Root 교차 탐색) — AI 추론 없이 직접 DOM 제어가 필요한 경우 사용. 전통적 자동화 도구의 정밀성과 AI 유연성을 한 SDK 내에서 선택적으로 활용 - 커스텀 도구 및 MCP 통합: `agent()`에 사용자 정의 도구를 주입하여 이메일 발송, 외부 API 호출 등 브라우저 외 액션 수행 가능. MCP(Model Context Protocol) 서버 URL을 integrations 배열로 전달하여 외부 도구 생태계 즉시 연결 - 프레임워크 통합: CrewAI, LangChain JS, Playwright, Puppeteer, Selenium, Next.js/Vercel, Convex 등 주요 자동화·웹 프레임워크와 직접 연동. Bun 런타임도 v3부터 공식 지원

💻 필요한 컴퓨터 사양

🧠RAM

불필요 (모든 LLM 추론은 외부 API 프로바이더에 위임)

💾저장공간

npm 패키지 기준 수십 MB 수준. 로컬 캐시 활성화 시 캐시 파일 누적에 따라 추가 공간 필요 (수백 MB 이내)

설치법

### 4-1. Quick Start

```bash
# TypeScript — 프로젝트 스캐폴딩 (권장)
npx create-browser-app

# TypeScript — 기존 프로젝트에 추가
npm install @browserbasehq/stagehand

# Python
pip install stagehand
# 또는 uv 사용 시
uv pip install stagehand
```

### 4-2. 기본 사용 예시 (TypeScript)

```typescript
import { Stagehand } from "@browserbasehq/stagehand";
import { z } from "zod";

const stagehand = new Stagehand({ env: "LOCAL" });
await stagehand.init();
const page = stagehand.context.pages()[0];
await page.goto("https://github.com/browserbase");

// 단일 액션 실행
await stagehand.act("click on the stagehand repo");

// 구조화 데이터 추출 (Zod 스키마)
const { author, title } = await stagehand.extract(
  "extract the author and title of the PR",
  z.object({
    author: z.string().describe("The username of the PR author"),
    title: z.string().describe("The title of the PR"),
  }),
);

// 다단계 자율 에이전트
const agent = stagehand.agent({
  provider: "anthropic",
  model: "claude-sonnet-4-6",
});
await agent.execute("Get to the latest PR");
```

### 4-3. 환경 변수 설정

```bash
# .env 파일
BROWSERBASE_API_KEY=your_api_key   # Browserbase 클라우드 사용 시
OPENAI_API_KEY=your_key            # OpenAI 모델 사용 시
ANTHROPIC_API_KEY=your_key         # Anthropic 모델 사용 시
GOOGLE_API_KEY=your_key            # Gemini 모델 사용 시
```

🧬 바이오 활용

🔬

프로덕션 웹 스크래핑 파이프라인

API를 제공하지 않는 웹사이트에서 구조화된 데이터를 정기 수집하는 자동화 파이프라인 구축. `observe()`로 페이지 구조를 사전 탐색하고, `extract()`에 Zod 스키마를 전달하여 가격·재고·리뷰 등을 JSON 구조로 추출. 셀프힐링 기능으로 대상 사이트의 UI 변경에도 스크립트 수정 없이 지속 운영 가능. 캐시 HIT 시 100ms 미만 응답으로 대량 페이지 처리 시 토큰 비용을 최대 90% 절감

🧬

E2E 테스트 자동화 고도화

기존 Playwright/Selenium 테스트가 셀렉터 변경마다 깨지는 문제를 해결. "로그인 → 상품 검색 → 장바구니 추가 → 결제"와 같은 핵심 사용자 흐름을 자연어로 기술하면 AI가 런타임에 요소를 식별하여 실행. Hybrid 모드(v3.4.0 기본값)로 DOM 기반 빠른 결정적 테스트를 실행하고, 비호환 모델 사용 시 자동으로 DOM 모드로 폴백하여 안정성 확보

💊

브라우저 기반 RPA 에이전트

`agent()` 프리미티브에 커스텀 도구를 주입하여 브라우저 자동화와 비즈니스 로직을 통합한 RPA 에이전트 구축. 예: 매일 특정 포털에 로그인하여 보고서를 다운로드하고, 데이터를 추출한 뒤 이메일로 발송하는 워크플로우를 `agent()` 한 번의 호출로 자율 실행. MCP 통합으로 Slack 알림, 데이터베이스 저장 등 후속 액션도 에이전트 내에서 직접 처리

📄 공식문서🐙 GitHub

📝 업데이트 노트

  1. vstagehand-server-v3/v3.7.47/22/2026

    이번 업데이트에서는 OpenAI Chat Completions 형식을 지원하여, 연구자가 사용하는 다양한 LLM 엔드포인트를 더욱 유연하게 연결할 수 있게 되었어요. 덕분에 생명공학 데이터 분석에 특화된 맞춤형 모델을 Stagehand의 웹 자동화 워크플로우에 손쉽게 통합하여 활용할 수 있습니다. 또한 실험 경로(trajectories)를 그룹화하고 관리하는 기능이 개선되어, 복잡한 웹 기반 생물학적 데이터 수집 과정의 추적과 디버깅이 한층 정교해졌어요.

  2. vstagehand-server-v3/v3.7.37/16/2026

    Stagehand v3.7.3 업데이트에서는 데이터 추출(extract) 및 관찰(observe) 기능의 오류가 수정되어, 웹상의 논문이나 실험 데이터를 수집하는 자동화 작업이 더욱 안정적으로 수행될 수 있습니다. 최신 AI 모델들의 비용 정보가 업데이트됨에 따라, 연구 예산과 작업 복잡도에 맞춰 가장 효율적인 모델을 선택해 활용하기 좋아졌습니다. 또한 도메인 정책 설정 관련 문서가 보강되어, 특정 학술 사이트나 데이터베이스를 대상으로 하는 자동화 에이전트의 접근 제어를 더욱 정교하게 관리할 수 있습니다.

  3. v@browserbasehq/stagehand@3.7.07/13/2026

    Stagehand v3에서는 특정 도메인만 허용하거나 차단하는 정책 설정 기능이 추가되어, PubMed나 UniProt 같은 신뢰할 수 있는 학술 데이터베이스로만 탐색 범위를 안전하게 제한할 수 있습니다. 또한, 텍스트 데이터의 손상된 부분을 자동으로 복구하는 기능이 개선되어, 복잡한 단백질 서열이나 화학식 데이터를 수집할 때 발생할 수 있는 데이터 왜곡 오류를 방지합니다. 더불어 팝업 자동 차단 및 자동화 동작의 안정성이 향상되어, 웹 기반의 생물정보학 데이터 크롤링 작업을 더욱 정교하고 효율적으로 수행할 수 있습니다.

  4. vbrowse@0.9.06/25/2026

    `browse screenshot` 기능이 이제 base64 텍스트 대신 이미지 파일로 직접 저장되도록 변경되어, 웹 기반 실험 결과나 그래프의 시각적 기록을 관리하기 훨씬 편리해졌습니다. 윈도우 환경에서의 경로 인식 오류와 설치 중 무한 대기 문제가 해결되어, 자동화된 데이터 수집 및 모니터링 파이프라인의 안정성이 한층 강화되었습니다. 기존 스크립트와의 호환성을 위한 `--base64` 플래그도 유지되니, 연구 워크플로우에 맞춰 더욱 안정적인 데이터 아카이빙을 시작해 보세요.

  5. v@browserbasehq/stagehand@3.6.06/19/2026

    Stagehand v3에서는 Claude 모델의 지원이 강화되어, 복잡한 생물학적 데이터베이스로부터 구조화된 데이터를 더욱 정밀하게 추출할 수 있게 되었습니다. 또한 Azure OpenAI 인증 기능이 추가되어, 보안이 중요한 연구실 환경에서도 안전하게 AI 자동화 도구를 운용할 수 있습니다. 웹 요소 인식 및 캐싱 성능 개선을 통해, 다양한 과학 웹 사이트의 데이터를 수집하는 자동화 프로세스가 더욱 안정적이고 효율적으로 변할 것입니다.

  6. v@browserbasehq/stagehand@2.5.96/16/2026

    Stagehand v3는 팝업창 오류 해결과 데이터 추출 도구 업데이트를 통해 웹 자동화의 안정성과 정확도를 높였습니다. 특히 DOM 요청 시 재시도 로직이 강화되어, 대량의 학술 데이터나 실험 정보를 수집할 때 발생할 수 있는 연결 오류를 효과적으로 방지할 수 있습니다. 또한 Haiku 4.5 모델 지원이 추가되어 더욱 지능적인 웹 에이전트 활용이 가능해졌으니, 데이터 수집 자동화가 필요한 연구원님들께 유용한 업데이트입니다.

🧪 관련 생명의 코드

관련된 생명의 코드 글이 아직 없습니다.