PkgRadar

Package evidence

[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
353
Versions published
16
First published
Apr 2026
Publisher
isaacyoon

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"}'
Publisherisaacyoon
Artifact bytes4,133,528
Previous version0.9.11
Published2026-05-28T21:00:03.935Z
SHA-256c25eee7336679b3df5ab549b129487d55226c17652103110a246f9f6b7553645

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

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

Evidence

Static findings

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

SeverityKindPathDetailPoints
highJs Decode Then Execpackage/build/migrations/005_provenance.jsbase64 / atob / fromCharCode decode paired with eval / new Function in the same file — canonical obfuscated-loader pattern.45
highJs Decode Then Execpackage/build/migrations/006_canonical_validation.jsbase64 / atob / fromCharCode decode paired with eval / new Function in the same file — canonical obfuscated-loader pattern.45
highJs Decode Then Execpackage/build/migrations/007_seed_real_models.jsbase64 / atob / fromCharCode decode paired with eval / new Function in the same file — canonical obfuscated-loader pattern.45
highJs Decode Then Execpackage/build/migrations/008_schema_realignment.jsbase64 / atob / fromCharCode decode paired with eval / new Function in the same file — canonical obfuscated-loader pattern.45
highJs Decode Then Execpackage/build/migrations/009_skills_tables.jsbase64 / atob / fromCharCode decode paired with eval / new Function in the same file — canonical obfuscated-loader pattern.45
highJs Decode Then Execpackage/build/migrations/010_subject_relationships.jsbase64 / atob / fromCharCode decode paired with eval / new Function in the same file — canonical obfuscated-loader pattern.45
highJs Decode Then Execpackage/build/migrations/011_memories_metadata.jsbase64 / atob / fromCharCode decode paired with eval / new Function in the same file — canonical obfuscated-loader pattern.45
highJs Decode Then Execpackage/build/migrations/012_memory_sources.jsbase64 / atob / fromCharCode decode paired with eval / new Function in the same file — canonical obfuscated-loader pattern.45
highJs Decode Then Execpackage/build/migrations/013_refresh_models.jsbase64 / atob / fromCharCode decode paired with eval / new Function in the same file — canonical obfuscated-loader pattern.45
highJs Decode Then Execpackage/build/migrations/014_drop_legacy_facts_constraints.jsbase64 / atob / fromCharCode decode paired with eval / new Function in the same file — canonical obfuscated-loader pattern.45
highJs Decode Then Execpackage/build/migrations/015_agent_provenance.jsbase64 / atob / fromCharCode decode paired with eval / new Function in the same file — canonical obfuscated-loader pattern.45
highJs Decode Then Execpackage/build/migrations/016_agent_curator.jsbase64 / atob / fromCharCode decode paired with eval / new Function in the same file — canonical obfuscated-loader pattern.45
highJs Decode Then Execpackage/build/migrations/017_drop_trust_weight.jsbase64 / atob / fromCharCode decode paired with eval / new Function in the same file — canonical obfuscated-loader pattern.45
highJs Decode Then Execpackage/build/migrations/018_transcript_queue.jsbase64 / atob / fromCharCode decode paired with eval / new Function in the same file — canonical obfuscated-loader pattern.45
highJs Decode Then Execpackage/build/migrations/019_respec_fresh_v1.jsbase64 / atob / fromCharCode decode paired with eval / new Function in the same file — canonical obfuscated-loader pattern.45
highJs Decode Then Execpackage/build/migrations/020_tag_processed_and_external_uuid.jsbase64 / atob / fromCharCode decode paired with eval / new Function in the same file — canonical obfuscated-loader pattern.45
highJs Decode Then Execpackage/build/migrations/021_agent_model_nullable.jsbase64 / atob / fromCharCode decode paired with eval / new Function in the same file — canonical obfuscated-loader pattern.45
highJs Decode Then Execpackage/build/migrations/022_device_name.jsbase64 / atob / fromCharCode decode paired with eval / new Function in the same file — canonical obfuscated-loader pattern.45
highJs Decode Then Execpackage/build/migrations/023_librarian_gate.jsbase64 / atob / fromCharCode decode paired with eval / new Function in the same file — canonical obfuscated-loader pattern.45
highJs Decode Then Execpackage/build/migrations/024_canonical_project_tag_projection.jsbase64 / atob / fromCharCode decode paired with eval / new Function in the same file — canonical obfuscated-loader pattern.45
highJs Decode Then Execpackage/build/migrations/025_project_tag_alias_suggestions.jsbase64 / atob / fromCharCode decode paired with eval / new Function in the same file — canonical obfuscated-loader pattern.45
highJs Decode Then Execpackage/build/migrations/026_project_alias_promoter_gate.jsbase64 / atob / fromCharCode decode paired with eval / new Function in the same file — canonical obfuscated-loader pattern.45
Show all 23 findings (low-signal and informational)
SeverityKindPathDetailPoints
highJs Decode Then Execpackage/build/migrations/005_provenance.jsbase64 / atob / fromCharCode decode paired with eval / new Function in the same file — canonical obfuscated-loader pattern.45
highJs Decode Then Execpackage/build/migrations/006_canonical_validation.jsbase64 / atob / fromCharCode decode paired with eval / new Function in the same file — canonical obfuscated-loader pattern.45
highJs Decode Then Execpackage/build/migrations/007_seed_real_models.jsbase64 / atob / fromCharCode decode paired with eval / new Function in the same file — canonical obfuscated-loader pattern.45
highJs Decode Then Execpackage/build/migrations/008_schema_realignment.jsbase64 / atob / fromCharCode decode paired with eval / new Function in the same file — canonical obfuscated-loader pattern.45
highJs Decode Then Execpackage/build/migrations/009_skills_tables.jsbase64 / atob / fromCharCode decode paired with eval / new Function in the same file — canonical obfuscated-loader pattern.45
highJs Decode Then Execpackage/build/migrations/010_subject_relationships.jsbase64 / atob / fromCharCode decode paired with eval / new Function in the same file — canonical obfuscated-loader pattern.45
highJs Decode Then Execpackage/build/migrations/011_memories_metadata.jsbase64 / atob / fromCharCode decode paired with eval / new Function in the same file — canonical obfuscated-loader pattern.45
highJs Decode Then Execpackage/build/migrations/012_memory_sources.jsbase64 / atob / fromCharCode decode paired with eval / new Function in the same file — canonical obfuscated-loader pattern.45
highJs Decode Then Execpackage/build/migrations/013_refresh_models.jsbase64 / atob / fromCharCode decode paired with eval / new Function in the same file — canonical obfuscated-loader pattern.45
highJs Decode Then Execpackage/build/migrations/014_drop_legacy_facts_constraints.jsbase64 / atob / fromCharCode decode paired with eval / new Function in the same file — canonical obfuscated-loader pattern.45
highJs Decode Then Execpackage/build/migrations/015_agent_provenance.jsbase64 / atob / fromCharCode decode paired with eval / new Function in the same file — canonical obfuscated-loader pattern.45
highJs Decode Then Execpackage/build/migrations/016_agent_curator.jsbase64 / atob / fromCharCode decode paired with eval / new Function in the same file — canonical obfuscated-loader pattern.45
highJs Decode Then Execpackage/build/migrations/017_drop_trust_weight.jsbase64 / atob / fromCharCode decode paired with eval / new Function in the same file — canonical obfuscated-loader pattern.45
highJs Decode Then Execpackage/build/migrations/018_transcript_queue.jsbase64 / atob / fromCharCode decode paired with eval / new Function in the same file — canonical obfuscated-loader pattern.45
highJs Decode Then Execpackage/build/migrations/019_respec_fresh_v1.jsbase64 / atob / fromCharCode decode paired with eval / new Function in the same file — canonical obfuscated-loader pattern.45
highJs Decode Then Execpackage/build/migrations/020_tag_processed_and_external_uuid.jsbase64 / atob / fromCharCode decode paired with eval / new Function in the same file — canonical obfuscated-loader pattern.45
highJs Decode Then Execpackage/build/migrations/021_agent_model_nullable.jsbase64 / atob / fromCharCode decode paired with eval / new Function in the same file — canonical obfuscated-loader pattern.45
highJs Decode Then Execpackage/build/migrations/022_device_name.jsbase64 / atob / fromCharCode decode paired with eval / new Function in the same file — canonical obfuscated-loader pattern.45
highJs Decode Then Execpackage/build/migrations/023_librarian_gate.jsbase64 / atob / fromCharCode decode paired with eval / new Function in the same file — canonical obfuscated-loader pattern.45
highJs Decode Then Execpackage/build/migrations/024_canonical_project_tag_projection.jsbase64 / atob / fromCharCode decode paired with eval / new Function in the same file — canonical obfuscated-loader pattern.45
highJs Decode Then Execpackage/build/migrations/025_project_tag_alias_suggestions.jsbase64 / atob / fromCharCode decode paired with eval / new Function in the same file — canonical obfuscated-loader pattern.45
highJs Decode Then Execpackage/build/migrations/026_project_alias_promoter_gate.jsbase64 / atob / fromCharCode decode paired with eval / new Function in the same file — canonical obfuscated-loader pattern.45
lowLarge Javascript Payloadpackage/build/index.js2138807 bytes0

Manifest

Package metadata

Scripts7
  • bench:taggernpx tsx scripts/ab_tagger.ts
  • buildnode build.mjs
  • devts-node --esm src/index.ts
  • migratenpm run build && node build/index.js migrate
  • preparetrue
  • setupnpm run build && node build/index.js setup
  • startnode build/index.js