pi-webwright

skillmaintained

Pi package that ports Microsoft's Webwright code-as-action browser automation skill and slash commands.

by · v0.1.0 · published 2mo ago

$ pi install npm:pi-webwright
downloads/mo
98
stars
1
last push
2mo ago
open issues
0

Signals

license: MITtestspi manifest: missinginstall size: —deps: 0peer deps: 0

Download trend

394 downloads · last 12 weeks (weekly)

README

pi-webwright

A small Pi package that ports Microsoft's Webwright skill into Pi.

Webwright treats browser automation as code-as-action: Pi writes and debugs Playwright scripts in a local workspace, then finishes only after a fresh rerun leaves auditable artifacts (plan.md, final_script.py, logs, and screenshots).

Install

From npm:

pi install npm:pi-webwright

From this checkout:

pi install /Users/mal/projects/pi-webwright

Or use it temporarily for one Pi session:

pi -e /Users/mal/projects/pi-webwright

Runtime prerequisites

Install Python Playwright and Firefox in the environment Pi uses for bash commands:

python3 -m pip install playwright
python3 -m playwright install firefox

Commands

  • /webwright — show help and setup notes.
  • /webwright:run <task> — solve a concrete browser task and leave a one-shot final_script.py.
  • /webwright:craft <task> — create a parameterized reusable CLI script with argparse defaults from the task.
  • /skill:webwright <task> — invoke the skill directly via Pi's built-in skill command.

Example

/webwright:run Search Google Flights for flights from SEA to JFK on 2026-08-15 to 2026-08-20

Attribution, credits, and license

This package is MIT licensed. It includes adapted skill text and reference documentation from Microsoft's Webwright repository, also MIT licensed.

The Webwright-derived files are primarily under skills/webwright/ and were modified for Pi's tool names, setup instructions, and slash-command workflow. See THIRD_PARTY_NOTICES.md for the original Microsoft copyright and MIT license notice.

Webwright's README asks that users cite the repository when using Webwright in research or building on it:

@misc{webwright2026,
  title        = {Webwright: A terminal is all you need for web agents},
  author       = {Lu, Yadong and Xu, Lingrui and Huang, Chao and Awadallah, Ahmed},
  year         = {2026},
  howpublished = {\url{https://github.com/microsoft/Webwright}},
  note         = {GitHub repository}
}

Original Webwright credits: