VS Code Extension
The pompelmi VS Code extension lets developers scan files for viruses directly from the IDE — right-click any file in the Explorer or run Scan Workspace from the Command Palette.
Status: scaffold available in
packages/vscode/.
Marketplace publication coming soon.
Installation
Requirements
- ClamAV installed locally, or clamd running via Docker
- Node.js and npm available in PATH (for
npx pompelmi)
Install from Marketplace (coming soon)
- Open VS Code
- Press
Ctrl+P(Cmd+Pon macOS) - Run:
ext install pompelmi.pompelmi
Install from source
git clone https://github.com/pompelmi/pompelmi.git
cd pompelmi/packages/vscode
npm install -g vsce
vsce package
code --install-extension pompelmi-*.vsix
Commands
| Command | ID | Description |
|---|---|---|
| Scan with pompelmi | pompelmi.scanFile |
Right-click any file in Explorer → "Scan with pompelmi". Also works on the active editor file. |
| Scan Workspace | pompelmi.scanWorkspace |
Scans every file in the first workspace folder recursively. |
| Configure pompelmi | pompelmi.configure |
Opens VS Code settings filtered to pompelmi options. |
Notifications
Scan results appear as VS Code notifications:
✅ document.pdf — Clean
🚨 malware.exe — INFECTED (Win.Malware.Agent)
⚠️ archive.zip — Scan error
Settings
| Setting | Default | Description |
|---|---|---|
pompelmi.host |
localhost |
clamd host |
pompelmi.port |
3310 |
clamd port |
pompelmi.socket |
(empty) | clamd UNIX socket path (takes precedence over host/port when set) |
Add to your settings.json:
{
"pompelmi.host": "localhost",
"pompelmi.port": 3310
}
Using with Docker
Start clamd via the official pompelmi Docker image, then point the extension at it:
docker run -p 3310:3310 -p 8080:8080 justsouichi/pompelmi-scanner
{
"pompelmi.host": "localhost",
"pompelmi.port": 3310
}
See Docker Hub Image for the full guide.
Source code
The extension scaffold is in packages/vscode/.
File structure:
packages/vscode/
package.json — VS Code extension manifest
src/
extension.js — activate / deactivate entry point
README.md
Contributions welcome! Open an issue or PR on GitHub.