PkgRadar

Package evidence

@qearlyao/[email protected]

Credential file access: matched "GOOGLE_APPLICATION_CREDENTIALS"

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":["@qearlyao/[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":["@qearlyao/[email protected]"],"fail_on":"high"}'
Publisherqearlyao
Artifact bytes513,661
Previous version0.2.1
Published2026-05-22T10:31:52.041Z
SHA-256de92f113f1e2a2ecf5a2ca276989862fd8de1ee4e421ffe5cc6dcb7f1410a22a

Why flagged

What the scanner saw

Credential file access: matched "GOOGLE_APPLICATION_CREDENTIALS"

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

Availability ledger

available

high
Last checked
highRisk
48Score
0.2.2Version
Status history (1 event)
  1. newavailable · risk high · score 48 · status changed

Related candidates

Linked campaigns and clusters

Publisher / release actor burststale

qearlyao

2 members · evidence strength 56

Evidence

Static findings

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

SeverityKindPathDetailPoints
highCredential file accesspackage/config.example.tomlmatched "GOOGLE_APPLICATION_CREDENTIALS"30
mediumRemote Payloadpackage/scripts/install.shmatched "curl "12
Show all 4 findings (low-signal and informational)
SeverityKindPathDetailPoints
highCredential file accesspackage/config.example.tomlmatched "GOOGLE_APPLICATION_CREDENTIALS"30
mediumRemote Payloadpackage/scripts/install.shmatched "curl "12
lowObfuscationpackage/dist/image-gen.jsmatched "Buffer.from(data, \"base64"3
lowObfuscationpackage/web/dist/assets/index-BPZQbZh5.jsmatched "\\u00C0"3

Manifest

Package metadata

Scripts9
  • buildnpm run clean && tsc -p tsconfig.build.json && npm --prefix web run build
  • cleannode -e "const fs=require('node:fs'); for (const p of ['dist','web/dist']) fs.rmSync(p,{recursive:true,force:true});"
  • devtsx watch src/cli.ts run
  • formatbiome format --write
  • lintbiome check
  • payload:prettytsx scripts/pretty-payload.ts
  • prepacknpm run build
  • testtsx --test test/**/*.test.ts
  • typechecktsc --noEmit
Dependencies10
  • @earendil-works/pi-agent-core^0.75.3
  • @earendil-works/pi-ai^0.75.3
  • @earendil-works/pi-coding-agent^0.75.3
  • better-sqlite3^12.10.0
  • discord.js^14.26.3
  • dotenv^16.4.5
  • sharp^0.34.5
  • smol-toml^1.4.2
  • sqlite-vec^0.1.9
  • typebox^1.1.38