Is @yeaft/webchat-agent safe?
147 versions of @yeaft/webchat-agent were compromised. Other versions are not flagged as malicious.
Do not install the 147 versions listed below
CRITICALCompromised releases. Added to CyberXYZ 2026-07-16, OSV malicious-package feed (Google / OpenSSF).
The package installs itself as a user-level service (systemd on Linux via service/linux.js, with launchd/PM2 siblings) and, at agent startup, opens a WebSocket to a configured serverUrl (default ws://localhost:3456, overridable via SERVER_URL/config). The WebSocket message router in connection/message-router.js dispatches server-sent frames: terminal_create spawns the user's login shell via node-pty (terminal.js: pty.spawn(shell,...)) in the agent's workDir, and terminal_input writes the server's msg.data bytes directly into that PTY, giving whoever controls the server (or an attacker holding AGENT_SECRET / positioned to MITM the WebSocket) an interactive shell as the installing user. An upgrade_agent message handled by connection/upgrade.js runs npm install @yeaft/webchat-agent@latest --registry=https://pkg.yeaft.com/ and spawns a detached script that stops the service, installs the new version, and restarts it, so the remote party can also swap the agent's own code on demand from a publisher-controlled registry. On every startup, index.js additionally git-clones https://github.com/yeaft/yeaft-skills.git from the mutable main branch into ~/.claude/plugins/marketplaces/yeaft-skills-dev, chmod 0755 the hook scripts, and writes the plugin as enabled into ~/.claude/settings.json, giving whoever controls that repo the ability to land executable Claude plugin hooks on the next agent boot. The service/linux.js unit also prepends ~/.local/bin and ~/.npm-global/bin to PATH in the service environment. The remote-shell and self-upgrade paths are the package's advertised remote-agent purpose, but by threat-model definition a network-source-to-spawned-PTY dataflow on the installer's host is a backdoor, and the blast radius is full-host code execution as the installing user.
Reported by Amazon Inspector via OSV.
- Malicious
- 1.0.171, 1.0.199, 1.0.325, 1.0.376, 1.0.189, 1.0.283, 1.0.252, 1.0.238, 1.0.243, 1.0.282, 1.0.216, 1.0.184, 1.0.352, 1.0.329, 1.0.361, 1.0.281, 1.0.217, 1.0.188, 1.0.312, 1.0.350, 1.0.253, 1.0.355, 1.0.300, 1.0.206, 1.0.257, 1.0.226, 1.0.337, 1.0.309, 1.0.273, 1.0.311, 1.0.269, 1.0.289, 1.0.258, 1.0.222, 1.0.374, 1.0.224, 1.0.351, 1.0.336, 1.0.335, 1.0.242, 1.0.307, 1.0.172, 1.0.228, 1.0.219, 1.0.321, 1.0.249, 1.0.211, 1.0.371, 1.0.368, 1.0.244, 1.0.262, 1.0.344, 1.0.180, 1.0.237, 1.0.334, 1.0.323, 1.0.250, 1.0.315, 1.0.298, 1.0.354, 1.0.227, 1.0.332, 1.0.274, 1.0.182, 1.0.378, 1.0.245, 1.0.369, 1.0.192, 1.0.194, 1.0.220, 1.0.338, 1.0.296, 1.0.232, 1.0.367, 1.0.202, 1.0.310, 1.0.324, 1.0.341, 1.0.308, 1.0.255, 1.0.364, 1.0.198, 1.0.204, 1.0.247, 1.0.277, 1.0.290, 1.0.203, 1.0.263, 1.0.201, 1.0.254, 1.0.288, 1.0.278, 1.0.349, 1.0.183, 1.0.235, 1.0.175, 1.0.260, 1.0.365, 1.0.285, 1.0.239, 1.0.295, 1.0.353, 1.0.331, 1.0.193, 1.0.384, 1.0.185, 1.0.342, 1.0.240, 1.0.304, 1.0.246, 1.0.287, 1.0.292, 1.0.173, 1.0.264, 1.0.359, 1.0.195, 1.0.316, 1.0.377, 1.0.234, 1.0.267, 1.0.210, 1.0.270, 1.0.314, 1.0.363, 1.0.181, 1.0.221, 1.0.293, 1.0.233, 1.0.214, 1.0.373, 1.0.333, 1.0.200, 1.0.356, 1.0.190, 1.0.207, 1.0.284, 1.0.317, 1.0.294, 1.0.272, 1.0.186, 1.0.271, 1.0.348, 1.0.191, 1.0.357, 1.0.213, 1.0.347, 1.0.265
- Move to
- 1.0.655 newest 1.x release, no known advisory
If one of these versions was installed, remove it and treat the credentials, tokens and SSH keys on that machine as exposed: rotate them. Check CI runners and container images that installed it too.
npm install @yeaft/webchat-agent@1.0.655
OSV recordreferencereferencereferencereferencereferencereferencereferencereferencereference
17 direct dependencies
8 carry known advisories, worst CRITICAL
0 packages depend on it
an advisory here reaches each of them
Tracked for PyPI packages. HuggingFace models declare Python dependencies, so npm packages are not covered.
Checked 2026-10-31 at 00:01 UTC. Updated continuously from NVD, GHSA, OSV and CNA feeds.