PkgRadar

Package evidence

[email protected]

Credential file access: matched ".ssh/"

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
4
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 bytes242,437
Previous version1.1.3
Published2026-06-16T16:08:15.487Z
SHA-256f3da15d0f9f0d06fde73c63fb1f6928be8d21eca69f87fd1625ebff0d986e364

Why flagged

What the scanner saw

Credential file access: matched ".ssh/"

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

Availability ledger

available

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

Evidence

Static findings

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

No high-signal findings — see all findings below.

Show all 3 findings (low-signal and informational)
SeverityKindPathDetailPoints
lowCredential file accesspackage/dist/resources.jsmatched ".ssh/"5
lowCredential file accesspackage/dist/session-auth.jsmatched "id_rsa"5
lowCredential file accesspackage/dist/tools/session.provider.jsmatched ".ssh/"5

Manifest

Package metadata

Scripts59
  • auditpnpm audit --audit-level moderate
  • buildtsc -p tsconfig.json
  • checkpnpm run check:quality && pnpm run test:coverage && pnpm run check:package
  • check:circulardepcruise src --config .dependency-cruiser.mjs || true
  • check:doc-languagenode scripts/check-doc-language.mjs
  • check:freshnessnode scripts/check-dependency-freshness.mjs --json artifacts/dependency-freshness.json --markdown artifacts/dependency-freshness.md
  • check:governancenode scripts/check-governance.mjs
  • check:knipknip -c knip.jsonc --reporter compact || true
  • check:maintainabilitypnpm run check:module-size && pnpm run check:circular && pnpm run check:knip
  • check:module-sizenode scripts/check-module-size.mjs
  • check:npm-namenode scripts/check-npm-name.mjs ssh-mcp-pro
  • check:packagepnpm run build && pnpm run sync-version -- --check && pnpm run validate:mcp-metadata && pnpm run validate:chatgpt-app && pnpm run validate:claude-connector && pnpm run docs:check && pnpm run pack:check && pnpm run pack:install-smoke
  • check:package-scriptsnode scripts/check-package-scripts.mjs
  • check:pushpnpm run format:check && pnpm run lint && pnpm run typecheck && pnpm test
  • check:qualitypnpm run format:check && pnpm run check:doc-language && pnpm run check:package-scripts && pnpm run check:rulesets && pnpm run verify:actions-runtime && pnpm run lint && pnpm run typecheck && pnpm run audit && pnpm run licenses:check
  • check:rulesetsnode scripts/check-rulesets.mjs
  • devtsc -p tsconfig.json -w
  • docker:ssh-fixture:downnode scripts/docker-ssh-fixture.mjs down
  • docker:ssh-fixture:upnode scripts/docker-ssh-fixture.mjs up
  • docspnpm exec typedoc --options typedoc.json
  • docs:checkpnpm exec typedoc --options typedoc.json --treatWarningsAsErrors
  • e2e:dockernode scripts/docker-ssh-fixture.mjs run e2e
  • formatprettier --write "src/**/*.ts" "test/**/*.ts" "scripts/**/*.{mjs,cjs}" "docs/**/*.md" ".github/workflows/*.{yml,yaml}" "stryker.conf.mjs" "vitest.config.ts" "vitest.mutation.config.ts"
  • format:checkprettier --check "src/**/*.ts" "test/**/*.ts" "scripts/**/*.{mjs,cjs}" "docs/**/*.md" ".github/workflows/*.{yml,yaml}" "stryker.conf.mjs" "vitest.config.ts" "vitest.mutation.config.ts"
  • format:stagednode scripts/run-staged-checks.mjs
  • hook:pre-commitpnpm run format:staged
  • hook:pre-pushpnpm run check:push
  • integration:dockernode scripts/docker-ssh-fixture.mjs run integration
  • licenses:checknode scripts/check-licenses.mjs
  • linteslint "src/**/*.ts" "test/**/*.ts" "vitest.config.ts" "vitest.mutation.config.ts"
  • …and 29 more.
Dependencies9
  • @modelcontextprotocol/sdk^1.29.0
  • @opentelemetry/api^1.9.1
  • @opentelemetry/exporter-trace-otlp-http^0.219.0
  • @opentelemetry/resources^2.8.0
  • @opentelemetry/sdk-node^0.219.0
  • @opentelemetry/semantic-conventions^1.41.1
  • jose6.2.3
  • node-ssh^13.2.1
  • zod^4.4.3