npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2026 – Pkg Stats / Ryan Hefner

pyros

v1.0.2

Published

Global npm wrapper for the Pyros robotics CLI

Readme

pyros

Global npm wrapper for the Pyros robotics CLI — the autonomous robotics engineer.

npm install -g pyros
pyros --help
pyros run "fix my workspace and ship a clean PR"

The wrapper installs the Python package pyros-robotics from PyPI into a private virtual environment at ~/.pyros/npm-venv, so it never touches your system Python.

Two CLIs are exposed:

| Command | Use | |---|---| | pyros | The full CLI — pyros run, pyros validate-urdf, pyros fix-urdf, pyros ci, etc. | | pyros-mcp | The MCP server, for use with Claude Desktop / Cursor / Windsurf / Claude Code |

MCP integration (Claude Desktop, Cursor, Windsurf)

Add to your client's MCP config:

{
  "mcpServers": {
    "pyros": { "command": "pyros-mcp" }
  }
}

Then ask: "Fix the URDFs in ~/work/robot_ws and ship a clean build." Pyros runs the validate → fix → build loop autonomously and returns a structured report.

Requirements

  • Node.js 16 or newer
  • Python 3.10 or newer (with venv support)
  • pip

The post-install step creates a venv and installs roughly 100–250 MB of Python deps (numpy, lxml, mcp, anthropic, …). Expect 30–90 s on first install, then milliseconds on subsequent invocations.

Configuration

| Environment variable | Effect | |---|---| | PYROS_PYTHON | Use this interpreter instead of auto-detecting one. Example: PYROS_PYTHON=/usr/local/bin/python3.12 npm install -g pyros. |

Uninstalling

pyros-uninstall          # wipes the private venv (~200 MB)
npm uninstall -g pyros   # removes the npm wrapper

npm uninstall cannot run cleanup hooks in npm 7+ (they were disabled for security), so the two-step uninstall is the only reliable way to remove the venv. If you forget step 1, you can always:

rm -rf ~/.pyros

Troubleshooting

| Symptom | Cause | Fix | |---|---|---| | Pyros venv missing — running installer … on every run | Your npm config has ignore-scripts=true | Either remove the config or let the lazy installer run on first invocation. | | Failed to install pyros-robotics from PyPI | Network / PyPI outage | Retry. Re-running pyros --help triggers the installer. | | Brand mismatch (pyros --version ≠ npm version) | You're on an older wrapper that pinned the pip version | Upgrade: npm install -g pyros@latest. | | Want to use a system Python install of pyros-robotics | The wrapper defaults to the private venv | Set PYROS_PYTHON to that interpreter. |