Python repositories reading adequate

Every public repository surveyed, browsable and searchable. Including the unflattering ones — a tool that only published good results would be a badge vending machine, not a diligence instrument.

All bands Strong Adequate 138 surveyed
Sort Relevance Newest Stars Lines of code Files History Findings Worst band
RepositoryLanguageSizeStarsReadBand
browser-act/skills 2 adequate · 1 strong Python 34,024 lines 6,315 2026-11-03 adequate
cloud-custodian/cloud-custodian 2 adequate · 2 strong Python 1,236,225 lines 6,103 2026-11-03 adequate
arize-ai/phoenix 3 adequate · 2 strong Python 1,468,800 lines 12,041 2026-10-28 adequate
airbytehq/airbyte 3 adequate · 2 strong Python 1,007,689 lines 22,254 2026-10-22 adequate
permitio/opal 3 adequate · 2 strong Python 67,114 lines 5,524 2026-11-03 adequate
activitywatch/activitywatch 4 adequate Python 18,235 lines 19,357 2026-10-23 adequate
fail2ban/fail2ban 1 adequate · 2 strong Python 45,975 lines 18,855 2026-10-23 adequate
browser-use/browser-harness 1 adequate · 2 strong Python 53,530 lines 18,586 2026-10-23 adequate
argilla-io/argilla 1 adequate · 4 strong Python 234,143 lines 5,193 2026-11-03 adequate
asyncfuncai/deepwiki-open 4 adequate · 1 strong Python 28,146 lines 18,267 2026-10-23 adequate
mediacms-io/mediacms 4 adequate · 1 strong Python 171,997 lines 5,177 2026-11-03 adequate
healthchecks/healthchecks 3 adequate · 2 strong Python 72,641 lines 10,464 2026-10-28 adequate
canner/wrenai 2 adequate · 2 strong Python 131,838 lines 17,957 2026-10-23 adequate
marqo-ai/marqo 4 adequate · 1 strong Python 172,614 lines 5,025 2026-11-03 adequate
rocketride-org/rocketride-server 4 adequate · 1 strong Python 1,089,662 lines 17,709 2026-10-23 adequate
integuru-ai/integuru 1 adequate · 1 strong Python 2,441 lines 4,790 2026-11-03 adequate
mealie-recipes/mealie 3 adequate · 2 strong Python 330,864 lines 13,342 2026-10-25 adequate
vibrantlabsai/ragas 3 adequate · 1 strong Python 110,958 lines 16,134 2026-10-23 adequate
raga-ai-hub/ragaai-catalyst 2 adequate · 2 strong Python 47,897 lines 16,179 2026-10-23 adequate
intuitem/ciso-assistant-community 3 adequate · 2 strong Python 1,584,845 lines 4,571 2026-11-03 adequate
saltstack/salt 3 adequate · 2 strong Python 1,089,367 lines 15,721 2026-10-23 adequate
greaterwms/greaterwms 3 adequate · 2 strong Python 77,175 lines 4,429 2026-11-03 adequate
frappe/hrms 4 adequate · 1 strong Python 156,033 lines 8,972 2026-10-28 adequate
structuredlabs/preswald 3 adequate · 2 strong Python 24,307 lines 4,270 2026-11-03 adequate
kubeflow/pipelines 4 adequate · 1 strong Python 949,184 lines 4,261 2026-11-03 adequate
prowler-cloud/prowler 4 adequate · 1 strong Python 1,569,543 lines 15,090 2026-10-23 adequate
ucbepic/docetl 4 adequate · 1 strong Python 129,564 lines 4,191 2026-11-03 adequate
dagster-io/dagster 3 adequate · 2 strong Python 36,142 lines 16,314 2026-10-22 adequate
semantica-agi/semantica 4 adequate · 1 strong Python 539,914 lines 14,206 2026-10-23 adequate
tracecathq/tracecat 4 adequate · 1 strong Python 1,333,224 lines 3,887 2026-11-03 adequate

What a band means. A band sums up one reading of one commit: strong, adequate or significant findings. Here it counts the project's code, process, product, security and operations. A report reads more than that, so its band can differ from its row.

How listing works. Every public repository surveyed is listed — assessing public work is commentary on public work, and a library that hid the small ones would be quietly editorialising about which code counts. Private repositories are never listed. Anyone who proves control of a repo can attach a response to a finding, request a re-run, or delist it. Delisting is immediate and no-questions. An owner's response is removed only when it is unlawful, impersonates someone, publishes personal data or a credential, or is not about the finding. Disagreeing with the report is never a reason. To report a response, or to reach us about one, write to takedown@borehole.dev. There is no org-level score. Repositories are listed one by one, and sorting by band orders them by their own readings. Takedown: one email, 48 hours.