PkgRadar

Package evidence

@liuyuan114/[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.

Versions published
3
First published
May 2026
Publisher
sike_xibai

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":["@liuyuan114/[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":["@liuyuan114/[email protected]"],"fail_on":"review"}'
Publishersike_xibai
Artifact bytes3,270,468
Previous version0.1.1
Published2026-05-29T06:35:10.773Z
SHA-25632c30ff92d445a85f4e3f633bd2273df6c6656e2f526368655b7d45c07f541d1

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
55Score
0.1.2Version
Status history (1 event)
  1. newavailable · risk review · score 55 · status changed

Evidence

Static findings

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

SeverityKindPathDetailPoints
highJs Decode Then Execpackage/dist-standalone/index.cjsbase64 / atob / fromCharCode decode paired with eval / new Function in the same file — canonical obfuscated-loader pattern.45
Show all 4 findings (low-signal and informational)
SeverityKindPathDetailPoints
highJs Decode Then Execpackage/dist-standalone/index.cjsbase64 / atob / fromCharCode decode paired with eval / new Function in the same file — canonical obfuscated-loader pattern.45
lowCredential file accesspackage/dist-standalone/assets/index-BA8LvzEK.cjsmatched "id_rsa"5
lowCredential file accesspackage/dist-standalone/index.cjsmatched ".npmrc"5
lowObfuscation Densitypackage/out/renderer/assets/chunk-WL4C6EOR-JKhX3oB7.jshigh encoded/escaped-token density0

Manifest

Package metadata

Scripts28
  • buildelectron-vite build
  • checkpnpm typecheck && pnpm lint && pnpm test && pnpm build
  • develectron-vite dev
  • distelectron-builder --mac --win --linux
  • dist:linuxelectron-builder --linux --publish always
  • dist:macelectron-builder --mac --arm64 --x64 --publish always
  • dist:mac:arm64electron-builder --mac --arm64 --publish always
  • dist:mac:x64electron-builder --mac --x64 --publish always
  • dist:winelectron-builder --win --publish always
  • fixpnpm lint:fix && pnpm format
  • formatprettier --write "src/**/*.{ts,tsx,js,jsx,json,css}"
  • format:checkprettier --check "src/**/*.{ts,tsx,js,jsx,json,css}"
  • linteslint src/
  • lint:fixeslint src/ --fix
  • previewelectron-vite preview
  • qualitypnpm check && pnpm format:check && npx knip
  • standalonetsx src/main/standalone.ts
  • standalone:buildelectron-vite build && vite build --config vite.standalone.config.ts
  • standalone:startnode dist-standalone/index.cjs
  • testvitest run
  • test:chunkstsx test/test-chunk-building.ts
  • test:coveragevitest run --coverage
  • test:coverage:criticalvitest run --coverage --config vitest.critical.config.ts
  • test:noisetsx test/test-noise-filtering.ts
  • test:semantictsx test/test-semantic-steps.ts
  • test:task-filteringtsx test/test-task-filtering.ts
  • test:watchvitest
  • typechecktsc --noEmit
Dependencies22
  • @dnd-kit/core^6.3.1
  • @dnd-kit/sortable^10.0.0
  • @dnd-kit/utilities^3.2.2
  • @fastify/cors^11.2.0
  • @fastify/static^9.0.0
  • @tanstack/react-virtual^3.10.8
  • date-fns^3.6.0
  • electron-updater^6.7.3
  • fastify^5.7.4
  • idb-keyval^6.2.2
  • lucide-react^0.562.0
  • mdast-util-to-hast^13.2.1
  • mermaid^11.13.0
  • react^18.3.1
  • react-dom^18.3.1
  • react-markdown^10.1.0
  • remark-gfm^4.0.1
  • remark-parse^11.0.0
  • ssh-config^5.0.4
  • ssh2^1.17.0
  • unified^11.0.5
  • zustand^4.5.0