Scan timing: clone 2.7s · analysis 1.74s · 0.9 MB · GitHub API rate-limit (preflight)
https://github.com/sherlock-project/sherlock
· scanned 2026-06-05 07:19 UTC (5 days, 23 hours ago)
· 10 languages
127 raw signals (65 security + 62 graph) 78th percentile · Python · small (2-20K LoC)
Last scanned 5 days, 23 hours ago · v2 · 42 actionable findings from 2 signal sources. 54 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 |
75.0 | 0.15 | 11.25 |
security_score |
84.8 | 0.25 | 21.20 |
testing_score |
100.0 | 0.20 | 20.00 |
documentation_score |
38.0 | 0.15 | 5.70 |
practices_score |
92.0 | 0.15 | 13.80 |
code_quality |
73.8 | 0.10 | 7.38 |
| Overall | 1.00 | 79.3 |
All 135 nodes from the latest scan, grouped by kind. Each node is a unit the engine identified (file, function, endpoint, table…). Most users won't need this view — it's primarily for debugging the engine's graph extraction or for AI agents that want to enumerate the project structure.
| Label | Layer | Status | Path |
|---|---|---|---|
fetch_local_manifest |
software | healthy | tests/conftest.py:7 |
sites_obj |
software | healthy | tests/conftest.py:13 |
sites_info |
software | healthy | tests/conftest.py:18 |
remote_schema |
software | healthy | tests/conftest.py:22 |
pytest_addoption |
software | healthy | tests/conftest.py:28 |
pytest_generate_tests |
software | healthy | tests/conftest.py:36 |
test_validate_manifest_against_local_schema |
software | healthy | tests/test_manifest.py:6 |
test_validate_manifest_against_remote_schema |
software | healthy | tests/test_manifest.py:23 |
test_site_list_iterability |
software | healthy | tests/test_manifest.py:38 |
simple_query |
software | healthy | tests/test_probes.py:11 |
test_known_positives_via_message |
software | healthy | tests/test_probes.py:30 |
test_known_positives_via_status_code |
software | healthy | tests/test_probes.py:41 |
test_known_positives_via_response_url |
software | healthy | tests/test_probes.py:50 |
test_likely_negatives_via_message |
software | healthy | tests/test_probes.py:62 |
test_likely_negatives_via_status_code |
software | healthy | tests/test_probes.py:84 |
test_username_illegal_regex |
software | healthy | tests/test_probes.py:98 |
test_username_via_message |
software | healthy | tests/few_test_basic.py:6 |
test_remove_nsfw |
software | healthy | tests/test_ux.py:6 |
test_nsfw_explicit_selection |
software | healthy | tests/test_ux.py:18 |
test_wildcard_username_expansion |
software | healthy | tests/test_ux.py:26 |
test_no_usernames_provided |
software | healthy | tests/test_ux.py:41 |
test_versioning |
software | healthy | tests/test_version.py:5 |
run_cli |
software | healthy | tests/sherlock_interactives.py:7 |
walk_sherlock_for_files_with |
software | healthy | tests/sherlock_interactives.py:23 |
_make_future_with_exception |
software | healthy | tests/test_unicode.py:8 |
test_get_response_handles_unicode_decode_error |
software | healthy | tests/test_unicode.py:15 |
test_get_response_handles_unicode_encode_error |
software | healthy | tests/test_unicode.py:35 |
set_pattern_upper_bound |
software | healthy | tests/test_validate_targets.py:15 |
replace_upper_bound |
software | healthy | tests/test_validate_targets.py:17 |
false_positive_check |
software | healthy | tests/test_validate_targets.py:29 |
false_negative_check |
software | healthy | tests/test_validate_targets.py:55 |
test_false_pos |
software | healthy | tests/test_validate_targets.py:79 |
test_false_neg |
software | healthy | tests/test_validate_targets.py:95 |
get_version |
software | healthy | sherlock_project/__init__.py:13 |
__init__ |
software | healthy | sherlock_project/sites.py:79 |
__str__ |
software | healthy | sherlock_project/sites.py:65 |
remove_nsfw_sites |
software | healthy | sherlock_project/sites.py:208 |
site_name_list |
software | dead | sherlock_project/sites.py:226 |
__iter__ |
software | healthy | sherlock_project/sites.py:238 |
__len__ |
software | healthy | sherlock_project/sites.py:251 |
__str__ |
software | healthy | sherlock_project/result.py:74 |
__init__ |
software | healthy | sherlock_project/result.py:35 |
__init__ |
software | healthy | sherlock_project/notify.py:113 |
start |
software | healthy | sherlock_project/notify.py:137 |
update |
software | healthy | sherlock_project/notify.py:176 |
finish |
software | healthy | sherlock_project/notify.py:252 |
__str__ |
software | healthy | sherlock_project/notify.py:270 |
countResults |
software | healthy | sherlock_project/notify.py:162 |
request |
software | healthy | sherlock_project/sherlock.py:49 |
response_time |
software | dead | sherlock_project/sherlock.py:75 |
Showing first 50 of this kind. Full payload available via the JSON button at the top of the page.
| Label | Layer | Status | Path |
|---|---|---|---|
Dockerfile |
software | healthy | Dockerfile |
pyproject.toml |
software | healthy | pyproject.toml |
conftest.py |
software | healthy | tests/conftest.py |
test_manifest.py |
software | healthy | tests/test_manifest.py |
test_probes.py |
software | healthy | tests/test_probes.py |
few_test_basic.py |
software | healthy | tests/few_test_basic.py |
test_ux.py |
software | healthy | tests/test_ux.py |
test_version.py |
software | healthy | tests/test_version.py |
sherlock_interactives.py |
software | healthy | tests/sherlock_interactives.py |
test_unicode.py |
software | healthy | tests/test_unicode.py |
test_validate_targets.py |
software | healthy | tests/test_validate_targets.py |
README.md |
software | healthy | docs/README.md |
removed-sites.md |
software | healthy | docs/removed-sites.md |
CODE_OF_CONDUCT.md |
software | healthy | docs/CODE_OF_CONDUCT.md |
README.md |
software | healthy | docs/pyproject/README.md |
__init__.py |
software | healthy | sherlock_project/__init__.py |
sites.py |
software | healthy | sherlock_project/sites.py |
result.py |
software | healthy | sherlock_project/result.py |
__main__.py |
software | warning | sherlock_project/__main__.py |
notify.py |
software | healthy | sherlock_project/notify.py |
sherlock.py |
software | healthy | sherlock_project/sherlock.py |
data.json |
software | healthy | sherlock_project/resources/data.json |
data.schema.json |
software | healthy | sherlock_project/resources/data.schema.json |
site-list.py |
software | warning | devel/site-list.py |
summarize_site_validation.py |
software | healthy | devel/summarize_site_validation.py |
FUNDING.yml |
software | healthy | .github/FUNDING.yml |
SECURITY.md |
software | healthy | .github/SECURITY.md |
false-positive.yml |
software | healthy | .github/ISSUE_TEMPLATE/false-positive.yml |
bug-report.yml |
software | healthy | .github/ISSUE_TEMPLATE/bug-report.yml |
false-negative.yml |
software | healthy | .github/ISSUE_TEMPLATE/false-negative.yml |
site-request.yml |
software | healthy | .github/ISSUE_TEMPLATE/site-request.yml |
config.yml |
software | healthy | .github/ISSUE_TEMPLATE/config.yml |
feature-request.yml |
software | healthy | .github/ISSUE_TEMPLATE/feature-request.yml |
validate_modified_targets.yml |
software | healthy | .github/workflows/validate_modified_targets.yml |
update-site-list.yml |
software | healthy | .github/workflows/update-site-list.yml |
exclusions.yml |
software | healthy | .github/workflows/exclusions.yml |
regression.yml |
software | healthy | .github/workflows/regression.yml |
| Label | Layer | Status | Path |
|---|---|---|---|
TestLiveTargets |
software | healthy | tests/test_probes.py:23 |
Interactives |
software | healthy | tests/sherlock_interactives.py:6 |
InteractivesSubprocessError |
software | healthy | tests/sherlock_interactives.py:37 |
Test_All_Targets |
software | healthy | tests/test_validate_targets.py:76 |
SiteInformation |
software | healthy | sherlock_project/sites.py:14 |
SitesInformation |
software | healthy | sherlock_project/sites.py:78 |
QueryStatus |
software | healthy | sherlock_project/result.py:8 |
QueryResult |
software | healthy | sherlock_project/result.py:30 |
QueryNotify |
software | healthy | sherlock_project/notify.py:14 |
QueryNotifyPrint |
software | healthy | sherlock_project/notify.py:107 |
SherlockFuturesSession |
software | healthy | sherlock_project/sherlock.py:48 |
| Label | Layer | Status | Path |
|---|---|---|---|
tests |
software | healthy | tests |
docs |
software | healthy | docs |
pyproject |
software | healthy | docs/pyproject |
sherlock_project |
software | healthy | sherlock_project |
resources |
software | healthy | sherlock_project/resources |
devel |
software | healthy | devel |
.github |
software | healthy | .github |
ISSUE_TEMPLATE |
software | healthy | .github/ISSUE_TEMPLATE |
workflows |
software | healthy | .github/workflows |
| Label | Layer | Status | Path |
|---|---|---|---|
validate-modified-targets |
cicd | healthy | .github/workflows/validate_modified_targets.yml |
sync-json-data |
cicd | healthy | .github/workflows/update-site-list.yml |
update-exclusions |
cicd | healthy | .github/workflows/exclusions.yml |
tox-lint |
cicd | healthy | .github/workflows/regression.yml |
tox-matrix |
cicd | healthy | .github/workflows/regression.yml |
docker-build-test |
cicd | healthy | .github/workflows/regression.yml |
| Label | Layer | Status | Path |
|---|---|---|---|
gha::validate_modified_targets |
cicd | healthy | .github/workflows/validate_modified_targets.yml |
gha::update-site-list |
cicd | healthy | .github/workflows/update-site-list.yml |
gha::exclusions |
cicd | healthy | .github/workflows/exclusions.yml |
gha::regression |
cicd | healthy | .github/workflows/regression.yml |
| Label | Layer | Status | Path |
|---|---|---|---|
127.0.0.1 |
network | healthy | sherlock_project/sherlock.py |
120.0.0.0 |
network | healthy | sherlock_project/resources/data.json |
| Label | Layer | Status | Path |
|---|---|---|---|
SSH_DEPLOY_KEY |
cicd | healthy | — |
API_TOKEN_GITHUB |
cicd | healthy | — |
| Label | Layer | Status | Path |
|---|---|---|---|
repobility-clone-co318b2r |
software | healthy | /tmp/repobility-clone-co318b2r |
| Label | Layer | Status | Path |
|---|---|---|---|
caddy |
network | healthy | sherlock_project/resources/data.json |
| Label | Layer | Status | Path |
|---|---|---|---|
port:05 |
network | healthy | .github/workflows/exclusions.yml |
| Label | Layer | Status | Path |
|---|---|---|---|
image::Dockerfile |
hardware | healthy | Dockerfile |
| Label | Layer | Status | Path |
|---|---|---|---|
vps::aws |
hardware | healthy | sherlock_project/sherlock.py |
This page is publicly accessible at:
https://repobility.com/scan/b8f0703e-54ea-453f-a23e-c3a6fc92b520/
To check status programmatically (no auth required):
curl -s https://repobility.com/api/v1/public/scan/b8f0703e-54ea-453f-a23e-c3a6fc92b520/
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.