Skip to main content

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

Project description

pmsec (Python)

Zero-config install-time supply-chain hardening for npm, pnpm, yarn, bun, cargo, mise, and uv. 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 enable
uvx pmsec check
uvx pmsec disable
npx pmsec enable
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

Commands

Command Description
pmsec enable Write the hardening bundle (3-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, --days N (override the 3-day default), --force (overwrite stricter existing cooldowns; default is monotonic), --json.

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-0.8.0.tar.gz (12.5 kB view details)

Uploaded Source

Built Distribution

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

pmsec-0.8.0-py3-none-any.whl (18.0 kB view details)

Uploaded Python 3

File details

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

File metadata

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

File hashes

Hashes for pmsec-0.8.0.tar.gz
Algorithm Hash digest
SHA256 b969afb16da60d8a880a372e3e5b58f64d3c64804dcd1be8e5f5bd180f64c35b
MD5 c83083a8ba85bb0dabc63f23cdfc9cc9
BLAKE2b-256 6fc403e7a2e44fe35f3a4121b2dd0f073e488a6a53e575edcd41a65629fe0260

See more details on using hashes here.

Provenance

The following attestation bundles were made for pmsec-0.8.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-0.8.0-py3-none-any.whl.

File metadata

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

File hashes

Hashes for pmsec-0.8.0-py3-none-any.whl
Algorithm Hash digest
SHA256 f88789feeb20dc4b2f9a80ae0b48f7df02463f7216da1ca6fe3276b8dde4f5b6
MD5 9a5b89434592c6a54c6a0b9dfd89c3c0
BLAKE2b-256 3cad50e41e1056826cc078e0cf789f5d4bbdc48b87aa6bd3ed45a4a2f3a1cdd5

See more details on using hashes here.

Provenance

The following attestation bundles were made for pmsec-0.8.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