
Research
SANDWORM_MODE: Shai-Hulud-Style npm Worm Hijacks CI Workflows and Poisons AI Toolchains
An emerging npm supply chain attack that infects repos, steals CI secrets, and targets developer AI toolchains for further compromise.
universal-user-agent
Advanced tools
Get a user agent string across all JavaScript Runtime Environments
Get a user agent string across all JavaScript Runtime Environments
import { getUserAgent } from "universal-user-agent";
const userAgent = getUserAgent();
// userAgent will look like this
// in browser: "Mozilla/5.0 (Macintosh; Intel Mac OS X 10.13; rv:61.0) Gecko/20100101 Firefox/61.0"
// in node: Node.js/v8.9.4 (macOS High Sierra; x64)
The 'useragent' package is similar to 'universal-user-agent' in that it allows for the parsing and generation of user-agent strings. However, 'useragent' focuses more on parsing existing user-agent strings to extract detailed information about the client, such as the browser name, version, and operating system. It does not focus on generating user-agent strings for different environments.
Bowser is a package designed to parse user-agent strings and identify browser details, such as name, version, and engine. It is similar to 'universal-user-agent' in its ability to work with user-agent strings, but its primary focus is on parsing and identifying browser characteristics rather than generating user-agent strings. Bowser offers detailed detection capabilities, making it suitable for projects that require in-depth browser analysis.
FAQs
Get a user agent string across all JavaScript Runtime Environments
The npm package universal-user-agent receives a total of 13,691,587 weekly downloads. As such, universal-user-agent popularity was classified as popular.
We found that universal-user-agent demonstrated a healthy version release cadence and project activity because the last version was released less than a year ago. It has 1 open source maintainer collaborating on the project.
Did you know?

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Research
An emerging npm supply chain attack that infects repos, steals CI secrets, and targets developer AI toolchains for further compromise.

Company News
Socket is proud to join the OpenJS Foundation as a Silver Member, deepening our commitment to the long-term health and security of the JavaScript ecosystem.

Security News
npm now links to Socket's security analysis on every package page. Here's what you'll find when you click through.