chrome-ext-security — independently scanned and version-tracked by SaferSkills.
SaferSkills independently audited chrome-ext-security (Agent Skill) and scored it 100/100 (green). The audit ran 55 deterministic rules across Security, Supply Chain, Maintenance, Transparency, and Community; it found 0 high-severity and 0 lower-severity findings. The full rule-by-rule trace and per-finding evidence are below. Free, methodology-open.
Findings & checks · 0 flagged
Every scanned point with the score it earned and what moved between them.
First recorded scan — no prior version to compare against.
The primary manifest — the file an agent reads to learn what this artifact does.
MV3 enforces a strict security model. All executable code must be bundled locally. The Content Security Policy bans eval() and remote scripts. Content scripts operate in an isolated world but share a DOM with potentially hostile pages. The service worker is the trusted core — all messages from content scripts must be validated.
All executable JavaScript must be bundled locally within the extension package. No fetching scripts from CDNs, no dynamically loaded SDKs. Violating this triggers Blue Argon CWS rejection.
These are banned in standard extension contexts:
eval()new Function(string)setTimeout(string) / setInterval(string)Escape hatches for legitimate needs:
userScripts API (Chrome 120+) for user script managerswasm-unsafe-eval in CSP for WebAssemblyDeclared as an object (not a string). No remote domains in script-src, worker-src, object-src, or style-src:
{
"content_security_policy": {
"extension_pages": "script-src 'self'; object-src 'self'",
"sandbox": "sandbox allow-scripts; script-src 'self' 'unsafe-eval'"
}
}Standard minification (whitespace removal, variable shortening) is allowed. Base64 encoding logic, character encoding to hide functionality, or other obfuscation triggers Red Titanium rejection.
Content scripts share an execution environment with potentially malicious web pages. The service worker must:
eval(), innerHTML, or other injection sinksWhen injecting UI into web pages:
textContent or innerText instead of innerHTML for textdocument.createElement() for DOM constructionfetch() calls are subject to host page CSPNPM packages may internally use eval() or new Function(). This violates MV3 CSP and causes CWS rejection. Audit dependencies for:
Isolate unavoidable dynamic code in sandboxed iframes.
~30 seconds. Free. No account. Every finding cites a rule and a line of evidence.