ExtGuardAudit the VS Code extensions already installed on your machine. Entirely local. Install: Your extensions run with your full privilegesVS Code has no permission model. Any extension with a The median developer has around 80 installed and has audited none of them. ExtGuard reads what is already on disk and tells you which extensions earned their access. What it checksKnown-malicious IDs. Every installed extension is checked against 1,981 malicious records and 1,300 blocked publishers, aggregated from public threat feeds including Microsoft's own removed-packages list. The database ships inside the extension, so this check never touches the network. Hardcoded secrets. AWS keys, GitHub and GitLab tokens, Slack webhooks and OAuth tokens, Stripe keys, Google API keys, npm tokens, private key blocks, and Azure DevOps PATs. A leaked publisher PAT is the one that matters most: it lets an attacker ship an update to somebody else's extension. Capability signals. What each manifest reveals about reach, and what the shipped code
actually calls: process spawning, dynamic evaluation, outbound connections, and reads of
credential stores such as A risk score per extension, worst first, in a sidebar panel. Every finding cites the file and line that caused it. See it in actionInstalled extensions are sorted by risk, while clean extensions stay visibly green:
Findings identify the behavior and the exact shipped file and line:
High capability is explained separately from a security accusation:
It is built to not cry wolfThis is the part most scanners get wrong, so it is worth being specific. An early build of ExtGuard produced 2,850 findings across 57 of 82 extensions on a clean machine. That is not a security tool, it is a tool you learn to ignore. The current build produces zero critical or high findings on the same machine. Two decisions did most of that work. Behaviour is not a verdict. Rules that look for process spawning or network calls run only on readable source, never on minified bundles, JSON schemas or documentation. Matching the word "request" inside a schema description is not a network call. Broad capability is not a threat. Jupyter, the PowerShell extension, GitLens and AI coding agents execute code and read your codebase because that is their entire purpose. ExtGuard labels these as capability, with an explanation, and never as findings. A tool that opens by calling Microsoft's own PowerShell extension a threat has told you nothing except that it cannot be trusted. What it is notNot antivirus, and not a sandbox. It cannot stop an extension that is already running. It reports what is installed and what it can reach, so the decision is yours. A clean result means these specific checks found nothing, not that every extension is safe. Privacy, which is the whole pointA tool that audits your editor for spyware cannot itself phone home.
Full detail in SECURITY.md. CompatibilityVS Code, Cursor, Windsurf, and any editor built on the VS Code API v1.75 or later. Getting started
Upgrading from the original 1.0.0 buildThe permanent Marketplace identity is now Commands
Settings
Development
LicenseMIT |


