https://github.com/agilamlabs/webTool
· scanned 2026-06-17 01:29 UTC (1 month, 2 weeks ago)
83 raw signals (0 security + 83 graph)
Last scanned 1 month, 2 weeks ago · v2 · last Δ +1.7 (diff) · 68 actionable findings from 1 signal source. 15 repeated signals grouped for readability. Security checks, system graph analysis, and verified AI-agent feedback are merged into one review queue.
All 2514 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 |
|---|---|---|---|
test_known_binary_extension |
software | healthy | tests/test_v163_routing.py:18 |
test_known_html_extension |
software | healthy | tests/test_v163_routing.py:28 |
test_extensionless_url_unknown |
software | healthy | tests/test_v163_routing.py:38 |
test_query_string_does_not_affect_classification |
software | healthy | tests/test_v163_routing.py:44 |
test_classify_url_uses_session_cookies |
software | healthy | tests/test_v163_routing.py:56 |
test_classify_url_extension_short_circuits_no_session_lookup |
software | healthy | tests/test_v163_routing.py:82 |
test_search_and_extract_direct_pdf_url_routes_to_fetch_bina… |
software | healthy | tests/test_v163_routing.py:101 |
test_search_and_extract_direct_extensionless_pdf_routes_to_… |
software | healthy | tests/test_v163_routing.py:129 |
test_search_and_extract_direct_html_url_uses_fetch |
software | healthy | tests/test_v163_routing.py:157 |
test_search_results_extensionless_urls_get_probed |
software | healthy | tests/test_v163_routing.py:186 |
test_search_results_extensionless_pdf_promoted_to_download_… |
software | healthy | tests/test_v163_routing.py:239 |
test_search_results_html_extensions_skip_probe |
software | healthy | tests/test_v163_routing.py:270 |
mock_classify |
software | healthy | tests/test_v163_routing.py:300 |
test_search_results_probe_disabled_treats_extensionless_as_… |
software | healthy | tests/test_v163_routing.py:323 |
test_take_screenshot_uses_configured_wait_until |
software | healthy | tests/test_v165_low_polish.py:22 |
__aenter__ |
software | healthy | tests/test_v165_low_polish.py:44 |
__aexit__ |
software | healthy | tests/test_v165_low_polish.py:47 |
test_office_and_archive_extensions_shared |
software | healthy | tests/test_v165_low_polish.py:73 |
test_download_extensions_includes_installers_not_in_binary_… |
software | healthy | tests/test_v165_low_polish.py:86 |
test_load_mcp_config_no_env_var_returns_default |
software | healthy | tests/test_v165_low_polish.py:102 |
test_load_mcp_config_loads_yaml |
software | healthy | tests/test_v165_low_polish.py:111 |
test_load_mcp_config_missing_file_falls_back_to_default |
software | healthy | tests/test_v165_low_polish.py:133 |
test_dialog_state_uses_weak_key_dictionary |
software | healthy | tests/test_v165_low_polish.py:147 |
test_page_dialog_state_no_attribute_pollution |
software | healthy | tests/test_v165_low_polish.py:157 |
test_safety_config_normalizes_full_url_pattern |
software | healthy | tests/test_v165_low_polish.py:176 |
test_safety_config_normalizes_leading_dot |
software | healthy | tests/test_v165_low_polish.py:183 |
test_safety_config_strips_path_query_fragment |
software | healthy | tests/test_v165_low_polish.py:190 |
test_safety_config_drops_empty_after_normalization |
software | healthy | tests/test_v165_low_polish.py:197 |
test_safety_config_normalized_pattern_actually_blocks |
software | healthy | tests/test_v165_low_polish.py:205 |
test_safety_config_preserves_well_formed_patterns |
software | healthy | tests/test_v165_low_polish.py:216 |
_make_page |
software | healthy | tests/test_v166_tabs.py:17 |
_on |
software | healthy | tests/test_v166_tabs.py:43 |
_make_ctx |
software | healthy | tests/test_v166_tabs.py:38 |
_new_page |
software | healthy | tests/test_v166_tabs.py:50 |
test_register_initial_page_sets_main_tab_active |
software | healthy | tests/test_v166_tabs.py:61 |
test_new_tab_opens_and_becomes_current |
software | healthy | tests/test_v166_tabs.py:82 |
test_switch_tab_updates_current_pointer |
software | healthy | tests/test_v166_tabs.py:98 |
test_switch_tab_unknown_id_raises_keyerror |
software | healthy | tests/test_v166_tabs.py:110 |
test_close_tab_removes_and_picks_new_current |
software | healthy | tests/test_v166_tabs.py:119 |
test_popup_event_auto_registers_but_does_not_become_current |
software | healthy | tests/test_v166_tabs.py:141 |
test_get_or_current_falls_back_to_current |
software | healthy | tests/test_v166_tabs.py:164 |
test_initial_page_not_double_registered_by_listener |
software | healthy | tests/test_v166_tabs.py:176 |
test_popup_already_closed_on_registration_does_not_leak |
software | healthy | tests/test_v166_tabs.py:196 |
test_evict_on_close_is_idempotent |
software | healthy | tests/test_v166_tabs.py:221 |
test_basic |
software | healthy | tests/test_safety.py:17 |
test_lowercase |
software | healthy | tests/test_safety.py:20 |
test_with_port_strips_port |
software | healthy | tests/test_safety.py:23 |
test_invalid_url |
software | healthy | tests/test_safety.py:27 |
test_exact_match |
software | healthy | tests/test_safety.py:32 |
test_subdomain_match |
software | healthy | tests/test_safety.py:35 |
Showing first 50 of this kind. Full payload available via the JSON button at the top of the page.
| Label | Layer | Status | Path |
|---|---|---|---|
FakePageCtx |
software | healthy | tests/test_v165_low_polish.py:43 |
TestNormalizeHost |
software | healthy | tests/test_safety.py:16 |
TestMatchesDomain |
software | healthy | tests/test_safety.py:31 |
TestCheckDomainAllowed |
software | healthy | tests/test_safety.py:48 |
TestBudgetTracker |
software | healthy | tests/test_safety.py:76 |
TestGranularSafetyFlags |
software | healthy | tests/test_safety.py:129 |
TestLooksLikeSubmitExtension |
software | healthy | tests/test_safety.py:164 |
TestConfigError |
software | healthy | tests/test_exceptions.py:19 |
TestDomainNotAllowedErrorStrict |
software | healthy | tests/test_exceptions.py:38 |
TestSelectorNotFoundError |
software | healthy | tests/test_exceptions.py:52 |
TestActionErrorOnInvalidSelectAction |
software | healthy | tests/test_exceptions.py:64 |
TestExceptionsAreInPublicAPI |
software | healthy | tests/test_exceptions.py:79 |
TestLocatorSpec |
software | healthy | tests/test_locators.py:19 |
TestActionInputAcceptsBothFormats |
software | healthy | tests/test_locators.py:47 |
TestDiscriminatedUnionWithLocators |
software | healthy | tests/test_locators.py:82 |
_FakeStreamResp |
software | healthy | tests/test_proxy_fingerprint.py:425 |
_FakeAsyncClient |
software | healthy | tests/test_proxy_fingerprint.py:444 |
_RecordingProvider |
software | healthy | tests/test_search_providers.py:29 |
TestSearXNGProvider |
software | healthy | tests/test_search_providers.py:75 |
TestDDGSProvider |
software | healthy | tests/test_search_providers.py:197 |
_MockDDGS |
software | healthy | tests/test_search_providers.py:227 |
_BoomDDGS |
software | healthy | tests/test_search_providers.py:263 |
TestSearchEngineChain |
software | healthy | tests/test_search_providers.py:285 |
TestQueryIsUrl |
software | healthy | tests/test_search_providers.py:393 |
_Result |
software | healthy | tests/test_deep_review_low.py:20 |
_FakeAgent |
software | healthy | tests/test_deep_review_low.py:25 |
TestSecGovSkillHardening |
software | healthy | tests/test_deep_review_low.py:35 |
TestExtractAsyncOffload |
software | healthy | tests/test_deep_review_low.py:85 |
_FailingPageCtx |
software | healthy | tests/test_v1614_security.py:132 |
_FakeProvider |
software | healthy | tests/test_v1615_search_provider_logging.py:26 |
TestSearxngLogNoise |
software | healthy | tests/test_v1615_search_provider_logging.py:55 |
TestRecursiveRedaction |
software | healthy | tests/test_deep_review_misc.py:36 |
TestActionEnumExports |
software | healthy | tests/test_deep_review_misc.py:63 |
TestSaveResultsSubdir |
software | healthy | tests/test_deep_review_misc.py:74 |
TestInfiniteScrollTimeoutClassification |
software | healthy | tests/test_deep_review_misc.py:88 |
TestMainModuleImportSafe |
software | healthy | tests/test_deep_review_misc.py:105 |
_FailingHttpxClient |
software | healthy | tests/test_v165_security.py:143 |
_FakeExpectDownload |
software | healthy | tests/test_v165_security.py:341 |
_FakeBmContext |
software | healthy | tests/test_v165_security.py:303 |
_FakeClock |
software | healthy | tests/test_search_resilience.py:40 |
_ScriptedProvider |
software | healthy | tests/test_search_resilience.py:63 |
TestCircuitBreaker |
software | healthy | tests/test_search_resilience.py:125 |
TestEngineCircuitBreaker |
software | healthy | tests/test_search_resilience.py:173 |
TestFallbackChain |
software | healthy | tests/test_search_resilience.py:231 |
TestBlockedVsEmpty |
software | healthy | tests/test_search_resilience.py:273 |
TestLinksOnly |
software | healthy | tests/test_search_resilience.py:369 |
TestDDGSBlockedDetection |
software | healthy | tests/test_search_resilience.py:407 |
RatelimitException |
software | healthy | tests/test_search_resilience.py:428 |
_Boom |
software | healthy | tests/test_search_resilience.py:453 |
TestProviderBlockedError |
software | healthy | tests/test_search_resilience.py:468 |
Showing first 50 of this kind. Full payload available via the JSON button at the top of the page.
| Label | Layer | Status | Path |
|---|---|---|---|
CODE_REVIEW_v1.6.15.md |
software | healthy | CODE_REVIEW_v1.6.15.md |
AGENTS.md |
software | healthy | AGENTS.md |
CHANGELOG.md |
software | healthy | CHANGELOG.md |
config.example.yaml |
software | healthy | config.example.yaml |
README.md |
software | healthy | README.md |
pyproject.toml |
software | healthy | pyproject.toml |
SECURITY.md |
software | healthy | SECURITY.md |
LICENSE |
software | healthy | LICENSE |
test_v163_routing.py |
software | healthy | tests/test_v163_routing.py |
test_v165_low_polish.py |
software | healthy | tests/test_v165_low_polish.py |
test_v166_tabs.py |
software | healthy | tests/test_v166_tabs.py |
test_safety.py |
software | healthy | tests/test_safety.py |
test_exceptions.py |
software | healthy | tests/test_exceptions.py |
test_binary_extraction.py |
software | healthy | tests/test_binary_extraction.py |
test_v169_skills_alias.py |
software | healthy | tests/test_v169_skills_alias.py |
test_locators.py |
software | healthy | tests/test_locators.py |
test_v165_medium.py |
software | healthy | tests/test_v165_medium.py |
test_proxy_fingerprint.py |
software | healthy | tests/test_proxy_fingerprint.py |
test_search_providers.py |
software | healthy | tests/test_search_providers.py |
test_deep_review_low.py |
software | healthy | tests/test_deep_review_low.py |
test_v1614_security.py |
software | healthy | tests/test_v1614_security.py |
test_v168_screenshot_verify.py |
software | healthy | tests/test_v168_screenshot_verify.py |
test_h4_new_tab_redirect.py |
software | healthy | tests/test_h4_new_tab_redirect.py |
conftest.py |
software | healthy | tests/conftest.py |
test_v169_remote_cdp_ownership.py |
software | healthy | tests/test_v169_remote_cdp_ownership.py |
test_v1615_search_provider_logging.py |
software | healthy | tests/test_v1615_search_provider_logging.py |
test_deep_review_misc.py |
software | healthy | tests/test_deep_review_misc.py |
test_auth_persistence.py |
software | healthy | tests/test_auth_persistence.py |
test_v165_security.py |
software | healthy | tests/test_v165_security.py |
test_search_resilience.py |
software | healthy | tests/test_search_resilience.py |
test_cache.py |
software | healthy | tests/test_cache.py |
__init__.py |
software | healthy | tests/__init__.py |
test_v166_cdp.py |
software | healthy | tests/test_v166_cdp.py |
test_politeness.py |
software | healthy | tests/test_politeness.py |
test_search_extract_budget.py |
software | healthy | tests/test_search_extract_budget.py |
test_v168_network_capture.py |
software | healthy | tests/test_v168_network_capture.py |
test_v165_high_severity.py |
software | healthy | tests/test_v165_high_severity.py |
test_v169_no_sandbox_autodetect.py |
software | healthy | tests/test_v169_no_sandbox_autodetect.py |
test_v169_browser_locale_ua.py |
software | healthy | tests/test_v169_browser_locale_ua.py |
test_deep_review_config.py |
software | healthy | tests/test_deep_review_config.py |
test_v1614_throughput.py |
software | healthy | tests/test_v1614_throughput.py |
test_browser_url_safety.py |
software | healthy | tests/test_browser_url_safety.py |
test_v168_diagnostics_config.py |
software | healthy | tests/test_v168_diagnostics_config.py |
test_v166_observe.py |
software | healthy | tests/test_v166_observe.py |
test_v169_smart_binary_routing.py |
software | healthy | tests/test_v169_smart_binary_routing.py |
test_lifecycle.py |
software | healthy | tests/test_lifecycle.py |
test_security.py |
software | healthy | tests/test_security.py |
test_v170_wiring.py |
software | healthy | tests/test_v170_wiring.py |
test_v1616_advisory_cleanup.py |
software | healthy | tests/test_v1616_advisory_cleanup.py |
test_v169_persistent_profile.py |
software | healthy | tests/test_v169_persistent_profile.py |
Showing first 50 of this kind. Full payload available via the JSON button at the top of the page.
| Label | Layer | Status | Path |
|---|---|---|---|
127.0.0.0 |
network | healthy | AGENTS.md |
127.0.0.1 |
network | healthy | README.md |
169.254.169.254 |
network | healthy | README.md |
10.0.0.5 |
network | healthy | tests/test_proxy_fingerprint.py |
10.1.2.3 |
network | healthy | tests/test_proxy_fingerprint.py |
93.184.216.34 |
network | healthy | tests/test_politeness.py |
203.0.113.1 |
network | healthy | tests/test_v165_high_severity.py |
10.0.0.1 |
network | healthy | tests/test_v165_high_severity.py |
8.8.8.8 |
network | healthy | tests/test_v165_high_severity.py |
192.168.1.1 |
network | healthy | tests/test_browser_url_safety.py |
172.16.0.1 |
network | healthy | tests/test_security.py |
1.1.1.1 |
network | healthy | tests/test_security.py |
127.0.0.2 |
network | healthy | tests/test_v1616_review_hardening.py |
127.255.255.254 |
network | healthy | tests/test_v1616_review_hardening.py |
127.10.20.30 |
network | healthy | tests/test_v168_remote_cdp.py |
131.0.0.0 |
network | healthy | web_agent/utils.py |
130.0.0.0 |
network | healthy | web_agent/utils.py |
| Label | Layer | Status | Path |
|---|---|---|---|
tests |
software | healthy | tests |
.github |
software | healthy | .github |
workflows |
software | healthy | .github/workflows |
web_agent |
software | healthy | web_agent |
builtin_skills |
software | healthy | web_agent/builtin_skills |
ec_europa_document_search |
software | healthy | web_agent/builtin_skills/ec_europa_document_search |
github_release_download |
software | healthy | web_agent/builtin_skills/github_release_download |
sec_gov_filing_search |
software | healthy | web_agent/builtin_skills/sec_gov_filing_search |
sample_data |
software | healthy | sample_data |
.claude |
software | healthy | .claude |
docker |
software | healthy | docker |
searxng |
software | healthy | docker/searxng |
| Label | Layer | Status | Path |
|---|---|---|---|
port:9222 |
network | healthy | tests/test_v166_cdp.py |
port:07 |
network | healthy | .github/workflows/ci.yml |
port:8888 |
network | healthy | docker/searxng/docker-compose.yml |
port:8080 |
network | healthy | docker/searxng/docker-compose.yml |
| Label | Layer | Status | Path |
|---|---|---|---|
lint |
cicd | healthy | .github/workflows/ci.yml |
test |
cicd | healthy | .github/workflows/ci.yml |
integration |
cicd | healthy | .github/workflows/ci.yml |
| Label | Layer | Status | Path |
|---|---|---|---|
redis |
data | healthy | README.md |
sqlite |
data | healthy | web_agent/browser_manager.py |
| Label | Layer | Status | Path |
|---|---|---|---|
agilamlabs__webTool |
software | healthy | /data/fable5_failed_archive/agilamlabs__webTool |
| Label | Layer | Status | Path |
|---|---|---|---|
nginx |
network | healthy | tests/test_challenge_detection.py |
| Label | Layer | Status | Path |
|---|---|---|---|
searxng |
hardware | healthy | docker/searxng/docker-compose.yml |
| Label | Layer | Status | Path |
|---|---|---|---|
vps::aws |
hardware | healthy | config.example.yaml |
| Label | Layer | Status | Path |
|---|---|---|---|
gpu (detected) |
hardware | healthy | README.md |
| Label | Layer | Status | Path |
|---|---|---|---|
auth::web_agent/tab_manager.py |
security | healthy | web_agent/tab_manager.py |
| Label | Layer | Status | Path |
|---|---|---|---|
gha::ci |
cicd | healthy | .github/workflows/ci.yml |
This page is publicly accessible at:
https://repobility.com/scan/b11b48f3-df20-479f-9189-ebfe6fa49137/
To check status programmatically (no auth required):
curl -s https://repobility.com/api/v1/public/scan/b11b48f3-df20-479f-9189-ebfe6fa49137/
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.