ワンクリックで
playwright-test
Playwrightでブラウザテストを実行する。URL指定でスクリーンショット撮影、PDF保存、動画録画、E2Eテスト作成・実行が可能。ffmpegによる動画変換・GIF作成にも対応。
Codex または Claude でインストール この Prompt をコピーして Codex、Claude、または他のアシスタントに貼り付けると、Skill ページを確認してインストールできます。
メニュー
Playwrightでブラウザテストを実行する。URL指定でスクリーンショット撮影、PDF保存、動画録画、E2Eテスト作成・実行が可能。ffmpegによる動画変換・GIF作成にも対応。
Codex または Claude でインストール この Prompt をコピーして Codex、Claude、または他のアシスタントに貼り付けると、Skill ページを確認してインストールできます。
SOC 職業分類に基づく
| name | playwright-test |
| description | Playwrightでブラウザテストを実行する。URL指定でスクリーンショット撮影、PDF保存、動画録画、E2Eテスト作成・実行が可能。ffmpegによる動画変換・GIF作成にも対応。 |
| argument-hint | <URL or テストファイルパス or コマンド> |
| allowed-tools | Bash, Read, Write, Edit, Glob, Grep |
PLAYWRIGHT_BROWSERS_PATHは環境変数設定済み(~/.cache/ms-playwright)。MCP Playwrightは使わず、npx playwright CLI経由で実行すること。動画処理はffmpeg。
playwrightコマンド実行前にnpx playwright install chromiumでブラウザがインストール済みか確認。エラーExecutable doesn't existが出たらnpx playwright install chromiumを実行。
URL(https?://...): ユーザーに目的確認→screenshot/pdf/openのいずれか
npx playwright screenshot --browser chromium "$URL" "/tmp/screenshot-$(date +%s).png" opts: --full-page, --viewport-size "W,H", --wait-for-timeout MS, --device "NAME"。撮影後Readで画像表示し確認npx playwright pdf --browser chromium "$URL" "/tmp/page-$(date +%s).pdf"npx playwright open --browser chromium "$URL"テストファイル(.spec.ts,.test.ts): npx playwright test "$FILE" --reporter=list opts: --headed, --debug, --browser chromium, --grep "名", --retries N
キーワード: init→npx playwright init-agents, codegen→npx playwright codegen, report→npx playwright show-report, trace→npx playwright show-trace <zip>, test→npx playwright test, record→動画録画, gif→GIF変換, convert→動画変換
テスト作成依頼: 対象URL/シナリオ確認→playwright.config.tsなければ作成(testDir:'./tests', baseURL:'http://localhost:3000', chromiumプロジェクト)→tests/にspecファイル作成→実行→失敗時修正
動画録画: テストケースごとに独立した録画ファイルを生成する。スクリプトでchromium.launch({headless:false})→newContext({recordVideo:{dir:'/tmp/playwright-videos/',size:{width:1280,height:720}}})→操作→context.close()(close時に.webm保存)。実行はnpx tsx record.ts。テスト内ならtest.use({video:'on'})でtest-results/に.webm生成。録画後はmp4に変換推奨(webmの1/3のサイズ)
動画変換(ffmpeg):
ffmpeg -i in.webm -c:v libx264 -crf 22 -y out.mp4ffmpeg -i in.mp4 -c:v libvpx-vp9 -crf 30 -b:v 0 -y out.webmffmpeg -i in.webm -vf "fps=15,scale=640:-1:flags=lanczos,split[s0][s1];[s0]palettegen[p];[s1][p]paletteuse" -loop 0 -y out.gif opts: fps(10-15), scale, -t SEC, -ss START -t DURffmpeg -i in.mp4 -ss HH:MM:SS -t HH:MM:SS -c copy -y out.mp4ffmpeg -i in.mp4 -vf "scale=W:H" -y out.mp4ffmpeg -i in.mp4 -an -y out.mp4ffmpeg -f concat -safe 0 -i list.txt -c copy -y out.mp4引数なし: playwright.config.ts/tests//package.jsonのplaywright設定を確認→あればテスト実行提案、なければ目的確認
op(1Password CLI)で認証情報を取得してPlaywrightスクリプト内で自動ログインできる。
| アイテム名 | 用途 | URL |
|---|---|---|
omn stg | Staging Auth0ログイン | https://omnicampus-staging.jp.auth0.com |
omn prod | Production Auth0ログイン | - |
AWS (omn stg) | AWS Staging | - |
Omnicamp(grafana) | Grafanaモニタリング | - |
# ユーザー名
op item get "omn stg" --fields username
# パスワード
op item get "omn stg" --fields password
const username = execSync('op item get "omn stg" --fields username').toString().trim();
const password = execSync('op item get "omn stg" --fields password').toString().trim();
await page.fill('input[name="username"], input[type="email"]', username);
await page.fill('input[name="password"], input[type="password"]', password);
await page.click('button[type="submit"]');
MFA/CAPTCHA等で自動ログインできない場合:
chromium.launch({headless:false})→newContext()→page.goto(URL)→ユーザーがログインするまでpage.waitForTimeout(120000)→context.storageState({path:'/tmp/auth-state.json'})→close--save-storage /tmp/auth-state.jsonまたはtest.use({storageState:'/tmp/auth-state.json'})で認証状態を利用/tmp/auth-state.jsonを削除Browser not found→npx playwright install chromiumを実行。Timeout→--wait-for-timeout増/--wait-for-selector使用。Navigation failed→URL/サーバー確認。GIF大→fps下げる/scale縮小/-t制限。webm再生不可→mp4変換。
テスト結果: テスト数(合計/成功/失敗/スキップ), 実行時間, 失敗テスト名+エラー概要, スクリーンショットパス
worktree の使い分けと並列実行の運用方針。サブエージェントへの実装 fan-out、EnterWorktree / --worktree / isolation:worktree の利用、gwq への言及、複数セッション並列の相談があった時に必ず読む。ファイルを書くサブエージェントを起動する前にも読むこと。
Backlog の親チケットから子チケット群を規約に沿って起票する。「子チケット作って」「チケット分割して」「Backlog に起票」「サブタスク切って」等で発火。AITENCHO_PRD の実チケットから抽出した命名・本文構造・粒度・属性の規約に従う。起票前に必ず分割案をユーザーに提示して承認を得る。
UI/デザイン/画面レイアウト/コンポーネントを設計・提案するときに使用。文章で説明する代わりに、自己完結HTMLモックを書いてPlaywright CLIでスクショ→画像でユーザーに見せる。「デザイン作って」「画面イメージ見せて」「UI考えて」「レイアウト提案」「mockして」、または既存UIの改修案を提示する時に発火。実装前の合意形成フェーズで使う。
agent 向けテキスト指示(skill / slash command / task プロンプト / CLAUDE.md 節 / コード生成プロンプト)を、バイアスを排した実行者に動かしてもらい、両面(実行者の自己申告 + 指示側メトリクス)で評価して反復改善する手法。改善が頭打ちになるまで回す。プロンプトや skill を新規作成・大幅改訂した直後、またはエージェントの挙動が期待通りにならない原因を指示側の曖昧さに求めたいときに使う。
Notionのデータベースを検索する。PREFIX-123 形式のIDやステータス、テキストで絞り込みが可能。
Notionページ・ブロックの更新・追記・新規作成。リッチブロック(heading/toggle/callout/code/divider)を活用して構造化された見やすい内容を書き込む。Markdownの平文貼り付けは禁止。