Browsers that workers start stay silent, WebKit included

Measured on 2026-11-08 on macOS with Playwright 1.61.1. Each check played half a second of silence or ran in a muted browser, so none of them could be heard.

What was wrong

A worker checked a walkthrough in WebKit, Safari's engine, with a Playwright script of its own and clicked “Show as walkthrough”. Chromium has a switch that mutes it, and Playwright turns it on. WebKit has no such switch, so the narration came out of the computer's speakers.

Before and after

Browser a worker startsBeforeAfter
WebKit from its own script (the import line the browser skill gives)Sound reaches the speakers
plays, not muted
Muted
plays, muted in the engine
Chromium from its own scriptMuted (--mute-audio)Muted, even if the script drops Playwright's default arguments
Firefox from its own scriptNot mutedVolume set to zero, and the same in-page muting as WebKit
The browser skill's browser, the demo recorder's browserMutedMuted
The Android emulatorStarted without audioUnchanged

In every engine a page's own text-to-speech (speechSynthesis) now speaks nothing too. Before, WebKit's version of it lost its silencing about a second after the page loaded.

With Obeya's own voice in WebKit

A scratch Obeya in WebKit, opened through the import the skill gives: Configuration → Demos → Listen plays a Kokoro sample. It ran all the way through, 6.1 seconds, and stayed muted in the engine the whole time. The page still sees its sound as not muted, so a page's own mute button works the same as for a person using it.

The Demos settings with the Listen button pressed
Playback position read every half second: 0.2 s, 0.6 s, 1.1 s … 5.7 s, finished at 6.1 s. Muted in the engine at every reading. The page saw “not muted” at every reading.

What stays open

This covers every browser a worker starts through Obeya's browser skill, including scripts that import Playwright the way the skill tells them to. A browser that another project's own test suite starts with its own Playwright is not covered. That project's settings decide whether it is muted.