← Home

cpx

Copy file globs, watching for changes.

15
Versions
MIT
License
No
Install Scripts
Missing
Provenance

Supply chain provenance

Status for the latest visible version.

No SLSA provenance npm registry signatures gitHead linked

Without SLSA provenance there is no cryptographic link between this tarball and the public source — the axios compromise (March 2026) relied on exactly this gap.

Maintainers

mysticatea

Keywords

cpclitoolcommandlinesyncrsyncwatchobservecopydirdirectorydirectoriesfilefiles

Accepted risks

Findings the reviewer chose to accept rather than block on.

SourceRuleReasonAccepted byWhen
source-diff obfuscated-file:lib/copy.js AI (source-diff): Babel-transpiled output (build script: `babel src --out-dir lib`). Long lines are transpilation artifacts, not obfuscation. Code is fully readable. ai
source-diff source-size-tripled AI (source-diff): Expected growth from adding Babel-compiled lib/ output and new features between major versions. ai
typosquat typosquat.levenshtein:pg AI (typosquat): cpx is a long-established file copy/watch utility with no semantic relationship to pg (PostgreSQL). The name is a natural abbreviation for 'copy extended'. Clear false positive. ai
dependencies unvetted-dep:cp AI (dependencies): The cp dependency is appropriate for a file-copying utility. This is a stable, expected dependency for this package's purpose. ai
semgrep semgrep:child-process-import AI (semgrep): cpx is a CLI file-copy tool; using child_process/spawn is expected and documented behavior for this package. ai
semgrep semgrep:dynamic-require AI (semgrep): Dynamic require is used to load user-specified transform plugins (-t flag), an intentional and documented feature of cpx. ai

Versions (showing 15 of 15)

Version Deps Published
1.5.0 11 / 19
1.4.0 11 / 19
1.3.2 11 / 16
1.3.1 10 / 15
1.3.0 10 / 15
1.2.1 10 / 8
1.2.0 10 / 8
1.1.6 9 / 7
1.1.5 9 / 7
1.1.4 9 / 7
1.1.3 9 / 7
1.1.2 9 / 7
1.1.1 9 / 6
1.1.0 9 / 6
1.0.0 7 / 5

v1.5.0

1 finding
LOW No provenance attestation provenance

Package was published without Sigstore provenance. Consider requesting the maintainer enable provenance via CI/CD.

v1.4.0

1 finding
LOW No provenance attestation provenance

Package was published without Sigstore provenance. Consider requesting the maintainer enable provenance via CI/CD.

v1.3.2

1 finding
LOW No provenance attestation provenance

Package was published without Sigstore provenance. Consider requesting the maintainer enable provenance via CI/CD.

v1.3.1

1 finding
LOW No provenance attestation provenance

Package was published without Sigstore provenance. Consider requesting the maintainer enable provenance via CI/CD.

v1.3.0

1 finding
LOW No provenance attestation provenance

Package was published without Sigstore provenance. Consider requesting the maintainer enable provenance via CI/CD.

v1.2.1

1 finding
LOW No provenance attestation provenance

Package was published without Sigstore provenance. Consider requesting the maintainer enable provenance via CI/CD.

v1.2.0

1 finding
LOW No provenance attestation provenance

Package was published without Sigstore provenance. Consider requesting the maintainer enable provenance via CI/CD.

v1.1.6

1 finding
LOW No provenance attestation provenance

Package was published without Sigstore provenance. Consider requesting the maintainer enable provenance via CI/CD.

v1.1.5

1 finding
LOW No provenance attestation provenance

Package was published without Sigstore provenance. Consider requesting the maintainer enable provenance via CI/CD.

v1.1.4

1 finding
LOW No provenance attestation provenance

Package was published without Sigstore provenance. Consider requesting the maintainer enable provenance via CI/CD.

v1.1.3

1 finding
LOW No provenance attestation provenance

Package was published without Sigstore provenance. Consider requesting the maintainer enable provenance via CI/CD.

v1.1.2

1 finding
LOW No provenance attestation provenance

Package was published without Sigstore provenance. Consider requesting the maintainer enable provenance via CI/CD.

v1.1.1

1 finding
LOW No provenance attestation provenance

Package was published without Sigstore provenance. Consider requesting the maintainer enable provenance via CI/CD.

v1.1.0

2 findings
HIGH New obfuscated file: lib/copy.js source-diff

Newly added source file contains lines over 3000 chars, suggesting minified or obfuscated code. New obfuscated files are a strong attack indicator.

LOW No provenance attestation provenance

Package was published without Sigstore provenance. Consider requesting the maintainer enable provenance via CI/CD.

v1.0.0

1 finding
LOW No provenance attestation provenance

Package was published without Sigstore provenance. Only ~12% of npm packages have provenance, so this is common but not ideal.