Scan timing: clone 3.59s · analysis 8.92s · 54.6 MB · GitHub API rate-limit (preflight)
https://github.com/platonai/Browser4
· scanned 2026-06-05 14:32 UTC (5 days, 4 hours ago)
· 10 languages
431 raw signals (141 security + 290 graph) 11/13 scanners ran 100th percentile · Kotlin · large (100-500K LoC) System graph score 88 (lower by 2)
Last scanned 5 days, 4 hours ago · v2 · 178 actionable findings from 2 signal sources. 93 repeated signals grouped for readability. Security checks, system graph analysis, and verified AI-agent feedback are merged into one review queue.
| Component | Sub-score | Weight | Contribution |
|---|---|---|---|
structure_score |
60.0 | 0.15 | 9.00 |
security_score |
100.0 | 0.25 | 25.00 |
testing_score |
95.0 | 0.20 | 19.00 |
documentation_score |
75.0 | 0.15 | 11.25 |
practices_score |
96.0 | 0.15 | 14.40 |
code_quality |
67.0 | 0.10 | 6.70 |
| Overall | 1.00 | 85.4 |
Showing 131 of 178 actionable findings. 271 raw detector signals were grouped into reader-sized issues. Click TP / FP to vote on a finding's accuracy — votes adjust the confidence weighting and improve detection across the platform.
browser4-rest/src/main/kotlin/ai/platon/pulsar/rest/api/controller/ConversationController.kt:68
browser4-rest/src/main/kotlin/ai/platon/pulsar/rest/api/controller/SwarmController.kt:127
browser4-rest/src/main/kotlin/ai/platon/pulsar/rest/api/controller/ScrapeController.kt:120
browser4-rest/src/main/kotlin/ai/platon/pulsar/rest/api/controller/ConversationController.kt:82
browser4-rest/src/main/kotlin/ai/platon/pulsar/rest/api/controller/ExtractionController.kt:51
browser4-rest/src/main/kotlin/ai/platon/pulsar/rest/api/controller/ExtractionController.kt:65
browser4-agentic/src/main/resources/skills/mcp-builder/scripts/connections.py:44
browser4-core/browser4-skeleton/src/main/kotlin/ai/platon/pulsar/skeleton/workflow/parse/ParserConfigReader.kt:57
browser4-core/browser4-browser/src/main/kotlin/ai/platon/browser4/chrome/handler/transport/KtorTransport.kt:79
bin/quality/fix-links.py:129, 135, 181, 302, 312, 317, 346, 350, +2 more (10 hits)browser4-agentic/src/main/resources/skills/mcp-builder/scripts/connections.py:30Dockerfile:2, 41 (2 hits)Dockerfile.fast:8cli/docker/Dockerfile.build:2browser4-agentic/src/main/resources/skills/pdf/scripts/create_validation_image.py:16browser4-agentic/src/main/resources/skills/weather/scripts/get_weather.py:58browser4-rest/src/main/kotlin/ai/platon/pulsar/rest/api/controller/SwarmController.kt:41browser4-core/browser4-skeleton/src/main/kotlin/ai/platon/pulsar/skeleton/workflow/parse/ParserConfigReader.kt:40
docker-compose.yml:1
CI/CD securitycontainers
.github/workflows/release.yml:105, 111, 269, 585, 593, 734, 739, 812, +11 more (38 hits).github/workflows/ci.yml:44 (2 hits).github/workflows/nightly.yml:33 (2 hits).github/workflows/ci.yml:74, 77 (4 hits).github/workflows/nightly.yml:132, 135 (4 hits)browser4-core/browser4-browser/src/main/resources/js/stealth.js:4
Eval used
cdp-protocol/js_protocol.json:3226
Eval used
browser4-rest/src/main/kotlin/ai/platon/pulsar/rest/api/controller/SystemController.kt:16
browser4-rest/src/main/kotlin/ai/platon/pulsar/rest/api/controller/SystemController.kt:22
browser4-rest/src/main/kotlin/ai/platon/pulsar/rest/api/controller/SystemController.kt:40
browser4-rest/src/main/kotlin/ai/platon/pulsar/rest/mcp/controller/MCPToolController.kt:196
browser4-rest/src/main/kotlin/ai/platon/pulsar/rest/mcp/controller/MCPToolController.kt:236
browser4-core/browser4-browser/src/main/resources/js/dom_settle.js:41
bin/quality/fix-links.py:185, 282, 381, 549 (4 hits)browser4-agentic/src/main/resources/skills/mcp-builder/scripts/evaluation.py:74, 118 (2 hits)coworker/scripts/workers/count-total-token-usage.py:134, 224 (2 hits)docker-compose.yml:1, 18, 26 (3 hits)cli/docker/Dockerfile.build:2
CI/CD securitycontainers
Dockerfile:15
CI/CD securitycontainers
.well-known/security.txt
.github/workflows/release.yml
CI/CD securitySupply chainGithub actions
.dockerignore
CI/CD securitycontainers
docker-compose.yml:18, 26 (2 hits)cli/docker/docker-compose.yml:8, 36, 57 (3 hits)docker-compose.yml:18, 26 (2 hits)cli/docker/Dockerfile.build:5
CI/CD securitycontainers
browser4-apps/browser4-standalone/src/main/kotlin/ai/platon/pulsar/apps/Browser4StandaloneApplication.kt:18browser4-core/browser4-browser/src/main/kotlin/ai/platon/pulsar/browser/detail/ScriptLoader.kt:88browser4-core/browser4-skeleton/src/main/kotlin/ai/platon/pulsar/skeleton/workflow/common/url/StatefulListenableHyperlink.kt:8browser4-rest/src/main/kotlin/ai/platon/pulsar/rest/api/controller/SystemController.kt:16browser4-rest/src/main/kotlin/ai/platon/pulsar/rest/api/service/ScrapeService.kt:41browser4-rest/src/main/kotlin/ai/platon/pulsar/rest/mcp/controller/ArgumentNormalizers.kt:19browser4-rest/src/main/kotlin/ai/platon/pulsar/rest/mcp/controller/MCPToolController.kt:54llms.txt
humans.txt
Dockerfile:41
containersPinned dependencies
Dockerfile:2
containersPinned dependencies
cli/package.json
CI/CD securitySupply chainNpm
browser4-agentic/src/main/resources/skills/pdf/scripts/fill_fillable_fields.py:96
browser4-agentic/src/main/resources/skills/pdf/scripts/extract_form_field_info.py:126
This page is publicly accessible at:
https://repobility.com/scan/cbf6d4c7-1089-41a0-b635-c49b8192e888/
To check status programmatically (no auth required):
curl -s https://repobility.com/api/v1/public/scan/cbf6d4c7-1089-41a0-b635-c49b8192e888/
Important — please don't re-submit the same URL repeatedly. The submission endpoint is idempotent: re-submitting the same git URL returns this same scan_token, not a new one. To re-scan this repo, sign up free and use the dashboard.