PkgRadar

Package evidence

[email protected]

Install Lifecycle Remote Or Exec: postinstall="node -e \"try { require('node:fs').chmodSync('dist/index.js', 0o755); } catch {}\""

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.

Weekly downloads
2,799Niche · −30% score
Versions published
41
First published
May 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

Review before promoting

Mixed signals: the package has indicators worth reading before allowing the update in automated dependency flows.

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":["[email protected]"],"fail_on":"review"}'

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":["[email protected]"],"fail_on":"review"}'
Artifact bytes11,694,875
Previous version0.5.97
Published2026-06-01T04:57:34.660Z
SHA-2566f59562d7170f01f0c4baf122dc4a38cb9a656fcbe512f25f6b9719e4d7a2dea

Why flagged

What the scanner saw

Install Lifecycle Remote Or Exec: postinstall="node -e \"try { require('node:fs').chmodSync('dist/index.js', 0o755); } catch {}\""

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

Availability ledger

available

review
Last checked
reviewRisk
22Score
0.5.98Version
Status history (1 event)
  1. newavailable · risk review · score 22 · status changed

Evidence

Static findings

10 static · 0 from release diff · showing high-signal first.

SeverityKindPathDetailPoints
highInstall Lifecycle Remote Or Execpackage.jsonpostinstall="node -e \"try { require('node:fs').chmodSync('dist/index.js', 0o755); } catch {}\""30
Show all 10 findings (low-signal and informational)
SeverityKindPathDetailPoints
highInstall Lifecycle Remote Or Execpackage.jsonpostinstall="node -e \"try { require('node:fs').chmodSync('dist/index.js', 0o755); } catch {}\""30
lowCredential file accesspackage/dist/providers/cloud-adapters.jsmatched "AWS_SECRET_ACCESS_KEY"5
lowCredential file accesspackage/dist/core/config-discovery.jsmatched "AWS_ACCESS_KEY"5
lowCredential file accesspackage/dist/intelligence/harness-introspect.jsmatched "AWS_ACCESS_KEY"5
lowCredential file accesspackage/dist/providers/model-defaults.jsmatched "GOOGLE_APPLICATION_CREDENTIALS"5
lowCredential file accesspackage/dist/security/secret-scanner.jsmatched "aws_access_key"5
lowCredential file accesspackage/dist/sandbox/security.jsmatched "AWS_SECRET_ACCESS_KEY"5
lowCredential file accesspackage/dist/security/skills-guard.jsmatched ".npmrc"5
lowMessenger Bot Endpointpackage/dist/channels/telegram.jsmatched "api.telegram.org/bot" — messenger-bot URL without exfil context (likely a notification handler)5
lowInstall-time lifecycle scriptpackage.jsonpostinstall="node -e \"try { require('node:fs').chmodSync('dist/index.js', 0o755); } catch {}\""5

Manifest

Package metadata

Scripts30
  • affordances:checktsx src/index.ts affordances check
  • buildnpm run rpc:check && node scripts/build-typescript.mjs && npm run affordances:check && chmod +x dist/index.js
  • build:cleannode -e "require('node:fs').rmSync('dist',{recursive:true,force:true})" && npm run rpc:check && node scripts/build-typescript.mjs && npm run affordances:check && chmod +x dist/index.js
  • coveragevitest run --coverage
  • coverage:civitest run tests/computer-use/screenshot-redactor.test.ts tests/security/secret-redactor.test.ts tests/security/pii-redactor-overlap.test.ts tests/security/redact-overlapping-spans.test.ts tests/unit/pii-redactor.test.ts tests/unit/secret-scanner.test.ts tests/middleware/secret-redactor-middleware.test.ts tests/middleware/file-type-gate.test.ts --coverage --reporter=default
  • desktop:e2e:servenpm --prefix desktop-app run dev -- --host 127.0.0.1 --port 1420 --configLoader native
  • devtsx src/index.ts
  • e2enpm run e2e:tui && npm run e2e:desktop
  • e2e:desktopplaywright test -c playwright.config.ts
  • e2e:desktop:nativenode tests/e2e/desktop/desktop-native.mjs
  • e2e:tuivitest run tests/e2e/tui --reporter=default
  • formatprettier --write "src/**/*.{ts,tsx,js,jsx,json,md}"
  • format:checkprettier --check "src/**/*.{ts,tsx,js,jsx,json,md}"
  • linteslint "src/**/*.{ts,tsx,js,jsx}"
  • lint:fixeslint --fix "src/**/*.{ts,tsx,js,jsx}"
  • postinstallnode -e "try { require('node:fs').chmodSync('dist/index.js', 0o755); } catch {}"
  • prepublishOnlynpm run build:clean
  • prove:taintnode scripts/prove-taint-substrate.mjs
  • rpc:checknode scripts/generate-rpc-protocol.mjs --check
  • rpc:generatenode scripts/generate-rpc-protocol.mjs
  • sounds:checknode scripts/generate-sound-cues.mjs --check-only
  • sounds:generatenode scripts/generate-sound-cues.mjs
  • startnode dist/index.js
  • testNODE_OPTIONS=--max-old-space-size=6144 vitest run
  • test-providertsx src/cli/test-provider.ts
  • test:watchvitest
  • tokens:checknode scripts/generate-tokens.mjs --check
  • tokens:generatenode scripts/generate-tokens.mjs
  • typechecktsc --noEmit
  • wotanntsx src/index.ts
Dependencies16
  • @anthropic-ai/sdk^0.96.0
  • @opentui/core^0.2.14
  • @opentui/react^0.2.14
  • better-sqlite3^12.8.0
  • chalk^5.6.2
  • commander^14.0.3
  • ink^6.8.0
  • ink-text-input^6.0.0
  • magic-bytes.js^1.13.0
  • react^19.2.4
  • sanitize-html^2.17.4
  • shell-quote^1.8.3
  • undici^8.3.0
  • ws^8.20.1
  • yaml2.8.4
  • zod^4.3.6
Optional dependencies5
  • @napi-rs/keyring^1.2.0
  • keytar^7.9.0
  • qrcode-terminal^0.12.0
  • sharp^0.34.0
  • sqlite-vec^0.1.9