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,853Niche · −30% score
- Versions published
- 185
- First published
- Apr 2026
- Publisher
- hanna.r
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
Looks clean — keep monitoringNo high-signal indicators in the stored static report. PkgRadar will re-check on the next ingest pass.
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":["@hanna84/[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":["@hanna84/[email protected]"],"fail_on":"review"}'Why flagged
What the scanner saw
No high-signal static finding in the saved report.
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 low · score 0 · status changed
Evidence
Static findings
No findings stored for this release.
Manifest
Package metadata
Scripts22
check:docsnpm run docs && git diff --exit-code -- docs/agents/tools.mdcheck:prnpm run check:static && npm testcheck:staticnpm run lint && npm run guard:legacy-root-imports && npm run guard:docker-docs && npm run check:docsdocsnode src/scripts/generate-tool-docs.mjsguard:docker-docsnode src/scripts/check-docker-docs.mjsguard:legacy-root-importsnode src/scripts/check-legacy-root-imports.mjslinteslint *.js eslint-rules src/index.js src/core src/review-bundles src/runtime src/setup src/scripts src/structure src/styleguide src/sync src/tools src/workflows src/worldlint:metadatanode src/scripts/lint-metadata.mjsmanual:merge-beta-testnode src/scripts/manual/run_mcp_test.jsmanual:realtestnode src/scripts/manual-scrivener-realtest.mjsmanual:review-bundlenode src/scripts/manual/run_create_review_bundle.jsmanual:scenariosnode src/scripts/manual/test-scenarios.mjsmanual:testnode src/scripts/manual/test.mjsnew:entitynode src/scripts/new-world-entity.jsnormalize:scene-charactersnode --experimental-sqlite src/scripts/normalize-scene-characters.mjsreleaserelease-itsetup:openclaw-envsh src/scripts/setup-openclaw-env.shstartnode --experimental-sqlite index.jssync:server-json-versionnode src/scripts/sync-server-json-version.mjstestnpm run test:unit && npm run test:integrationtest:integrationnode --experimental-sqlite --test --test-concurrency=1 src/test/integration/*.test.mjstest:unitnode --experimental-sqlite --test src/test/unit/*.test.mjs
Dependencies6
@modelcontextprotocol/sdk^1.29.0@xmldom/xmldom^0.9.10gray-matter^4.0.3js-yaml^4.1.1pdfkit^0.18.0zod^4.4.3