https://github.com/verygoodplugins/automem
· scanned 2026-06-16 00:48 UTC (2 months, 1 week ago)
151 raw signals (0 security + 151 graph)
Last scanned 2 months, 1 week ago · v1 · 122 actionable findings from 1 signal source. 29 repeated signals grouped for readability. Security checks, system graph analysis, and verified AI-agent feedback are merged into one review queue.
All 2046 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 |
|---|---|---|---|
__init__ |
software | healthy | app.py:52 |
_parse_viewer_allowed_origins |
software | healthy | app.py:103 |
_extract_api_token |
software | healthy | app.py:250 |
get_openai_client |
software | healthy | app.py:254 |
_require_admin_token |
software | healthy | app.py:258 |
require_api_token |
software | healthy | app.py:267 |
handle_exceptions |
software | healthy | app.py:472 |
query |
software | healthy | consolidation.py:37 |
delete |
software | healthy | consolidation.py:43 |
scroll |
software | healthy | consolidation.py:48 |
retrieve |
software | healthy | consolidation.py:58 |
_load_embedding |
software | healthy | consolidation.py:82 |
_cosine_similarity |
software | healthy | consolidation.py:104 |
__init__ |
software | healthy | consolidation.py:1129 |
_get_openai_client |
software | healthy | consolidation.py:171 |
_query_graph |
software | healthy | consolidation.py:186 |
_get_relationship_count_cached_impl |
software | healthy | consolidation.py:202 |
_get_relationship_count |
software | healthy | consolidation.py:218 |
calculate_relevance_score |
software | healthy | consolidation.py:227 |
_should_protect_memory |
software | healthy | consolidation.py:284 |
discover_creative_associations |
software | healthy | consolidation.py:334 |
cluster_similar_memories |
software | healthy | consolidation.py:457 |
apply_controlled_forgetting |
software | healthy | consolidation.py:619 |
consolidate |
software | healthy | consolidation.py:820 |
_apply_decay |
software | healthy | consolidation.py:1023 |
should_run |
software | healthy | consolidation.py:1140 |
run_scheduled_tasks |
software | healthy | consolidation.py:1154 |
get_next_runs |
software | healthy | consolidation.py:1210 |
_reset_state |
software | healthy | tests/test_enrichment.py:12 |
test_extract_entities_basic |
software | healthy | tests/test_enrichment.py:37 |
test_enrich_memory_updates_metadata |
software | healthy | tests/test_enrichment.py:44 |
test_issue72_examples_are_not_hardcoded_in_validator_source |
software | healthy | tests/test_entity_quality.py:8 |
test_issue72_low_quality_entities_are_rejected_across_categ… |
software | healthy | tests/test_entity_quality.py:37 |
test_structural_noise_slugs_are_rejected |
software | healthy | tests/test_entity_quality.py:71 |
test_generic_and_tooling_noise_is_rejected |
software | healthy | tests/test_entity_quality.py:97 |
test_possessive_and_suffix_variants_canonicalize_to_base_sl… |
software | healthy | tests/test_entity_quality.py:114 |
test_people_slugs_must_have_person_name_shape |
software | healthy | tests/test_entity_quality.py:136 |
test_tool_like_name_is_not_emitted_as_people |
software | healthy | tests/test_entity_quality.py:150 |
test_extract_entities_avoids_tool_brand_people_pollution |
software | healthy | tests/test_entity_quality.py:162 |
test_single_token_specific_entities_do_not_require_a_curate… |
software | healthy | tests/test_entity_quality.py:183 |
test_multi_token_person_names_survive_technical_context |
software | healthy | tests/test_entity_quality.py:196 |
test_single_token_brandlike_people_still_rejected_in_tool_c… |
software | healthy | tests/test_entity_quality.py:214 |
test_tool_or_org_suffix_people_rejected_even_with_person_sh… |
software | healthy | tests/test_entity_quality.py:224 |
test_code_suffixed_tool_names_are_accepted |
software | healthy | tests/test_entity_quality.py:242 |
test_code_and_markdown_fragments_still_rejected |
software | healthy | tests/test_entity_quality.py:260 |
test_event_and_opportunity_categories_are_supported |
software | healthy | tests/test_entity_quality.py:277 |
test_common_word_pairs_are_not_people |
software | healthy | tests/test_entity_quality.py:295 |
test_people_tags_survive_technical_context_on_slug_path |
software | healthy | tests/test_entity_quality.py:305 |
test_brandlike_token_pairs_rejected_on_slug_path_without_co… |
software | healthy | tests/test_entity_quality.py:324 |
maybe_start_docker |
software | healthy | tests/test_integration.py:54 |
Showing first 50 of this kind. Full payload available via the JSON button at the top of the page.
| Label | Layer | Status | Path |
|---|---|---|---|
requirements-dev.txt |
software | healthy | requirements-dev.txt |
railway.toml |
software | healthy | railway.toml |
test-locomo-benchmark.sh |
software | healthy | test-locomo-benchmark.sh |
test-longmemeval-benchmark.sh |
software | healthy | test-longmemeval-benchmark.sh |
README.md |
software | healthy | README.md |
CLAUDE.md |
software | healthy | CLAUDE.md |
app.py |
software | healthy | app.py |
INSTALLATION.md |
software | healthy | INSTALLATION.md |
Dockerfile |
software | healthy | Dockerfile |
.pre-commit-config.yaml |
software | healthy | .pre-commit-config.yaml |
run-integration-tests.sh |
software | healthy | run-integration-tests.sh |
.env.example |
software | healthy | .env.example |
pyproject.toml |
software | healthy | pyproject.toml |
test-live-server-auto.sh |
software | healthy | test-live-server-auto.sh |
Makefile |
software | healthy | Makefile |
LICENSE |
software | healthy | LICENSE |
requirements.txt |
software | healthy | requirements.txt |
consolidation.py |
software | healthy | consolidation.py |
test-live-server.sh |
software | healthy | test-live-server.sh |
AGENTS.md |
software | healthy | AGENTS.md |
CHANGELOG.md |
software | healthy | CHANGELOG.md |
docker-compose.yml |
software | healthy | docker-compose.yml |
railway.json |
software | healthy | railway.json |
test_enrichment.py |
software | healthy | tests/test_enrichment.py |
test_entity_quality.py |
software | healthy | tests/test_entity_quality.py |
test_integration.py |
software | healthy | tests/test_integration.py |
conftest.py |
software | healthy | tests/conftest.py |
test_api_endpoints.py |
software | healthy | tests/test_api_endpoints.py |
test_recall_entity_extraction.py |
software | healthy | tests/test_recall_entity_extraction.py |
test_embedding_runtime_helpers.py |
software | healthy | tests/test_embedding_runtime_helpers.py |
test_regression_drift_scout_contract.py |
software | healthy | tests/test_regression_drift_scout_contract.py |
test_benchmark_backends.py |
software | healthy | tests/test_benchmark_backends.py |
test_repair_entity_tags.py |
software | healthy | tests/test_repair_entity_tags.py |
test_benchmark_env_loading.py |
software | healthy | tests/test_benchmark_env_loading.py |
test_locomo_benchmark_script.py |
software | healthy | tests/test_locomo_benchmark_script.py |
test_locomo_speaker_extraction.py |
software | healthy | tests/test_locomo_speaker_extraction.py |
test_makefile_targets.py |
software | healthy | tests/test_makefile_targets.py |
test_classification_stats.py |
software | healthy | tests/test_classification_stats.py |
test_benchmark_result_analyzer.py |
software | healthy | tests/test_benchmark_result_analyzer.py |
test_content_size.py |
software | healthy | tests/test_content_size.py |
test_embedding_providers.py |
software | healthy | tests/test_embedding_providers.py |
test_app.py |
software | healthy | tests/test_app.py |
test_consolidation_engine.py |
software | healthy | tests/test_consolidation_engine.py |
test_service_runtime.py |
software | healthy | tests/test_service_runtime.py |
test_longmemeval_benchmark_script.py |
software | healthy | tests/test_longmemeval_benchmark_script.py |
test_locomo_cat5_judge.py |
software | healthy | tests/test_locomo_cat5_judge.py |
test_vector_size_safety.py |
software | healthy | tests/test_vector_size_safety.py |
test_backup_endpoint.py |
software | healthy | tests/test_backup_endpoint.py |
test_metadata_recall_search.py |
software | healthy | tests/test_metadata_recall_search.py |
test_entity_identities.py |
software | healthy | tests/test_entity_identities.py |
Showing first 50 of this kind. Full payload available via the JSON button at the top of the page.
| Label | Layer | Status | Path |
|---|---|---|---|
PointStruct |
software | healthy | app.py:51 |
GraphLike |
software | healthy | consolidation.py:34 |
VectorStoreProtocol |
software | healthy | consolidation.py:40 |
MemoryRow |
software | healthy | consolidation.py:69 |
MemoryConsolidator |
software | healthy | consolidation.py:121 |
ConsolidationScheduler |
software | healthy | consolidation.py:1118 |
FalkorDB |
software | healthy | tests/conftest.py:16 |
QdrantClient |
software | healthy | tests/conftest.py:33 |
Distance |
software | healthy | tests/conftest.py:59 |
VectorParams |
software | healthy | tests/conftest.py:62 |
OptimizersConfigDiff |
software | healthy | tests/conftest.py:68 |
HnswConfigDiff |
software | healthy | tests/conftest.py:73 |
PointStruct |
software | healthy | tests/conftest.py:78 |
MatchAny |
software | healthy | tests/conftest.py:84 |
MatchValue |
software | healthy | tests/conftest.py:88 |
FieldCondition |
software | healthy | tests/conftest.py:92 |
Filter |
software | healthy | tests/conftest.py:97 |
PointIdsList |
software | healthy | tests/conftest.py:103 |
_Embeddings |
software | healthy | tests/conftest.py:123 |
_Completions |
software | healthy | tests/conftest.py:127 |
_Chat |
software | healthy | tests/conftest.py:140 |
OpenAI |
software | healthy | tests/conftest.py:144 |
MockQdrantClient |
software | healthy | tests/test_api_endpoints.py:27 |
_Node |
software | healthy | tests/test_api_endpoints.py:3580 |
Graph |
software | healthy | tests/test_api_endpoints.py:3708 |
_TimestampRaises |
software | healthy | tests/test_api_endpoints.py:4211 |
_State |
software | healthy | tests/test_embedding_runtime_helpers.py:31 |
Provider |
software | healthy | tests/test_embedding_runtime_helpers.py:240 |
_Response |
software | healthy | tests/test_benchmark_backends.py:8 |
_LoCoMoBackend |
software | healthy | tests/test_benchmark_backends.py:217 |
CapturingGraph |
software | healthy | tests/test_repair_entity_tags.py:20 |
SleepingGraph |
software | healthy | tests/test_repair_entity_tags.py:29 |
MemoryScanGraph |
software | healthy | tests/test_repair_entity_tags.py:42 |
SplittingMemoryScanGraph |
software | healthy | tests/test_repair_entity_tags.py:68 |
TimeoutOnFullMemoryIdScanGraph |
software | healthy | tests/test_repair_entity_tags.py:78 |
CapturingQdrant |
software | healthy | tests/test_repair_entity_tags.py:88 |
FlakyQdrant |
software | healthy | tests/test_repair_entity_tags.py:96 |
SleepingQdrant |
software | healthy | tests/test_repair_entity_tags.py:108 |
RetrievingQdrant |
software | healthy | tests/test_repair_entity_tags.py:120 |
SplittingRetrievingQdrant |
software | healthy | tests/test_repair_entity_tags.py:135 |
DisconnectingRetrievingQdrant |
software | healthy | tests/test_repair_entity_tags.py:147 |
_DummyBackend |
software | healthy | tests/test_benchmark_env_loading.py:7 |
TestShouldSummarizeContent |
software | healthy | tests/test_content_size.py:13 |
TestSummarizeContent |
software | healthy | tests/test_content_size.py:41 |
TestMemoryStoreContentSize |
software | healthy | tests/test_content_size.py:89 |
FakeVectorStore |
software | healthy | tests/test_consolidation_engine.py:19 |
FixedDatetime |
software | healthy | tests/test_consolidation_engine.py:31 |
RecordingGraph |
software | healthy | tests/test_consolidation_engine.py:154 |
OpenAIModule |
software | healthy | tests/test_consolidation_engine.py:204 |
FakeCompletions |
software | healthy | tests/test_locomo_cat5_judge.py:684 |
Showing first 50 of this kind. Full payload available via the JSON button at the top of the page.
| Label | Layer | Status | Path |
|---|---|---|---|
ANY /health |
api | healthy | automem/api/health.py |
ANY /backup |
api | healthy | automem/api/backup.py |
ANY /stream |
api | healthy | automem/api/stream.py |
ANY /stream/status |
api | healthy | automem/api/stream.py |
ANY /recall |
api | healthy | automem/api/recall.py |
ANY /startup-recall |
api | healthy | automem/api/recall.py |
ANY /analyze |
api | healthy | automem/api/recall.py |
ANY /memories/<memory_id>/related |
api | healthy | automem/api/recall.py |
ANY /memory |
api | healthy | automem/api/memory.py |
ANY /memory/<memory_id> |
api | healthy | automem/api/memory.py |
ANY /memory/by-tag |
api | healthy | automem/api/memory.py |
ANY /associate |
api | healthy | automem/api/memory.py |
ANY /memory/batch |
api | healthy | automem/api/memory.py |
ANY /snapshot |
api | healthy | automem/api/graph.py |
ANY /neighbors/<memory_id> |
api | healthy | automem/api/graph.py |
ANY /stats |
api | healthy | automem/api/graph.py |
ANY /types |
api | healthy | automem/api/graph.py |
ANY /relations |
api | healthy | automem/api/graph.py |
ANY /admin/reembed |
api | healthy | automem/api/admin.py |
ANY /admin/sync |
api | healthy | automem/api/admin.py |
ANY /enrichment/status |
api | healthy | automem/api/enrichment.py |
ANY /enrichment/reprocess |
api | healthy | automem/api/enrichment.py |
ANY /entities |
api | healthy | automem/api/entity.py |
ANY /entity/<slug> |
api | healthy | automem/api/entity.py |
ANY /entities/merge-candidates |
api | healthy | automem/api/entity.py |
ANY /entities/audit |
api | healthy | automem/api/entity.py |
ANY /entity/<slug>/merge |
api | healthy | automem/api/entity.py |
ANY / |
api | healthy | automem/api/viewer.py |
ANY /<path:path> |
api | healthy | automem/api/viewer.py |
ANY /consolidate |
api | healthy | automem/api/consolidation.py |
ANY /consolidate/status |
api | healthy | automem/api/consolidation.py |
GET /health |
api | healthy | mcp-sse-server/server.js |
GET /ready |
api | healthy | mcp-sse-server/server.js |
POST /alexa |
api | healthy | mcp-sse-server/server.js |
ALL /mcp |
api | healthy | mcp-sse-server/server.js |
GET /mcp/sse |
api | healthy | mcp-sse-server/server.js |
POST /mcp/messages |
api | healthy | mcp-sse-server/server.js |
| Label | Layer | Status | Path |
|---|---|---|---|
tests |
software | healthy | tests |
benchmarks |
software | healthy | tests/benchmarks |
core_adapter |
software | healthy | tests/benchmarks/core_adapter |
results |
software | healthy | tests/benchmarks/results |
longmemeval |
software | healthy | tests/benchmarks/longmemeval |
contracts |
software | healthy | tests/contracts |
support |
software | healthy | tests/support |
benchmarks |
software | healthy | benchmarks |
baselines |
software | healthy | benchmarks/baselines |
postmortems |
software | healthy | benchmarks/postmortems |
publication |
software | healthy | benchmarks/publication |
2026-05-arxiv |
software | healthy | benchmarks/publication/2026-05-arxiv |
docs |
software | healthy | docs |
scripts |
software | healthy | scripts |
lib |
software | healthy | scripts/lib |
lab |
software | healthy | scripts/lab |
configs |
software | healthy | scripts/lab/configs |
bench |
software | healthy | scripts/bench |
automem |
software | healthy | automem |
classification |
software | healthy | automem/classification |
enrichment |
software | healthy | automem/enrichment |
stores |
software | healthy | automem/stores |
sync |
software | healthy | automem/sync |
analytics |
software | healthy | automem/analytics |
consolidation |
software | healthy | automem/consolidation |
api |
software | healthy | automem/api |
utils |
software | healthy | automem/utils |
search |
software | healthy | automem/search |
embedding |
software | healthy | automem/embedding |
mcp-sse-server |
software | healthy | mcp-sse-server |
test |
software | healthy | mcp-sse-server/test |
.github |
software | healthy | .github |
workflows |
software | healthy | .github/workflows |
| Label | Layer | Status | Path |
|---|---|---|---|
FALKORDB_HOST |
cicd | healthy | — |
FALKORDB_PORT |
cicd | healthy | — |
GITHUB_TOKEN |
cicd | healthy | — |
REGISTRY |
cicd | healthy | — |
RELEASE_PLEASE_TOKEN |
cicd | healthy | — |
IMAGE_NAME |
cicd | healthy | — |
AWS_SECRET_ACCESS_KEY |
cicd | healthy | — |
AWS_DEFAULT_REGION |
cicd | healthy | — |
QDRANT_URL |
cicd | healthy | — |
CODECOV_TOKEN |
cicd | healthy | — |
QDRANT_API_KEY |
cicd | healthy | — |
AWS_ACCESS_KEY_ID |
cicd | healthy | — |
FALKORDB_PASSWORD |
cicd | healthy | — |
| Label | Layer | Status | Path |
|---|---|---|---|
release-please |
cicd | healthy | .github/workflows/release-please.yml |
backup |
cicd | healthy | .github/workflows/backup.yml |
dispatch |
cicd | healthy | .github/workflows/benchmarks-dispatch.yml |
build |
cicd | healthy | .github/workflows/docker-build-mcp-automem.yml |
semantic-pr-title |
cicd | healthy | .github/workflows/semantic-pr-title.yml |
pre-commit |
cicd | healthy | .github/workflows/ci.yml |
node-test |
cicd | healthy | .github/workflows/ci.yml |
test |
cicd | healthy | .github/workflows/ci.yml |
coverage |
cicd | healthy | .github/workflows/ci.yml |
build |
cicd | healthy | .github/workflows/docker-build.yml |
check-docs |
cicd | healthy | .github/workflows/docs-dispatch.yml |
| Label | Layer | Status | Path |
|---|---|---|---|
gha::release-please |
cicd | healthy | .github/workflows/release-please.yml |
gha::backup |
cicd | healthy | .github/workflows/backup.yml |
gha::benchmarks-dispatch |
cicd | healthy | .github/workflows/benchmarks-dispatch.yml |
gha::docker-build-mcp-automem |
cicd | healthy | .github/workflows/docker-build-mcp-automem.yml |
gha::semantic-pr-title |
cicd | healthy | .github/workflows/semantic-pr-title.yml |
gha::ci |
cicd | healthy | .github/workflows/ci.yml |
gha::docker-build |
cicd | healthy | .github/workflows/docker-build.yml |
gha::docs-dispatch |
cicd | healthy | .github/workflows/docs-dispatch.yml |
| Label | Layer | Status | Path |
|---|---|---|---|
postgresql |
data | healthy | README.md |
mongodb |
data | healthy | README.md |
sqlite |
data | healthy | README.md |
redis |
data | healthy | docker-compose.yml |
postgres |
data | healthy | tests/test_api_endpoints.py |
| Label | Layer | Status | Path |
|---|---|---|---|
image::Dockerfile |
hardware | healthy | Dockerfile |
image::mcp-sse-server/Dockerfile |
hardware | healthy | mcp-sse-server/Dockerfile |
falkordb |
hardware | healthy | docker-compose.yml |
qdrant |
hardware | healthy | docker-compose.yml |
flask-api |
hardware | healthy | docker-compose.yml |
| Label | Layer | Status | Path |
|---|---|---|---|
password_literal::scripts/lab/clone_production.sh |
security | healthy | scripts/lab/clone_production.sh |
password_literal::scripts/lab/clone_production.sh |
security | healthy | scripts/lab/clone_production.sh |
password_literal::scripts/lab/clone_production.sh |
security | healthy | scripts/lab/clone_production.sh |
password_literal::scripts/lab/clone_production.sh |
security | healthy | scripts/lab/clone_production.sh |
| Label | Layer | Status | Path |
|---|---|---|---|
port:8001 |
network | healthy | README.md |
port:6379 |
network | healthy | scripts/rescore_relevance.py |
port:8080 |
network | healthy | mcp-sse-server/Dockerfile |
| Label | Layer | Status | Path |
|---|---|---|---|
kafka |
data | healthy | README.md |
rabbitmq |
data | healthy | README.md |
| Label | Layer | Status | Path |
|---|---|---|---|
vps::azure |
hardware | healthy | CLAUDE.md |
vps::aws |
hardware | healthy | scripts/backup_automem.py |
| Label | Layer | Status | Path |
|---|---|---|---|
repobility-clone-20ek7yph |
software | healthy | /tmp/repobility-clone-20ek7yph |
| Label | Layer | Status | Path |
|---|---|---|---|
127.0.0.1 |
network | healthy | tests/test_integration.py |
| Label | Layer | Status | Path |
|---|---|---|---|
nginx |
network | healthy | automem/api/stream.py |
This page is publicly accessible at:
https://repobility.com/scan/7bef365c-23d4-4c18-99a3-08916b3ee539/
To check status programmatically (no auth required):
curl -s https://repobility.com/api/v1/public/scan/7bef365c-23d4-4c18-99a3-08916b3ee539/
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.