Playwright Edge Preference
Use this skill when browser tasks must run in Microsoft Edge.
Workflow
- Confirm Microsoft Edge is installed on the host.
- Run Playwright automation with
channel="msedge"as default. - Keep runs deterministic (bounded scripts, explicit output paths).
- Fail closed if Edge is unavailable; do not silently switch browsers.
Scope Boundary
Use this skill for Edge-channel browser execution and parity checks.
Do not use this skill for:
- Non-browser repo operations.
- General skill routing decisions.
- Asset-heavy browser workflows that bypass no-churn controls.
Edge Availability Check (PowerShell)
$edgeCandidates = @(
"$env:ProgramFiles(x86)\Microsoft\Edge\Application\msedge.exe",
"$env:ProgramFiles\Microsoft\Edge\Application\msedge.exe"
)
$edgePath = $edgeCandidates | Where-Object { Test-Path $_ } | Select-Object -First 1
if (-not $edgePath) { throw "Microsoft Edge not found on this host." }
$edgePath
Edge Run Patterns
Node one-shot (headless screenshot):
node -e "const { chromium } = require('playwright'); (async () => { const browser = await chromium.launch({ channel: 'msedge', headless: true }); const page = await browser.newPage(); await page.goto('https://example.com', { waitUntil: 'domcontentloaded' }); await page.screenshot({ path: 'edge-shot.png', fullPage: true }); await browser.close(); })();"
Playwright test project pattern:
npx playwright test --project=edge
Integration Notes
- Pair with
playwright-safewhen churn sensitivity is high. - Use
skill-hubfirst if lane selection is still ambiguous.
References
references/edge-commands.md
Loopback
If this lane is unresolved, blocked, or ambiguous:
- Capture current evidence and failure context.
- Route back through
$skill-hubfor chain recalculation. - Resume only after the updated chain returns a deterministic next step.