AI Security Review
scanned 3h ago · by lpm-firewall-aiInstall-time code fetches an unpinned, unchecked executable and stores it in the package directory. A later `/nvim` command executes that binary.
Static reason
One or more suspicious static signals were detected.
Trigger
npm installation, then explicit `/nvim` command use
Impact
A compromised or changed release/redirect could supply arbitrary code for later local execution.
Mechanism
remote binary download followed by user-command execution
Rationale
The package has no confirmed malicious payload in the inspected source, but its install hook introduces an unchecked remote executable supply chain. This warrants a warning rather than a block under the stated policy.
Evidence
package.jsonscripts/postinstall.jscommands/nvim.mdREADME.mdbin/ocnvim
Network endpoints1
github.com/mauri870/opencode-nvim/releases/latest/download/ocnvim-${target}
Decision evidence
public snapshotAI called this Suspicious at 91.0% confidence as Dangerous Capability with low false-positive risk.
Evidence for warning
- `package.json` runs `scripts/postinstall.js` on install.
- `scripts/postinstall.js` downloads a platform binary from GitHub Releases using `latest`.
- The installer follows redirect locations without host validation or integrity checking.
- The downloaded `bin/ocnvim` is made executable.
- `commands/nvim.md` executes that binary through `execFileSync`.
Evidence against
- No source reads environment variables, credentials, or user files.
- No exfiltration, destructive operations, or foreign AI-agent config writes are present.
- The binary is placed only under this package's `bin/` directory.
- Execution from the command is user-triggered and uses argument-array `execFileSync`.
Behavioral surface
FilesystemNetwork
UrlStrings
Source & flagged code
2 flagged · loading sourcepackage.jsonView file
•scripts.postinstall = node scripts/postinstall.js
High
Install Time Lifecycle Scripts
Package defines install-time lifecycle scripts.
package.jsonView on unpkg•scripts.postinstall = node scripts/postinstall.js
Medium
Ambiguous Install Lifecycle Script
Install-time lifecycle script is not statically allowlisted and needs review.
package.jsonView on unpkgFindings
1 High2 Medium3 Low
HighInstall Time Lifecycle Scriptspackage.json
MediumAmbiguous Install Lifecycle Scriptpackage.json
MediumNetwork
LowScripts Present
LowFilesystem
LowUrl Strings