Repository navigation
[False Positive?] Windows Defender detects Trojan:Win32/Wacatac.H!ml when running opencode #7592
Description
Description
I am encountering a critical issue where Windows Security (Windows Defender) flags and quarantines files immediately upon running opencode in PowerShell. The detection is identified as Trojan:Win32/Wacatac.H!ml.
I am strictly using opencode-antigravity-auth from this repository.
To Reproduce
- Open PowerShell.
- Run
opencode. - Windows Security immediately triggers a "Threat quarantined" notification.
Expected behavior
The tool should execute without triggering antivirus heuristics.
Screenshots
Note: The affected items point to temporary
.dllfiles generated inAppData\Local\Temp.
Environment
- OS: Windows 11 Pro
- Shell: PowerShell
- OpenCode: 1.1.11
- Plugin Version:
opencode-antigravity-auth@beta
Configuration Files
Here is my current configuration setup:
antigravity.json:
{
"$schema": "https://raw.githubusercontent.com/NoeFabris/opencode-antigravity-auth/main/assets/antigravity.schema.json",
"auto_update": true
}
opencode.json:
{
"$schema": "https://opencode.ai/config.json",
"model": "google/antigravity-claude-opus-4-5-thinking:max",
"plugin": ["opencode-antigravity-auth@beta"],
"agent": {
"build": {
"mode": "primary",
"model": "google/antigravity-claude-opus-4-5-thinking",
"thinkingConfig": { "thinkingBudget": 32768 },
"tools": {
"write": true,
"edit": true,
"bash": true
}
},
"plan": {
"mode": "primary",
"model": "github-copilot/claude-opus-4.5",
"tools": {
"write": false,
"edit": false,
"bash": false
}
},
"code-reviewer": {
"description": "Reviews code for best practices and potential issues",
"mode": "subagent",
"model": "google/antigravity-claude-opus-4-5-thinking",
"thinkingConfig": { "thinkingBudget": 32768 },
"prompt": "You are a code reviewer. Focus on security, performance, and maintainability.",
"tools": {
"write": false,
"edit": false
}
}
},
"mcp": {
"context7": {
"type": "remote",
"url": "https://mcp.context7.com/mcp",
"headers": {
"CONTEXT7_API_KEY": "XXXXXX"
},
"enabled": true
}
},
"provider": {
"google": {
"models": {
"antigravity-gemini-3-pro": {
"name": "Gemini 3 Pro (Antigravity)",
"limit": { "context": 1048576, "output": 65535 },
"modalities": { "input": ["text", "image", "pdf"], "output": ["text"] },
"variants": {
"low": { "thinkingLevel": "low" },
"high": { "thinkingLevel": "high" }
}
},
"antigravity-gemini-3-flash": {
"name": "Gemini 3 Flash (Antigravity)",
"limit": { "context": 1048576, "output": 65536 },
"modalities": { "input": ["text", "image", "pdf"], "output": ["text"] },
"variants": {
"minimal": { "thinkingLevel": "minimal" },
"low": { "thinkingLevel": "low" },
"medium": { "thinkingLevel": "medium" },
"high": { "thinkingLevel": "high" }
}
},
"antigravity-claude-sonnet-4-5": {
"name": "Claude Sonnet 4.5 (no thinking) (Antigravity)",
"limit": { "context": 200000, "output": 64000 },
"modalities": { "input": ["text", "image", "pdf"], "output": ["text"] }
},
"antigravity-claude-sonnet-4-5-thinking": {
"name": "Claude Sonnet 4.5 Thinking (Antigravity)",
"limit": { "context": 200000, "output": 64000 },
"modalities": { "input": ["text", "image", "pdf"], "output": ["text"] },
"variants": {
"low": { "thinkingConfig": { "thinkingBudget": 8192 } },
"max": { "thinkingConfig": { "thinkingBudget": 32768 } }
}
},
"antigravity-claude-opus-4-5-thinking": {
"name": "Claude Opus 4.5 Thinking (Antigravity)",
"limit": { "context": 200000, "output": 64000 },
"modalities": { "input": ["text", "image", "pdf"], "output": ["text"] },
"variants": {
"low": { "thinkingConfig": { "thinkingBudget": 8192 } },
"max": { "thinkingConfig": { "thinkingBudget": 32768 } }
}
},
"gemini-2.5-flash": {
"name": "Gemini 2.5 Flash (Gemini CLI)",
"limit": { "context": 1048576, "output": 65536 },
"modalities": { "input": ["text", "image", "pdf"], "output": ["text"] }
},
"gemini-2.5-pro": {
"name": "Gemini 2.5 Pro (Gemini CLI)",
"limit": { "context": 1048576, "output": 65536 },
"modalities": { "input": ["text", "image", "pdf"], "output": ["text"] }
},
"gemini-3-flash-preview": {
"name": "Gemini 3 Flash Preview (Gemini CLI)",
"limit": { "context": 1048576, "output": 65536 },
"modalities": { "input": ["text", "image", "pdf"], "output": ["text"] }
},
"gemini-3-pro-preview": {
"name": "Gemini 3 Pro Preview (Gemini CLI)",
"limit": { "context": 1048576, "output": 65535 },
"modalities": { "input": ["text", "image", "pdf"], "output": ["text"] }
}
}
}
}
}
Additional Context
The !ml suffix in the threat name suggests this is a Machine Learning heuristic detection, which is often a false positive for unsigned binaries or tools that generate temporary DLLs at runtime. Could you please verify if the release binaries are signed or if there is a known issue with the unpacking process?
Activity
github-actions commentedon Jan 10, 2026
This issue might be a duplicate of existing issues. Please check:
These appear to be recurring false positive detections by Windows Defender's ML/heuristic signatures. Issue #3415 is the main tracking issue with a comprehensive action plan including code-signing, checksums, and SBOM generation.
Feel free to ignore if this is a different or more specific case than those listed above.
markusbegerow commentedon Jan 10, 2026
Very good description @saliksik!
I can confirm the triggering antivirus heuristics.
sollozzo13 commentedon Jan 10, 2026
Same! I don't trust this sh.t anymore. It infected my PC. Get rid of it.
mmcgill commentedon Jan 10, 2026
I see the same behavior, with similarly named DLLs in that temp directory.
npm install -g opencode-ai(native windows Node installation)Looking at specific versions of the
opencode-aiNPM package:mmcgill commentedon Jan 10, 2026
For those affected who are ok running an older version while this gets sorted, see #1793 for a couple options to disable auto-update.
Xavier-Burger commentedon Jan 10, 2026
Which version was last stable? I opened an issue just now not realizing this had already been raised. I was on v1.1.11 througout the week and was running fine. When I updated to v1.1.12 I encountered the false positive. In my issue, I show uninstalling and re-installing. And installing v1.1.11 explicitely. same false positive.
Xavier-Burger commentedon Jan 10, 2026
Try these steps, 1.1.8 seems to not raise the false positive for now:
#7655 (comment)
flupkede commentedon Jan 10, 2026
in powershell admin use :
Remove-MpPreference -ExclusionProcess "opencode.exe"However when you see files like .3aebfebd1ffffffd-00000000.dll in Temp it's like asking for trouble and say Hi! I'm a virus, please scan and detect me. If they would use an %appdata%\Opencode folder and have dll's likelanguageserver
│ ├── typescript-language-server.dll
│ └── python-language-server.dll
maybe ms would not detect it as scam. Use decent paths and decent file names and it could already be better, dll's shouldn't be generated in temp with random names. And if you do require something random in the filename, use the PID instead ?
Plutarch01 commentedon Jan 13, 2026
This has been a recurring issue. I'd appreciate it if you could work with MS Defender team to resolve it. Thanks
rekram1-node commentedon Jan 13, 2026
I'll try to get code signing setup soon to avoid these false positives
thdxr commentedon Mar 25, 2026
To stay organized issues are automatically closed after 90 days of no activity. If the issue is still relevant please open a new one.
Hona commentedon Mar 29, 2026
As of OpenCode v1.3.4 across the CLI + Desktop apps, we have full code signing - so there should be no more warnings.
Please let me know otherwise