Back to list
rakibdev

playwriter

by rakibdev

System Backup & Personal Notes.

1🍴 0📅 Jan 19, 2026

SKILL.md


name: playwriter description: Tool for controlling browser via Playwriter extension.

Setup

  1. Install Playwriter extension
  2. Click extension icon on target tab (icon turns green)

Usage

bun {dir}/scripts/cmd.ts "<code>"

Examples

# Get page URL
bun {dir}/scripts/cmd.ts "console.log(page.url())"

# Click button
bun {dir}/scripts/cmd.ts "await page.getByRole('button', { name: 'Submit' }).click()"

# Get page title
bun {dir}/scripts/cmd.ts "await page.title()"

# Fill form
bun {dir}/scripts/cmd.ts "await page.getByLabel('Email').fill('test@example.com')"

# Stop daemon
bun {dir}/scripts/cmd.ts "daemon.stop()"

Context

Variables available in code:

  • page - Current Playwright page
  • context - Browser context
  • state - Persistent object across calls
  • daemon - Daemon control object ({ stop: () => void })

Output

The script returns logs and the final result. If the result is an object, it's formatted as JSON.

bun {dir}/scripts/cmd.ts "console.log('fetching...'); return { title: await page.title() }"

Output:

[log] fetching...
{
  "title": "Page Title"
}

Debugging

// Enable debugger
const cdp = await page.context().newCDPSession(page);
await cdp.send('Debugger.enable');
await cdp.send('Debugger.setPauseOnExceptions', { state: 'uncaught' });

// Set breakpoint
await cdp.send('Debugger.setBreakpointByUrl', { lineNumber: 42, urlRegex: '.*app\\.js$' });

Network

// Wait for API response
const res = await page.waitForResponse(r => r.url().includes('/api/data'));
console.log(await res.json());

// Monitor requests
page.on('request', r => console.log('REQ:', r.url()));
await page.reload();
page.removeAllListeners('request');

Score

Total Score

45/100

Based on repository quality metrics

SKILL.md

SKILL.mdファイルが含まれている

+20
LICENSE

ライセンスが設定されている

0/10
説明文

100文字以上の説明がある

0/10
人気

GitHub Stars 100以上

0/15
最近の活動

1ヶ月以内に更新

+10
フォーク

10回以上フォークされている

0/5
Issue管理

オープンIssueが50未満

+5
言語

プログラミング言語が設定されている

+5
タグ

1つ以上のタグが設定されている

+5

Reviews

💬

Reviews coming soon