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
- Versions published
- 14Established · −30% score
- First published
- Sep 2025
- Publisher
- ashwathg
Effective trust discount applied: −30% (max across signals — discounts don’t stack). New install-lifecycle deltas vs the previous release would clear the discount.
Recommended action
Block this updateStatic 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":["[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":["[email protected]"],"fail_on":"high"}'Why flagged
What the scanner saw
Webhook Exfil Endpoint: matched "ngrok-free.app"
Not observed: package install, lifecycle script execution, or sandbox execution. PkgRadar only inspects on-disk artifacts.
Availability ledger
available
Status history (1 event)
- new → available · risk high · score 38 · status changed
Evidence
Static findings
4 static · 0 from release diff · showing high-signal first.
| Severity | Kind | Path | Detail | Points |
|---|---|---|---|---|
| high | Webhook Exfil Endpoint | package/dist/src/providers/phone/audio-utils.js | matched "ngrok-free.app" | 40 |
Show all 4 findings (low-signal and informational)
| Severity | Kind | Path | Detail | Points |
|---|---|---|---|---|
| high | Webhook Exfil Endpoint | package/dist/src/providers/phone/audio-utils.js | matched "ngrok-free.app" | 40 |
| low | Credential file access | package/dist/src/util/secrets/providers/AWSSecretManagerProvider.js | matched "AWS_ACCESS_KEY" | 5 |
| low | Credential file access | package/dist/src/util/credentials/providers/AWSSTSProvider.js | matched "AWS_ACCESS_KEY" | 5 |
| low | Credential file access | package/dist/src/server/controller/application/get-application-monitoring-details.js | matched "AWS_ACCESS_KEY" | 5 |
Manifest
Package metadata
Scripts40
audit:fixnpm audit fix && npm audit fix --prefix src/app && npm audit fix --prefix sitebackfill:eval-denormnpx tsx scripts/backfillEvalResultsDenorm.tsbackfill:eval-denorm:chnpx tsx scripts/backfillEvalResultsDenorm.ts -- --targets chbackfill:eval-denorm:pgnpx tsx scripts/backfillEvalResultsDenorm.ts -- --targets pgbindist/src/main.jsbuildcross-env NODE_OPTIONS=--max-old-space-size=4096 tsc && shx mkdir -p dist/src && shx cp src/*.html dist/src && shx mkdir -p dist/src/assertions/python && shx cp -r src/assertions/python/ dist/src/assertions && shx mkdir -p dist/src/python && shx cp src/python/wrapper.py dist/src/python && shx mkdir -p dist/src/golang && shx cp src/golang/wrapper.go dist/src/golang && shx rm -rf dist/drizzle && shx cp -r drizzle dist/drizzle && npm run build:app && shx chmod +x dist/src/main.jsbuild:appcross-env NODE_OPTIONS=--max-old-space-size=4096 npm run build --prefix src/appbuild:cleanshx rm -rf distbuild:trusyscross-env NODE_OPTIONS=--max-old-space-size=4096 tsc && shx mkdir -p dist/src && shx cp src/*.html dist/src && shx mkdir -p dist/src/python && shx cp src/python/wrapper.py dist/src/python && shx mkdir -p dist/src/golang && shx cp src/golang/wrapper.go dist/src/golang && shx rm -rf dist/drizzle && shx cp -r drizzle dist/drizzle && shx chmod +x dist/src/main.js && shx rm -rf dist/testbuild:watchcross-env NODE_OPTIONS=--max-old-space-size=4096 tsc --watchcitation:generatets-node scripts/generateCitation.tsdb:generatenpx drizzle-kit generatedb:migratenpx tsx src/migrate.tsdb:pushnpx drizzle-kit pushdb:studionpx drizzle-kit studiodevconcurrently "npm run dev:server" "npm run dev:app"dev:appnpm run dev --prefix src/appdev:servernpx drizzle-kit push && nodemon -P 1000 src/server/index.tsdev:server:debugnodemon -P 1000 src/server/index.tsestimate:eval-denorm-backfillnpx tsx scripts/estimateEvalDenormBackfill.tsfgit diff --name-only --diff-filter=ACMRTUXB origin/main | grep -E '\.(j2|js|jsx|mjs|cjs|ts|tsx|json|css|scss|html|md|mdc|mdx|yaml|yml)$' | xargs prettier --writeformatprettier -w .format:checkprettier --check .jsonSchema:generatenpx -y tsx scripts/generateJsonSchema.ts > site/static/config-schema.json | npx prettier --write site/static/config-schema.jsonlgit diff --name-only --diff-filter=ACMRTUXB origin/main | grep -E '\.(js|ts|tsx)$' | xargs eslint --max-warnings=0 --fix --no-warn-ignoredlintnpm run lint:srclint:siteeslint site --max-warnings=0lint:srceslint src --max-warnings=0lint:testseslint test --max-warnings=0localts-node --cwdMode --transpileOnly src/main.ts- …and 10 more.
Dependencies89
@anthropic-ai/sdk^0.36.3@apidevtools/json-schema-ref-parser^11.9.0@aws-sdk/client-s3^3.850.0@aws-sdk/s3-request-presigner^3.862.0@azure/ai-projects^1.0.1@azure/identity^4.10.0@azure/keyvault-secrets^4.10.0@azure/storage-blob^12.28.0@clickhouse/client^1.11.2@elevenlabs/elevenlabs-js^2.21.0@googleapis/sheets^9.3.1@langchain/core^1.1.27@langchain/langgraph^1.1.5@langchain/openai^1.2.9@modelcontextprotocol/sdk^1.13.1@openai/agents^0.3.6@remix-run/router^1.23.0@types/jszip^3.4.0@types/multer^2.0.0adm-zip^0.5.16ajv^8.17.1ajv-formats^3.0.1async^3.2.6aws-sdk^2.1692.0axios^1.12.2bson^6.10.4cache-manager^4.1.0cache-manager-fs-hash^1.0.0chalk^4.1.2chokidar4.0.3- …and 59 more.