https://github.com/MemPalace/mempalace
· scanned 2026-05-15 13:34 UTC (3 weeks ago)
· 10 languages
113 findings (15 legacy + 98 scanner) 89th percentile · Python · medium (20-100K LoC) Scanner says 94 (lower by 12)
Last scanned 3 weeks ago · v1 · 11 findings from 1 source. 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 |
80.1 | 0.25 | 20.02 |
testing_score |
100.0 | 0.20 | 20.00 |
documentation_score |
98.0 | 0.15 | 14.70 |
practices_score |
65.0 | 0.15 | 9.75 |
code_quality |
66.6 | 0.10 | 6.66 |
| Overall | 1.00 | 82.4 |
All 3486 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 |
|---|---|---|---|
_drawers_collection_name |
software | healthy | mempalace/repair.py:58 |
_recoverable_collections |
software | healthy | mempalace/repair.py:75 |
_get_palace_path |
software | healthy | mempalace/repair.py:92 |
_paginate_ids |
software | healthy | mempalace/repair.py:103 |
_extract_drawers |
software | healthy | mempalace/repair.py:132 |
_verify_collection_count |
software | healthy | mempalace/repair.py:158 |
_is_missing_collection_value_error |
software | healthy | mempalace/repair.py:164 |
_delete_collection_if_exists |
software | healthy | mempalace/repair.py:169 |
__init__ |
software | healthy | mempalace/repair.py:831 |
_rebuild_collection_via_temp |
software | healthy | mempalace/repair.py:188 |
scan_palace |
software | healthy | mempalace/repair.py:246 |
prune_corrupt |
software | healthy | mempalace/repair.py:324 |
check_extraction_safety |
software | healthy | mempalace/repair.py:396 |
sqlite_drawer_count |
software | healthy | mempalace/repair.py:459 |
sqlite_integrity_errors |
software | healthy | mempalace/repair.py:500 |
print_sqlite_integrity_abort |
software | healthy | mempalace/repair.py:534 |
maybe_repair_poisoned_max_seq_id_before_rebuild |
software | healthy | mempalace/repair.py:565 |
_format_eta |
software | healthy | mempalace/repair.py:619 |
__call__ |
software | healthy | mempalace/repair.py:647 |
_maybe_decorate |
software | healthy | mempalace/repair.py:652 |
_eta_suffix |
software | healthy | mempalace/repair.py:665 |
rebuild_index |
software | healthy | mempalace/repair.py:683 |
_rebuild_one_collection |
software | healthy | mempalace/repair.py:848 |
_flush |
software | healthy | mempalace/repair.py:871 |
extract_via_sqlite |
software | healthy | mempalace/repair.py:934 |
rebuild_from_sqlite |
software | healthy | mempalace/repair.py:1012 |
status |
software | healthy | mempalace/repair.py:1197 |
_close_chroma_handles |
software | healthy | mempalace/repair.py:1256 |
_detect_poisoned_max_seq_ids |
software | healthy | mempalace/repair.py:1292 |
_compute_heuristic_seq_id |
software | healthy | mempalace/repair.py:1317 |
_read_sidecar_seq_ids |
software | healthy | mempalace/repair.py:1352 |
repair_max_seq_id |
software | healthy | mempalace/repair.py:1374 |
detect_rooms_from_folders |
software | healthy | mempalace/room_detector_local.py:100 |
detect_rooms_from_files |
software | healthy | mempalace/room_detector_local.py:195 |
print_proposed_structure |
software | healthy | mempalace/room_detector_local.py:233 |
get_user_approval |
software | healthy | mempalace/room_detector_local.py:245 |
save_config |
software | healthy | mempalace/room_detector_local.py:282 |
detect_rooms_local |
software | healthy | mempalace/room_detector_local.py:304 |
_collect_contexts |
software | healthy | mempalace/llm_refine.py:72 |
_build_user_prompt |
software | healthy | mempalace/llm_refine.py:96 |
_extract_json_candidates |
software | healthy | mempalace/llm_refine.py:109 |
_parse_response |
software | healthy | mempalace/llm_refine.py:153 |
_apply_classifications |
software | healthy | mempalace/llm_refine.py:192 |
_build_corpus_origin_preamble |
software | healthy | mempalace/llm_refine.py:265 |
_is_authoritative_person |
software | healthy | mempalace/llm_refine.py:311 |
_is_authoritative_project |
software | healthy | mempalace/llm_refine.py:317 |
_print_progress |
software | healthy | mempalace/llm_refine.py:324 |
refine_entities |
software | healthy | mempalace/llm_refine.py:334 |
collect_corpus_text |
software | healthy | mempalace/llm_refine.py:448 |
_walk_prose |
software | healthy | mempalace/llm_refine.py:489 |
Showing first 50 of this kind. Full payload available via the JSON button at the top of the page.
| Label | Layer | Status | Path |
|---|---|---|---|
RebuildCollectionError |
software | healthy | mempalace/repair.py:180 |
TruncationDetected |
software | healthy | mempalace/repair.py:381 |
_DefaultProgress |
software | healthy | mempalace/repair.py:628 |
RebuildPartialError |
software | healthy | mempalace/repair.py:821 |
MaxSeqIdVerificationError |
software | healthy | mempalace/repair.py:1279 |
RefineResult |
software | healthy | mempalace/llm_refine.py:62 |
MineAlreadyRunning |
software | healthy | mempalace/palace.py:323 |
KnowledgeGraph |
software | healthy | mempalace/knowledge_graph.py:129 |
MempalaceConfig |
software | healthy | mempalace/config.py:243 |
LLMConfig |
software | healthy | mempalace/closet_llm.py:93 |
EntityRegistry |
software | healthy | mempalace/entity_registry.py:273 |
_MempalaceONNX |
software | healthy | mempalace/embedding.py:111 |
SyncReport |
software | healthy | mempalace/sync.py:32 |
Dialect |
software | healthy | mempalace/dialect.py:300 |
LLMError |
software | healthy | mempalace/llm_client.py:106 |
LLMResponse |
software | healthy | mempalace/llm_client.py:111 |
LLMProvider |
software | healthy | mempalace/llm_client.py:121 |
OllamaProvider |
software | healthy | mempalace/llm_client.py:205 |
OpenAICompatProvider |
software | healthy | mempalace/llm_client.py:272 |
AnthropicProvider |
software | healthy | mempalace/llm_client.py:362 |
Layer0 |
software | healthy | mempalace/layers.py:34 |
Layer1 |
software | healthy | mempalace/layers.py:76 |
Layer2 |
software | healthy | mempalace/layers.py:187 |
Layer3 |
software | healthy | mempalace/layers.py:247 |
MemoryStack |
software | healthy | mempalace/layers.py:361 |
CorpusOriginResult |
software | healthy | mempalace/corpus_origin.py:139 |
GitignoreMatcher |
software | healthy | mempalace/miner.py:99 |
SearchError |
software | healthy | mempalace/searcher.py:28 |
ProjectInfo |
software | healthy | mempalace/project_scanner.py:67 |
PersonInfo |
software | healthy | mempalace/project_scanner.py:99 |
_UnionFind |
software | healthy | mempalace/project_scanner.py:368 |
Transformation |
software | healthy | mempalace/sources/transforms.py:30 |
_CollectionLike |
software | healthy | mempalace/sources/context.py:24 |
_KnowledgeGraphLike |
software | healthy | mempalace/sources/context.py:40 |
PalaceContext |
software | healthy | mempalace/sources/context.py:49 |
SourceAdapterError |
software | healthy | mempalace/sources/base.py:33 |
SourceNotFoundError |
software | healthy | mempalace/sources/base.py:37 |
AuthRequiredError |
software | healthy | mempalace/sources/base.py:41 |
AdapterClosedError |
software | healthy | mempalace/sources/base.py:49 |
TransformationViolationError |
software | healthy | mempalace/sources/base.py:53 |
SchemaConformanceError |
software | healthy | mempalace/sources/base.py:58 |
SourceRef |
software | healthy | mempalace/sources/base.py:69 |
RouteHint |
software | healthy | mempalace/sources/base.py:85 |
SourceItemMetadata |
software | healthy | mempalace/sources/base.py:94 |
DrawerRecord |
software | healthy | mempalace/sources/base.py:109 |
SourceSummary |
software | healthy | mempalace/sources/base.py:125 |
FieldSpec |
software | healthy | mempalace/sources/base.py:136 |
AdapterSchema |
software | healthy | mempalace/sources/base.py:148 |
BaseSourceAdapter |
software | healthy | mempalace/sources/base.py:164 |
_PersistentDataStub |
software | healthy | mempalace/backends/chroma.py:349 |
Showing first 50 of this kind. Full payload available via the JSON button at the top of the page.
| Label | Layer | Status | Path |
|---|---|---|---|
README.md |
software | healthy | README.md |
CLAUDE.md |
software | healthy | CLAUDE.md |
CONTRIBUTING.md |
software | healthy | CONTRIBUTING.md |
.pre-commit-config.yaml |
software | healthy | .pre-commit-config.yaml |
ROADMAP.md |
software | healthy | ROADMAP.md |
pyproject.toml |
software | healthy | pyproject.toml |
MISSION.md |
software | healthy | MISSION.md |
SECURITY.md |
software | healthy | SECURITY.md |
CHANGELOG.md |
software | healthy | CHANGELOG.md |
SKILL.md |
software | healthy | integrations/openclaw/SKILL.md |
repair.py |
software | healthy | mempalace/repair.py |
room_detector_local.py |
software | healthy | mempalace/room_detector_local.py |
llm_refine.py |
software | healthy | mempalace/llm_refine.py |
__init__.py |
software | healthy | mempalace/__init__.py |
palace.py |
software | healthy | mempalace/palace.py |
dedup.py |
software | healthy | mempalace/dedup.py |
fact_checker.py |
software | healthy | mempalace/fact_checker.py |
migrate.py |
software | healthy | mempalace/migrate.py |
knowledge_graph.py |
software | healthy | mempalace/knowledge_graph.py |
mcp_server.py |
software | healthy | mempalace/mcp_server.py |
instructions_cli.py |
software | healthy | mempalace/instructions_cli.py |
README.md |
software | healthy | mempalace/README.md |
query_sanitizer.py |
software | healthy | mempalace/query_sanitizer.py |
config.py |
software | healthy | mempalace/config.py |
closet_llm.py |
software | healthy | mempalace/closet_llm.py |
general_extractor.py |
software | healthy | mempalace/general_extractor.py |
hooks_cli.py |
software | healthy | mempalace/hooks_cli.py |
convo_miner.py |
software | healthy | mempalace/convo_miner.py |
entity_registry.py |
software | healthy | mempalace/entity_registry.py |
normalize.py |
software | healthy | mempalace/normalize.py |
embedding.py |
software | healthy | mempalace/embedding.py |
sync.py |
software | healthy | mempalace/sync.py |
dialect.py |
software | healthy | mempalace/dialect.py |
llm_client.py |
software | healthy | mempalace/llm_client.py |
cli.py |
software | healthy | mempalace/cli.py |
exporter.py |
software | healthy | mempalace/exporter.py |
sweeper.py |
software | healthy | mempalace/sweeper.py |
spellcheck.py |
software | healthy | mempalace/spellcheck.py |
_stdio.py |
software | healthy | mempalace/_stdio.py |
entity_detector.py |
software | healthy | mempalace/entity_detector.py |
palace_graph.py |
software | healthy | mempalace/palace_graph.py |
layers.py |
software | healthy | mempalace/layers.py |
corpus_origin.py |
software | healthy | mempalace/corpus_origin.py |
__main__.py |
software | warning | mempalace/__main__.py |
version.py |
software | warning | mempalace/version.py |
miner.py |
software | healthy | mempalace/miner.py |
onboarding.py |
software | healthy | mempalace/onboarding.py |
searcher.py |
software | healthy | mempalace/searcher.py |
convo_scanner.py |
software | healthy | mempalace/convo_scanner.py |
project_scanner.py |
software | healthy | mempalace/project_scanner.py |
Showing first 50 of this kind. Full payload available via the JSON button at the top of the page.
| Label | Layer | Status | Path |
|---|---|---|---|
integrations |
software | healthy | integrations |
openclaw |
software | healthy | integrations/openclaw |
mempalace |
software | healthy | mempalace |
i18n |
software | healthy | mempalace/i18n |
instructions |
software | healthy | mempalace/instructions |
sources |
software | healthy | mempalace/sources |
backends |
software | healthy | mempalace/backends |
.devcontainer |
software | healthy | .devcontainer |
tests |
software | healthy | tests |
benchmarks |
software | healthy | tests/benchmarks |
benchmarks |
software | healthy | benchmarks |
model_eval |
software | healthy | benchmarks/model_eval |
datasets |
software | healthy | benchmarks/model_eval/datasets |
results |
software | healthy | benchmarks/model_eval/results |
tasks |
software | healthy | benchmarks/model_eval/tasks |
memory_extraction |
software | healthy | benchmarks/model_eval/tasks/memory_extraction |
calibration |
software | healthy | benchmarks/model_eval/tasks/calibration |
room_classification |
software | healthy | benchmarks/model_eval/tasks/room_classification |
entity_extraction |
software | healthy | benchmarks/model_eval/tasks/entity_extraction |
reports |
software | healthy | benchmarks/model_eval/reports |
docs |
software | healthy | docs |
rfcs |
software | healthy | docs/rfcs |
website |
software | healthy | website |
reference |
software | healthy | website/reference |
concepts |
software | healthy | website/concepts |
guide |
software | healthy | website/guide |
landing |
software | healthy | landing |
examples |
software | healthy | examples |
hooks |
software | healthy | hooks |
tools |
software | healthy | tools |
.github |
software | healthy | .github |
ISSUE_TEMPLATE |
software | healthy | .github/ISSUE_TEMPLATE |
workflows |
software | healthy | .github/workflows |
| Label | Layer | Status | Path |
|---|---|---|---|
127.0.0.1 |
network | healthy | mempalace/llm_client.py |
10.0.0.0 |
network | healthy | mempalace/llm_client.py |
172.16.0.0 |
network | healthy | mempalace/llm_client.py |
192.168.0.0 |
network | healthy | mempalace/llm_client.py |
100.64.0.0 |
network | healthy | mempalace/llm_client.py |
172.31.255.255 |
network | healthy | mempalace/llm_client.py |
192.168.1.50 |
network | healthy | tests/test_llm_client.py |
100.64.0.1 |
network | healthy | tests/test_llm_client.py |
100.100.50.50 |
network | healthy | tests/test_llm_client.py |
100.127.255.254 |
network | healthy | tests/test_llm_client.py |
100.127.255.255 |
network | healthy | tests/test_llm_client.py |
100.0.0.1 |
network | healthy | tests/test_llm_client.py |
100.63.255.255 |
network | healthy | tests/test_llm_client.py |
100.128.0.0 |
network | healthy | tests/test_llm_client.py |
100.255.255.255 |
network | healthy | tests/test_llm_client.py |
| Label | Layer | Status | Path |
|---|---|---|---|
auth::tests/test_closet_llm.py |
security | healthy | tests/test_closet_llm.py |
auth::tests/test_searcher.py |
security | healthy | tests/test_searcher.py |
auth::tests/test_mcp_server.py |
security | healthy | tests/test_mcp_server.py |
auth::tests/conftest.py |
security | healthy | tests/conftest.py |
auth::tests/test_closets.py |
security | healthy | tests/test_closets.py |
auth::tests/test_hybrid_search.py |
security | healthy | tests/test_hybrid_search.py |
auth::tests/benchmarks/test_recall_threshold.py |
security | healthy | tests/benchmarks/test_recall_threshold.py |
auth::tests/test_dialect.py |
security | healthy | tests/test_dialect.py |
auth::tests/benchmarks/data_generator.py |
security | healthy | tests/benchmarks/data_generator.py |
| Label | Layer | Status | Path |
|---|---|---|---|
sqlite |
data | healthy | mempalace/repair.py |
postgres |
data | healthy | mempalace/backends/registry.py |
postgresql |
data | healthy | tests/conftest.py |
redis |
data | healthy | tests/test_palace_graph_tunnels.py |
mongodb |
data | healthy | tests/test_dialect.py |
mysql |
data | healthy | tests/test_general_extractor.py |
elasticsearch |
data | healthy | tests/benchmarks/test_recall_threshold.py |
| Label | Layer | Status | Path |
|---|---|---|---|
check-versions |
cicd | healthy | .github/workflows/version-guard.yml |
test-linux |
cicd | healthy | .github/workflows/ci.yml |
test-windows |
cicd | healthy | .github/workflows/ci.yml |
test-macos |
cicd | healthy | .github/workflows/ci.yml |
lint |
cicd | healthy | .github/workflows/ci.yml |
build |
cicd | healthy | .github/workflows/deploy-docs.yml |
deploy |
cicd | healthy | .github/workflows/deploy-docs.yml |
| Label | Layer | Status | Path |
|---|---|---|---|
entities |
data | healthy | docs/schema.sql |
triples |
data | healthy | docs/schema.sql |
attributes |
data | healthy | docs/schema.sql |
| Label | Layer | Status | Path |
|---|---|---|---|
gha::version-guard |
cicd | healthy | .github/workflows/version-guard.yml |
gha::ci |
cicd | healthy | .github/workflows/ci.yml |
gha::deploy-docs |
cicd | healthy | .github/workflows/deploy-docs.yml |
| Label | Layer | Status | Path |
|---|---|---|---|
kafka |
data | healthy | tests/test_searcher.py |
celery |
data | healthy | tests/benchmarks/data_generator.py |
| Label | Layer | Status | Path |
|---|---|---|---|
loadbalancer |
network | healthy | tests/benchmarks/test_chromadb_stress.py |
nginx |
network | healthy | tests/benchmarks/data_generator.py |
| Label | Layer | Status | Path |
|---|---|---|---|
repobility-clone-4gocfp2i |
software | healthy | /tmp/repobility-clone-4gocfp2i |
| Label | Layer | Status | Path |
|---|---|---|---|
gpu (detected) |
hardware | healthy | pyproject.toml |
| Label | Layer | Status | Path |
|---|---|---|---|
vps::aws |
hardware | healthy | tests/benchmarks/data_generator.py |
This page is publicly accessible at:
https://repobility.com/scan/84cfce0a-b220-4710-a5f8-48ca55fda826/
To check status programmatically (no auth required):
curl -s https://repobility.com/api/v1/public/scan/84cfce0a-b220-4710-a5f8-48ca55fda826/
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.