Recommended action
Block this updateStatic 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":["@downcity/[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":["@downcity/[email protected]"],"fail_on":"high"}'Why flagged
What the scanner saw
Remote Payload: matched "cUrl "
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 high · score 69 · status changed
Related candidates
Linked campaigns and clusters
wangenius
9 members · evidence strength 84Evidence
Static findings
11 static · 0 from release diff · showing high-signal first.
| Severity | Kind | Path | Detail | Points |
|---|---|---|---|---|
| medium | Remote Payload | package/bin/cli/control-plane/ControlPlaneRuntime.js | matched "cUrl " | 12 |
| medium | Remote Payload | package/bin/cli/shared/PortHints.js | matched "cUrl " | 12 |
| medium | Remote Payload | package/src/cli/control-plane/ControlPlaneRuntime.ts | matched "cUrl " | 12 |
| medium | Remote Payload | package/src/cli/shared/PortHints.ts | matched "cUrl " | 12 |
Show all 11 findings (low-signal and informational)
| Severity | Kind | Path | Detail | Points |
|---|---|---|---|---|
| medium | Remote Payload | package/bin/cli/control-plane/ControlPlaneRuntime.js | matched "cUrl " | 12 |
| medium | Remote Payload | package/bin/cli/shared/PortHints.js | matched "cUrl " | 12 |
| medium | Remote Payload | package/src/cli/control-plane/ControlPlaneRuntime.ts | matched "cUrl " | 12 |
| medium | Remote Payload | package/src/cli/shared/PortHints.ts | matched "cUrl " | 12 |
| low | Obfuscation | package/public/app.js | matched "\\u00C0" | 3 |
| low | Obfuscation | package/bin/platform/store/crypto.js | matched "Buffer.from(raw, \"base64" | 3 |
| low | Obfuscation | package/bin/control/EnvApiRoutes.js | matched "\\uFEFF" | 3 |
| low | Obfuscation | package/bin/cli/shared/Plugins.js | matched "\\u001b" | 3 |
| low | Obfuscation | package/src/platform/store/crypto.ts | matched "Buffer.from(raw, \"base64" | 3 |
| low | Obfuscation | package/src/control/EnvApiRoutes.ts | matched "\\uFEFF" | 3 |
| low | Obfuscation | package/src/cli/shared/Plugins.ts | matched "\\u001b" | 3 |
Manifest
Package metadata
Scripts6
buildrm -rf bin tsconfig.tsbuildinfo && tsc && tsc-alias -f && node scripts/copy-prompt-assets.mjs && node scripts/ensure-cli-executable.mjsdevtsc --watchlintnpm run lint:boundarieslint:boundariesnode scripts/lint-import-boundaries.mjsstartnode bin/cli/Index.jstypechecktsc --noEmit
Dependencies29
@ai-sdk/anthropic^3.0.28@ai-sdk/google^3.0.6@ai-sdk/huggingface^1.0.37@ai-sdk/moonshotai^2.0.10@ai-sdk/open-responses^1.0.6@ai-sdk/openai^3.0.21@ai-sdk/openai-compatible^2.0.0@ai-sdk/xai^3.0.67@downcity/agent^1.1.21@larksuiteoapi/node-sdk^1.40.0@openrouter/ai-sdk-provider^2.2.3ai^6.0.57better-sqlite3^11.10.0chalk^5.4.0commander^12.0.0dotenv^16.4.0drizzle-orm^0.36.4execa^9.5.0fast-glob^3.3.0fs-extra^11.2.0hono^4.0.0js-yaml^4.1.0nanoid^5.1.6node-cron^3.0.0openai^4.0.0ora^8.2.0prompts^2.4.0ws^8.19.0zod^3.24.0