[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"extension-marketplace-lackeyjb-playwright-skill-en":3,"guides-for-lackeyjb-playwright-skill":334,"similar-k17dcvyy3hvpjxydjrvvgd0nv186nadc-en":335},{"_creationTime":4,"_id":5,"children":6,"community":48,"display":49,"evaluation":54,"identity":260,"isFallback":246,"parentExtension":262,"providers":263,"relations":269,"repo":270,"tags":331,"workflow":332},1778692034553.1611,"k17dcvyy3hvpjxydjrvvgd0nv186nadc",[7],{"_creationTime":8,"_id":9,"community":10,"display":12,"identity":17,"providers":22,"relations":41,"tags":43,"workflow":44},1778692034553.1614,"k17fkw9kn50815w60208r9r3hh86m1ad",{"reviewCount":11},0,{"description":13,"installMethods":14,"name":15,"sourceUrl":16},"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.",{"claudeCode":15},"playwright-skill","https://github.com/lackeyjb/playwright-skill",{"basePath":18,"githubOwner":19,"githubRepo":15,"locale":20,"slug":15,"type":21},"","lackeyjb","en","plugin",{"evaluate":23,"extract":35},{"promptVersionExtension":24,"promptVersionScoring":25,"score":26,"tags":27,"targetMarket":33,"tier":34},"3.0.0","4.4.0",98,[28,29,30,31,32],"playwright","browser-automation","testing","node-js","typescript","global","verified",{"commitSha":36,"license":37,"plugin":38},"HEAD","MIT",{"mcpCount":11,"provider":39,"skillCount":40},"classify",1,{"parentExtensionId":5,"repoId":42},"kd76wgbx2e4esthhfdhg025gr186nhxg",[29,31,28,30,32],{"evaluatedAt":45,"extractAt":46,"updatedAt":47},1778692100488,1778692034553,1778692164343,{"reviewCount":11},{"description":50,"installMethods":51,"name":53,"sourceUrl":16},"Playwright browser automation skill for Claude Code",{"claudeCode":52},"lackeyjb/playwright-skill","Playwright Skill",{"_creationTime":55,"_id":56,"extensionId":5,"locale":20,"result":57,"trustSignals":244,"workflow":258},1778692058733.4526,"kn787ppav7krervxvxcwg8vbkh86m7bk",{"checks":58,"evaluatedAt":204,"extensionSummary":205,"features":206,"nonGoals":212,"practices":216,"prerequisites":221,"promptVersionExtension":225,"promptVersionScoring":25,"purpose":226,"rationale":227,"score":228,"summary":229,"tags":230,"targetMarket":33,"tier":34,"useCases":233,"workflow":238},[59,64,67,70,74,77,82,86,89,92,96,100,103,107,110,113,116,119,122,125,129,133,137,141,145,148,151,154,158,161,164,167,170,173,176,180,184,188,191,195,198,201],{"category":60,"check":61,"severity":62,"summary":63},"Practical Utility","Problem relevance","pass","The description clearly states that the skill provides general-purpose browser automation for Claude Code, addressing the need for automated browser interactions.",{"category":60,"check":65,"severity":62,"summary":66},"Unique selling proposition","The skill allows Claude to write and execute custom Playwright automation on-the-fly, offering significant value beyond default LLM capabilities by enabling complex, task-specific browser interactions.",{"category":60,"check":68,"severity":62,"summary":69},"Production readiness","The extension provides a complete lifecycle for browser automation tasks, including setup, execution with visible browser by default, and safe cleanup, making it ready for real workflows.",{"category":71,"check":72,"severity":62,"summary":73},"Scope","Single responsibility principle","The extension is focused on Playwright browser automation, a single coherent domain, and does not include unrelated capabilities.",{"category":71,"check":75,"severity":62,"summary":76},"Description quality","The description accurately and concisely reflects the skill's purpose of enabling Playwright browser automation within Claude Code.",{"category":78,"check":79,"severity":80,"summary":81},"Invocation","Scoped tools","not_applicable","This extension is a marketplace listing and does not expose tools directly.",{"category":83,"check":84,"severity":62,"summary":85},"Documentation","Configuration & parameter reference","The README and configuration section clearly document default settings for headless mode, slow motion, timeout, and screenshot locations.",{"category":71,"check":87,"severity":80,"summary":88},"Tool naming","As a marketplace entry, this extension does not expose user-facing tools.",{"category":71,"check":90,"severity":80,"summary":91},"Minimal I/O surface","This is a marketplace extension and does not have tools with parameter schemas or response shapes.",{"category":93,"check":94,"severity":62,"summary":95},"License","License usability","The LICENSE file clearly indicates an MIT license, which is a permissive open-source license.",{"category":97,"check":98,"severity":62,"summary":99},"Maintenance","Commit recency","The last commit was on December 19, 2025, which is within the last 3 months.",{"category":97,"check":101,"severity":62,"summary":102},"Dependency Management","The `npm run setup` script handles Playwright and browser installations, effectively managing third-party dependencies.",{"category":104,"check":105,"severity":62,"summary":106},"Security","Secret Management","The extension does not appear to handle or expose secrets. Playwright operations are confined to the browser context and local temporary files.",{"category":104,"check":108,"severity":62,"summary":109},"Injection","The README emphasizes that Claude writes custom code, implying that user input is treated as data for code generation rather than direct execution.",{"category":104,"check":111,"severity":62,"summary":112},"Transitive Supply-Chain Grenades","The installation instructions recommend using released versions or cloning the repository, and the `npm run setup` script installs dependencies locally, preventing runtime downloads of unverified code.",{"category":104,"check":114,"severity":62,"summary":115},"Sandbox Isolation","The skill operates within the browser context and manages temporary files locally, with no indication of attempting to modify files outside its designated scope.",{"category":104,"check":117,"severity":62,"summary":118},"Sandbox escape primitives","No evidence of detached-process spawns or deny-retry loops that would facilitate sandbox escapes.",{"category":104,"check":120,"severity":62,"summary":121},"Data Exfiltration","The extension focuses on browser automation and does not contain instructions or mechanisms for reading and submitting confidential data to third parties.",{"category":104,"check":123,"severity":62,"summary":124},"Hidden Text Tricks","The bundled files and README do not contain hidden steering tricks, invisible Unicode characters, or other obfuscation methods.",{"category":126,"check":127,"severity":62,"summary":128},"Hooks","Opaque code execution","The `run.js` executor and `package.json` scripts appear to be standard Node.js code, without obfuscation, eval, or runtime fetches for executable content.",{"category":130,"check":131,"severity":62,"summary":132},"Portability","Structural Assumption","The installation instructions provide clear paths for global and project-specific installations, and `npm run setup` is designed to be run within the skill's directory.",{"category":134,"check":135,"severity":62,"summary":136},"Trust","Issues Attention","There are 0 open issues and 0 closed issues in the last 90 days, indicating active maintenance or low user issue reporting.",{"category":138,"check":139,"severity":62,"summary":140},"Versioning","Release Management","The `marketplace.json` and `package.json` both declare a version (`1.0.0` and `4.1.0` respectively), and GitHub releases are available.",{"category":142,"check":143,"severity":62,"summary":144},"Code Execution","Validation","The `run.js` executor and the use of Playwright imply robust validation and sanitization of inputs for browser automation tasks.",{"category":104,"check":146,"severity":62,"summary":147},"Unguarded Destructive Operations","Browser automation operations are contained within the browser sandbox and temporary files; no destructive filesystem operations outside this scope are evident.",{"category":142,"check":149,"severity":62,"summary":150},"Error Handling","The use of Node.js and Playwright suggests that errors during automation will be caught and reported meaningfully through the executor.",{"category":142,"check":152,"severity":62,"summary":153},"Logging","The README mentions screenshots are saved to `/tmp/` and console output is returned, implying a form of logging for review.",{"category":155,"check":156,"severity":62,"summary":157},"Compliance","GDPR","The skill operates on browser content and local temporary files; it does not appear to process personal data directly.",{"category":155,"check":159,"severity":62,"summary":160},"Target market","The extension's functionality is general browser automation and does not exhibit any regional or jurisdictional logic.",{"category":130,"check":162,"severity":62,"summary":163},"Runtime stability","The skill is designed for Node.js and Playwright, which are cross-platform, and installation instructions cover different environments.",{"category":83,"check":165,"severity":62,"summary":166},"README","The README file is comprehensive, clearly stating the extension's purpose, features, installation, and usage.",{"category":71,"check":168,"severity":80,"summary":169},"Tool surface size","This is a marketplace extension, not a skill with a specific tool surface.",{"category":78,"check":171,"severity":80,"summary":172},"Overlapping near-synonym tools","As a marketplace extension, it does not expose tools that could have overlapping synonyms.",{"category":83,"check":174,"severity":62,"summary":175},"Phantom features","All advertised features, such as custom code generation and visible browser execution, are supported by the described functionality and installation process.",{"category":177,"check":178,"severity":62,"summary":179},"Install","Installation instruction","The README provides clear, multi-option installation instructions for both plugin and standalone skill, including setup steps and verification.",{"category":181,"check":182,"severity":62,"summary":183},"Errors","Actionable error messages","The README's troubleshooting section addresses common errors like Playwright installation and module not found, providing clear remediation steps.",{"category":185,"check":186,"severity":62,"summary":187},"Execution","Pinned dependencies","The `package.json` and `npm run setup` script manage dependencies, implying pinned versions are used for Playwright and its browsers.",{"category":71,"check":189,"severity":80,"summary":190},"Dry-run preview","As a browser automation tool, a true 'dry-run' is not applicable; however, the ability to see the browser and console output provides a form of preview.",{"category":192,"check":193,"severity":62,"summary":194},"Protocol","Idempotent retry & timeouts","The Playwright configuration specifies a '30s' timeout, and browser operations are generally idempotent within a single session.",{"category":155,"check":196,"severity":62,"summary":197},"Telemetry opt-in","There is no mention of telemetry collection in the README or configuration, implying no telemetry is emitted by default.",{"category":71,"check":199,"severity":62,"summary":200},"Theme declaration","The `marketplace.json` explicitly states the theme is 'testing' and categorizes the plugin as 'testing', indicating a clear curation focus.",{"category":138,"check":202,"severity":62,"summary":203},"Per-entry version metadata","The `marketplace.json` entry for 'playwright-skill' includes explicit version metadata ('4.1.0').",1778692058628,"This Claude Code plugin provides a skill for general-purpose browser automation using Playwright. It allows Claude to write and execute custom Playwright scripts on-the-fly, with a visible browser by default, and includes features for safe cleanup and optional utility functions.",[207,208,209,210,211],"Autonomous Playwright code generation and execution","Visible browser automation by default","Zero module resolution errors via universal executor","Progressive disclosure for concise documentation","Safe temporary file management and comprehensive helpers",[213,214,215],"Performing non-browser-related automation","Acting as a generic scripting tool outside of browser contexts","Replacing direct user interaction for tasks that do not require automation",[217,218,219,220],"Browser Automation","End-to-End Testing","Web Scraping","Automated Testing",[222,223,224],"Node.js","Playwright (installed via npm run setup)","Chromium (installed via npm run setup)","3.1.0","To empower Claude with the ability to perform complex browser automation tasks, enabling testing, UX validation, and other web interactions directly within the Claude Code environment.","The extension is highly polished with comprehensive documentation, strong security practices, and clear versioning. Minor opportunities for improvement in explicit dry-run capabilities do not detract from its overall quality.",97,"A robust and well-documented Playwright browser automation skill for Claude Code.",[28,29,30,231,232],"e2e","claude-code",[234,235,236,237],"Testing web page functionality and user flows","Validating responsive design across different viewports","Automating form submissions and user interactions","Performing visual testing and checking for broken links/images",[239,240,241,242,243],"User describes browser automation task","Claude writes custom Playwright code","Universal executor runs the code with proper module resolution","Browser opens visibly (default) and automation executes","Results displayed with console output and screenshots",{"codeQuality":245,"collectedAt":247,"documentation":248,"maintenance":251,"security":256,"testCoverage":257},{"hasLockfile":246},false,1778692037229,{"descriptionLength":249,"readmeSize":250},51,8587,{"closedIssues90d":11,"forks":252,"hasChangelog":246,"manifestVersion":253,"openIssues90d":11,"pushedAt":254,"stars":255},182,"1.0.0",1766161418000,2621,{"hasNpmPackage":246,"license":37,"smitheryVerified":246},{"hasCi":246,"hasTests":246},{"updatedAt":259},1778692058733,{"basePath":18,"githubOwner":19,"githubRepo":15,"locale":20,"slug":15,"type":261},"marketplace",null,{"evaluate":264,"extract":266},{"promptVersionExtension":225,"promptVersionScoring":25,"score":228,"tags":265,"targetMarket":33,"tier":34},[28,29,30,231,232],{"commitSha":36,"license":37,"marketplace":267,"plugin":268},{"name":15,"pluginCount":40},{"mcpCount":11,"provider":39,"skillCount":11},{"repoId":42},{"_creationTime":271,"_id":42,"identity":272,"providers":273,"workflow":327},1778692030667.4475,{"githubOwner":19,"githubRepo":15,"sourceUrl":16},{"classify":274,"discover":311,"github":314},{"commitSha":36,"extensions":275},[276,289,300],{"basePath":18,"description":50,"displayName":15,"installMethods":277,"rationale":278,"selectedPaths":279,"source":288,"sourceLanguage":20,"type":261},{"claudeCode":52},"marketplace.json at .claude-plugin/marketplace.json",[280,283,285],{"path":281,"priority":282},".claude-plugin/marketplace.json","mandatory",{"path":284,"priority":282},"README.md",{"path":286,"priority":287},"LICENSE","high","rule",{"basePath":18,"description":13,"displayName":15,"installMethods":290,"license":37,"rationale":291,"selectedPaths":292,"source":288,"sourceLanguage":20,"type":21},{"claudeCode":15},"plugin manifest at .claude-plugin/plugin.json",[293,295,296,297],{"path":294,"priority":282},".claude-plugin/plugin.json",{"path":284,"priority":282},{"path":286,"priority":287},{"path":298,"priority":299},"skills/playwright-skill/SKILL.md","medium",{"basePath":301,"description":302,"displayName":15,"installMethods":303,"rationale":304,"selectedPaths":305,"source":288,"sourceLanguage":20,"type":310},"skills/playwright-skill","Complete browser automation with Playwright. Auto-detects dev servers, writes clean test scripts to /tmp. Test pages, fill forms, take screenshots, check responsive design, validate UX, test login flows, check links, automate any browser task. Use when user wants to test websites, automate browser interactions, validate web functionality, or perform any browser-based testing.",{"claudeCode":52},"SKILL.md frontmatter at skills/playwright-skill/SKILL.md",[306,308],{"path":307,"priority":282},"SKILL.md",{"path":309,"priority":299},"API_REFERENCE.md","skill",{"sources":312},[313],"manual",{"closedIssues90d":11,"description":315,"forks":252,"license":37,"openIssues90d":11,"pushedAt":254,"readmeSize":250,"stars":255,"topics":316},"Claude Code Skill for browser automation with Playwright. Model-invoked - Claude autonomously writes and executes custom automation for testing and validation.",[317,318,29,319,232,320,321,322,323,28,324,325,326],"ai-tools","automation","claude","claude-skills","developer-tools","e2e-testing","nodejs","web-testing","claude-plugin","model-invoked",{"classifiedAt":328,"discoverAt":329,"extractAt":330,"githubAt":330,"updatedAt":328},1778692034254,1778692030667,1778692032521,[29,232,231,28,30],{"evaluatedAt":259,"extractAt":46,"updatedAt":333},1778692164522,[],[336,366,396,428],{"_creationTime":337,"_id":338,"community":339,"display":340,"identity":346,"providers":348,"relations":359,"tags":361,"workflow":362},1778696712851.9736,"k1730g2nnwga3htdfycmc8h1gd86m3cs",{"reviewCount":11},{"description":341,"installMethods":342,"name":344,"sourceUrl":345},"2x the effective context with smart weight-loss for Claude Code — prune bloated sessions, protect agent teams from compaction, monitor token usage with MCP tools",{"claudeCode":343},"Ruya-AI/cozempic","cozempic","https://github.com/Ruya-AI/cozempic",{"basePath":18,"githubOwner":347,"githubRepo":344,"locale":20,"slug":344,"type":261},"Ruya-AI",{"evaluate":349,"extract":356},{"promptVersionExtension":225,"promptVersionScoring":25,"score":350,"tags":351,"targetMarket":33,"tier":34},100,[352,353,232,354,355],"context","optimization","session-management","ai-productivity",{"commitSha":36,"marketplace":357,"plugin":358},{"name":344,"pluginCount":40},{"mcpCount":11,"provider":39,"skillCount":11},{"repoId":360},"kd79d77qmyh3826dwhk7ynx9xd86nmqm",[355,232,352,353,354],{"evaluatedAt":363,"extractAt":364,"updatedAt":365},1778696729067,1778696712852,1778696924064,{"_creationTime":367,"_id":368,"community":369,"display":370,"identity":376,"providers":381,"relations":390,"tags":392,"workflow":393},1778691765524.3726,"k17c1ndsb7hncr0k5vadc69rnx86njvh",{"reviewCount":11},{"description":371,"installMethods":372,"name":374,"sourceUrl":375},"🪨 why use many token when few token do trick — Claude Code skill that cuts 65% of tokens by talking like caveman",{"claudeCode":373},"juliusbrussee/caveman","caveman-repo","https://github.com/juliusbrussee/caveman",{"basePath":377,"githubOwner":378,"githubRepo":379,"locale":20,"slug":380,"type":261},".agents/plugins","juliusbrussee","caveman","plugins",{"evaluate":382,"extract":388},{"promptVersionExtension":225,"promptVersionScoring":25,"score":350,"tags":383,"targetMarket":33,"tier":34},[384,385,386,232,387],"token-compression","llm-efficiency","cli","prompt-engineering",{"commitSha":36,"marketplace":389},{"name":374,"pluginCount":11},{"repoId":391},"kd7890f0sfy0ymf1pakpx7vqch86nmew",[232,386,385,387,384],{"evaluatedAt":394,"extractAt":395,"updatedAt":394},1778691782274,1778691765524,{"_creationTime":397,"_id":398,"community":399,"display":400,"identity":406,"providers":409,"relations":422,"tags":424,"workflow":425},1778683562157.875,"k174pnm5ch9ab6fr1etef2f2b586m74b",{"reviewCount":11},{"description":401,"installMethods":402,"name":404,"sourceUrl":405},"Persistent memory and cognitive profiling plugins for Claude Code",{"claudeCode":403},"cdeust/Cortex","cortex-plugins","https://github.com/cdeust/Cortex",{"basePath":18,"githubOwner":407,"githubRepo":408,"locale":20,"slug":408,"type":261},"cdeust","Cortex",{"evaluate":410,"extract":419},{"promptVersionExtension":225,"promptVersionScoring":25,"score":350,"tags":411,"targetMarket":33,"tier":34},[412,413,414,232,415,416,417,418],"memory","cognitive-profiling","mcp","knowledge-graph","codebase-analysis","postgresql","pgvector",{"commitSha":36,"marketplace":420,"plugin":421},{"name":404,"pluginCount":40},{"mcpCount":11,"provider":39,"skillCount":11},{"repoId":423},"kd79gxpemvkr09a7zsb3h8kmah86nvgf",[232,416,413,415,414,412,418,417],{"evaluatedAt":426,"extractAt":427,"updatedAt":426},1778683583007,1778683562157,{"_creationTime":429,"_id":430,"community":431,"display":432,"identity":438,"providers":440,"relations":449,"tags":451,"workflow":452},1778698388090.9072,"k171hvn0e2t3jzczxm3vzspj3186mgj7",{"reviewCount":11},{"description":433,"installMethods":434,"name":436,"sourceUrl":437},"Browser automation for AI agents",{"claudeCode":435},"vercel-labs/agent-browser","agent-browser","https://github.com/vercel-labs/agent-browser",{"basePath":18,"githubOwner":439,"githubRepo":436,"locale":20,"slug":436,"type":261},"vercel-labs",{"evaluate":441,"extract":446},{"promptVersionExtension":225,"promptVersionScoring":25,"score":442,"tags":443,"targetMarket":33,"tier":34},99,[29,386,444,30,445],"webdriver","ai-agent",{"commitSha":36,"marketplace":447,"plugin":448},{"name":436,"pluginCount":40},{"mcpCount":11,"provider":39,"skillCount":11},{"repoId":450},"kd74a6sfc26xa0ec2tpntj8r2986mn0a",[445,29,386,30,444],{"evaluatedAt":453,"extractAt":454,"updatedAt":455},1778698406247,1778698388091,1778698675865]