[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"extension-skill-SawyerHood-dev-browser-en":3,"guides-for-SawyerHood-dev-browser":377,"similar-k17535f2wgbtzrzc5n55ps9f3586mr7p-en":378},{"_creationTime":4,"_id":5,"children":6,"community":7,"display":9,"evaluation":15,"identity":246,"isFallback":242,"parentExtension":250,"providers":301,"relations":305,"repo":306,"tags":374,"workflow":375},1778696896101.4382,"k17535f2wgbtzrzc5n55ps9f3586mr7p",[],{"reviewCount":8},0,{"description":10,"installMethods":11,"name":13,"sourceUrl":14},"Browser automation with persistent page state. Use when users ask to navigate websites, fill forms, take screenshots, extract web data, test web apps, or automate browser workflows. Trigger phrases include \"go to [url]\", \"click on\", \"fill out the form\", \"take a screenshot\", \"scrape\", \"automate\", \"test the website\", \"log into\", or any browser interaction request.",{"claudeCode":12},"SawyerHood/dev-browser","dev-browser","https://github.com/SawyerHood/dev-browser",{"_creationTime":16,"_id":17,"extensionId":5,"locale":18,"result":19,"trustSignals":225,"workflow":244},1778696938150.0413,"kn7fsy2aj41q9zjnf7thsefrm186m6bw","en",{"checks":20,"evaluatedAt":192,"extensionSummary":193,"features":194,"nonGoals":200,"promptVersionExtension":205,"promptVersionScoring":206,"purpose":207,"rationale":208,"score":209,"summary":210,"tags":211,"targetMarket":217,"tier":218,"useCases":219},[21,26,29,32,36,39,43,47,50,53,57,61,64,68,71,74,77,80,83,86,90,94,98,102,106,109,112,116,120,123,126,129,132,135,138,142,146,150,153,157,160,163,166,169,173,176,179,182,185,189],{"category":22,"check":23,"severity":24,"summary":25},"Practical Utility","Problem relevance","pass","The description clearly states the problem of browser automation and names concrete use cases like navigating websites, filling forms, and taking screenshots.",{"category":22,"check":27,"severity":24,"summary":28},"Unique selling proposition","The extension offers significant value over simple prompts by providing a sandboxed JavaScript environment for browser control, full Playwright API access, and persistent page state.",{"category":22,"check":30,"severity":24,"summary":31},"Production readiness","The tool is ready for production workflows, offering installation, usage examples, and covering the complete lifecycle of browser automation tasks.",{"category":33,"check":34,"severity":24,"summary":35},"Scope","Single responsibility principle","The extension focuses solely on browser automation and script execution within a sandbox, without extending into unrelated domains.",{"category":33,"check":37,"severity":24,"summary":38},"Description quality","The displayed description accurately reflects the extension's capabilities as a browser automation tool with persistent page state and various interaction methods.",{"category":40,"check":41,"severity":24,"summary":42},"Invocation","Scoped tools","The extension primarily uses Playwright APIs exposed through JavaScript scripts, which are inherently scoped, and does not expose a single generalist command.",{"category":44,"check":45,"severity":24,"summary":46},"Documentation","Configuration & parameter reference","The README and script API documentation detail available commands, parameters, and global objects like `browser` and `page`.",{"category":33,"check":48,"severity":24,"summary":49},"Tool naming","Tools are accessed via JavaScript API calls within a sandboxed environment, which are descriptive and follow standard programming conventions.",{"category":33,"check":51,"severity":24,"summary":52},"Minimal I/O surface","The Playwright API used within the sandbox is well-defined, and script inputs/outputs are managed through standard JavaScript console and return values.",{"category":54,"check":55,"severity":24,"summary":56},"License","License usability","The extension is licensed under the MIT license, which is a permissive open-source license, clearly declared in a LICENSE file and mentioned in the README.",{"category":58,"check":59,"severity":24,"summary":60},"Maintenance","Commit recency","The last commit was on April 9, 2026, which is within the last 3 months, indicating active maintenance.",{"category":58,"check":62,"severity":24,"summary":63},"Dependency Management","The project uses npm and Playwright, and the presence of a lockfile and the CLI installation script suggest proper dependency management.",{"category":65,"check":66,"severity":24,"summary":67},"Security","Secret Management","The extension runs scripts in a sandboxed QuickJS environment with no host filesystem or network access, preventing secret leakage. It does not handle or echo secrets.",{"category":65,"check":69,"severity":24,"summary":70},"Injection","The sandboxed QuickJS environment and explicit API calls prevent the execution of untrusted instructions from external data.",{"category":65,"check":72,"severity":24,"summary":73},"Transitive Supply-Chain Grenades","Scripts run in a sandbox and do not fetch external content at runtime. All necessary components appear to be bundled.",{"category":65,"check":75,"severity":24,"summary":76},"Sandbox Isolation","The QuickJS WASM sandbox explicitly prevents host filesystem or network access, ensuring isolation.",{"category":65,"check":78,"severity":24,"summary":79},"Sandbox escape primitives","The sandboxed environment is designed to prevent detached processes or retry loops around denied calls.",{"category":65,"check":81,"severity":24,"summary":82},"Data Exfiltration","The sandbox prevents any outbound network calls, thus eliminating the risk of data exfiltration.",{"category":65,"check":84,"severity":24,"summary":85},"Hidden Text Tricks","The bundled content and descriptions appear to be free of hidden steering tricks, using standard text and markup.",{"category":87,"check":88,"severity":24,"summary":89},"Hooks","Opaque code execution","Scripts are written in JavaScript and run within the QuickJS runtime; there is no evidence of obfuscation, base64 payloads, or runtime script fetching.",{"category":91,"check":92,"severity":24,"summary":93},"Portability","Structural Assumption","The tool operates within its own sandbox and does not make assumptions about the user's project file structure.",{"category":95,"check":96,"severity":24,"summary":97},"Trust","Issues Attention","In the last 90 days, 3 issues were opened and 21 were closed, indicating a good closure rate and active maintainer engagement.",{"category":99,"check":100,"severity":24,"summary":101},"Versioning","Release Management","The project has a CHANGELOG.md and recent commits, though no explicit versioning in frontmatter or releases is immediately apparent, the install instructions reference specific versions via npm.",{"category":103,"check":104,"severity":24,"summary":105},"Code Execution","Validation","The Playwright API used within the sandbox provides typed inputs and validation, and scripts are executed in a controlled environment.",{"category":65,"check":107,"severity":24,"summary":108},"Unguarded Destructive Operations","The sandbox prevents direct file system or network modification, and any browser interactions are controlled by the script's intent.",{"category":103,"check":110,"severity":24,"summary":111},"Error Handling","Errors within the sandboxed JavaScript environment are handled by standard JavaScript error mechanisms and routed to stderr.",{"category":103,"check":113,"severity":114,"summary":115},"Logging","not_applicable","This extension is primarily a CLI tool and its primary output is via stdout/stderr, not a persistent local audit file.",{"category":117,"check":118,"severity":24,"summary":119},"Compliance","GDPR","The sandbox prevents access to local files or network, thus it does not operate on or submit personal data.",{"category":117,"check":121,"severity":24,"summary":122},"Target market","The extension is a general-purpose browser automation tool with no regional or jurisdictional limitations.",{"category":91,"check":124,"severity":24,"summary":125},"Runtime stability","The tool is designed to be cross-platform and relies on standard Node.js/npm installations and Playwright, with clear installation instructions for Windows.",{"category":44,"check":127,"severity":24,"summary":128},"README","The README file is comprehensive, detailing installation, usage, API, and providing clear examples.",{"category":33,"check":130,"severity":24,"summary":131},"Tool surface size","The extension exposes its functionality through a single CLI command with JavaScript scripts, rather than a large number of distinct tools.",{"category":40,"check":133,"severity":24,"summary":134},"Overlapping near-synonym tools","Functionality is accessed via Playwright API calls within scripts, which are distinct and non-overlapping.",{"category":44,"check":136,"severity":24,"summary":137},"Phantom features","All advertised features, such as Playwright API access and sandboxed execution, are implemented and documented.",{"category":139,"check":140,"severity":24,"summary":141},"Install","Installation instruction","Clear installation instructions are provided in the README for npm and Windows, along with copy-pasteable invocation examples.",{"category":143,"check":144,"severity":24,"summary":145},"Errors","Actionable error messages","Errors from the sandbox and Playwright are routed to stderr and provide context, and standard JavaScript error handling applies.",{"category":147,"check":148,"severity":24,"summary":149},"Execution","Pinned dependencies","The project uses npm and has a lockfile (`package-lock.json`), indicating pinned dependencies. Scripts are expected to have shebangs.",{"category":33,"check":151,"severity":114,"summary":152},"Dry-run preview","This tool primarily interacts with a browser and does not have a direct 'dry-run' mode for file writes or infra changes in the traditional sense.",{"category":154,"check":155,"severity":114,"summary":156},"Protocol","Idempotent retry & timeouts","The extension operates locally within a sandbox and does not involve remote calls or state-changing operations requiring idempotency or explicit timeouts beyond standard JavaScript execution.",{"category":117,"check":158,"severity":24,"summary":159},"Telemetry opt-in","There is no mention of telemetry being emitted by this extension.",{"category":40,"check":161,"severity":24,"summary":162},"Precise Purpose","The description clearly defines the extension's purpose (browser automation) and its use cases (navigating, filling forms, etc.), along with trigger phrases.",{"category":40,"check":164,"severity":24,"summary":165},"Concise Frontmatter","The frontmatter in SKILL.md is concise, providing a clear summary and trigger phrases without excessive jargon or keyword stuffing.",{"category":44,"check":167,"severity":24,"summary":168},"Concise Body","The SKILL.md and README are reasonably concise, with the README providing API details and examples.",{"category":170,"check":171,"severity":24,"summary":172},"Context","Progressive Disclosure","The extension's documentation is well-structured, with the README providing API details that serve as progressive disclosure.",{"category":170,"check":174,"severity":114,"summary":175},"Forked exploration","This tool is for direct browser interaction, not deep code review or exploration that would require forked context.",{"category":22,"check":177,"severity":24,"summary":178},"Usage examples","The README provides clear, ready-to-use examples for both headless and connected browser modes, demonstrating basic and advanced interactions.",{"category":22,"check":180,"severity":24,"summary":181},"Edge cases","The documentation covers API usage and sandbox limitations, and standard JavaScript error handling would manage most edge cases.",{"category":103,"check":183,"severity":114,"summary":184},"Tool Fallback","The extension does not rely on external MCP servers or tools; it bundles its own browser control logic via Playwright.",{"category":186,"check":187,"severity":24,"summary":188},"Safety","Halt on unexpected state","The sandboxed JavaScript environment would naturally halt on unexpected states or errors, and standard JavaScript error handling applies.",{"category":91,"check":190,"severity":24,"summary":191},"Cross-skill coupling","The extension is self-contained and does not implicitly rely on other skills; its functionality is standalone.",1778696938043,"This CLI tool allows AI agents and developers to control browsers using sandboxed JavaScript scripts, leveraging the Playwright API for tasks like navigation, form filling, screenshots, and data extraction. It features persistent page state and can connect to running Chrome instances or launch new Chromium browsers.",[195,196,197,198,199],"Sandboxed JavaScript execution","Persistent browser page state","Full Playwright API integration","Headless and connected browser modes","Screenshotting and data extraction",[201,202,203,204],"Direct host filesystem access","Direct network access outside of browser automation","Running arbitrary shell commands","Acting as a general-purpose JavaScript runtime outside of browser control","3.0.0","4.4.0","To provide a secure and robust browser automation environment for AI agents and developers, enabling complex web interactions and testing through sandboxed JavaScript.","Excellent documentation and security posture, with comprehensive examples and clear usage. Minor note on versioning visibility but well-managed by npm.",99,"A highly polished and secure browser automation tool for AI agents.",[212,213,214,215,216],"browser-automation","playwright","javascript","testing","web-scraping","global","verified",[220,221,222,223,224],"Automating browser workflows","Filling out web forms","Taking website screenshots","Extracting data from web pages","Testing web applications",{"codeQuality":226,"collectedAt":228,"documentation":229,"maintenance":232,"popularity":238,"security":240,"testCoverage":243},{"hasLockfile":227},true,1778696923176,{"descriptionLength":230,"readmeSize":231},364,5844,{"closedIssues90d":233,"forks":234,"hasChangelog":227,"openIssues90d":235,"pushedAt":236,"stars":237},21,390,3,1775769524000,6092,{"npmDownloads":239},11418,{"hasNpmPackage":227,"license":241,"smitheryVerified":242},"MIT",false,{"hasCi":227,"hasTests":227},{"updatedAt":245},1778696938150,{"basePath":247,"githubOwner":248,"githubRepo":13,"locale":18,"slug":13,"type":249},"skills/dev-browser","SawyerHood","skill",{"_creationTime":251,"_id":252,"community":253,"display":254,"identity":257,"parentExtension":260,"providers":289,"relations":296,"tags":297,"workflow":298},1778696896101.438,"k172vf4sjqdwht2n7b64bmf7wn86mzzp",{"reviewCount":8},{"description":255,"installMethods":256,"name":13,"sourceUrl":14},"Browser automation skill with persistent page state for developers and AI agents",{"claudeCode":13},{"basePath":258,"githubOwner":248,"githubRepo":13,"locale":18,"slug":13,"type":259},"","plugin",{"_creationTime":261,"_id":262,"community":263,"display":264,"identity":268,"providers":270,"relations":282,"tags":284,"workflow":285},1778696896101.4377,"k17c9wx6b28kd427pnqy7v8z5h86mcpj",{"reviewCount":8},{"description":265,"installMethods":266,"name":267,"sourceUrl":14},"Marketplace for the dev-browser skill",{"claudeCode":12},"dev-browser-marketplace",{"basePath":258,"githubOwner":248,"githubRepo":13,"locale":18,"slug":13,"type":269},"marketplace",{"evaluate":271,"extract":276},{"promptVersionExtension":272,"promptVersionScoring":206,"score":273,"tags":274,"targetMarket":217,"tier":218},"3.1.0",95,[269,13,275],"curation",{"commitSha":277,"marketplace":278,"plugin":280},"HEAD",{"name":267,"pluginCount":279},1,{"mcpCount":8,"provider":281,"skillCount":8},"classify",{"repoId":283},"kd778ksdnkgy1969578mg8f30986nddw",[275,13,269],{"evaluatedAt":286,"extractAt":287,"updatedAt":288},1778696907941,1778696896101,1778697008806,{"evaluate":290,"extract":294},{"promptVersionExtension":205,"promptVersionScoring":206,"score":291,"tags":292,"targetMarket":217,"tier":218},96,[212,213,214,293,215],"cli",{"commitSha":277,"plugin":295},{"mcpCount":8,"provider":281,"skillCount":279},{"parentExtensionId":262,"repoId":283},[212,293,214,213,215],{"evaluatedAt":299,"extractAt":287,"updatedAt":300},1778696922889,1778697009175,{"evaluate":302,"extract":304},{"promptVersionExtension":205,"promptVersionScoring":206,"score":209,"tags":303,"targetMarket":217,"tier":218},[212,213,214,215,216],{"commitSha":277},{"parentExtensionId":252,"repoId":283},{"_creationTime":307,"_id":283,"identity":308,"providers":309,"workflow":369},1778696889350.659,{"githubOwner":248,"githubRepo":13,"sourceUrl":14},{"classify":310,"discover":359,"extract":362,"github":363,"npm":368},{"commitSha":277,"extensions":311},[312,325,334,340,351],{"basePath":258,"description":265,"displayName":267,"installMethods":313,"rationale":314,"selectedPaths":315,"source":324,"sourceLanguage":18,"type":269},{"claudeCode":12},"marketplace.json at .claude-plugin/marketplace.json",[316,319,321],{"path":317,"priority":318},".claude-plugin/marketplace.json","mandatory",{"path":320,"priority":318},"README.md",{"path":322,"priority":323},"LICENSE","high","rule",{"basePath":258,"description":255,"displayName":13,"installMethods":326,"rationale":327,"selectedPaths":328,"source":324,"sourceLanguage":18,"type":259},{"claudeCode":13},"inline plugin source from marketplace.json at /",[329,330,331],{"path":320,"priority":318},{"path":322,"priority":323},{"path":332,"priority":333},"bin/dev-browser.js","low",{"basePath":247,"description":10,"displayName":13,"installMethods":335,"rationale":336,"selectedPaths":337,"source":324,"sourceLanguage":18,"type":249},{"claudeCode":12},"SKILL.md frontmatter at skills/dev-browser/SKILL.md",[338],{"path":339,"priority":318},"SKILL.md",{"basePath":258,"description":341,"displayName":13,"installMethods":342,"license":241,"rationale":343,"selectedPaths":344,"source":324,"sourceLanguage":18,"type":293},"CLI for controlling browsers with sandboxed JavaScript scripts",{"npm":13},"cli ecosystem detected at /",[345,347,348,349],{"path":346,"priority":318},"package.json",{"path":320,"priority":318},{"path":322,"priority":323},{"path":332,"priority":350},"medium",{"basePath":293,"installMethods":352,"rationale":353,"selectedPaths":354,"source":324,"sourceLanguage":18,"type":293},{"cargo":13},"cli ecosystem detected at cli",[355,357],{"path":356,"priority":318},"Cargo.toml",{"path":358,"priority":350},"src/main.rs",{"sources":360},[361],"manual",{"npmPackage":13},{"closedIssues90d":233,"description":364,"forks":234,"license":241,"openIssues90d":235,"pushedAt":236,"readmeSize":231,"stars":237,"topics":365},"A Claude Skill to give your agent the ability to use a web browser",[366,213,367],"claude-code","skills",{"downloads":239},{"classifiedAt":370,"discoverAt":371,"extractAt":372,"githubAt":372,"npmAt":373,"updatedAt":370},1778696895921,1778696889350,1778696891723,1778696894159,[212,214,213,215,216],{"evaluatedAt":245,"extractAt":287,"updatedAt":376},1778697009004,[],[379,406,433,460,487,516],{"_creationTime":380,"_id":381,"community":382,"display":383,"identity":389,"providers":393,"relations":399,"tags":401,"workflow":402},1778697205743.894,"k17ej9360g7468qswf3svnrx9186m1ng",{"reviewCount":8},{"description":384,"installMethods":385,"name":387,"sourceUrl":388},"Browser automation CLI for AI agents. Use when the user needs to interact with websites, including navigating pages, filling forms, clicking buttons, taking screenshots, extracting data, testing web apps, or automating any browser task. Triggers include requests to \"open a website\", \"fill out a form\", \"click a button\", \"take a screenshot\", \"scrape data from a page\", \"test this web app\", \"login to a site\", \"automate browser actions\", or any task requiring programmatic web interaction.",{"claudeCode":386},"shanraisshan/claude-code-best-practice","agent-browser","https://github.com/shanraisshan/claude-code-best-practice",{"basePath":390,"githubOwner":391,"githubRepo":392,"locale":18,"slug":387,"type":249},".claude/skills/agent-browser","shanraisshan","claude-code-best-practice",{"evaluate":394,"extract":398},{"promptVersionExtension":205,"promptVersionScoring":206,"score":395,"tags":396,"targetMarket":217,"tier":218},100,[212,216,215,293,397],"automation",{"commitSha":277},{"repoId":400},"kd74710g49kxgwbfjxeb7s132d86myxr",[397,212,293,215,216],{"evaluatedAt":403,"extractAt":404,"updatedAt":405},1778697222051,1778697205743,1778697438718,{"_creationTime":407,"_id":408,"community":409,"display":410,"identity":416,"providers":420,"relations":426,"tags":429,"workflow":430},1778683460321.381,"k1707rtzme0qezretvp3gmtfvn86n1k1",{"reviewCount":8},{"description":411,"installMethods":412,"name":414,"sourceUrl":415},"Self-improving browser automation via the auto-research loop. Iteratively runs a browsing task, reads the trace, and improves the navigation skill (strategy.md) until it reliably passes. Supports parallel runs across multiple tasks using sub-agents. Use when you want to build or improve browser automation skills for specific website tasks.",{"claudeCode":413},"browserbase/skills","AutoBrowse","https://github.com/browserbase/skills",{"basePath":417,"githubOwner":418,"githubRepo":367,"locale":18,"slug":419,"type":249},"skills/autobrowse","browserbase","autobrowse",{"evaluate":421,"extract":425},{"promptVersionExtension":205,"promptVersionScoring":206,"score":395,"tags":422,"targetMarket":217,"tier":218},[212,216,423,215,424],"llm-agent","node-js",{"commitSha":277,"license":241},{"parentExtensionId":427,"repoId":428},"k17bx77jb71yrwatep2nb43r0d86m6cb","kd77wvcdm5fq9xp8hk6ppm832s86myxr",[212,423,424,215,216],{"evaluatedAt":431,"extractAt":432,"updatedAt":431},1778683610531,1778683460321,{"_creationTime":434,"_id":435,"community":436,"display":437,"identity":443,"providers":447,"relations":454,"tags":456,"workflow":457},1778685991755.7456,"k17djff3pz3wam5kpz7pkg92h586menn",{"reviewCount":8},{"description":438,"installMethods":439,"name":441,"sourceUrl":442},"Use when Codex is building or iterating on a web game (HTML/JS) and needs a reliable development + testing loop: implement small changes, run a Playwright-based test script with short input bursts and intentional pauses, inspect screenshots/text, and review console errors with render_game_to_text.",{"claudeCode":440},"davila7/claude-code-templates","develop-web-game","https://github.com/davila7/claude-code-templates",{"basePath":444,"githubOwner":445,"githubRepo":446,"locale":18,"slug":441,"type":249},"cli-tool/components/skills/creative-design/develop-web-game","davila7","claude-code-templates",{"evaluate":448,"extract":453},{"promptVersionExtension":205,"promptVersionScoring":206,"score":395,"tags":449,"targetMarket":217,"tier":218},[450,451,214,452,213,215,397],"web-development","game-development","html",{"commitSha":277},{"repoId":455},"kd71fzn4s7r0269fkw47wt670n86ndz0",[397,451,452,214,213,215,450],{"evaluatedAt":458,"extractAt":459,"updatedAt":458},1778690648090,1778685991755,{"_creationTime":461,"_id":462,"community":463,"display":464,"identity":470,"providers":474,"relations":481,"tags":483,"workflow":484},1778696993586.7058,"k174ty9vbfgj7cv3v2szdwjgh986mrsf",{"reviewCount":8},{"description":465,"installMethods":466,"name":468,"sourceUrl":469},"Search ChatGPT and extract the full response + hydration JSON that powers the UI.\nAttaches to a running Chrome instance (port 9222 by default), opens ChatGPT,\nsubmits a query, waits for the streamed response, and returns structured data:\nmessages, product cards, hydration JSON, and API calls.\nUse when asked to \"search chatgpt\", \"ask chatgpt\", \"chatgpt search\",\n\"get chatgpt response\", or \"scrape chatgpt\".\n",{"claudeCode":467},"SeifBenayed/claude-code-sdk","chatgpt-search","https://github.com/SeifBenayed/claude-code-sdk",{"basePath":471,"githubOwner":472,"githubRepo":473,"locale":18,"slug":468,"type":249},".claude/skills/chatgpt-search","SeifBenayed","claude-code-sdk",{"evaluate":475,"extract":480},{"promptVersionExtension":205,"promptVersionScoring":206,"score":395,"tags":476,"targetMarket":217,"tier":218},[477,478,212,479,216],"chatgpt","scraping","data-extraction",{"commitSha":277},{"repoId":482},"kd78s53c1852h5p7c3qem663xs86njab",[212,477,479,478,216],{"evaluatedAt":485,"extractAt":486,"updatedAt":485},1778697026743,1778696993586,{"_creationTime":488,"_id":489,"community":490,"display":491,"identity":497,"providers":501,"relations":509,"tags":512,"workflow":513},1778690831986.3767,"k17fjjgdng9c2xwz18cc594g0986n7wy",{"reviewCount":8},{"description":492,"installMethods":493,"name":495,"sourceUrl":496},"Use for Vue.js testing. Covers Vitest, Vue Test Utils, component testing, mocking, testing patterns, and Playwright for E2E testing.",{"claudeCode":494},"hyf0/vue-skills","vue-testing-best-practices","https://github.com/hyf0/vue-skills",{"basePath":498,"githubOwner":499,"githubRepo":500,"locale":18,"slug":495,"type":249},"skills/vue-testing-best-practices","hyf0","vue-skills",{"evaluate":502,"extract":508},{"promptVersionExtension":205,"promptVersionScoring":206,"score":395,"tags":503,"targetMarket":217,"tier":218},[504,215,505,213,506,507],"vue-js","vitest","component-testing","e2e-testing",{"commitSha":277},{"parentExtensionId":510,"repoId":511},"k17fvvpt61wrah7aepwqhgjp4d86n8jx","kd7a1a0bdc2ez150x3razht61n86m6a8",[506,507,213,215,505,504],{"evaluatedAt":514,"extractAt":515,"updatedAt":514},1778691195044,1778690831986,{"_creationTime":517,"_id":518,"community":519,"display":520,"identity":526,"providers":529,"relations":537,"tags":539,"workflow":540},1778685735333.8196,"k17axqfsk2shpatbgra08fjtgh86neqd",{"reviewCount":8},{"description":521,"installMethods":522,"name":524,"sourceUrl":525},"Use when writing Playwright tests, fixing flaky tests, debugging failures, implementing Page Object Model, configuring CI/CD, optimizing performance, mocking APIs, handling authentication or OAuth, testing accessibility (axe-core), file uploads/downloads, date/time mocking, WebSockets, geolocation, permissions, multi-tab/popup flows, mobile/responsive layouts, touch gestures, GraphQL, error handling, offline mode, multi-user collaboration, third-party services (payments, email verification), console error monitoring, global setup/teardown, test annotations (skip, fixme, slow), test tags (@smoke, @fast, @critical, filtering with --grep), project dependencies, security testing (XSS, CSRF, auth), performance budgets (Web Vitals, Lighthouse), iframes, component testing, canvas/WebGL, service workers/PWA, test coverage, i18n/localization, Electron apps, or browser extension testing. Covers E2E, component, API, visual, accessibility, security, Electron, and extension testing.",{"claudeCode":523},"currents-dev/playwright-best-practices-skill","playwright-best-practices","https://github.com/currents-dev/playwright-best-practices-skill",{"basePath":258,"githubOwner":527,"githubRepo":528,"locale":18,"slug":528,"type":249},"currents-dev","playwright-best-practices-skill",{"evaluate":530,"extract":536},{"promptVersionExtension":205,"promptVersionScoring":206,"score":395,"tags":531,"targetMarket":217,"tier":218},[213,215,532,533,397,534,535],"typescript","e2e","debugging","ci-cd",{"commitSha":277},{"repoId":538},"kd77ayvtb7bpbf2cjy3n64zekd86ndw6",[397,535,534,533,213,215,532],{"evaluatedAt":541,"extractAt":542,"updatedAt":543},1778685761971,1778685735333,1778685791119]