> Supercharge Playwright with AI commands. Use Skyvern's Python & TypeScript SDKs, REST API, or self-host with Docker. Open source, SOC2 compliant, MCP-ready.

[23.0K Stars — See What the Hype's About](https://github.com/Skyvern-AI/skyvern)

# The AI browser automation SDK that extends Playwright

Drop-in AI commands on top of Playwright. Use natural language to act, extract, and validate — or fall back to selectors. Python & TypeScript SDKs. Self-host or use cloud.

Start Building

Python & TypeScript Playwright compatible AGPL-3.0 License

automate.py

1

  

3

4

5

  

7

8

9

## Playwright, supercharged with AI

AI commands added directly to the Playwright page object. Use selectors when you want, natural language when you need, or both as a fallback.

Python TypeScript

1from skyvern import Skyvern

2

3skyvern = Skyvern(api\_key\="YOUR\_API\_KEY")

4browser = await skyvern.launch\_cloud\_browser()

5page = await browser.get\_working\_page()

6

7await page.goto("https://example.com")

8await page.act("Log in and navigate to orders")

9data = await page.extract("Get order details",

10    schema\={"order\_id": "string", "total": "number"})

11is\_done = await page.validate("Order confirmed?")

12await page.agent.run\_task("Download all invoices as PDF")

`page.goto(url)`

Navigate to any URL

"https://example.com"

`page.act(prompt)`

Perform actions using natural language

"Click login and wait for dashboard"

`page.extract(prompt, schema)`

Extract structured data with optional JSON schema

"Get product name and price"

`page.validate(prompt)`

Check page state, returns boolean

"Is the user logged in?"

`page.agent.run_task(prompt)`

Run a multi-step task end-to-end

"Download all invoices as PDF"

Traditional Playwright

`page.click("#submit")`

CSS/XPath selectors — works as expected

AI-Powered

`page.click(prompt="Submit")`

Natural language element location

AI Fallback

`page.click("#btn", prompt="Submit")`

Tries selector first, falls back to AI

## Integrate with everything

REST API, native SDKs, MCP for AI agents, and no-code connectors. Use Skyvern however your stack demands.

### REST API

Full task and workflow execution via HTTP. Trigger browser automations from any language or platform.

`curl -X POST https://api.skyvern.com/v1/tasks`

### Python SDK

Native Python client with async support. Extends Playwright with AI commands directly on the page object.

`pip install skyvern`

### TypeScript SDK

First-class TypeScript client with full type safety. Works in Node.js and serverless environments.

`npm install @skyvern/client`

### MCP (Model Context Protocol)

Use Skyvern as a tool for any LLM agent. Compatible with Claude, GPT, Gemini, and any MCP-supporting model.

`See MCP docs →`

### Zapier / Make / N8N

Connect browser automations to 5,000+ apps without writing code. Trigger workflows from any event.

`Available on Zapier, Make.com, N8N`

### Workflow Builder

Visual no-code builder for chaining tasks. Loops, conditionals, code blocks, file parsing, and more.

`Built into Skyvern UI`

## Deploy your way

Self-host for full control or use Skyvern Cloud for managed infrastructure. Same powerful SDK, your choice of deployment.

Recommended

### Skyvern Cloud

Managed · Enterprise-ready

\# Connect in one line

skyvern = Skyvern(api\_key="your-key")

-   Managed infrastructure, zero setup
-   Parallel browser execution at scale
-   Built-in proxy network & CAPTCHA solving
-   2FA and authentication handling
-   Priority support & SLA
-   SOC2 Type II compliant

Start on Cloud

### Self-Hosted

Open Source · AGPL-3.0

\# Get started in 2 commands

pip install skyvern

skyvern init

-   Full source code access (AGPL-3.0)
-   Bring your own LLM (OpenAI, Anthropic, Gemini, Ollama)
-   Docker Compose or pip install
-   Your infrastructure, your data
-   Community support via Discord
-   Unlimited workflows

Clone & Self-Host

## Why developers choose Skyvern

A head-to-head look at how Skyvern compares to the tools you've probably already tried.

vs.Playwright / Selenium

Breaks when selectors change

AI locates elements by intent, not DOM

Manual maintenance for every UI update

Workflows survive redesigns automatically

No built-in data extraction

page.extract() returns structured JSON

vs.Other AI Agents

Prompt-only — hallucinate on complex flows

Combines vision + code execution + LLM

Can't handle login, 2FA, CAPTCHAs

Native auth, TOTP, CAPTCHA solving

No deterministic replay

Cached workflows for repeatable results

vs.RPA Tools

GUI-based, not version-controllable

Code-first, lives in your repo

No CI/CD integration

pip install / npm install, runs anywhere

Vendor lock-in

Open source, self-host or cloud

## Technical capabilities

Everything you need to build production-grade browser automation — authentication, extraction, debugging, and more.

### Vision-Based Navigation

Uses computer vision to understand pages — no DOM coupling or brittle selectors

### Auth & 2FA Support

Handles login, TOTP, QR-based 2FA, SMS, and email verification natively

### Workflow Chaining

Chain tasks with loops, conditionals, code blocks, HTTP requests, and file parsing

### Structured Extraction

Extract data into typed JSON schemas. CSV, tables, nested objects supported

### File Downloading

Download files from any website. Auto-uploaded to storage for retrieval via API

### Livestream Debugging

Watch the browser viewport in real time. See exactly what the agent sees

### Explainable AI

Full chain-of-thought reasoning exposed per step. See exactly why the agent clicked, typed, or navigated — debug like reading a log, not a black box

### Multi-LLM Support

OpenAI, Anthropic, Gemini, Ollama, Azure, Bedrock, OpenRouter, and any OpenAI-compatible API

## Built in the open

Join thousands of developers building browser automation with Skyvern. Star us on GitHub, ask questions on Discord, or contribute directly.

22,900+

GitHub Stars

5,000+

Discord Members

100+

Contributors

AGPL-3.0

Open Source License

Star on GitHub Join DiscordRead the Docs

## Frequently asked questions

Common questions about Skyvern's SDKs, APIs, and developer tools.

### What SDKs does Skyvern offer?

Skyvern provides Python (pip install skyvern) and TypeScript (npm install @skyvern/client) SDKs that extend Playwright with AI-powered commands. Both SDKs add .act(), .extract(), and .validate() methods directly to the Playwright page object.

### Can I self-host Skyvern?

Yes. Skyvern is open source under AGPL-3.0 with 20K+ GitHub stars. Deploy with Docker Compose or pip install. Bring your own LLM (OpenAI, Anthropic, Gemini, Ollama). Your infrastructure, your data, with community support via Discord.

### How does Skyvern extend Playwright?

Skyvern adds AI commands directly to the Playwright page object. You can use traditional CSS/XPath selectors, AI-powered natural language prompts, or both as a fallback. For example: page.click('#btn', prompt='Submit') tries the selector first, then falls back to AI.

### What is MCP integration?

Skyvern supports the Model Context Protocol (MCP), enabling AI assistants like Claude, GPT, and Gemini to use Skyvern as a browser automation tool. This lets LLM-based agents browse, interact with, and extract data from websites.

## Start building in 60 seconds

Install Skyvern, launch the quickstart, and run your first AI-powered browser automation.

$ pip install skyvern && skyvern quickstart

Get Started Try Skyvern Cloud

---

- [Sitemap](https://www.skyvern.com/sitemap.xml)
- [llms.txt](https://www.skyvern.com/llms.txt)
- [Documentation](https://www.skyvern.com/docs)
