Give your AI agents persistent, collective memory — with deduplicating absorb, supersession lineage, semantic search, and a graph UI. Speaks MCP.
Drift inferred · capture-to-capture
No drift recorded — single capability capture; advisories appear once its surface changes.
transport stdio counts 43 tools · 0 res
· 0 prompts
permission surface via code analysis
tools
-
memory_absorb
-
memory_backfill_tags
-
memory_boost
-
memory_clusters
-
memory_create
-
memory_create_batch
-
memory_create_issue
-
memory_create_section
-
memory_create_todo
-
memory_delete
-
memory_delete_batch
-
memory_delete_document
-
memory_detect_supersessions
-
memory_digest
-
memory_events_clear
-
memory_events_poll
-
memory_export
-
memory_export_graph
-
memory_find_duplicates
-
memory_get
-
memory_get_document
-
memory_hierarchy
-
memory_hybrid_search
-
memory_import
-
memory_insights
-
memory_link
-
memory_list
-
memory_list_compact
-
memory_merge
-
memory_migrate_images
-
memory_rebuild_crossrefs
-
memory_rebuild_embeddings
-
memory_related
-
memory_semantic_search
-
memory_stats
-
memory_store_document
-
memory_tag_hierarchy
-
memory_tags
-
memory_unlink
-
memory_update
-
memory_upload_image
-
memory_validate_tags
-
memory_verify_integrity
prompt-surface
shipped agent-instruction files + hidden-content / dangerous-code findings —
quoted from the analyzed source
analyzed commit c32b40e · analyzer v33 · 1w ago
skills & prompt files 3
evidence-backed
findings quoted directly from the published source artifact — not inferred
code files: 58
filesystem 19
- fs agentic-box-memora-c32b40e/claude-plugin/hooks-handlers/post_tool_use.py :20
from pathlib import Path - fs agentic-box-memora-c32b40e/claude-plugin/hooks-handlers/session_start.py :14
from pathlib import Path - fs agentic-box-memora-c32b40e/media/memora-absorb-digest-flow.py :3
from pathlib import Path - fs (weak) agentic-box-memora-c32b40e/memora-graph/scripts/sync-to-d1.py :19
from pathlib import Path - fs agentic-box-memora-c32b40e/memora/__init__.py :6
from pathlib import Path as _Path - fs agentic-box-memora-c32b40e/memora/backends.py :13
import shutil - fs agentic-box-memora-c32b40e/memora/cloud_sync.py :13
from pathlib import Path - fs agentic-box-memora-c32b40e/memora/graph/data.py :800
with open(output_path, "w") as f: - fs agentic-box-memora-c32b40e/memora/graph/issues.py :50
return "open" # Map to open (active) - fs agentic-box-memora-c32b40e/memora/graph/todos.py :44
return "open" # Map to open (active) - fs agentic-box-memora-c32b40e/memora/schema.py :20
# so when ``sync_before_use()`` replaces the file via ``shutil.move``/ - fs agentic-box-memora-c32b40e/memora/server.py :2792
from pathlib import Path as _Path - fs agentic-box-memora-c32b40e/memora/storage.py :16
from pathlib import Path - fs (weak) agentic-box-memora-c32b40e/scripts/measure_absorb_classifier.py :11
from pathlib import Path - fs (weak) agentic-box-memora-c32b40e/tests/conftest.py :7
from pathlib import Path - fs (weak) agentic-box-memora-c32b40e/tests/test_absorb_classifier_measurement.py :4
from pathlib import Path - fs (weak) agentic-box-memora-c32b40e/tests/test_gitagent_manifest.py :3
from pathlib import Path - fs (weak) agentic-box-memora-c32b40e/tests/test_graph_server.py :287
from pathlib import Path - fs (weak) agentic-box-memora-c32b40e/tests/test_storage.py :5
from pathlib import Path
shell / exec 2
- shell agentic-box-memora-c32b40e/claude-plugin/hooks-handlers/post_tool_use.py :404
import subprocess - shell (weak) agentic-box-memora-c32b40e/memora-graph/scripts/sync-to-d1.py :16
import subprocess
network 6
- net (weak) agentic-box-memora-c32b40e/memora-graph/scripts/link-r2-images.py :23
import requests - net agentic-box-memora-c32b40e/memora/backends.py :881
import urllib.error - net agentic-box-memora-c32b40e/memora/cloud_sync.py :15
from urllib.error import URLError - net agentic-box-memora-c32b40e/memora/graph/server.py :8
import socket - net (weak) agentic-box-memora-c32b40e/tests/conftest.py :2
import socket - net (weak) agentic-box-memora-c32b40e/tests/test_graph_server.py :1
import urllib.request
secrets 3
- secrets (weak) agentic-box-memora-c32b40e/memora-graph/scripts/link-r2-images.py :141
api_token = os.getenv('CLOUDFLARE_API_TOKEN') or os.getenv('CF_API_TOKEN') - secrets agentic-box-memora-c32b40e/memora/backends.py :1110
api_token = os.getenv("CLOUDFLARE_API_TOKEN") or os.getenv("CF_API_TOKEN") - secrets agentic-box-memora-c32b40e/memora/storage.py :1026
api_key = os.getenv("OPENAI_API_KEY")
database 8
- db agentic-box-memora-c32b40e/memora/backends.py :14
import sqlite3 - db agentic-box-memora-c32b40e/memora/embeddings.py :10
import sqlite3 - db agentic-box-memora-c32b40e/memora/schema.py :4
import sqlite3 - db agentic-box-memora-c32b40e/memora/storage.py :13
import sqlite3 - db (weak) agentic-box-memora-c32b40e/tests/conftest.py :3
import sqlite3 - db (weak) agentic-box-memora-c32b40e/tests/test_cloud_backends.py :489
import sqlite3 - db (weak) agentic-box-memora-c32b40e/tests/test_embeddings.py :10
import sqlite3 - db (weak) agentic-box-memora-c32b40e/tests/test_storage.py :1255
import sqlite3 as _sqlite3
tool registrations 43
- memory_create agentic-box-memora-c32b40e/memora/server.py :860
- memory_create_issue agentic-box-memora-c32b40e/memora/server.py :1028
- memory_create_todo agentic-box-memora-c32b40e/memora/server.py :1093
- memory_create_section agentic-box-memora-c32b40e/memora/server.py :1154
- memory_list agentic-box-memora-c32b40e/memora/server.py :1287
- memory_list_compact agentic-box-memora-c32b40e/memora/server.py :1362
- memory_create_batch agentic-box-memora-c32b40e/memora/server.py :1412
- memory_delete_batch agentic-box-memora-c32b40e/memora/server.py :1423
- memory_absorb agentic-box-memora-c32b40e/memora/server.py :1436
- memory_store_document agentic-box-memora-c32b40e/memora/server.py :1487
- memory_get_document agentic-box-memora-c32b40e/memora/server.py :1650
- memory_delete_document agentic-box-memora-c32b40e/memora/server.py :1744
- memory_get agentic-box-memora-c32b40e/memora/server.py :1830
- memory_update agentic-box-memora-c32b40e/memora/server.py :1882
- memory_delete agentic-box-memora-c32b40e/memora/server.py :1906
- memory_tags agentic-box-memora-c32b40e/memora/server.py :1939
- memory_tag_hierarchy agentic-box-memora-c32b40e/memora/server.py :1947
- memory_validate_tags agentic-box-memora-c32b40e/memora/server.py :1958
- memory_hierarchy agentic-box-memora-c32b40e/memora/server.py :1972
- memory_verify_integrity agentic-box-memora-c32b40e/memora/server.py :1999
- memory_semantic_search agentic-box-memora-c32b40e/memora/server.py :2024
- memory_hybrid_search agentic-box-memora-c32b40e/memora/server.py :2092
- memory_digest agentic-box-memora-c32b40e/memora/server.py :2185
- memory_rebuild_embeddings agentic-box-memora-c32b40e/memora/server.py :2291
- memory_related agentic-box-memora-c32b40e/memora/server.py :2303
- memory_rebuild_crossrefs agentic-box-memora-c32b40e/memora/server.py :2320
- memory_stats agentic-box-memora-c32b40e/memora/server.py :2336
- memory_insights agentic-box-memora-c32b40e/memora/server.py :2343
- memory_boost agentic-box-memora-c32b40e/memora/server.py :2374
- memory_link agentic-box-memora-c32b40e/memora/server.py :2414
- memory_unlink agentic-box-memora-c32b40e/memora/server.py :2446
- memory_clusters agentic-box-memora-c32b40e/memora/server.py :2467
- memory_find_duplicates agentic-box-memora-c32b40e/memora/server.py :2491
- memory_detect_supersessions agentic-box-memora-c32b40e/memora/server.py :2589
- memory_backfill_tags agentic-box-memora-c32b40e/memora/server.py :2637
- memory_merge agentic-box-memora-c32b40e/memora/server.py :2674
- memory_export agentic-box-memora-c32b40e/memora/server.py :2759
- memory_upload_image agentic-box-memora-c32b40e/memora/server.py :2771
- memory_migrate_images agentic-box-memora-c32b40e/memora/server.py :2873
- memory_export_graph agentic-box-memora-c32b40e/memora/server.py :2994
- memory_import agentic-box-memora-c32b40e/memora/server.py :3021
- memory_events_poll agentic-box-memora-c32b40e/memora/server.py :3065
- memory_events_clear agentic-box-memora-c32b40e/memora/server.py :3085
declared dependencies 12
- mcp@>=1.0.0,<2
- Pillow@>=10.4.0
- boto3@>=1.28.0
- filelock@>=3.12.0
- openai@>=1.6.0
- starlette@>=0.37.0
- sse-starlette@>=2.1.0
- uvicorn@>=0.30.0
- sentence-transformers@>=2.2.0
- moto@>=5.0.0
- pytest@>=7.4.0
- pytest-cov@>=4.1.0