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
- 484
- Versions published
- 196
- First published
- Jan 2026
- Publisher
- tomer_wogi
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":["[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"}'Why flagged
What the scanner saw
Remote Payload: matched "raw.githubusercontent.com"
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 179 · status changed
Evidence
Static findings
47 static · 0 from release diff · showing high-signal first.
| Severity | Kind | Path | Detail | Points |
|---|---|---|---|---|
| medium | Remote Payload | package/.workflow/bridges/claude-bridge.js | matched "raw.githubusercontent.com" | 12 |
| medium | Remote Payload | package/scripts/flow-figma-mcp-server.js | matched "curl " | 12 |
| medium | Remote Payload | package/lib/skill-registry.js | matched "raw.githubusercontent.com" | 12 |
| medium | Remote Payload | package/scripts/hooks/core/worker-continuation-gate.js | matched "curl " | 12 |
| medium | Remote Payload | package/scripts/hooks/core/worker-tool-first-gate.js | matched "curl " | 12 |
| medium | Remote Payload | package/lib/workspace-channel-server.js | matched "curl " | 12 |
| medium | Remote Payload | package/scripts/hooks/core/workspace-stop-gates.js | matched "curl " | 12 |
| medium | Remote Payload | package/lib/workspace.js | matched "curl " | 12 |
Show all 47 findings (low-signal and informational)
| Severity | Kind | Path | Detail | Points |
|---|---|---|---|---|
| medium | Remote Payload | package/.workflow/bridges/claude-bridge.js | matched "raw.githubusercontent.com" | 12 |
| medium | Remote Payload | package/scripts/flow-figma-mcp-server.js | matched "curl " | 12 |
| medium | Remote Payload | package/lib/skill-registry.js | matched "raw.githubusercontent.com" | 12 |
| medium | Remote Payload | package/scripts/hooks/core/worker-continuation-gate.js | matched "curl " | 12 |
| medium | Remote Payload | package/scripts/hooks/core/worker-tool-first-gate.js | matched "curl " | 12 |
| medium | Remote Payload | package/lib/workspace-channel-server.js | matched "curl " | 12 |
| medium | Remote Payload | package/scripts/hooks/core/workspace-stop-gates.js | matched "curl " | 12 |
| medium | Remote Payload | package/lib/workspace.js | matched "curl " | 12 |
| low | Credential file access | package/scripts/flow-damage-control.js | matched ".ssh" | 5 |
| low | Obfuscation | package/scripts/flow-assumption-detector.js | matched "\\u25CF" | 3 |
| low | Obfuscation | package/scripts/flow-capture-gate.js | matched "\\u25CB" | 3 |
| low | Obfuscation | package/scripts/flow-cascade-completion.js | matched "\\u2713" | 3 |
| low | Obfuscation | package/scripts/flow-completion-truth-gate.js | matched "\\u25CB" | 3 |
| low | Obfuscation | package/scripts/flow-config-defaults.js | matched "\\u0027" | 3 |
| low | Obfuscation | package/scripts/flow-config-loader.js | matched "\\u26a0" | 3 |
| low | Obfuscation | package/scripts/flow-conflict-resolver.js | matched "\\x1b" | 3 |
| low | Obfuscation | package/scripts/flow-damage-control.js | matched "\\x00" | 3 |
| low | Obfuscation | package/scripts/flow-done-gates.js | matched "\\u25CB" | 3 |
| low | Obfuscation | package/scripts/flow-done-report.js | matched "\\u2501" | 3 |
| low | Obfuscation | package/scripts/flow-eval-calibration.js | matched "Eval(" | 3 |
| low | Obfuscation | package/scripts/flow-eval.js | matched "Eval(" | 3 |
| low | Obfuscation | package/scripts/flow-long-input-cli.js | matched "\\x1b" | 3 |
| low | Obfuscation | package/scripts/flow-long-input-language.js | matched "\\u0400" | 3 |
| low | Obfuscation | package/scripts/flow-morning.js | matched "\\u2022" | 3 |
| low | Obfuscation | package/scripts/flow-orchestrate-validation.js | matched "\\u200B" | 3 |
| low | Obfuscation | package/scripts/flow-output.js | matched "\\x1b" | 3 |
| low | Obfuscation | package/scripts/flow-parallel.js | matched "\\u2588" | 3 |
| low | Obfuscation | package/scripts/flow-progress-tracker.js | matched "\\u2588" | 3 |
| low | Obfuscation | package/scripts/flow-progress.js | matched "\\x1b" | 3 |
| low | Obfuscation | package/scripts/flow-roadmap.js | matched "\\x00" | 3 |
| low | Obfuscation | package/scripts/flow-security.js | matched "\\x00" | 3 |
| low | Obfuscation | package/scripts/flow-start.js | matched "\\x1b" | 3 |
| low | Obfuscation | package/scripts/flow-step-review.js | matched "eval(" | 3 |
| low | Obfuscation | package/scripts/flow-story-gates.js | matched "\\x00" | 3 |
| low | Obfuscation | package/scripts/flow-strict-adherence.js | matched "\\x00" | 3 |
| low | Obfuscation | package/scripts/flow-test-integrity.js | matched "\\u20AC" | 3 |
| low | Obfuscation | package/scripts/flow-utils.js | matched "\\u2014" | 3 |
| low | Obfuscation | package/scripts/flow-verify.js | matched "eval(" | 3 |
| low | Obfuscation | package/scripts/flow-wiring-verifier.js | matched "\\u2713" | 3 |
| low | Obfuscation | package/scripts/flow-workspace-summary.js | matched "Buffer.from(s, 'base64" | 3 |
| low | Obfuscation | package/lib/installer.js | matched "\\x1b" | 3 |
| low | Obfuscation | package/lib/commands/login.js | matched "\\x1b" | 3 |
| low | Obfuscation | package/scripts/postinstall.js | matched "\\x1b" | 3 |
| low | Obfuscation | package/scripts/hooks/core/pre-tool-orchestrator.js | matched "\\u26d4" | 3 |
| low | Obfuscation | package/scripts/preuninstall.js | matched "\\x1b" | 3 |
| low | Obfuscation | package/scripts/flow-review-passes/security.js | matched "eval(" | 3 |
| low | Obfuscation | package/lib/workspace-routing.js | matched "\\u2713" | 3 |