npm

trimprompt @1.0.49

Vulnerability report · Last retrieved from osv.dev August 7, 2026 at 2:10 AM UTC

Malicious

OSV ID

MAL-2026-13462

Ecosystem

npm

Summary

The package trimprompt@1.0.47 ships a large set of heavily obfuscated JavaScript modules (hex-mangled identifiers _0x... across cache-manager.js, cache.js, ccr.js, dashboard.js, executor.js, file-watcher.js, hooks/claude-hook.js, mcp.js, proxy-conv.js, proxy-resp.js, redactor.js, seed.js, simulate.js, sync.js, tracker.js, and all filters/*.js) whose original structure and destinations are deliberately hidden. Two of these obfuscated files (sync.js and tracker.js) additionally combine require('child_process') with HTTP POST calls carrying host/identifier fields — the shape of host-reconnaissance and outbound reporting to a remote endpoint. A postinstall.js script auto-executes on npm install and spawns PowerShell ( spawn('powershell',...) ), and shims.js also invokes child_process and runs execSync('pwsh...') , providing an install-time and load-time execution surface on Windows hosts. The combination of pervasive identifier-level obfuscation across nearly every module, a PowerShell-spawning postinstall lifecycle hook, and obfuscated modules that pair child_process with HTTP POST of host identifiers is inconsistent with a legitimate prompt-trimming utility and matches the shape of an install-time execution + host-beaconing supply-chain payload. Concrete destination hostnames/URLs are hidden behind the string-array obfuscation and are not recoverable from identifier evidence alone.

Source: amazon-inspector (202ef6d02c8fa917e9515b448972c19a209007f858b17d236a74857f3fe4febb)

Protect your entire dependency tree

Scan your lock files automatically on every PR. Block malicious packages before they reach production.