PkgRadar

Package evidence

@openparachute/[email protected]

Install-time lifecycle script: postinstall="if [ -d web/ui ]; then bun run build:spa; fi"

Trust signals

Why this verdict

PkgRadar discounts a release’s score when public reputation argues against novel malware. The verdict above already reflects these — the panel just explains what was applied.

Versions published
57
First published
Apr 2026
Publisher
GitHub ActionsTrusted automation · −70% score

Effective trust discount applied: 70% (max across signals — discounts don’t stack). New install-lifecycle deltas vs the previous release would clear the discount.

Recommended action

Block this update

Static evidence trips multiple high-signal indicators. Quarantine the release until the publisher validates the change or you can rule out the indicators below.

Block this release in CIcurl · GitHub Actions

Fail the build when this package version is added or upgraded. Replace $PKGRADAR_TOKEN with a Pro / Team API key from your dashboard.

curl -fsS https://pkgradar.com/gate/npm \
  -H "Authorization: Bearer $PKGRADAR_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{"specs":["@openparachute/[email protected]"],"fail_on":"high"}'

GitHub Actions step:

- name: PkgRadar gate
  run: |
    curl -fsS https://pkgradar.com/gate/npm \
      -H "Authorization: Bearer ${{ secrets.PKGRADAR_TOKEN }}" \
      -H "Content-Type: application/json" \
      -d '{"specs":["@openparachute/[email protected]"],"fail_on":"high"}'
Artifact bytes695,713
Previous version0.4.8-rc.6
Published2026-05-25T20:04:16.381Z
SHA-2560edcc92b03f7bdc194015353de45f0c24b7cdf173485dbef4e0c5743e1335872

Why flagged

What the scanner saw

New Lifecycle Script Vs Previous: postinstall added in 0.4.8-rc.8 vs 0.4.8-rc.6: "if [ -d web/ui ]; then bun run build:spa; fi"

Not observed: package install, lifecycle script execution, or sandbox execution. PkgRadar only inspects on-disk artifacts.

Availability ledger

available

high
Last checked
highRisk
45Score
0.4.8-rc.8Version
Status history (2 events)
  1. availableavailable · risk high · score 45 · status available -> available, risk high -> high, score 75 -> 45
  2. newavailable · risk high · score 75 · status changed

Evidence

Static findings

1 static · 1 from release diff · showing high-signal first.

SeverityKindPathDetailPoints
highNew Lifecycle Script Vs Previouspackage.jsonpostinstall added in 0.4.8-rc.8 vs 0.4.8-rc.6: "if [ -d web/ui ]; then bun run build:spa; fi"40
Show all 2 findings (low-signal and informational)
SeverityKindPathDetailPoints
highNew Lifecycle Script Vs Previouspackage.jsonpostinstall added in 0.4.8-rc.8 vs 0.4.8-rc.6: "if [ -d web/ui ]; then bun run build:spa; fi"40
lowInstall-time lifecycle scriptpackage.jsonpostinstall="if [ -d web/ui ]; then bun run build:spa; fi"5

Manifest

Package metadata

Scripts8
  • build:spacd web/ui && bun install --frozen-lockfile && bun run build
  • clibun src/cli.ts
  • postinstallif [ -d web/ui ]; then bun run build:spa; fi
  • prepackbun run build:spa
  • startbun src/server.ts
  • testbun test ./src/
  • test:corecd core && node --experimental-vm-modules node_modules/vitest/dist/cli.js run
  • typechecktsc --noEmit
Dependencies5
  • @modelcontextprotocol/sdk^1.12.1
  • @openparachute/scope-guard^0.3.0
  • jose^6.2.2
  • otpauth^9.5.0
  • qrcode-terminal^0.12.0