MCP-native shared memory for Claude Code agents — hybrid BM25+vector+RRF recall, cross-session continuity, cognitive scoring, knowledge graph. Self-hosted, $0/query. 30 MCP tools.
Drift inferred · capture-to-capture
- HIGH code analysis flagged committed secret ×2 in gregdigittal/depthfusion
- HIGH code analysis flagged dynamic code execution in gregdigittal/depthfusion
- HIGH code analysis flagged dynamic code execution in gregdigittal/depthfusion
- HIGH code analysis flagged dynamic code execution in gregdigittal/depthfusion
transport stdio · 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 dbb81c7 · analyzer v28 · 3h ago
skills & prompt files 16
- agent-rules gregdigittal-depthfusion-dbb81c7/AGENTS.md
- agent-rules gregdigittal-depthfusion-dbb81c7/CLAUDE.md
- agent-rules gregdigittal-depthfusion-dbb81c7/docs/Account_synch/AGENTS.md
- agent-rules gregdigittal-depthfusion-dbb81c7/docs/Account_synch/CLAUDE.md
- skill gregdigittal-depthfusion-dbb81c7/docs/designs/DepthFusion Design System/SKILL.md
- prompt-file gregdigittal-depthfusion-dbb81c7/docs/designs/DepthFusion Design System/components/brand/LogoMark.prompt.md
- prompt-file gregdigittal-depthfusion-dbb81c7/docs/designs/DepthFusion Design System/components/core/Avatar.prompt.md
- prompt-file gregdigittal-depthfusion-dbb81c7/docs/designs/DepthFusion Design System/components/core/Badge.prompt.md
- prompt-file gregdigittal-depthfusion-dbb81c7/docs/designs/DepthFusion Design System/components/core/Button.prompt.md
- prompt-file gregdigittal-depthfusion-dbb81c7/docs/designs/DepthFusion Design System/components/core/Card.prompt.md
- prompt-file gregdigittal-depthfusion-dbb81c7/docs/designs/DepthFusion Design System/components/data/NodeChip.prompt.md
- prompt-file gregdigittal-depthfusion-dbb81c7/docs/designs/DepthFusion Design System/components/data/ResultCard.prompt.md
- prompt-file gregdigittal-depthfusion-dbb81c7/docs/designs/DepthFusion Design System/components/forms/Checkbox.prompt.md
- prompt-file gregdigittal-depthfusion-dbb81c7/docs/designs/DepthFusion Design System/components/forms/Input.prompt.md
- prompt-file gregdigittal-depthfusion-dbb81c7/docs/designs/DepthFusion Design System/components/forms/Radio.prompt.md
- prompt-file gregdigittal-depthfusion-dbb81c7/docs/designs/DepthFusion Design System/components/navigation/Tabs.prompt.md
danger signals2
- committed secret Anthropic key gregdigittal-depthfusion-dbb81c7/tests/test_install/test_install.py :382
sk-ant…(31 chars, redacted) - committed secret Anthropic key gregdigittal-depthfusion-dbb81c7/tests/test_scripts/test_mine_session_prompts.py :84
sk-ant…(45 chars, redacted)
evidence-backed
findings quoted directly from the published source artifact — not inferred
code files: 631
filesystem 85
- fs gregdigittal-depthfusion-dbb81c7/src/depthfusion/analytics/aggregation.py :15
from pathlib import Path - fs gregdigittal-depthfusion-dbb81c7/src/depthfusion/analytics/collector.py :22
from pathlib import Path - fs gregdigittal-depthfusion-dbb81c7/src/depthfusion/analytics/router.py :36
from pathlib import Path - fs gregdigittal-depthfusion-dbb81c7/src/depthfusion/analytics/store.py :15
from pathlib import Path - fs gregdigittal-depthfusion-dbb81c7/src/depthfusion/analyzer/compatibility.py :5
from pathlib import Path - fs gregdigittal-depthfusion-dbb81c7/src/depthfusion/analyzer/installer.py :15
from pathlib import Path - fs gregdigittal-depthfusion-dbb81c7/src/depthfusion/analyzer/scanner.py :5
from pathlib import Path - fs gregdigittal-depthfusion-dbb81c7/src/depthfusion/api/admin_console.py :49
from pathlib import Path - fs gregdigittal-depthfusion-dbb81c7/src/depthfusion/api/query.py :20
from pathlib import Path - fs gregdigittal-depthfusion-dbb81c7/src/depthfusion/api/role_admin.py :35
from pathlib import Path - fs gregdigittal-depthfusion-dbb81c7/src/depthfusion/audit/log.py :46
from pathlib import Path - fs gregdigittal-depthfusion-dbb81c7/src/depthfusion/authz/label_mapping.py :24
from pathlib import Path - fs gregdigittal-depthfusion-dbb81c7/src/depthfusion/authz/roles.py :18
from pathlib import Path - fs gregdigittal-depthfusion-dbb81c7/src/depthfusion/cache/activity_signals.py :29
from pathlib import Path - fs gregdigittal-depthfusion-dbb81c7/src/depthfusion/cache/hit_rate.py :22
from pathlib import Path - fs gregdigittal-depthfusion-dbb81c7/src/depthfusion/cache/manager.py :21
from pathlib import Path - fs gregdigittal-depthfusion-dbb81c7/src/depthfusion/capture/auto_learn.py :23
from pathlib import Path - fs gregdigittal-depthfusion-dbb81c7/src/depthfusion/capture/compressor.py :11
from pathlib import Path - fs gregdigittal-depthfusion-dbb81c7/src/depthfusion/capture/decay.py :39
import shutil - fs gregdigittal-depthfusion-dbb81c7/src/depthfusion/capture/decision_extractor.py :21
from pathlib import Path - fs gregdigittal-depthfusion-dbb81c7/src/depthfusion/capture/dedup.py :42
from pathlib import Path - fs gregdigittal-depthfusion-dbb81c7/src/depthfusion/capture/event_hook.py :11
from pathlib import Path - fs gregdigittal-depthfusion-dbb81c7/src/depthfusion/capture/negative_extractor.py :21
from pathlib import Path - fs gregdigittal-depthfusion-dbb81c7/src/depthfusion/capture/pruner.py :38
import shutil - fs gregdigittal-depthfusion-dbb81c7/src/depthfusion/cli/devices.py :17
from pathlib import Path - fs gregdigittal-depthfusion-dbb81c7/src/depthfusion/cli/migrate.py :34
import shutil - fs gregdigittal-depthfusion-dbb81c7/src/depthfusion/cli/roles.py :32
from pathlib import Path - fs gregdigittal-depthfusion-dbb81c7/src/depthfusion/cognitive/offloader.py :20
from pathlib import Path - fs gregdigittal-depthfusion-dbb81c7/src/depthfusion/cognitive/persona.py :23
from pathlib import Path - fs gregdigittal-depthfusion-dbb81c7/src/depthfusion/cognitive/scenario.py :31
from pathlib import Path - fs gregdigittal-depthfusion-dbb81c7/src/depthfusion/connectors/sharepoint.py :42
from pathlib import Path - fs gregdigittal-depthfusion-dbb81c7/src/depthfusion/connectors/sharepoint_scheduler.py :14
from pathlib import Path - fs gregdigittal-depthfusion-dbb81c7/src/depthfusion/connectors/sharepoint_scope.py :20
from pathlib import Path - fs gregdigittal-depthfusion-dbb81c7/src/depthfusion/connectors/sharepoint_state.py :14
from pathlib import Path - fs gregdigittal-depthfusion-dbb81c7/src/depthfusion/core/config.py :10
from pathlib import Path - fs gregdigittal-depthfusion-dbb81c7/src/depthfusion/core/event_store.py :19
from pathlib import Path - fs gregdigittal-depthfusion-dbb81c7/src/depthfusion/core/feedback.py :22
from pathlib import Path - fs gregdigittal-depthfusion-dbb81c7/src/depthfusion/core/file_locking.py :20
from pathlib import Path - fs gregdigittal-depthfusion-dbb81c7/src/depthfusion/core/hit_tracker.py :8
from pathlib import Path - fs gregdigittal-depthfusion-dbb81c7/src/depthfusion/core/project_context.py :7
from pathlib import Path - fs gregdigittal-depthfusion-dbb81c7/src/depthfusion/core/project_ingest.py :9
from pathlib import Path - fs gregdigittal-depthfusion-dbb81c7/src/depthfusion/core/project_registry.py :7
from pathlib import Path - fs gregdigittal-depthfusion-dbb81c7/src/depthfusion/core/research.py :9
from pathlib import Path - fs gregdigittal-depthfusion-dbb81c7/src/depthfusion/graph/scope.py :6
from pathlib import Path - fs gregdigittal-depthfusion-dbb81c7/src/depthfusion/graph/store.py :9
from pathlib import Path - fs gregdigittal-depthfusion-dbb81c7/src/depthfusion/hooks/git_post_commit.py :31
from pathlib import Path - fs gregdigittal-depthfusion-dbb81c7/src/depthfusion/hooks/post_tool_use.py :23
from pathlib import Path - fs gregdigittal-depthfusion-dbb81c7/src/depthfusion/hooks/session_start.py :18
from pathlib import Path - fs gregdigittal-depthfusion-dbb81c7/src/depthfusion/identity/device_registry.py :28
from pathlib import Path - fs gregdigittal-depthfusion-dbb81c7/src/depthfusion/identity/principal_store.py :20
from pathlib import Path - fs gregdigittal-depthfusion-dbb81c7/src/depthfusion/ingest/parser.py :27
import pathlib - fs gregdigittal-depthfusion-dbb81c7/src/depthfusion/ingest/pipeline.py :31
from pathlib import Path - fs gregdigittal-depthfusion-dbb81c7/src/depthfusion/install/dep_checker.py :7
from pathlib import Path - fs gregdigittal-depthfusion-dbb81c7/src/depthfusion/install/gpu_probe.py :20
import shutil - fs gregdigittal-depthfusion-dbb81c7/src/depthfusion/install/install.py :29
import shutil - fs gregdigittal-depthfusion-dbb81c7/src/depthfusion/install/migrate.py :5
from pathlib import Path - fs gregdigittal-depthfusion-dbb81c7/src/depthfusion/install/smoke.py :28
from pathlib import Path - fs gregdigittal-depthfusion-dbb81c7/src/depthfusion/install/ui_server.py :24
from pathlib import Path - fs gregdigittal-depthfusion-dbb81c7/src/depthfusion/mcp/http_server.py :254
from pathlib import Path - fs gregdigittal-depthfusion-dbb81c7/src/depthfusion/mcp/tools/_shared.py :9
from pathlib import Path - fs gregdigittal-depthfusion-dbb81c7/src/depthfusion/mcp/tools/_state.py :7
from pathlib import Path - fs gregdigittal-depthfusion-dbb81c7/src/depthfusion/mcp/tools/capture.py :7
from pathlib import Path - fs gregdigittal-depthfusion-dbb81c7/src/depthfusion/mcp/tools/graph.py :7
from pathlib import Path - fs gregdigittal-depthfusion-dbb81c7/src/depthfusion/mcp/tools/project.py :6
from pathlib import Path - fs gregdigittal-depthfusion-dbb81c7/src/depthfusion/mcp/tools/recall.py :149
from pathlib import Path - fs gregdigittal-depthfusion-dbb81c7/src/depthfusion/mcp/tools/telemetry.py :7
from pathlib import Path - fs gregdigittal-depthfusion-dbb81c7/src/depthfusion/metrics/aggregator.py :12
from pathlib import Path - fs gregdigittal-depthfusion-dbb81c7/src/depthfusion/metrics/collector.py :47
on a fresh `open(path, "a")` file descriptor. Because each caller opens - fs gregdigittal-depthfusion-dbb81c7/src/depthfusion/parsers/documents/base.py :35
store = QuarantineStore(persist_dir=pathlib.Path("data/quarantine")) - fs gregdigittal-depthfusion-dbb81c7/src/depthfusion/parsers/documents/ocr.py :72
image = Image.open(io.BytesIO(data)) - fs gregdigittal-depthfusion-dbb81c7/src/depthfusion/parsers/documents/pdf.py :66
with pdfplumber.open(io.BytesIO(content_bytes)) as pdf: - fs gregdigittal-depthfusion-dbb81c7/src/depthfusion/recursive/sandbox.py :6
from pathlib import Path - fs gregdigittal-depthfusion-dbb81c7/src/depthfusion/retrieval/hnsw_store.py :56
from pathlib import Path - fs gregdigittal-depthfusion-dbb81c7/src/depthfusion/router/bus.py :18
from pathlib import Path - fs gregdigittal-depthfusion-dbb81c7/src/depthfusion/session/loader.py :4
from pathlib import Path - fs gregdigittal-depthfusion-dbb81c7/src/depthfusion/session/tagger.py :10
from pathlib import Path - fs gregdigittal-depthfusion-dbb81c7/src/depthfusion/storage/event_log.py :6
from pathlib import Path - fs gregdigittal-depthfusion-dbb81c7/src/depthfusion/storage/file_index.py :9
from pathlib import Path - fs gregdigittal-depthfusion-dbb81c7/src/depthfusion/storage/memory_store.py :8
from pathlib import Path - fs gregdigittal-depthfusion-dbb81c7/src/depthfusion/storage/telemetry_store.py :7
from pathlib import Path - fs gregdigittal-depthfusion-dbb81c7/src/depthfusion/storage/tier_manager.py :7
from pathlib import Path - fs gregdigittal-depthfusion-dbb81c7/src/depthfusion/storage/vector_store.py :7
from pathlib import Path - fs gregdigittal-depthfusion-dbb81c7/src/depthfusion/telemetry/recorder.py :7
from pathlib import Path - fs gregdigittal-depthfusion-dbb81c7/src/depthfusion/telemetry/schema.py :7
from pathlib import Path - fs gregdigittal-depthfusion-dbb81c7/tools/bench_cat_d.py :22
from pathlib import Path
shell / exec 10
- shell gregdigittal-depthfusion-dbb81c7/src/depthfusion/analyzer/installer.py :14
import subprocess - shell gregdigittal-depthfusion-dbb81c7/src/depthfusion/analyzer/scanner.py :4
import subprocess - shell gregdigittal-depthfusion-dbb81c7/src/depthfusion/api/rest.py :19
import subprocess - shell gregdigittal-depthfusion-dbb81c7/src/depthfusion/core/project_context.py :4
import subprocess - shell gregdigittal-depthfusion-dbb81c7/src/depthfusion/hooks/git_post_commit.py :28
import subprocess - shell gregdigittal-depthfusion-dbb81c7/src/depthfusion/hooks/post_tool_use.py :21
import subprocess - shell gregdigittal-depthfusion-dbb81c7/src/depthfusion/hooks/session_start.py :16
import subprocess - shell gregdigittal-depthfusion-dbb81c7/src/depthfusion/install/gpu_probe.py :21
import subprocess - shell gregdigittal-depthfusion-dbb81c7/src/depthfusion/install/install.py :30
import subprocess - shell gregdigittal-depthfusion-dbb81c7/src/depthfusion/recursive/sandbox.py :4
import subprocess
network 12
- net gregdigittal-depthfusion-dbb81c7/src/depthfusion/backends/gemma.py :7
Transport: stdlib `urllib.request` posting JSON to vLLM's - net gregdigittal-depthfusion-dbb81c7/src/depthfusion/backends/openrouter.py :6
import socket - net gregdigittal-depthfusion-dbb81c7/src/depthfusion/cognitive/distillation_client.py :30
import httpx - net gregdigittal-depthfusion-dbb81c7/src/depthfusion/connectors/sharepoint.py :228
import requests - net gregdigittal-depthfusion-dbb81c7/src/depthfusion/core/project_ingest.py :6
import urllib.error - net gregdigittal-depthfusion-dbb81c7/src/depthfusion/core/research.py :6
import urllib.parse - net gregdigittal-depthfusion-dbb81c7/src/depthfusion/identity/device_keychain.py :51
import httpx - net gregdigittal-depthfusion-dbb81c7/src/depthfusion/identity/jwks_cache.py :18
import httpx - net gregdigittal-depthfusion-dbb81c7/src/depthfusion/identity/oidc_client.py :31
from urllib.parse import urlencode - net gregdigittal-depthfusion-dbb81c7/src/depthfusion/mcp/skillforge_client.py :17
import urllib.error - net gregdigittal-depthfusion-dbb81c7/src/depthfusion/mcp/tools/system.py :72
import socket - net gregdigittal-depthfusion-dbb81c7/src/depthfusion/recursive/client.py :21
import urllib.error
secrets 11
- secrets gregdigittal-depthfusion-dbb81c7/src/depthfusion/api/auth.py :130
api_token = os.getenv("DEPTHFUSION_API_TOKEN", "").strip() - secrets gregdigittal-depthfusion-dbb81c7/src/depthfusion/api/rest.py :65
if not os.getenv("DEPTHFUSION_API_TOKEN", ""): - secrets gregdigittal-depthfusion-dbb81c7/src/depthfusion/backends/haiku.py :101
resolved_key = api_key if api_key is not None else os.environ.get("DEPTHFUSION_API_KEY") - secrets gregdigittal-depthfusion-dbb81c7/src/depthfusion/core/config.py :198
skillforge_api_token=os.environ.get("DEPTHFUSION_SKILLFORGE_API_TOKEN", ""), - secrets gregdigittal-depthfusion-dbb81c7/src/depthfusion/core/project_ingest.py :107
token = os.environ.get('GITHUB_TOKEN', '') - secrets gregdigittal-depthfusion-dbb81c7/src/depthfusion/core/research.py :154
github_token = os.environ.get('GITHUB_TOKEN', '') - secrets gregdigittal-depthfusion-dbb81c7/src/depthfusion/identity/device_keychain.py :178
import keyring # type: ignore[import-untyped] - secrets gregdigittal-depthfusion-dbb81c7/src/depthfusion/install/install.py :181
import getpass - secrets gregdigittal-depthfusion-dbb81c7/src/depthfusion/mcp/http_server.py :147
static_token = os.getenv("DEPTHFUSION_MCP_TOKEN", "") - secrets gregdigittal-depthfusion-dbb81c7/src/depthfusion/mcp/skillforge_client.py :38
api_key = os.getenv("DEPTHFUSION_SKILLFORGE_API_KEY", "") - secrets gregdigittal-depthfusion-dbb81c7/src/depthfusion/mcp/tools/system.py :166
key = os.environ.get("OPENROUTER_API_KEY")
database 19
- db gregdigittal-depthfusion-dbb81c7/src/depthfusion/analytics/store.py :13
import sqlite3 - db gregdigittal-depthfusion-dbb81c7/src/depthfusion/api/admin_console.py :46
import sqlite3 - db gregdigittal-depthfusion-dbb81c7/src/depthfusion/audit/log.py :40
import sqlite3 - db gregdigittal-depthfusion-dbb81c7/src/depthfusion/authz/roles.py :13
import sqlite3 - db gregdigittal-depthfusion-dbb81c7/src/depthfusion/cache/activity_signals.py :25
import sqlite3 - db gregdigittal-depthfusion-dbb81c7/src/depthfusion/cache/hit_rate.py :19
import sqlite3 - db gregdigittal-depthfusion-dbb81c7/src/depthfusion/cache/lease_lifecycle.py :45
import sqlite3 - db gregdigittal-depthfusion-dbb81c7/src/depthfusion/cache/manager.py :19
import sqlite3 - db gregdigittal-depthfusion-dbb81c7/src/depthfusion/cli/migrate.py :35
import sqlite3 - db gregdigittal-depthfusion-dbb81c7/src/depthfusion/core/event_store.py :140
import redis.asyncio as aioredis # type: ignore[import-untyped] - db gregdigittal-depthfusion-dbb81c7/src/depthfusion/graph/store.py :7
import sqlite3 - db gregdigittal-depthfusion-dbb81c7/src/depthfusion/identity/device_registry.py :22
import sqlite3 - db gregdigittal-depthfusion-dbb81c7/src/depthfusion/identity/principal_store.py :16
import sqlite3 - db gregdigittal-depthfusion-dbb81c7/src/depthfusion/mcp/http_server.py :351
import sqlite3 - db gregdigittal-depthfusion-dbb81c7/src/depthfusion/storage/file_index.py :6
import sqlite3 - db gregdigittal-depthfusion-dbb81c7/src/depthfusion/storage/memory_store.py :5
import sqlite3 - db gregdigittal-depthfusion-dbb81c7/src/depthfusion/storage/telemetry_store.py :4
import sqlite3 - db gregdigittal-depthfusion-dbb81c7/src/depthfusion/sync/engine.py :37
import sqlite3 - db gregdigittal-depthfusion-dbb81c7/src/depthfusion/telemetry/schema.py :5
import sqlite3
declared dependencies 61
- numpy@>=1.24
- openpyxl@>=3.1
- python-pptx@>=0.6
- pyyaml@>=6.0
- structlog@>=24.0
- anthropic@>=0.40
- chromadb@>=1.0
- fastapi@>=0.100
- uvicorn@>=0.23
- Mako@>=1.3.12
- PyJWT@>=2.13.0
- Pygments@>=2.20.0
- Markdown@>=3.8.1
- starlette@>=1.3.1
- pydantic-settings@>=2.14.2
- sentence-transformers@>=2.2
- hnswlib@>=0.7
- mlx-lm@>=0.18
- rlms@*
- pytesseract@>=0.3
- Pillow@>=10.0
- rapidocr_onnxruntime@>=1.3; python_version>=
- redis@>=5.0
- pytest@>=8.0
- pytest-asyncio@>=0.23
- pytest-cov@>=5.0
- pytest-timeout@>=2.3
- mypy@>=1.0
- ruff@>=0.4
- types-PyYAML@>=6.0.0
- httpx@>=0.27
- pypdf@>=3.0
- pdfplumber@>=0.11
- pdfminer.six@>=20221105
- reportlab@>=4.0
- cryptography@>=49.0.0
- python-docx@>=0.8
- msal@>=1.0
- tauri-build@2.6.2
- serde_json@1.0
- serde@1.0
- log@0.4
- tauri@2.11.2
- tauri-plugin-log@2
- tauri-plugin-shell@2
- tauri-plugin-deep-link@2
- tauri-plugin-opener@2
- base64@0.22
- rand@0.8
- sha2@0.10
- url@2
- tokio@1
- once_cell@1
- reqwest@0.12
- keyring@3
- tauri-plugin-updater@2
- tauri-plugin-store@2
- rusqlite@0.32
- hmac@0.12
- zeroize@1
- mockito@1