Package evidence
@ripla/[email protected]
Js Decode Then Exec: base64 / atob / fromCharCode decode paired with eval / new Function in the same file — canonical obfuscated-loader pattern.
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
- 1,587Niche · −30% score
- Versions published
- 218
- First published
- Mar 2026
- Publisher
- developer-ripla
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
Review before promotingMixed 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":["@ripla/[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":["@ripla/[email protected]"],"fail_on":"review"}'Why flagged
What the scanner saw
Js Decode Then Exec: base64 / atob / fromCharCode decode paired with eval / new Function in the same file — canonical obfuscated-loader pattern.
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 review · score 93 · status changed
Evidence
Static findings
15 static · 0 from release diff · showing high-signal first.
| Severity | Kind | Path | Detail | Points |
|---|---|---|---|---|
| high | Js Decode Then Exec | package/dist/godd.cjs | base64 / atob / fromCharCode decode paired with eval / new Function in the same file — canonical obfuscated-loader pattern. | 45 |
| high | Js Decode Then Exec | package/dist/godd.js | base64 / atob / fromCharCode decode paired with eval / new Function in the same file — canonical obfuscated-loader pattern. | 45 |
| high | Js Decode Then Exec | package/dist/index.js | base64 / atob / fromCharCode decode paired with eval / new Function in the same file — canonical obfuscated-loader pattern. | 45 |
| medium | Obfuscation Density | package/dist/godd.cjs | high encoded/escaped-token density | 12 |
| medium | Obfuscation Density | package/dist/godd.js | high encoded/escaped-token density | 12 |
| medium | Obfuscation Density | package/dist/index.js | high encoded/escaped-token density | 12 |
| medium | Obfuscation Density | package/notes-app/package-lock.json | high encoded/escaped-token density | 12 |
| medium | Obfuscation Density | package/notes-app/pnpm-lock.yaml | high encoded/escaped-token density | 12 |
Show all 15 findings (low-signal and informational)
| Severity | Kind | Path | Detail | Points |
|---|---|---|---|---|
| high | Js Decode Then Exec | package/dist/godd.cjs | base64 / atob / fromCharCode decode paired with eval / new Function in the same file — canonical obfuscated-loader pattern. | 45 |
| high | Js Decode Then Exec | package/dist/godd.js | base64 / atob / fromCharCode decode paired with eval / new Function in the same file — canonical obfuscated-loader pattern. | 45 |
| high | Js Decode Then Exec | package/dist/index.js | base64 / atob / fromCharCode decode paired with eval / new Function in the same file — canonical obfuscated-loader pattern. | 45 |
| medium | Obfuscation Density | package/dist/godd.cjs | high encoded/escaped-token density | 12 |
| medium | Obfuscation Density | package/dist/godd.js | high encoded/escaped-token density | 12 |
| medium | Obfuscation Density | package/dist/index.js | high encoded/escaped-token density | 12 |
| medium | Obfuscation Density | package/notes-app/package-lock.json | high encoded/escaped-token density | 12 |
| medium | Obfuscation Density | package/notes-app/pnpm-lock.yaml | high encoded/escaped-token density | 12 |
| low | Credential file access | package/dist/godd.cjs | matched "GITHUB_TOKEN" | 5 |
| low | Credential file access | package/dist/godd.js | matched "GITHUB_TOKEN" | 5 |
| low | Credential file access | package/notes-api/app/config.py | matched "github_token" | 5 |
| low | Credential file access | package/notes-api/app/services/github_app_token.py | matched "github_token" | 5 |
| low | Credential file access | package/notes-api/app/services/github_pr.py | matched "github_token" | 5 |
| low | Credential file access | package/notes-api/app/services/github.py | matched "github_token" | 5 |
| low | Credential file access | package/templates/notes-compose.yml | matched "GITHUB_TOKEN" | 3 |
Manifest
Package metadata
Scripts15
buildnode esbuild.config.jsbuild:adminnode esbuild.admin.config.jsbuild:distnode esbuild.config.js && node scripts/build-dist.jsbuild:dist:currentnode esbuild.config.js && node scripts/build-dist.js --currentbuild:usertsx src/admin/build-customer.tsdevtsx src/index.tsdev:admintsx src/admin/cli.tsencrypttsx src/admin/encrypt.tsgoddtsx src/cli/godd.tsgodd:inittsx src/cli/godd.ts initgodd:installtsx src/cli/godd.ts installkeygentsx src/admin/keygen.tstestvitest runtest:watchvitesttypechecktsc --noEmit
Dependencies4
@modelcontextprotocol/sdk^1.12.1handlebars^4.7.8js-yaml^4.1.0zod^3.24.2