playwright-release-notes
Skill99k starsChanged 2 days agoApache-2.0View on GitHub
Write the release notes for a Playwright release - the Node.js notes in docs/src/release-notes-js.md together with the Python, Java and .NET translations, and the GitHub markdown for each language's release. Use when asked to write, translate or publish release notes.
We split this skill into the rules it gives an agent
14 rules. About 0 are common, 2 are distinctive, and 12 are very specific to this project.
≈0
Common · estimate
Many files like this have a rule of this kind.
≈2
Distinctive · estimate
This author's own choices. Worth a look.
12
Very specific
Tied to their project's names, files or tools. Probably skip.
- Common
- Distinctive
- Very specific
- Very specific: line 10
Every release has a ## Version 1.xx section in four files in docs/src/:
- Very specific: line 19
Write the Node.js notes and the three translations in the same PR, so every language has its notes when it starts its release.
- Very specific: line 36
Keep the structure: highlights with emoji headings, ### New APIs with #### groups, ### Breaking Changes ⚠️, ### Announcements and ### …
- Distinctive: line 37
Remove what the language does not have:
- Very specific: line 41
every API whose langs excludes the language (python, java, csharp).
- Very specific: line 42
Use the language's API where it differs from Node.js:
- Very specific: line 46
When a Node.js sample shows a library feature through playwright.config.ts, show the API call instead.
- Very specific: line 47
Keep API links as docs link macros, and link the language's own option where it differs (
[option: Browser.newContext.recordVideoFps]). - Distinctive: line 49
Do not add changes that only a language port made.
- Very specific: line 55
Use the sync API: page.get_by_role("button").click().
- Very specific: line 59
Use the alias-python names: route.continue_(), locator.or_(), page.expect_request().
- Very specific: line 104
Leave out the ## Version 1.xx heading.
- Very specific: line 130
Check that every link resolves.
- Very specific: line 156
If the conversion shows a problem in the notes themselves, such as an API the language does not have or a sample in the wrong style, fix …
≈ “Common” is an estimate: at least 1 in 5 of the 308,232 skill files we read have a rule of the same kind, not the same words. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.
Files
Release notes
In this skill, 1.xx is the release (for example 1.64).
Every release has a ## Version 1.xx section in four files in docs/src/:
| Language | Notes | Docs base URL | GitHub release in |
| Node.js | release-notes-js.md | https://playwright.dev/docs/ | microsoft/playwright |
| Python | release-notes-python.md | https://playwright.dev/python/docs/ | microsoft/playwright-python |
| Java | release-notes-java.md | https://playwright.dev/java/docs/ | microsoft/playwright-java |
| .NET | release-notes-csharp.md | https://playwright.dev/dotnet/docs/ | microsoft/playwright-dotnet |
Write the Node.js notes and the three translations in the same PR, so every language has its notes when it starts its release. The language repos then add only their own significant changes, and each one writes its GitHub release from its section (step 3).
1. Node.js notes
In docs/src/release-notes-js.md, add a ## Version 1.xx section above the previous version, and use previous versions as a guide:
- Highlights come first, each with an emoji heading and a short sample. Ask teammates for help with them.
- Then
### New APIswith####groups,### Breaking Changes ⚠️,### Announcementsand### Browser Versions. Print the browser versions withnode utils/print_versions.js. - Refer to APIs with docs link macros:
[`method: Page.frameLocator`],[`property: Page.webmcp`],[`event: Page.dialogClosed`],[`option: Tracing.start.ariaSnapshots`],[Locator]. Each language's docs show them with that language's names. - Link other docs pages with relative paths:
[test locks](./test-parallel.md#test-locks).
2. Python, Java and .NET translations
In each of release-notes-python.md, release-notes-java.md and release-notes-csharp.md, add a ## Version 1.xx section above the previous version. Translate it from the Node.js section. Compare the Version 1.63 sections of the files to see what past translations dropped and changed.
For every language:
- Keep the structure: highlights with emoji headings,
### New APIswith####groups,### Breaking Changes ⚠️,### Announcementsand### Browser Versions. - Remove what the language does not have:
- the test runner:
@playwright/test,test.*, config, fixtures, projects, reporters andnpx playwright testoptions - UI mode, the HTML report, component testing and the VS Code extension
- TypeScript-only features (generics, JSX,
tsconfig) anddevicesdescriptors - every API whose
langsexcludes the language (python,java,csharp). Checklangsindocs/src/api/; options shared between methods are defined indocs/src/api/params.md.
- the test runner:
- Use the language's API where it differs from Node.js:
- A language-specific option has its own
langs. For example,recordVideoFpsislangs: csharp, java, python, while Node.js hasrecordVideo.fps. alias-<lang>renames a member, e.g.alias-java: isVisibleforLocatorAssertions.toBeVisible.- The generated APIs in sibling checkouts confirm the names:
../playwright-python/playwright/sync_api/_generated.py,../playwright-java/playwright/src/main/java/com/microsoft/playwright/and../playwright-dotnet/src/Playwright/API/Generated/.
- A language-specific option has its own
- When a Node.js sample shows a library feature through
playwright.config.ts, show the API call instead. For example, the 1.64 video config became calls toScreencast.startandScreencast.showActions. - Keep API links as docs link macros, and link the language's own option where it differs (
[`option: Browser.newContext.recordVideoFps`]). In plain text, use the language's names. - A relative link must point to a page that exists in the language:
*-js.mdpages are Node.js only.npm run docreports broken links for each language. - Do not add changes that only a language port made. The language repo adds those to its notes.
Rewrite code samples in each language's style. The infra workflow checks the syntax of python, java and csharp snippets.
Python
- Use the sync API:
page.get_by_role("button").click(). Use snake_case names and Python values (True,False,None). - Options become keyword arguments:
page.get_by_role("button", name="Save"). Objects and arrays become dicts and lists:size={"width": 1920, "height": 1080}. - Aria roles and other string values stay strings:
"button","ai". - Events:
page.on("dialogclosed", handler). Assertions:expect(locator).to_have_text([...]). Print withprint(...). - Use the
alias-pythonnames:route.continue_(),locator.or_(),page.expect_request(). - Commands: write
playwright install, notnpx playwright install.
Java
| Node.js | Java |
await page.goto('...') | page.navigate("...");: no await, double quotes, semicolons, typed locals (Locator dialog = ...) |
page.getByRole('button', { name: 'Save' }) | page.getByRole(AriaRole.BUTTON, new Page.GetByRoleOptions().setName("Save")) |
options object { path: 'video.webm', fps: 60 } | options builder new Screencast.StartOptions().setPath(Paths.get("video.webm")).setFps(60) |
object literal { name: 'session-id', value: '42', url } | value class new Cookie("session-id", "42").setUrl(url) |
['a', 'b'], { a: 2 } | Arrays.asList("a", "b"), Map.of("a", 2); new String[] {"a", "b"} for assertion arguments |
property page.webmcp, context.tracing | getter page.webmcp(), context.tracing() |
event page.on('dialogclosed', handler) | page.onDialogClosed(handler) |
expect(locator).toHaveText(...) | assertThat(locator).hasText(...). Likewise toBeX → isX, toHaveX → hasX, toContainX → containsX, toMatchX → matchesX |
route.continue() and other members with alias-java | the alias, e.g. route.resume() |
npx playwright install --no-remove | mvn exec:java -e -D exec.mainClass=com.microsoft.playwright.CLI -D exec.args="install --no-remove" |
"array", undefined, 'ai' in prose | "list", null, "ai" |
.NET
| Node.js | .NET |
await page.goto('...') | await page.GotoAsync("...");: PascalCase members, Async suffix on async methods, var locals, double quotes, semicolons |
page.getByRole('button', { name: 'Save' }) | page.GetByRole(AriaRole.Button, new() { Name = "Save" }) |
options object { path: 'video.webm', fps: 60 } | options initializer new() { Path = "video.webm", Fps = 60 } |
nested object size: { width: 1920, height: 1080 } | Size = new() { Width = 1920, Height = 1080 } |
object literal { name: 'session-id', value: '42', url } | new Cookie { Name = "session-id", Value = "42", Url = url } |
['a', 'b'], free-form object { a: 2 } | new[] { "a", "b" }, anonymous object new { a = 2 } |
string-literal union value 'ai', 'button' | enum member AriaSnapshotMode.Ai, AriaRole.Button |
property page.webmcp, context.tracing | property page.Webmcp, context.Tracing |
event page.on('dialogclosed', handler) | page.DialogClosed += (_, dialog) => { ... }; |
expect(locator).toHaveText(...) | await Expect(locator).ToHaveTextAsync(...); |
console.log(x) | Console.WriteLine(x); |
members with alias-csharp | the alias, e.g. page.request → page.APIRequest |
union-typed option, e.g. httpCredentials as a list | one property per type, e.g. HttpCredentialsList |
npx playwright install --no-remove | pwsh bin/Debug/netX/playwright.ps1 install --no-remove |
option names in prose (fontSize), undefined | FontSize, null |
Open one PR for all four files, titled docs: release notes for v1.xx. After it merges, cherry-pick it to release-1.xx with the playwright-cherry-pick skill.
3. GitHub release markdown
Each repo publishes the GitHub release for its language, with markdown converted from its ## Version 1.xx section on release-1.xx. Convert the notes yourself:
- Leave out the
## Version 1.xxheading. Move every other heading up one level (###becomes##,####becomes###). Replace each link macro with a full link: the language's docs base URL from the table at the top, plus the path below. Use the language's name as the link text:
Macro Path after the docs base URL Node.js Python Java .NET [Locator]api/class-locatorLocatorLocatorLocatorLocator[`method: Page.frameLocator`]api/class-page#page-frame-locatorpage.frameLocator()page.frame_locator()page.frameLocator()Page.FrameLocator()[`method: Page.ariaSnapshot`]api/class-page#page-aria-snapshotpage.ariaSnapshot()page.aria_snapshot()page.ariaSnapshot()Page.AriaSnapshotAsync()[`method: Locator.first`]api/class-locator#locator-firstlocator.first()locator.firstlocator.first()Locator.First[`property: Page.webmcp`]api/class-page#page-webmcppage.webmcppage.webmcppage.webmcp()Page.Webmcp[`event: BrowserContext.dialogClosed`]api/class-browsercontext#browser-context-event-dialog-closedbrowserContext.on('dialogclosed')browser_context.on("dialogclosed")browserContext.onDialogClosed()BrowserContext.DialogClosed[`method: LocatorAssertions.toBeVisible`]api/class-locatorassertions#locator-assertions-to-be-visibleexpect(locator).toBeVisible()expect(locator).to_be_visible()assertThat(locator).isVisible()Expect(Locator).ToBeVisibleAsync()[`option: Page.content.includeShadow`]api/class-page#page-content-option-include-shadow`includeShadow``include_shadow``includeShadow``IncludeShadow`[Playwright MCP](./getting-started-mcp.md)getting-started-mcpPlaywright MCPPlaywright MCPPlaywright MCPPlaywright MCP- An image
becomesin every language.
The page is class- and the class name in lower case. The anchor is the class and member names in kebab-case, so APIRequestContext.addCookies becomes api-request-context-add-cookies. Options add -option-<name>, and events add -event-<name>. Anchors use the names from docs/src/api/ even where a language renames the member, so Java's isVisible() links to #locator-assertions-to-be-visible.
The link text follows the language:
- Node.js: the class in lower camel case (
page,apiRequestContext,testConfig). Methods get(), properties none, events becomeon('<event in lower case>'), and assertions start withexpect(locator).,expect(page).orexpect(response).. - Python: the class and member in snake_case (
browser_context,api_request_context). Methods get(). A member is a property, without(), if_generated.pydeclares it with@property. Events becomeon("<event in lower case>"), and assertions start withexpect(locator).. - Java: the class in lower camel case and the
alias-javamember name. Methods and properties get(), events becomeon<Event>(), and assertions start withassertThat(locator).. - .NET: the class without the interface
I(Page,APIRequestContext) and the member exactly as the generatedI<Class>.csdeclares it. Async methods take theAsyncsuffix and(), sync methods get(), and properties and events get no parentheses. Assertions start withExpect(Locator)..
Check that every link resolves. playwright.dev already documents the release once the Node.js docs roll has landed. It serves minified HTML, so an anchor may appear without quotes (id=page-webmcp>):
grep -oE 'https://playwright\.dev/[^) ]+' <notes-file> | sort -u | while read -r url; do
page=${url%%#*}
html=$(curl -sfL "$page") || { echo "MISSING PAGE $url"; continue; }
if [[ "$url" == *"#"* ]]; then
anchor=${url#*#}
grep -qE "id=\"?${anchor}[\" >]" <<<"$html" || echo "MISSING ANCHOR $url"
fi
doneThen scan for anything that wasn't converted, and for stray spaces inside link text ([Page. DialogClosed], [`HttpCredentialsList `]). The first command applies to every language; then run the one for the language. They should print nothing:
# every language
grep -nE '\[`(method|property|event|option|param): |\]\(\./|\[[A-Z][A-Za-z]*\]([^(]|$)|\[[A-Za-z_]+\. |\[`[^`]+ `\]' <notes-file>
# Python: camelCase names in link text
grep -nE '\[[a-z_]+\.[a-z_]*[A-Z]|\[`[a-z]+[A-Z]' <notes-file>
# Java: JS-style events, assertions and properties
grep -nE "\.on\('|\b(toBe|toHave|toContain|toMatch)[A-Z]|\bawait\b|\barray\b|\bundefined\b|\[[a-z][A-Za-z]*\.[a-z][A-Za-z]*\]\(" <notes-file>
# .NET: lower-case classes or members, JS-style events
grep -nE "\.on\('|\bundefined\b|\[[a-z][A-Za-z]*\.|\[[A-Z][A-Za-z]*\.[a-z]|\[Expect\([a-z]" <notes-file>If the conversion shows a problem in the notes themselves, such as an API the language does not have or a sample in the wrong style, fix the notes too (step 2). Otherwise the problem stays on playwright.dev.
Trending
More talk lately.about the whole repository
Who's talking about microsoft/playwright
- Chase AI“Claude Code + Playwright = INSANE Browser Automations”YouTube · Mar 6, 2026 · 147k views
- Playwright“Giving UI Reviews to Coding Agents - Playwright CLI”YouTube · Apr 29, 2026 · 25k views
- CodeFlare“How To Automate with Playwright”YouTube · Oct 7, 2025 · 21k views
- Playwright“Playwright Live - Playwright Agents & Playwright MCP”YouTube · Oct 9, 2025 · 15k views
- Checkly“TIL — The Playwright getBy* locators treat visibility differently!”YouTube · Apr 2, 2025 · 2.2k views
The biggest 5 of 121 mentions linking to the repository that our crawl found. Each line is their own headline.
See all 121
Talked about on Bluesky, GitHub, Stack Overflow, Hacker News, the web and YouTube (121 times).
On Bluesky · 39
- Jun 14, 2024Playwright : un framework Open Source pour les tests web et l'automatisation. Il permet de tester Chromium, Firefox et WebKit avec une API… — @bearstech.com7 likes and reposts
- Mar 9, 2025📦 microsoft / playwright ⭐ 69,976 (+43) 🗒 TypeScript Playwright is a framework for Web Testing and Automation. It allows testing… — @github-trending-js.bsky.socialsays it tested it6 likes and reposts
- Jun 13, 2024📦 microsoft / playwright ⭐ 62,977 (+39) 🗒 TypeScript Playwright is a framework for Web Testing and Automation. It allows testing… — @github-trending.bsky.socialsays it tested it6 likes and reposts
- Apr 26, 2025📦 microsoft / playwright ⭐ 72,094 (+58) 🗒 TypeScript Playwright is a framework for Web Testing and Automation. It allows testing… — @github-trending-js.bsky.social5 likes and reposts
- Dec 7, 2024📦 microsoft / playwright ⭐ 67,466 (+34) 🗒 TypeScript Playwright is a framework for Web Testing and Automation. It allows testing… — @github-trending.bsky.socialsays it tested it5 likes and reposts
34 more on Bluesky
- Dec 6, 2024📦 microsoft / playwright ⭐ 67,433 (+36) 🗒 TypeScript Playwright is a framework for Web Testing and Automation. It allows testing… — @github-trending-js.bsky.social4 likes and reposts
- Mar 12, 2026Claude Code can't see your browser. But it can run Playwright. And that changes everything for testing web apps. github.com/microsoft/p... — @tommytang.bsky.social3 likes and reposts · 2 replies
- Jan 21, 2025📦 microsoft / playwright ⭐ 68,649 (+42) 🗒 TypeScript Playwright is a framework for Web Testing and Automation. It allows testing… — @github-trending-js.bsky.social3 likes and reposts
- Jan 9, 2025📦 microsoft / playwright ⭐ 68,334 (+33) 🗒 TypeScript Playwright is a framework for Web Testing and Automation. It allows testing… — @github-trending-js.bsky.social3 likes and reposts
- Mar 16, 2024📦 microsoft / playwright ⭐ 60,189 (+47) 🗒 TypeScript Playwright is a framework for Web Testing and Automation. It allows testing… — @github-trending-js.bsky.social3 likes and reposts
- Jul 30, 2023Bonjour et bon dimanche ! Si vous cherchez un framework pour tester vos applications Web, voici PlayWright qui devrait probablement vous… — @ponceto91.bsky.social3 likes and reposts · 1 reply
- Apr 11, 2026🔥 Hot Repo! 🔥 (100+ new stars) 📦 microsoft / playwright ⭐ 86,072 (+117) 🗒 TypeScript Playwright is a framework for Web Testing and… — @github-trending-js.bsky.social2 likes and reposts
- Nov 9, 2025📦 microsoft / playwright ⭐ 79,131 (+98) 🗒 TypeScript Playwright is a framework for Web Testing and Automation. It allows testing… — @github-trending-js.bsky.social2 likes and reposts
- Jul 12, 2025📦 microsoft / playwright ⭐ 74,697 (+47) 🗒 TypeScript Playwright is a framework for Web Testing and Automation. It allows testing… — @github-trending-js.bsky.social2 likes and reposts
- Jun 20, 2025📦 microsoft / playwright ⭐ 73,638 (+42) 🗒 TypeScript Playwright is a framework for Web Testing and Automation. It allows testing… — @github-trending-js.bsky.social2 likes and reposts · 1 reply
- Jun 6, 2025📦 microsoft / playwright ⭐ 73,195 (+40) 🗒 TypeScript Playwright is a framework for Web Testing and Automation. It allows testing… — @github-trending-js.bsky.social2 likes and reposts
- Aug 31, 2024📦 microsoft / playwright ⭐ 65,113 (+41) 🗒 TypeScript Playwright is a framework for Web Testing and Automation. It allows testing… — @github-trending.bsky.social2 likes and reposts
- May 17, 2024📦 microsoft / playwright ⭐ 62,255 (+31) 🗒 TypeScript Playwright is a framework for Web Testing and Automation. It allows testing… — @github-trending-js.bsky.social2 likes and reposts
- Jan 19, 2024📦 microsoft / playwright ⭐ 58,313 (+55) 🗒 TypeScript Playwright is a framework for Web Testing and Automation. It allows testing… — @github-trending-js.bsky.social2 likes and reposts
- Oct 20, 2023📦 microsoft / playwright ⭐ 55,765 (+43) 🗒 TypeScript Playwright is a framework for Web Testing and Automation. It allows testing… — @github-trending-js.bsky.social2 likes and reposts
- Oct 15, 2026📦 microsoft / playwright ⭐ 97,767 (+84) 🗒 TypeScript Playwright is a framework for Web Testing and Automation. It allows testing… — @github-trending-js.bsky.social1 likes and repost
- May 20, 2026Not using the API 😊 github.com/microsoft/pl... — @jhuntinfosec.com1 likes and repost
- Jan 9, 2026📦 microsoft / playwright ⭐ 80,967 (+39) 🗒 TypeScript Playwright is a framework for Web Testing and Automation. It allows testing… — @github-trending-js.bsky.social1 likes and repost
- Oct 22, 2025📦 microsoft / playwright ⭐ 78,491 (+46) 🗒 TypeScript Playwright is a framework for Web Testing and Automation. It allows testing… — @github-trending-js.bsky.social1 likes and repost
- Jul 30, 2025📦 microsoft / playwright ⭐ 75,363 (+52) 🗒 TypeScript Playwright is a framework for Web Testing and Automation. It allows testing… — @github-trending-js.bsky.social1 likes and repost
- Jun 24, 2025📦 microsoft / playwright ⭐ 73,801 (+48) 🗒 TypeScript Playwright is a framework for Web Testing and Automation. It allows testing… — @github-trending-js.bsky.social1 likes and repost
- Jun 24, 2025📦 microsoft / playwright ⭐ 73,775 (+48) 🗒 TypeScript Playwright is a framework for Web Testing and Automation. It allows testing… — @github-trending.bsky.social1 likes and repost
- Jun 21, 2025mirkobozzetto starred microsoft/playwright mirkobozzetto starred microsoft/playwright · June 21, 2025 23:32 microsoft/playwright Playwright… — @firefox.activitypub.awakari.com.ap.brid.gy1 likes and repost
- Jun 11, 2025📦 microsoft / playwright ⭐ 73,377 (+47) 🗒 TypeScript Playwright is a framework for Web Testing and Automation. It allows testing… — @github-trending-js.bsky.social1 likes and repost
- Oct 17, 2024📦 microsoft / playwright ⭐ 66,315 (+31) 🗒 TypeScript Playwright is a framework for Web Testing and Automation. It allows testing… — @github-trending-js.bsky.social1 likes and repost
- Oct 10, 2024📦 microsoft / playwright ⭐ 66,176 (+35) 🗒 TypeScript Playwright is a framework for Web Testing and Automation. It allows testing… — @github-trending-js.bsky.social1 likes and repost
- Jul 18, 2024📦 microsoft / playwright ⭐ 64,111 (+49) 🗒 TypeScript Playwright is a framework for Web Testing and Automation. It allows testing… — @github-trending-js.bsky.social1 likes and repost
- Jun 13, 2024📦 microsoft / playwright ⭐ 62,977 (+39) 🗒 TypeScript Playwright is a framework for Web Testing and Automation. It allows testing… — @github-trending-js.bsky.social1 likes and repost
- May 25, 2024📦 microsoft / playwright ⭐ 62,460 (+54) 🗒 TypeScript Playwright is a framework for Web Testing and Automation. It allows testing… — @github-trending-js.bsky.social1 likes and repost
- Dec 30, 2023📦 microsoft / playwright ⭐ 57,720 (+42) 🗒 TypeScript Playwright is a framework for Web Testing and Automation. It allows testing… — @github-trending-js.bsky.social1 likes and repost
- Nov 23, 2023📦 microsoft / playwright ⭐ 56,785 (+33) 🗒 TypeScript Playwright is a framework for Web Testing and Automation. It allows testing… — @github-trending-js.bsky.social1 likes and repost
- Oct 13, 2023📦 microsoft / playwright ⭐ 55,555 (+37) 🗒 TypeScript Playwright is a framework for Web Testing and Automation. It allows testing… — @github-trending-js.bsky.social1 likes and repost
- Sep 21, 2023📦 microsoft / playwright ⭐ 55,027 (+33) 🗒 TypeScript Playwright is a framework for Web Testing and Automation. It allows testing… — @github-trending-js.bsky.social1 likes and repost
- Jun 9, 2023📦 microsoft / playwright ⭐ 51,996 (+44) 🗒 TypeScript Playwright is a framework for Web Testing and Automation. It allows testing… — @github-trending-js.bsky.social1 likes and repost
On GitHub · 31
- Jul 23, 2020Introduce Playwright as option for E2E testing — nrwl/nxsays it tested it115 reactions · 18 comments
- Apr 28, 2021Feedback needed for future development — mxschmitt/playwright-go102 reactions · 38 comments
- Jan 17, 2024Running Playwright tests with Bun runtime and Playwright config file hangs + completes with no output or segfault — oven-sh/bun52 reactions · 45 comments
- Jun 14, 2022[Feature] Custom timeout for assertions — microsoft/playwright-python41 reactions · 2 comments
- Mar 17, 2021[Info] Beta versions available for the new `puppeteer-extra` & `playwright-extra` — berstend/puppeteer-extra39 reactions · 35 comments
26 more on GitHub
- Sep 10, 2023Running Playwright does not work as expected — oven-sh/bun36 reactions · 4 comments
- Jul 17, 2021feat(allure-playwright): initial implementation for allure-playwright — allure-framework/allure-js31 reactions · 17 comments
- Apr 7, 2023browser.close() just hangs — Sparticuz/chromium28 reactions · 34 comments
- Feb 26, 2020Moving from Puppeteer to Playwright — stenciljs/core27 reactions · 9 comments
- Dec 2, 2022NPM: Playwright does not work — denoland/deno26 reactions · 47 comments
- Sep 14, 2022[Feature] Add Retries — microsoft/playwright-dotnet24 reactions · 22 comments
- Oct 1, 2025Feature Request: Support Allowed Origins & Blocked Origins list options — ChromeDevTools/chrome-devtools-mcp23 reactions · 11 comments
- Aug 24, 2022a way to import from a module without including its globals — microsoft/TypeScript23 reactions · 2 comments
- Jan 23, 2020Support for Playwright? — argos-ci/jest-puppeteer23 reactions · 4 comments
- Jan 22, 2020Support for Playwright library — berstend/puppeteer-extra23 reactions · 16 comments
- Oct 6, 2025fix(browser): allow service workers to mock the network in chromium without breaking vi.mock — vitest-dev/vitest10 reactions · 4 comments
- Feb 23, 2024Add support for Angular 17 — sand4rt/playwright10 reactions · 9 comments
- Aug 3, 2026Update @playwright/test to fix installation stuck — NousResearch/hermes-agent9 reactions · 12 comments
- Nov 24, 2024Playwright 1.50.1 — NixOS/nixpkgs7 reactions · 14 comments
- May 18, 2024feature(trace-viewer): embedded mode support PoC — microsoft/playwright-vscode6 reactions · 5 comments
- Jan 11, 2021Allow using BrowserContext in Lambda — alixaxel/chrome-aws-lambda6 reactions
- Dec 6, 2025Update Claude Code to 2.0.60, Playwright MCP to 0.0.50, add --disable-slash-commands — github/gh-aw5 reactions · 11 comments
- Mar 6, 2022feat: set custom userAgent — garris/BackstopJS5 reactions
- Sep 20, 2026SAN-1341: make critical Playwright journeys deterministic and production-safe — amoai-tech/mdeai4 reactions · 18 comments
- Sep 13, 2026Make Playwright E2E faster, clearer, and independent from live AI outages — amoai-tech/ipixai4 reactions · 6 comments
- Jan 31, 2026Update CLI tool versions: Claude Code 2.1.27, Copilot 0.0.400, Playwright MCP 0.0.62, MCP Gateway v0.0.86 — github/gh-aw4 reactions · 11 comments
- Jan 24, 2026Update CLI tool versions (Jan 24, 2026) — github/gh-aw4 reactions · 8 comments
- Dec 11, 2025Update CLI Versions: Copilot 0.0.369, Codex 0.71.0, Playwright MCP 0.0.52 — github/gh-aw4 reactions · 9 comments
- Dec 9, 2025Update Claude Code 2.0.62, Codex 0.66.0, Playwright MCP 0.0.51 — github/gh-aw4 reactions · 10 comments
- Jul 2, 2024feat(playwright): reuse existing server — nuxt/test-utils4 reactions · 4 comments
- Feb 15, 2026Update Playwright MCP from 0.0.64 to 0.0.68 — github/gh-aw0 reactions · 10 comments
On Stack Overflow · 25
- Jan 19, 2023How to update / upgrade Playwright?25 votes
- Apr 18, 2023Playwright - Locator error :strict mode violation19 votes
- Jul 5, 2023In playwright,how to wait for all instances of loading spinner to disappear?11 votes
- Jan 4, 2023PlayWright HTML report serving not working in docker container9 votes
- Feb 28, 2021Puppeteer blocked at .newPage()9 votes
20 more on Stack Overflow
- Oct 12, 2020Is cypress support cross browser testing like selenium or are there any limitationssays it tested it9 votes
- Jun 12, 2024Playwright - Host system is missing dependencies like libicu70 to run webkit tests and can't install them8 votes
- Oct 19, 2023Playwright 'Re-use state' & 'Re-use Authentication' with Firebase8 votes · 2 answers
- May 14, 2023Playwright before each for all spec files8 votes
- Mar 6, 2022Is there a way to connect to my existing browser session using playwright8 votes
- Sep 6, 2021TypeScript + Playwright Error: Cannot find module8 votes
- Feb 28, 2024Playwright auto-scroll to bottom7 votes
- Sep 29, 2022How do I run playwright targeting localhost in github-actions?7 votes
- Aug 12, 2020Why isn't WebKit working when I launch in cron but works when I launch in terminal?6 votes
- Mar 14, 2024Dynamically generate Playwright test asynchronously, shows No test found5 votes · 3 answers
- Dec 25, 2022typescript - How to enforce object destructuring in functions5 votes
- Sep 14, 2022Playwright Framework : Is there a way we can execute dependent tests in playwright?5 votes
- Dec 14, 2020Playwright automation cant bypass location popup5 votes · 2 answers
- Oct 15, 2024Playwright tests in Github actions error for webkit with "host system is missing dependencies to run browsers"4 votes
- Mar 27, 2023Playwright how to wait for locator that matches multiple elements to not be visible4 votes
- Feb 14, 2023Python Playwright memory overlad4 votes
- Jun 16, 2022Playwright - SSH Cert login for website through playwright4 votes
- Jun 3, 2022ERROR: Playwright does not support webkit on mac10.134 votes
- Sep 29, 2021Playwright SelectOption is not selecting a value4 votes
- Jun 15, 2020Puppeteer and Playwright chrome headful bugs when making a screenshot4 votes
On Hacker News · 9
- Jan 26, 2022Playwright: Automate Chromium, WebKit and Firefox383 points · 140 comments
- Jan 23, 2020Microsoft Playwright: Automate Chromium, WebKit and Firefox43 points · 3 comments
- Jan 22, 2020microsoft/playwright – Node Library to Automate Chromium, Firefox and WebKit9 points
- Jan 23, 2020Playwright: Puppeteer for Chrome, Firefox, and Safari5 points
- Sep 12, 2020Release v1.4.0 · Microsoft/Playwright4 points
4 more on Hacker News
- Jan 22, 2020Playwright – Node Library to Automate Chromium, Firefox and WebKit4 points
- May 31, 2024Playwright – A Framework for Web Testing and Automation1 point
- Jun 12, 2023Playwright as a Chromium Extension1 point
- Mar 20, 2023BDD implementation with Playwright test runner1 point
On the web · 9
- Feb 27, 2026Playwright Review 2026: Users Reviews — aqua-cloud.io
- Oct 20, 2024The Pros and Cons of Playwright Automation Framework — linkedin.com
- Jul 28, 2024Testing login functionality of a sample app with Playwright — linkedin.com
- Feb 27, 2024Playwright - Technical Review — acrocommerce.com
- Oct 20, 2022Getting Started With Playwright Framework | by Gary Parker — medium.com
4 more on the web
- Jul 16, 2021Let's play with playwright using F# scripts. | Marcin Golenia blog — mcode.it
- Mar 4, 2021Evaluation of Microsoft Playwright — dev.to
- Feb 14, 2021Python と Playwright でブラウザを自動操作させるコードを自動生成したよ #スクレイピング — qiita.com
- Oct 31, 2020Microsoft’s Playwright experimentation | by Leonardo Galdino — leonardogaldino-321.medium.com
On YouTube · 8
- Mar 6, 2026Claude Code + Playwright = INSANE Browser Automations — Chase AI147k views · 82 comments
- Apr 29, 2026Giving UI Reviews to Coding Agents - Playwright CLI — Playwright25k views · 11 comments
- Oct 7, 2025How To Automate with Playwright — CodeFlare21k views · 14 comments
- Oct 9, 2025Playwright Live - Playwright Agents & Playwright MCP — Playwright15k views · 37 comments
- Apr 2, 2025TIL — The Playwright getBy* locators treat visibility differently! — Checkly2.2k views
3 more on YouTube
- Sep 29, 2026Playwright Now Has an AI Agent Mode. I Ran a Real Test First. — Derek AI Tech64 views
- Oct 3, 2026🏆 [GitHub Repo of the Day] playwright: The Free Tool Taking Over GitHub! #shorts — githubrepo_cloud57 views
- Oct 1, 2026Automate and Test Any Browser With One API (Playwright, 96k Stars) #shorts — ThinkNaz | Naz22 views
In this repository11 other files it gives its agents.
- AGENTS.mdAGENTS.md
- .github/copilot-instructions.mdCopilot instructions
- api-reviewSkill
- playwright-cherry-pickSkill
- playwright-devopsSkill
- playwright-devSkill
- playwright-test-resultsSkill
- playwright-triageSkill
- playwright-cliSkill
- playwright-component-testingSkill
- playwright-traceSkill
Does it work?
Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.
Reviews can't be read right now.
Your trail
Files you open will collect here, so you can find them again.
Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.
Now do this for your own.
Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.

