Give your AI agent a brain that remembers. Local memory system for Claude Code — 100% private, GPU-accelerated, zero cloud dependency.
Drift inferred · capture-to-capture
No drift recorded — single capability capture; advisories appear once its surface changes.
transport http counts 0 tools · 0 res
· 0 prompts
permission surface via code analysis
no tools enumerated yet for this server.
prompt-surface
shipped agent-instruction files + hidden-content / dangerous-code findings —
quoted from the analyzed source
analyzed commit 6eeb5ae · analyzer v18 · 8h ago
danger signals3
- over-broad OAuth scopehttps://www.googleapis.com/auth/cloud-platform24kchengYe-MemoMind-6eeb5ae/engine/hindsight_api/engine/llm_wrapper.py:344
scopes=["https://www.googleapis.com/auth/cloud-platform"], - over-broad OAuth scopehttps://www.googleapis.com/auth/cloud-platform24kchengYe-MemoMind-6eeb5ae/engine/hindsight_api/engine/providers/gemini_llm.py:112
scopes=["https://www.googleapis.com/auth/cloud-platform"], - over-broad OAuth scopehttps://www.googleapis.com/auth/cloud-platform24kchengYe-MemoMind-6eeb5ae/engine/hindsight_api/engine/storage/gcs.py:26
credentials, _ = google.auth.default(scopes=["https://www.googleapis.com/auth/cloud-platform"])
evidence-backed
findings quoted directly from the published source artifact — not inferred
filesystem 14
- fs 24kchengYe-MemoMind-6eeb5ae/backup-memomind.py :220
with open(filepath, "w", encoding="utf-8") as f: - fs 24kchengYe-MemoMind-6eeb5ae/dashboard.py :39
with open(os.path.join(os.path.dirname(__file__) or ".", "dashboard.html"), encoding="utf-8") as _f: - fs 24kchengYe-MemoMind-6eeb5ae/engine/hindsight_api/admin/cli.py :11
from pathlib import Path - fs 24kchengYe-MemoMind-6eeb5ae/engine/hindsight_api/alembic/env.py :8
from pathlib import Path - fs 24kchengYe-MemoMind-6eeb5ae/engine/hindsight_api/daemon.py :12
from pathlib import Path - fs 24kchengYe-MemoMind-6eeb5ae/engine/hindsight_api/engine/llm_wrapper.py :12
from pathlib import Path - fs 24kchengYe-MemoMind-6eeb5ae/engine/hindsight_api/engine/parsers/markitdown.py :6
from pathlib import Path - fs 24kchengYe-MemoMind-6eeb5ae/engine/hindsight_api/engine/providers/codex_llm.py :15
from pathlib import Path - fs 24kchengYe-MemoMind-6eeb5ae/engine/hindsight_api/migrations.py :23
from pathlib import Path - fs 24kchengYe-MemoMind-6eeb5ae/import_ai_chats.py :55
with open(path, "r", encoding="utf-8") as f: - fs 24kchengYe-MemoMind-6eeb5ae/import_daylife.py :133
with opener.open(req, timeout=120) as resp: - fs 24kchengYe-MemoMind-6eeb5ae/patch_hindsight.py :8
import shutil - fs 24kchengYe-MemoMind-6eeb5ae/restore_backup.py :35
with open(path, "r", encoding="utf-8") as f: - fs 24kchengYe-MemoMind-6eeb5ae/sync_daylife_smart.py :21
_log_fp = open(LOG_FILE, "a", encoding="utf-8", buffering=1)
shell / exec 2
- shell 24kchengYe-MemoMind-6eeb5ae/backup-memomind.py :228
subprocess.run(["git", "add", FILENAME], check=True) - shell 24kchengYe-MemoMind-6eeb5ae/sync_daylife_smart.py :10
import subprocess
network 20
- net 24kchengYe-MemoMind-6eeb5ae/backup-memomind.py :10
import json, os, sys, subprocess, urllib.request, urllib.error - net 24kchengYe-MemoMind-6eeb5ae/dashboard.py :11
import urllib.request - net 24kchengYe-MemoMind-6eeb5ae/engine/hindsight/server.py :9
import socket - net 24kchengYe-MemoMind-6eeb5ae/engine/hindsight_api/api/http.py :1843
import socket - net 24kchengYe-MemoMind-6eeb5ae/engine/hindsight_api/daemon.py :104
import socket - net 24kchengYe-MemoMind-6eeb5ae/engine/hindsight_api/engine/cross_encoder.py :16
import httpx - net 24kchengYe-MemoMind-6eeb5ae/engine/hindsight_api/engine/embeddings.py :17
import httpx - net 24kchengYe-MemoMind-6eeb5ae/engine/hindsight_api/engine/llm_wrapper.py :15
import httpx - net 24kchengYe-MemoMind-6eeb5ae/engine/hindsight_api/engine/memory_engine.py :23
import httpx - net 24kchengYe-MemoMind-6eeb5ae/engine/hindsight_api/engine/parsers/iris.py :8
import httpx - net 24kchengYe-MemoMind-6eeb5ae/engine/hindsight_api/engine/providers/codex_llm.py :18
import httpx - net 24kchengYe-MemoMind-6eeb5ae/engine/hindsight_api/engine/providers/openai_compatible_llm.py :28
import httpx - net 24kchengYe-MemoMind-6eeb5ae/engine/hindsight_api/extensions/builtin/supabase_tenant.py :56
import httpx - net 24kchengYe-MemoMind-6eeb5ae/engine/hindsight_api/utils.py :1
from urllib.parse import urlparse, urlunparse - net 24kchengYe-MemoMind-6eeb5ae/engine/hindsight_api/worker/main.py :16
import socket - net 24kchengYe-MemoMind-6eeb5ae/import_ai_chats.py :20
import urllib.request - net 24kchengYe-MemoMind-6eeb5ae/import_daylife.py :9
import urllib.request - net 24kchengYe-MemoMind-6eeb5ae/patches/hindsight_server.py :9
import socket - net 24kchengYe-MemoMind-6eeb5ae/proxy-bridge.py :5
import socket, threading, sys - net 24kchengYe-MemoMind-6eeb5ae/restore_backup.py :12
import urllib.request
secrets 5
- secrets 24kchengYe-MemoMind-6eeb5ae/engine/hindsight_api/api/mcp.py :74
MCP_AUTH_TOKEN = os.environ.get("HINDSIGHT_API_MCP_AUTH_TOKEN") - secrets 24kchengYe-MemoMind-6eeb5ae/engine/hindsight_api/engine/storage/gcs.py :77
os.environ["GOOGLE_APPLICATION_CREDENTIALS"] = gac - secrets 24kchengYe-MemoMind-6eeb5ae/engine/hindsight_api/main.py :40
os.environ["TOKENIZERS_PARALLELISM"] = "false" - secrets 24kchengYe-MemoMind-6eeb5ae/engine/hindsight_api/server.py :29
os.environ["TOKENIZERS_PARALLELISM"] = "false" - secrets 24kchengYe-MemoMind-6eeb5ae/engine/hindsight_api/worker/main.py :29
os.environ["TOKENIZERS_PARALLELISM"] = "false"
database 29
- db 24kchengYe-MemoMind-6eeb5ae/engine/hindsight_api/admin/cli.py :14
import asyncpg - db 24kchengYe-MemoMind-6eeb5ae/engine/hindsight_api/alembic/env.py :12
from sqlalchemy import engine_from_config, pool - db 24kchengYe-MemoMind-6eeb5ae/engine/hindsight_api/alembic/versions/5a366d414dce_initial_schema.py :12
import sqlalchemy as sa - db 24kchengYe-MemoMind-6eeb5ae/engine/hindsight_api/alembic/versions/b7c4d8e9f1a2_add_chunks_table.py :11
import sqlalchemy as sa - db 24kchengYe-MemoMind-6eeb5ae/engine/hindsight_api/alembic/versions/c8e5f2a3b4d1_add_retain_params_to_documents.py :11
import sqlalchemy as sa - db 24kchengYe-MemoMind-6eeb5ae/engine/hindsight_api/alembic/versions/d5e6f7a8b9c0_add_bank_internal_id_and_per_bank_hnsw.py :31
from sqlalchemy import text - db 24kchengYe-MemoMind-6eeb5ae/engine/hindsight_api/alembic/versions/e0a1b2c3d4e5_disposition_to_3_traits.py :14
import sqlalchemy as sa - db 24kchengYe-MemoMind-6eeb5ae/engine/hindsight_api/alembic/versions/l7g8h9i0j1k2_add_worker_columns.py :16
import sqlalchemy as sa - db 24kchengYe-MemoMind-6eeb5ae/engine/hindsight_api/alembic/versions/n9i0j1k2l3m4_learnings_and_pinned_reflections.py :17
from sqlalchemy import text - db 24kchengYe-MemoMind-6eeb5ae/engine/hindsight_api/alembic/versions/rename_personality_to_disposition.py :11
import sqlalchemy as sa - db 24kchengYe-MemoMind-6eeb5ae/engine/hindsight_api/alembic/versions/x9s0t1u2v3w4_add_bank_config_column.py :19
import sqlalchemy as sa - db 24kchengYe-MemoMind-6eeb5ae/engine/hindsight_api/config_resolver.py :16
import asyncpg - db 24kchengYe-MemoMind-6eeb5ae/engine/hindsight_api/engine/consolidation/consolidator.py :36
from asyncpg import Connection - db 24kchengYe-MemoMind-6eeb5ae/engine/hindsight_api/engine/db_budget.py :17
import asyncpg - db 24kchengYe-MemoMind-6eeb5ae/engine/hindsight_api/engine/db_utils.py :9
import asyncpg - db 24kchengYe-MemoMind-6eeb5ae/engine/hindsight_api/engine/entity_resolver.py :15
import asyncpg - db 24kchengYe-MemoMind-6eeb5ae/engine/hindsight_api/engine/memory_engine.py :22
import asyncpg - db 24kchengYe-MemoMind-6eeb5ae/engine/hindsight_api/engine/reflect/tools.py :16
from asyncpg import Connection - db 24kchengYe-MemoMind-6eeb5ae/engine/hindsight_api/engine/retain/orchestrator.py :56
import asyncpg - db 24kchengYe-MemoMind-6eeb5ae/engine/hindsight_api/engine/storage/postgresql.py :8
import asyncpg - db 24kchengYe-MemoMind-6eeb5ae/engine/hindsight_api/engine/task_backend.py :16
import asyncpg - db 24kchengYe-MemoMind-6eeb5ae/engine/hindsight_api/metrics.py :29
import asyncpg - db 24kchengYe-MemoMind-6eeb5ae/engine/hindsight_api/migrations.py :28
from sqlalchemy import Connection, create_engine, text - db 24kchengYe-MemoMind-6eeb5ae/engine/hindsight_api/models.py :29
from sqlalchemy import ( - db 24kchengYe-MemoMind-6eeb5ae/engine/hindsight_api/webhooks/manager.py :11
import asyncpg - db 24kchengYe-MemoMind-6eeb5ae/engine/hindsight_api/worker/poller.py :20
import asyncpg - db 24kchengYe-MemoMind-6eeb5ae/import_daylife.py :7
import sqlite3 - db 24kchengYe-MemoMind-6eeb5ae/patches/consolidator.py :36
from asyncpg import Connection - db 24kchengYe-MemoMind-6eeb5ae/patches/orchestrator.py :56
import asyncpg
tool registrations 56
- my_custom_tool 24kchengYe-MemoMind-6eeb5ae/engine/hindsight_api/extensions/mcp.py :29
- retain 24kchengYe-MemoMind-6eeb5ae/engine/hindsight_api/mcp_tools.py :347
- retain 24kchengYe-MemoMind-6eeb5ae/engine/hindsight_api/mcp_tools.py :397
- recall 24kchengYe-MemoMind-6eeb5ae/engine/hindsight_api/mcp_tools.py :450
- recall 24kchengYe-MemoMind-6eeb5ae/engine/hindsight_api/mcp_tools.py :509
- reflect 24kchengYe-MemoMind-6eeb5ae/engine/hindsight_api/mcp_tools.py :570
- reflect 24kchengYe-MemoMind-6eeb5ae/engine/hindsight_api/mcp_tools.py :647
- list_banks 24kchengYe-MemoMind-6eeb5ae/engine/hindsight_api/mcp_tools.py :724
- create_bank 24kchengYe-MemoMind-6eeb5ae/engine/hindsight_api/mcp_tools.py :749
- list_mental_models 24kchengYe-MemoMind-6eeb5ae/engine/hindsight_api/mcp_tools.py :813
- list_mental_models 24kchengYe-MemoMind-6eeb5ae/engine/hindsight_api/mcp_tools.py :849
- get_mental_model 24kchengYe-MemoMind-6eeb5ae/engine/hindsight_api/mcp_tools.py :887
- get_mental_model 24kchengYe-MemoMind-6eeb5ae/engine/hindsight_api/mcp_tools.py :924
- create_mental_model 24kchengYe-MemoMind-6eeb5ae/engine/hindsight_api/mcp_tools.py :963
- create_mental_model 24kchengYe-MemoMind-6eeb5ae/engine/hindsight_api/mcp_tools.py :1047
- update_mental_model 24kchengYe-MemoMind-6eeb5ae/engine/hindsight_api/mcp_tools.py :1129
- update_mental_model 24kchengYe-MemoMind-6eeb5ae/engine/hindsight_api/mcp_tools.py :1190
- delete_mental_model 24kchengYe-MemoMind-6eeb5ae/engine/hindsight_api/mcp_tools.py :1253
- delete_mental_model 24kchengYe-MemoMind-6eeb5ae/engine/hindsight_api/mcp_tools.py :1289
- refresh_mental_model 24kchengYe-MemoMind-6eeb5ae/engine/hindsight_api/mcp_tools.py :1327
- refresh_mental_model 24kchengYe-MemoMind-6eeb5ae/engine/hindsight_api/mcp_tools.py :1371
- list_directives 24kchengYe-MemoMind-6eeb5ae/engine/hindsight_api/mcp_tools.py :1420
- list_directives 24kchengYe-MemoMind-6eeb5ae/engine/hindsight_api/mcp_tools.py :1458
- create_directive 24kchengYe-MemoMind-6eeb5ae/engine/hindsight_api/mcp_tools.py :1498
- create_directive 24kchengYe-MemoMind-6eeb5ae/engine/hindsight_api/mcp_tools.py :1544
- delete_directive 24kchengYe-MemoMind-6eeb5ae/engine/hindsight_api/mcp_tools.py :1592
- delete_directive 24kchengYe-MemoMind-6eeb5ae/engine/hindsight_api/mcp_tools.py :1628
- list_memories 24kchengYe-MemoMind-6eeb5ae/engine/hindsight_api/mcp_tools.py :1671
- list_memories 24kchengYe-MemoMind-6eeb5ae/engine/hindsight_api/mcp_tools.py :1715
- get_memory 24kchengYe-MemoMind-6eeb5ae/engine/hindsight_api/mcp_tools.py :1761
- get_memory 24kchengYe-MemoMind-6eeb5ae/engine/hindsight_api/mcp_tools.py :1797
- delete_memory 24kchengYe-MemoMind-6eeb5ae/engine/hindsight_api/mcp_tools.py :1835
- delete_memory 24kchengYe-MemoMind-6eeb5ae/engine/hindsight_api/mcp_tools.py :1868
- list_documents 24kchengYe-MemoMind-6eeb5ae/engine/hindsight_api/mcp_tools.py :1908
- list_documents 24kchengYe-MemoMind-6eeb5ae/engine/hindsight_api/mcp_tools.py :1946
- get_document 24kchengYe-MemoMind-6eeb5ae/engine/hindsight_api/mcp_tools.py :1986
- get_document 24kchengYe-MemoMind-6eeb5ae/engine/hindsight_api/mcp_tools.py :2022
- delete_document 24kchengYe-MemoMind-6eeb5ae/engine/hindsight_api/mcp_tools.py :2060
- delete_document 24kchengYe-MemoMind-6eeb5ae/engine/hindsight_api/mcp_tools.py :2094
- list_operations 24kchengYe-MemoMind-6eeb5ae/engine/hindsight_api/mcp_tools.py :2135
- list_operations 24kchengYe-MemoMind-6eeb5ae/engine/hindsight_api/mcp_tools.py :2172
- get_operation 24kchengYe-MemoMind-6eeb5ae/engine/hindsight_api/mcp_tools.py :2211
- get_operation 24kchengYe-MemoMind-6eeb5ae/engine/hindsight_api/mcp_tools.py :2245
- cancel_operation 24kchengYe-MemoMind-6eeb5ae/engine/hindsight_api/mcp_tools.py :2281
- cancel_operation 24kchengYe-MemoMind-6eeb5ae/engine/hindsight_api/mcp_tools.py :2313
- list_tags 24kchengYe-MemoMind-6eeb5ae/engine/hindsight_api/mcp_tools.py :2352
- list_tags 24kchengYe-MemoMind-6eeb5ae/engine/hindsight_api/mcp_tools.py :2389
- get_bank 24kchengYe-MemoMind-6eeb5ae/engine/hindsight_api/mcp_tools.py :2428
- get_bank 24kchengYe-MemoMind-6eeb5ae/engine/hindsight_api/mcp_tools.py :2461
- get_bank_stats 24kchengYe-MemoMind-6eeb5ae/engine/hindsight_api/mcp_tools.py :2491
- update_bank 24kchengYe-MemoMind-6eeb5ae/engine/hindsight_api/mcp_tools.py :2526
- update_bank 24kchengYe-MemoMind-6eeb5ae/engine/hindsight_api/mcp_tools.py :2563
- delete_bank 24kchengYe-MemoMind-6eeb5ae/engine/hindsight_api/mcp_tools.py :2602
- delete_bank 24kchengYe-MemoMind-6eeb5ae/engine/hindsight_api/mcp_tools.py :2634
- clear_memories 24kchengYe-MemoMind-6eeb5ae/engine/hindsight_api/mcp_tools.py :2665
- clear_memories 24kchengYe-MemoMind-6eeb5ae/engine/hindsight_api/mcp_tools.py :2699