Skip to main content

Zero-config install-time supply-chain hardening for npm, pnpm, yarn, bun, cargo, mise, uv, and bundler.

Project description

pmsec (Python)

Zero-config install-time supply-chain hardening for npm, pnpm, yarn, bun, cargo, mise, uv, and bundler. One command flips on every safe-by-default knob each package manager exposes — install cooldown, signature trust policy, lockfile re-verification, build-script attestation, and more.

Install

uvx pmsec
uvx pmsec --check
uvx pmsec --disable
npx pmsec
npx pmsec --check
npx pmsec --disable

If your environment already enforces cooldown (or routes through a proxy index), bootstrap pmsec by overriding just for that call:

uvx --index https://pypi.org/simple --exclude-newer-package pmsec=2099-01-01 pmsec --check
npx --registry=https://registry.npmjs.org/ --min-release-age=0 pmsec --check

Supported tools

npm, pnpm, yarn 4+, bun, cargo (RFC #3801), mise, uv, bundler 4.0.13+

Usage

Invocation Description
pmsec Default action: write the hardening bundle (1-day cooldown + per-tool extras) to every selected tool's user config
pmsec --check Read each tool's config; exit 1 if any row is missing or below the bundled value
pmsec --disable Remove every key the bundle set; other keys in the file are preserved
pmsec --version Print the installed pmsec version

Options: --tool npm,pnpm,yarn,bun,cargo,mise,uv,bundler, --days N (override the 1-day default), --force (overwrite stricter existing cooldowns; default is monotonic), --json. --check and --disable are mutually exclusive.

See the project README for the full table of keys, units, paths, and overrides.

License

MIT

Project details


Download files

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

Source Distribution

pmsec-2026.6.0.tar.gz (17.1 kB view details)

Uploaded Source

Built Distribution

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

pmsec-2026.6.0-py3-none-any.whl (22.6 kB view details)

Uploaded Python 3

File details

Details for the file pmsec-2026.6.0.tar.gz.

File metadata

  • Download URL: pmsec-2026.6.0.tar.gz
  • Upload date:
  • Size: 17.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.13

File hashes

Hashes for pmsec-2026.6.0.tar.gz
Algorithm Hash digest
SHA256 ead3485e4a1ea3a8ae1cd21b09e6827637db28c8e08f244da3b2eeecf354ccba
MD5 5b3c8085b092f8f8d382d6dffe1e6a5c
BLAKE2b-256 addb80acec88258879c3da6c51d45acc5415563573d743a2400054e872ade3c7

See more details on using hashes here.

Provenance

The following attestation bundles were made for pmsec-2026.6.0.tar.gz:

Publisher: pmsec-release-pypi.yml on HikaruEgashira/pmsec

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file pmsec-2026.6.0-py3-none-any.whl.

File metadata

  • Download URL: pmsec-2026.6.0-py3-none-any.whl
  • Upload date:
  • Size: 22.6 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.13

File hashes

Hashes for pmsec-2026.6.0-py3-none-any.whl
Algorithm Hash digest
SHA256 898bde7c1b042577c4154e94501e5036a8f7a3794a6a0228f0e6250a557da425
MD5 98673d4db71559a0a0ccd911278aaea9
BLAKE2b-256 b5cc40b87583e6657d3ad59ca7403600c9ed123f4d7bf01ef53808911f4d519b

See more details on using hashes here.

Provenance

The following attestation bundles were made for pmsec-2026.6.0-py3-none-any.whl:

Publisher: pmsec-release-pypi.yml on HikaruEgashira/pmsec

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

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