Skip to main content

ChainProbe - Supply Chain Security Auditor

Project description

RegistryPulse

Package Registry Infrastructure Toolkit

License Python 3.10+ OpenSSF Scorecard

RegistryPulse is an open-source infrastructure toolkit that monitors, secures, and audits package registries across all major ecosystems. It provides health monitoring, dependency analysis, provenance verification, and policy enforcement through a single unified interface.

Why RegistryPulse?

Package registries are the backbone of modern software development, yet they lack standardized tooling for:

  • Health monitoring — No unified way to track registry uptime, latency, and availability
  • Dependency analysis — Cross-registry dependency graphs are impossible to build
  • Provenance verification — No standard way to verify package build integrity
  • Policy enforcement — Organizations can't enforce registry policies at scale

RegistryPulse provides all of this through a single CLI tool, supporting 7 ecosystems out of the box: npm, PyPI, Cargo, Go, RubyGems, Maven, and Packagist.

Quick Start

# Install
pip install registrypulse

# Audit all registries
registrypulse audit --all

# Check registry health
registrypulse health --all

# Analyze a package's dependencies
registrypulse deps npm:express
registrypulse deps pypi:flask --depth 2

# Verify package provenance
registrypulse provenance cargo:serde

# Generate a registry-level SBOM
registrypulse sbom --format spdx-json -o registry-sbom.json

# Check organizational policies
registrypulse policy ./my-project

Commands

Command Description
registrypulse audit Audit registries for security and operational health
registrypulse health Check registry availability and latency
registrypulse deps Analyze cross-registry dependency graphs
registrypulse provenance Verify package build provenance
registrypulse sbom Generate registry-level SBOMs
registrypulse policy Enforce organizational registry policies
registrypulse ecosystem Show supported ecosystems and status

Supported Ecosystems

Ecosystem Registry Manifest Files
npm registry.npmjs.org package.json, package-lock.json
PyPI pypi.org requirements.txt, pyproject.toml
Cargo crates.io Cargo.toml, Cargo.lock
Go proxy.golang.org go.mod, go.sum
RubyGems rubygems.org Gemfile, *.gemspec
Maven repo1.maven.org pom.xml, build.gradle
Packagist packagist.org composer.json

Policy Enforcement

Create a registrypulse-policy.json in your project root:

{
  "rules": [
    {
      "id": "ALLOWED_REGISTRIES",
      "allowed_registries": ["npm", "pypi", "cargo"]
    },
    {
      "id": "LICENSE_COMPLIANCE",
      "blocked_licenses": ["GPL-3.0", "AGPL-3.0", "SSPL-1.0"]
    },
    {
      "id": "VERSION_PINNING"
    },
    {
      "id": "MAX_DEPTH",
      "max_depth": 5
    }
  ]
}

Contributing

We welcome contributions! See CONTRIBUTING.md.

Security Policy

See SECURITY.md for vulnerability reporting.

License

Apache License 2.0 — see LICENSE.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distributions

No source distribution files available for this release.See tutorial on generating distribution archives.

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

chainprobe_guard-0.1.0-py3-none-any.whl (26.3 kB view details)

Uploaded Python 3

File details

Details for the file chainprobe_guard-0.1.0-py3-none-any.whl.

File metadata

File hashes

Hashes for chainprobe_guard-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 5a3200643430f8b1606da18b59f6aee6b36d3f138eff5be63d657835c53c898a
MD5 ab9aa7c60713761a0eaeffe2b85fb1f2
BLAKE2b-256 e7291c7b15caddf78ebbd6a88c3358a6f46372e482b76f4b1e227680b3c0e730

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page