Scan timing: clone 4.47s · analysis 68.28s · 3.9 MB · GitHub preflight 447ms
https://github.com/HKUDS/RAG-Anything.git
· scanned 2026-06-03 04:02 UTC (2 days, 9 hours ago)
· 10 languages
535 findings (165 legacy + 370 scanner) 67th percentile · Python · medium (20-100K LoC) Scanner says 90 (lower by 20)
Last scanned 2 days, 9 hours ago · v6 · 228 findings from 2 sources. Findings combine the legacy security pipeline AND the multi-layer engine (atlas, wiring, flows, ranked) AND verified AI agent contributions.
| Component | Sub-score | Weight | Contribution |
|---|---|---|---|
structure_score |
75.0 | 0.15 | 11.25 |
security_score |
53.4 | 0.25 | 13.35 |
testing_score |
87.0 | 0.20 | 17.40 |
documentation_score |
83.0 | 0.15 | 12.45 |
practices_score |
74.0 | 0.15 | 11.10 |
code_quality |
45.0 | 0.10 | 4.50 |
| Overall | 1.00 | 70.0 |
All 974 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 |
|---|---|---|---|
read_long_description |
software | healthy | setup.py:6 |
retrieve_metadata |
software | healthy | setup.py:14 |
read_requirements |
software | healthy | setup.py:43 |
__init__ |
software | healthy | raganything/enhanced_markdown.py:82 |
_check_backends |
software | healthy | raganything/enhanced_markdown.py:96 |
_get_default_css |
software | healthy | raganything/enhanced_markdown.py:113 |
_process_markdown_content |
software | healthy | raganything/enhanced_markdown.py:228 |
convert_with_weasyprint |
software | healthy | raganything/enhanced_markdown.py:286 |
convert_with_pandoc |
software | healthy | raganything/enhanced_markdown.py:310 |
convert_markdown_to_pdf |
software | healthy | raganything/enhanced_markdown.py:370 |
convert_file_to_pdf |
software | healthy | raganything/enhanced_markdown.py:403 |
get_backend_info |
software | healthy | raganything/enhanced_markdown.py:446 |
_get_recommended_backend |
software | healthy | raganything/enhanced_markdown.py:460 |
main |
software | healthy | raganything/enhanced_markdown.py:470 |
to_dict |
software | healthy | raganything/callbacks.py:47 |
on_parse_start |
software | dead | raganything/callbacks.py:72 |
on_parse_complete |
software | healthy | raganything/callbacks.py:210 |
on_parse_error |
software | dead | raganything/callbacks.py:85 |
on_text_insert_start |
software | dead | raganything/callbacks.py:91 |
on_text_insert_complete |
software | healthy | raganything/callbacks.py:220 |
on_multimodal_start |
software | dead | raganything/callbacks.py:102 |
on_multimodal_item_complete |
software | dead | raganything/callbacks.py:107 |
on_multimodal_complete |
software | healthy | raganything/callbacks.py:225 |
on_query_start |
software | dead | raganything/callbacks.py:127 |
on_query_complete |
software | healthy | raganything/callbacks.py:250 |
on_query_error |
software | dead | raganything/callbacks.py:256 |
on_document_complete |
software | healthy | raganything/callbacks.py:235 |
on_document_error |
software | healthy | raganything/callbacks.py:238 |
on_batch_start |
software | dead | raganything/callbacks.py:169 |
on_batch_complete |
software | dead | raganything/callbacks.py:172 |
__init__ |
software | healthy | raganything/callbacks.py:298 |
summary |
software | healthy | raganything/callbacks.py:263 |
reset |
software | healthy | raganything/callbacks.py:285 |
register |
software | healthy | raganything/callbacks.py:304 |
unregister |
software | healthy | raganything/callbacks.py:320 |
enable_event_log |
software | healthy | raganything/callbacks.py:325 |
event_log |
software | healthy | raganything/callbacks.py:335 |
clear_event_log |
software | healthy | raganything/callbacks.py:340 |
dispatch |
software | healthy | raganything/callbacks.py:345 |
__init__ |
software | healthy | raganything/parser.py:2055 |
_is_url |
software | healthy | raganything/parser.py:84 |
_download_file |
software | healthy | raganything/parser.py:92 |
_unique_output_dir |
software | healthy | raganything/parser.py:172 |
convert_office_to_pdf |
software | healthy | raganything/parser.py:194 |
convert_text_to_pdf |
software | healthy | raganything/parser.py:344 |
_process_inline_markdown |
software | healthy | raganything/parser.py:565 |
link_replacer |
software | dead | raganything/parser.py:596 |
parse_pdf |
software | healthy | raganything/parser.py:2258 |
parse_image |
software | healthy | raganything/parser.py:2290 |
parse_document |
software | healthy | raganything/parser.py:2341 |
Showing first 50 of this kind. Full payload available via the JSON button at the top of the page.
| Label | Layer | Status | Path |
|---|---|---|---|
MarkdownConfig |
software | healthy | raganything/enhanced_markdown.py:46 |
EnhancedMarkdownConverter |
software | healthy | raganything/enhanced_markdown.py:72 |
ProcessingEvent |
software | healthy | raganything/callbacks.py:35 |
ProcessingCallback |
software | healthy | raganything/callbacks.py:61 |
MetricsCallback |
software | healthy | raganything/callbacks.py:183 |
CallbackManager |
software | healthy | raganything/callbacks.py:290 |
MineruExecutionError |
software | healthy | raganything/parser.py:57 |
Parser |
software | healthy | raganything/parser.py:68 |
MineruParser |
software | healthy | raganything/parser.py:694 |
DoclingParser |
software | healthy | raganything/parser.py:1455 |
PaddleOCRParser |
software | healthy | raganything/parser.py:2052 |
QueryMixin |
software | healthy | raganything/query.py:23 |
BatchMixin |
software | healthy | raganything/batch.py:19 |
PromptRegistry |
software | healthy | raganything/prompt.py:13 |
RAGAnythingConfig |
software | healthy | raganything/config.py:13 |
CircuitBreaker |
software | healthy | raganything/resilience.py:233 |
CircuitBreakerOpen |
software | healthy | raganything/resilience.py:248 |
BatchProcessingResult |
software | healthy | raganything/batch_parser.py:22 |
BatchParser |
software | healthy | raganything/batch_parser.py:53 |
DocStatus |
software | healthy | raganything/base.py:4 |
ProcessorMixin |
software | healthy | raganything/processor.py:32 |
ContextConfig |
software | healthy | raganything/modalprocessors.py:40 |
ContextExtractor |
software | healthy | raganything/modalprocessors.py:55 |
BaseModalProcessor |
software | healthy | raganything/modalprocessors.py:366 |
ImageModalProcessor |
software | healthy | raganything/modalprocessors.py:832 |
TableModalProcessor |
software | healthy | raganything/modalprocessors.py:1076 |
EquationModalProcessor |
software | healthy | raganything/modalprocessors.py:1271 |
GenericModalProcessor |
software | healthy | raganything/modalprocessors.py:1454 |
RAGAnything |
software | healthy | raganything/raganything.py:51 |
TestDocStatus |
software | healthy | tests/test_core_modules.py:26 |
TestRAGAnythingConfig |
software | healthy | tests/test_core_modules.py:47 |
TestSeparateContent |
software | healthy | tests/test_core_modules.py:121 |
TestEncodeImageToBase64 |
software | healthy | tests/test_core_modules.py:180 |
TestValidateImageFile |
software | healthy | tests/test_core_modules.py:204 |
TestGetProcessorForType |
software | healthy | tests/test_core_modules.py:244 |
TestGetProcessorSupports |
software | healthy | tests/test_core_modules.py:266 |
TestBatchProcessingResult |
software | healthy | tests/test_core_modules.py:295 |
TestBatchParserInit |
software | healthy | tests/test_core_modules.py:358 |
TestChineseCIDFont |
software | healthy | tests/test_chinese_cid_font.py:15 |
TestCloseEventLoop |
software | healthy | tests/test_close_event_loop.py:48 |
StubParser |
software | healthy | tests/testparser_wiring.py:21 |
FakeLogger |
software | healthy | tests/testparser_wiring.py:48 |
FakeParser |
software | healthy | tests/testparser_wiring.py:61 |
DummyProcessor |
software | healthy | tests/testparser_wiring.py:83 |
TestSetPromptLanguage |
software | healthy | tests/test_prompt_language.py:23 |
TestResetPrompts |
software | healthy | tests/test_prompt_language.py:59 |
TestRegisterLanguage |
software | healthy | tests/test_prompt_language.py:69 |
TestGetAvailableLanguages |
software | healthy | tests/test_prompt_language.py:89 |
TestAtomicPromptSwitches |
software | healthy | tests/test_prompt_language.py:96 |
FakePrompts |
software | healthy | tests/test_prompt_language.py:98 |
Showing first 50 of this kind. Full payload available via the JSON button at the top of the page.
| Label | Layer | Status | Path |
|---|---|---|---|
README_zh.md |
software | healthy | README_zh.md |
README.md |
software | healthy | README.md |
.pre-commit-config.yaml |
software | healthy | .pre-commit-config.yaml |
setup.py |
software | healthy | setup.py |
pyproject.toml |
software | healthy | pyproject.toml |
requirements.txt |
software | healthy | requirements.txt |
enhanced_markdown.py |
software | healthy | raganything/enhanced_markdown.py |
callbacks.py |
software | healthy | raganything/callbacks.py |
parser.py |
software | healthy | raganything/parser.py |
__init__.py |
software | healthy | raganything/__init__.py |
query.py |
software | healthy | raganything/query.py |
prompts_zh.py |
software | warning | raganything/prompts_zh.py |
batch.py |
software | healthy | raganything/batch.py |
prompt_manager.py |
software | healthy | raganything/prompt_manager.py |
prompt.py |
software | healthy | raganything/prompt.py |
config.py |
software | healthy | raganything/config.py |
omml_extractor.py |
software | healthy | raganything/omml_extractor.py |
resilience.py |
software | healthy | raganything/resilience.py |
batch_parser.py |
software | healthy | raganything/batch_parser.py |
asset_urls.py |
software | healthy | raganything/asset_urls.py |
base.py |
software | healthy | raganything/base.py |
processor.py |
software | healthy | raganything/processor.py |
modalprocessors.py |
software | healthy | raganything/modalprocessors.py |
utils.py |
software | healthy | raganything/utils.py |
raganything.py |
software | healthy | raganything/raganything.py |
testparser_kwargs.py |
software | healthy | tests/testparser_kwargs.py |
test_full_entities_merge.py |
software | healthy | tests/test_full_entities_merge.py |
test_core_modules.py |
software | healthy | tests/test_core_modules.py |
test_embedding_examples.py |
software | healthy | tests/test_embedding_examples.py |
test_chinese_cid_font.py |
software | healthy | tests/test_chinese_cid_font.py |
test_close_event_loop.py |
software | healthy | tests/test_close_event_loop.py |
testparser_wiring.py |
software | healthy | tests/testparser_wiring.py |
test_asset_urls.py |
software | healthy | tests/test_asset_urls.py |
test_prompt_language.py |
software | healthy | tests/test_prompt_language.py |
test_raganything_example.py |
software | healthy | tests/test_raganything_example.py |
testpaddleocr_parser.py |
software | healthy | tests/testpaddleocr_parser.py |
test_processor_lightrag_api.py |
software | healthy | tests/test_processor_lightrag_api.py |
test_omml_extractor.py |
software | healthy | tests/test_omml_extractor.py |
test_resilience.py |
software | healthy | tests/test_resilience.py |
test_content_list_alias_handling.py |
software | healthy | tests/test_content_list_alias_handling.py |
test_doc_status_creation.py |
software | healthy | tests/test_doc_status_creation.py |
test_parser_url_download.py |
software | healthy | tests/test_parser_url_download.py |
test_insert_content_list.py |
software | healthy | tests/test_insert_content_list.py |
test_callbacks.py |
software | healthy | tests/test_callbacks.py |
test_custom_parser.py |
software | healthy | tests/test_custom_parser.py |
test_strip_thinking_tags.py |
software | healthy | tests/test_strip_thinking_tags.py |
test_minimax_integration.py |
software | healthy | tests/test_minimax_integration.py |
query.py |
software | healthy | reproduce/query.py |
llm_answer_evaluator.py |
software | healthy | reproduce/llm_answer_evaluator.py |
index.py |
software | healthy | reproduce/index.py |
Showing first 50 of this kind. Full payload available via the JSON button at the top of the page.
| Label | Layer | Status | Path |
|---|---|---|---|
raganything |
software | healthy | raganything |
tests |
software | healthy | tests |
reproduce |
software | healthy | reproduce |
docs |
software | healthy | docs |
scripts |
software | healthy | scripts |
examples |
software | healthy | examples |
.github |
software | healthy | .github |
ISSUE_TEMPLATE |
software | healthy | .github/ISSUE_TEMPLATE |
workflows |
software | healthy | .github/workflows |
| Label | Layer | Status | Path |
|---|---|---|---|
test |
cicd | healthy | .github/workflows/test.yaml |
release-build |
cicd | healthy | .github/workflows/pypi-publish.yml |
pypi-publish |
cicd | healthy | .github/workflows/pypi-publish.yml |
lint-and-format |
cicd | healthy | .github/workflows/linting.yaml |
| Label | Layer | Status | Path |
|---|---|---|---|
gha::test |
cicd | healthy | .github/workflows/test.yaml |
gha::pypi-publish |
cicd | healthy | .github/workflows/pypi-publish.yml |
gha::linting |
cicd | healthy | .github/workflows/linting.yaml |
| Label | Layer | Status | Path |
|---|---|---|---|
127.0.0.1 |
network | healthy | raganything/parser.py |
22.1.2.74 |
network | healthy | raganything/omml_extractor.py |
| Label | Layer | Status | Path |
|---|---|---|---|
repobility-clone-rwo68ep3 |
software | healthy | /tmp/repobility-clone-rwo68ep3 |
| Label | Layer | Status | Path |
|---|---|---|---|
gpu (detected) |
hardware | healthy | raganything/parser.py |
This page is publicly accessible at:
https://repobility.com/scan/507e544d-338a-43d7-8a53-56003e3386c2/
To check status programmatically (no auth required):
curl -s https://repobility.com/api/v1/public/scan/507e544d-338a-43d7-8a53-56003e3386c2/
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.