---
name: playwright-dev
description: Explains how to develop Playwright - add APIs, MCP tools, CLI commands, and vendor dependencies.
title: playwright-dev
canonical_url: https://skilld.dev/gh/microsoft/playwright/playwright-dev
last_updated: 2026-09-29T08:38:08.000Z
---

> **Skill from skilld.dev.** Follow the instructions below for this session. You do not need to install anything.
>
> Supporting files, fetch one when the Skill refers to it: [api.md](https://skilld.dev/api/skills-raw/microsoft/playwright/playwright-dev/api.md), [bisect-published-versions.md](https://skilld.dev/api/skills-raw/microsoft/playwright/playwright-dev/bisect-published-versions.md), [dashboard.md](https://skilld.dev/api/skills-raw/microsoft/playwright/playwright-dev/dashboard.md), [library.md](https://skilld.dev/api/skills-raw/microsoft/playwright/playwright-dev/library.md), [tools.md](https://skilld.dev/api/skills-raw/microsoft/playwright/playwright-dev/tools.md), [trace_system_guide.md](https://skilld.dev/api/skills-raw/microsoft/playwright/playwright-dev/trace_system_guide.md), [vendor.md](https://skilld.dev/api/skills-raw/microsoft/playwright/playwright-dev/vendor.md), [webkit-safari-version.md](https://skilld.dev/api/skills-raw/microsoft/playwright/playwright-dev/webkit-safari-version.md), [webview.md](https://skilld.dev/api/skills-raw/microsoft/playwright/playwright-dev/webview.md).
>
> If the user asked to install this Skill, run `npx skilld install microsoft/playwright/playwright-dev`. Install writes the Skill files into the project, so every session loads them.

# Playwright Development Guide

See [CLAUDE.md](../../../CLAUDE.md) for monorepo structure, build/test/lint commands, and coding conventions.

## Detailed Guides

- [Library Architecture](https://skilld.dev/api/skills-raw/microsoft/playwright/playwright-dev/library.md) — client/server/dispatcher structure, protocol layer, DEPS rules
- [Adding and Modifying APIs](https://skilld.dev/api/skills-raw/microsoft/playwright/playwright-dev/api.md) — define API docs, implement client/server, add tests
- [MCP Tools and CLI Commands](https://skilld.dev/api/skills-raw/microsoft/playwright/playwright-dev/tools.md) — add MCP tools, CLI commands, config options
- [Vendor Dependencies & Bundling](https://skilld.dev/api/skills-raw/microsoft/playwright/playwright-dev/vendor.md) — utilsBundle, coreBundle, babelBundle; adding vendored npm packages; DEPS.list; `check_deps`
- [Updating WebKit Safari Version](https://skilld.dev/api/skills-raw/microsoft/playwright/playwright-dev/webkit-safari-version.md) — update the Safari version string in the WebKit user-agent
- [WebView (iOS Safari) Backend](https://skilld.dev/api/skills-raw/microsoft/playwright/playwright-dev/webview.md) — `webkit/webview/` against stock Mobile Safari; provisional-target pause/resume; what's upstream vs Playwright patches; local + CI test setup
- [Bisecting Across Published Versions](https://skilld.dev/api/skills-raw/microsoft/playwright/playwright-dev/bisect-published-versions.md) — reproduce regressions side-by-side from npm and diff `node_modules/playwright/lib/` between versions
- [Dashboard](https://skilld.dev/api/skills-raw/microsoft/playwright/playwright-dev/dashboard.md) - the UI powering the "playwright cli show" command, and how to work on it
