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

@devdonzo/warden

v1.3.0

Published

Autonomous SRE & Security Orchestration Agent - The Warden of your Codebase

Readme

Warden

https://warden-cli.vercel.app

"Who watches the code?"

Your autonomous security agent. Warden hunts vulnerabilities, patches them, verifies the fix passes tests, and opens a PR—while you sleep.

TypeScript License: ISC


Quick Start

npm install -g @devdonzo/warden
warden setup    # interactive config wizard
warden scan     # find & fix vulnerabilities

Why Warden?

npm audit tells you what's broken. Warden fixes it.

| | npm audit | Warden | |--|-----------|--------| | Find vulnerabilities | ✅ | ✅ Snyk + npm audit fallback | | Auto-create fix branch | ❌ | ✅ | | Run tests before PR | ❌ | ✅ | | Open PR automatically | ❌ | ✅ | | CVSS-based prioritization | ❌ | ✅ | | Scan remote repos | ❌ | ✅ | | CI/CD ready | ⚠️ | ✅ |


The Council

Warden runs as an orchestrated squad of specialized agents:

The Watchman — Scans your deps with Snyk (falls back to npm audit). Finds the threats.

The Engineer — Spins up an isolated env, creates a fix branch, patches package.json, runs your tests. If tests fail, the fix never leaves.

The Diplomat — Crafts a clean PR with context on what broke, how it's fixed, and why it matters. Assigns reviewers, applies labels.


Commands

warden setup              # first-time config
warden scan               # scan & fix current repo
warden scan --dry-run     # preview without changes
warden scan <github-url>  # scan any remote repo
warden scan --severity critical --max-fixes 3
warden status             # view recent scans
warden doctor             # diagnose environment issues
warden clean              # remove generated files

DAST - Dynamic Application Security Testing

Warden now supports infrastructure scanning with Nmap and Metasploit alongside traditional dependency scanning.

Quick Start

# 1. Configure targets in .wardenrc.json
warden config --create

# 2. Add DAST configuration (see docs)
# Edit .wardenrc.json and add "dast" section

# 3. Run DAST scan
warden dast https://staging.myapp.com

SAST vs DAST

| Mode | Target | Tools | Remediation | |------|--------|-------|-------------| | SAST | Dependencies | Snyk, npm audit | Auto-fix PRs | | DAST | Infrastructure | Nmap, Metasploit | Advisory PRs |

Features

  • Nmap: Network discovery, port scanning, service detection
  • Metasploit: Vulnerability validation (optional)
  • Safety-First: Multiple authorization checks
  • Advisory PRs: Manual remediation guidance (no auto-fix for infrastructure)

Configuration Example

{
  "dast": {
    "enabled": true,
    "targets": [
      {
        "url": "https://staging.myapp.com",
        "authorized": true,
        "description": "Staging Environment"
      }
    ],
    "nmap": {
      "enabled": true,
      "scanType": "standard",
      "portRange": "1-1000"
    },
    "metasploit": {
      "enabled": false,
      "mode": "scan-only"
    },
    "safety": {
      "requireConfirmation": true,
      "authorizedTargetsOnly": true,
      "disableExploits": true
    }
  }
}

DAST Commands

warden dast <target>           # Scan authorized target
warden dast <target> --verbose # Detailed output
warden dast <target> --dry-run # Preview only
warden dast <target> --nmap-only  # Nmap only

⚠️ Legal Notice

Only scan systems you own or have written authorization to test. Unauthorized scanning may violate laws including the Computer Fraud and Abuse Act (USA).

See DAST Guide for complete documentation.


Config

Drop a .wardenrc.json in your project root:

{
  "scanner": { "primary": "snyk", "fallback": true },
  "fixes": { "maxPerRun": 5, "minSeverity": "high", "branchPrefix": "warden/fix" },
  "github": { "labels": ["security", "automated"], "autoAssign": true }
}

Or run warden config --create to generate one.


Environment

| Variable | Required | Description | |----------|----------|-------------| | GITHUB_TOKEN | Yes | For PR creation | | SNYK_TOKEN | No | Enhanced scanning |

Repo owner/name auto-detected from git remote.


Rules of Engagement

  1. No force pushes. Ever.
  2. No PR without passing tests.
  3. Human merges. Warden proposes, you approve.

Exit Codes

0 — Clean. 1 — Vulns found. 2 — Scan failed.


License

ISC © DevDonzo