By neonwatty
Auth-only Claude Code plugin for Playwright profiles, persistent external-service auth, custom app auth capture, and bot-detection-aware browsing. Use neonwatty/qa-skills for the full QA workflow plugin.
This skill should be used when the user asks to "sign into Cloudflare", "browse Sentry authenticated", "open Supabase dashboard", "log into Vercel", "check auth status", "authenticate to AWS", or any request to browse an external service that requires authentication using playwright-cli. Also triggers on "sign in to <site>", "authenticate to <site>", "open <site> logged in", "browse <service> for me". Complements use-profiles (per-project roles) by providing global persistent auth for external services. Defaults to Chromium; uses real Chrome (`--tier chrome`) only for bot-protected sites.
This skill should be used when the user asks to "capture auth for my app", "sign into deckchecker", "save login for seatify", "add my app to playwright auth", "authenticate to my site", "set up QA user profiles", "sign in as admin", "sign in as planner", or wants to set up reusable authenticated browsing for a custom web app. Triggers on app names, custom domains, multi-user/QA auth, or any request to save auth state for a URL that is not a well-known external service. Complements auth-browse (external services) by handling the user's own apps and custom sites.
This skill should be used when performing browser automation with Playwright MCP in a project that has `.playwright/profiles.json`, when the user mentions "use profile", "load profile", "browser as admin", "test as user", "browse as [role]", "switch profile", "authenticated browser", "logged in browser session", "open the site logged in", or when about to navigate to an authenticated page. Loads saved Playwright storageState authentication profiles so browser sessions start already logged in.
Own this plugin?
Verify ownership to unlock analytics, metadata editing, and a verified badge. GitHub access is read-only (username + org membership).
Sign in to claimOwn this plugin?
Verify ownership to unlock analytics, metadata editing, and a verified badge. GitHub access is read-only (username + org membership).
Sign in to claimBased on adoption, maintenance, documentation, and repository signals. Not a security audit or endorsement.
Manage Playwright authentication profiles for Claude Code — both per-project role-based profiles and global persistent auth for external services.
Note: This repo is now the auth-only distribution. The full QA workflow plugin, including these auth/profile capabilities plus workflow generators, Playwright converters, QA agents, and CI helpers, lives in
neonwatty/qa-skills.
Use this plugin when you only need reusable authenticated browsing. Use qa-skills when you also want QA workflow generation, Playwright conversion, runners, agents, audits, and CI scaffolding.
/setup-profiles — Interactive command to create authenticated browser profiles for each user role in your project. Opens a headed Playwright browser, lets you log in manually, then saves the session state.use-profiles skill — Automatically discovers and loads saved auth profiles when Claude does browser work, so you don't have to log in every session./setup-auth-browse — One-time setup to install the sign-in script and authenticate to external services (Cloudflare, Sentry, PostHog, Supabase, Vercel, AWS, etc.).auth-browse skill — Browse external service dashboards using playwright-cli with persistent auth. Uses real Chrome with automation flags stripped to bypass Google OAuth and Cloudflare Turnstile bot detection.capture-auth skill — Capture and reuse authenticated sessions for your own web apps (deckchecker, seatify, client portals, staging environments, etc.). Register a custom app with a name, login URL, and post-login pattern, then sign in once and browse authenticated from any Claude session.@playwright/mcp (installed automatically via npx) — for per-project profilesplaywright-cli — for auth-browse (installed separately)This plugin bundles its own Playwright MCP server config. If you also have the official playwright@claude-plugins-official plugin installed, disable it to avoid running two MCP server instances. The Playwright MCP server runs in headed mode by default, which is required for interactive login.
In any project directory:
/setup-profiles
Claude will:
.playwright/profiles/.gitignore to prevent committing auth dataCLAUDE.mdOnce set up, just mention a role when asking Claude to do browser work:
Claude automatically loads the right profile before navigating.
First-time setup:
/setup-auth-browse
Claude will install the sign-in script at ~/.playwright-cli/ and walk you through authenticating to your services.
For subsequent sign-ins, run in a terminal:
node ~/.playwright-cli/sign-in.mjs login cloudflare
node ~/.playwright-cli/sign-in.mjs login sentry
node ~/.playwright-cli/sign-in.mjs login https://any-site.com
The script opens real Chrome (automation flags stripped), you sign in manually, and it auto-detects completion and saves auth state.
Then ask Claude to browse any authenticated service:
Claude uses playwright-cli with the persistent Chrome profile — all services are authenticated in a single session.
Built-in sites: github, cloudflare, vercel, sentry, posthog, supabase, aws, netlify, railway, render
Add custom sites:
node ~/.playwright-cli/sign-in.mjs add myapp https://myapp.com/login myapp.com/dashboard
Check auth status:
node ~/.playwright-cli/sign-in.mjs check
For apps where you need separate sessions for different users (e.g., admin vs planner), use --profile to isolate Chrome profiles:
# Register each user as a separate site
node ~/.playwright-cli/sign-in.mjs add myapp-admin https://myapp.com/login /dashboard
node ~/.playwright-cli/sign-in.mjs add myapp-planner https://myapp.com/login /dashboard
# Sign in with isolated profiles (run in separate terminal)
node ~/.playwright-cli/sign-in.mjs login myapp-admin --profile myapp-admin
node ~/.playwright-cli/sign-in.mjs login myapp-planner --profile myapp-planner
npx claudepluginhub neonwatty/playwright-profiles --plugin playwright-profilesDesign and iterate on logos using SVG with Claude Code
QA testing pipeline with 6 personas (smoke, UX, adversarial, security, performance, mobile) — generate workflow docs, convert to Playwright E2E tests, run interactively or in CI. Supports quantified UX scoring with before/after binary scorecards, Next.js performance profiling, and mobile UX auditing against iOS HIG and Material Design 3 standards.
Claude Code skills for developer workflow automation — validation, PR creation, and CI monitoring
Autonomous feature implementation with independent verification. Plan -> Implement -> Check -> Ship.
Autonomous iterative codebase improvement skills for gap analysis, test coverage, security audits, beta-readiness audits, service health audits, funnel audits, plan refinement, document refinement, plan-to-plan alignment, mockup generation, and prototype building. Designed to run standalone or in Ralph Loops.
Browser automation and E2E testing with Playwright. Auto-detects dev servers, writes clean test scripts. Test pages, fill forms, take screenshots, check responsive design, validate UX, test login flows, check links, automate any browser task. Use for cross-browser testing, visual regression, API testing, component testing in TypeScript/JavaScript and Python projects.
Playwright E2E test debugging and interactive browser exploration. Runs tests with action capture (DOM snapshots, network, console, screenshots), diagnoses failures, and provides browser tools for navigating, clicking, and inspecting pages through ARIA snapshots.
Claude Code Skill for general-purpose browser automation with Playwright. Auto-detects dev servers, writes clean test scripts to /tmp, and autonomously handles any browser automation task.
Production-grade Playwright testing toolkit. Generate tests from specs, fix flaky failures, migrate from Cypress/Selenium, sync with TestRail, run on BrowserStack. 55+ ready-to-use templates, 3 specialized agents, smart reporting that plugs into your existing workflow.
Browser automation and debugging MCP servers: Chrome DevTools and Playwright
End-to-end test automation with Playwright, Cypress, and Selenium for browser-based testing