superlocalmemory 2.8.5 → 3.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +11 -0
- package/LICENSE +9 -1
- package/NOTICE +63 -0
- package/README.md +165 -480
- package/bin/slm +17 -449
- package/bin/slm-npm +2 -2
- package/bin/slm.bat +4 -2
- package/conftest.py +5 -0
- package/docs/api-reference.md +284 -0
- package/docs/architecture.md +149 -0
- package/docs/auto-memory.md +150 -0
- package/docs/cli-reference.md +276 -0
- package/docs/compliance.md +191 -0
- package/docs/configuration.md +182 -0
- package/docs/getting-started.md +102 -0
- package/docs/ide-setup.md +261 -0
- package/docs/mcp-tools.md +220 -0
- package/docs/migration-from-v2.md +170 -0
- package/docs/profiles.md +173 -0
- package/docs/troubleshooting.md +310 -0
- package/{configs → ide/configs}/antigravity-mcp.json +3 -3
- package/ide/configs/chatgpt-desktop-mcp.json +16 -0
- package/{configs → ide/configs}/claude-desktop-mcp.json +3 -3
- package/{configs → ide/configs}/codex-mcp.toml +4 -4
- package/{configs → ide/configs}/continue-mcp.yaml +4 -3
- package/{configs → ide/configs}/continue-skills.yaml +6 -6
- package/ide/configs/cursor-mcp.json +15 -0
- package/{configs → ide/configs}/gemini-cli-mcp.json +2 -2
- package/{configs → ide/configs}/jetbrains-mcp.json +2 -2
- package/{configs → ide/configs}/opencode-mcp.json +2 -2
- package/{configs → ide/configs}/perplexity-mcp.json +2 -2
- package/{configs → ide/configs}/vscode-copilot-mcp.json +2 -2
- package/{configs → ide/configs}/windsurf-mcp.json +3 -3
- package/{configs → ide/configs}/zed-mcp.json +2 -2
- package/{hooks → ide/hooks}/context-hook.js +9 -20
- package/ide/hooks/memory-list-skill.js +70 -0
- package/ide/hooks/memory-profile-skill.js +101 -0
- package/ide/hooks/memory-recall-skill.js +62 -0
- package/ide/hooks/memory-remember-skill.js +68 -0
- package/ide/hooks/memory-reset-skill.js +160 -0
- package/{hooks → ide/hooks}/post-recall-hook.js +2 -2
- package/ide/integrations/langchain/README.md +106 -0
- package/ide/integrations/langchain/langchain_superlocalmemory/__init__.py +9 -0
- package/ide/integrations/langchain/langchain_superlocalmemory/chat_message_history.py +201 -0
- package/ide/integrations/langchain/pyproject.toml +38 -0
- package/{src/learning → ide/integrations/langchain}/tests/__init__.py +1 -0
- package/ide/integrations/langchain/tests/test_chat_message_history.py +215 -0
- package/ide/integrations/langchain/tests/test_security.py +117 -0
- package/ide/integrations/llamaindex/README.md +81 -0
- package/ide/integrations/llamaindex/llama_index/storage/chat_store/superlocalmemory/__init__.py +9 -0
- package/ide/integrations/llamaindex/llama_index/storage/chat_store/superlocalmemory/base.py +316 -0
- package/ide/integrations/llamaindex/pyproject.toml +43 -0
- package/{src/lifecycle → ide/integrations/llamaindex}/tests/__init__.py +1 -2
- package/ide/integrations/llamaindex/tests/test_chat_store.py +294 -0
- package/ide/integrations/llamaindex/tests/test_security.py +241 -0
- package/{skills → ide/skills}/slm-build-graph/SKILL.md +6 -6
- package/{skills → ide/skills}/slm-list-recent/SKILL.md +5 -5
- package/{skills → ide/skills}/slm-recall/SKILL.md +5 -5
- package/{skills → ide/skills}/slm-remember/SKILL.md +6 -6
- package/{skills → ide/skills}/slm-show-patterns/SKILL.md +7 -7
- package/{skills → ide/skills}/slm-status/SKILL.md +9 -9
- package/{skills → ide/skills}/slm-switch-profile/SKILL.md +9 -9
- package/package.json +13 -22
- package/pyproject.toml +85 -0
- package/scripts/build-dmg.sh +417 -0
- package/scripts/install-skills.ps1 +334 -0
- package/{install.ps1 → scripts/install.ps1} +36 -4
- package/{install.sh → scripts/install.sh} +14 -13
- package/scripts/postinstall.js +2 -2
- package/scripts/start-dashboard.ps1 +52 -0
- package/scripts/start-dashboard.sh +41 -0
- package/scripts/sync-wiki.ps1 +127 -0
- package/scripts/sync-wiki.sh +82 -0
- package/scripts/test-dmg.sh +161 -0
- package/scripts/test-npm-package.ps1 +252 -0
- package/scripts/test-npm-package.sh +207 -0
- package/scripts/verify-install.ps1 +294 -0
- package/scripts/verify-install.sh +266 -0
- package/src/superlocalmemory/__init__.py +0 -0
- package/src/superlocalmemory/attribution/__init__.py +9 -0
- package/src/superlocalmemory/attribution/mathematical_dna.py +235 -0
- package/src/superlocalmemory/attribution/signer.py +153 -0
- package/src/superlocalmemory/attribution/watermark.py +189 -0
- package/src/superlocalmemory/cli/__init__.py +5 -0
- package/src/superlocalmemory/cli/commands.py +245 -0
- package/src/superlocalmemory/cli/main.py +89 -0
- package/src/superlocalmemory/cli/migrate_cmd.py +55 -0
- package/src/superlocalmemory/cli/post_install.py +99 -0
- package/src/superlocalmemory/cli/setup_wizard.py +129 -0
- package/src/superlocalmemory/compliance/__init__.py +0 -0
- package/src/superlocalmemory/compliance/abac.py +204 -0
- package/src/superlocalmemory/compliance/audit.py +314 -0
- package/src/superlocalmemory/compliance/eu_ai_act.py +131 -0
- package/src/superlocalmemory/compliance/gdpr.py +294 -0
- package/src/superlocalmemory/compliance/lifecycle.py +158 -0
- package/src/superlocalmemory/compliance/retention.py +232 -0
- package/src/superlocalmemory/compliance/scheduler.py +148 -0
- package/src/superlocalmemory/core/__init__.py +0 -0
- package/src/superlocalmemory/core/config.py +391 -0
- package/src/superlocalmemory/core/embeddings.py +293 -0
- package/src/superlocalmemory/core/engine.py +701 -0
- package/src/superlocalmemory/core/hooks.py +65 -0
- package/src/superlocalmemory/core/maintenance.py +172 -0
- package/src/superlocalmemory/core/modes.py +140 -0
- package/src/superlocalmemory/core/profiles.py +234 -0
- package/src/superlocalmemory/core/registry.py +117 -0
- package/src/superlocalmemory/dynamics/__init__.py +0 -0
- package/src/superlocalmemory/dynamics/fisher_langevin_coupling.py +223 -0
- package/src/superlocalmemory/encoding/__init__.py +0 -0
- package/src/superlocalmemory/encoding/consolidator.py +485 -0
- package/src/superlocalmemory/encoding/emotional.py +125 -0
- package/src/superlocalmemory/encoding/entity_resolver.py +525 -0
- package/src/superlocalmemory/encoding/entropy_gate.py +104 -0
- package/src/superlocalmemory/encoding/fact_extractor.py +775 -0
- package/src/superlocalmemory/encoding/foresight.py +91 -0
- package/src/superlocalmemory/encoding/graph_builder.py +302 -0
- package/src/superlocalmemory/encoding/observation_builder.py +160 -0
- package/src/superlocalmemory/encoding/scene_builder.py +183 -0
- package/src/superlocalmemory/encoding/signal_inference.py +90 -0
- package/src/superlocalmemory/encoding/temporal_parser.py +426 -0
- package/src/superlocalmemory/encoding/type_router.py +235 -0
- package/src/superlocalmemory/hooks/__init__.py +3 -0
- package/src/superlocalmemory/hooks/auto_capture.py +111 -0
- package/src/superlocalmemory/hooks/auto_recall.py +93 -0
- package/src/superlocalmemory/hooks/ide_connector.py +204 -0
- package/src/superlocalmemory/hooks/rules_engine.py +99 -0
- package/src/superlocalmemory/infra/__init__.py +3 -0
- package/src/superlocalmemory/infra/auth_middleware.py +82 -0
- package/src/superlocalmemory/infra/backup.py +317 -0
- package/src/superlocalmemory/infra/cache_manager.py +267 -0
- package/src/superlocalmemory/infra/event_bus.py +381 -0
- package/src/superlocalmemory/infra/rate_limiter.py +135 -0
- package/src/{webhook_dispatcher.py → superlocalmemory/infra/webhook_dispatcher.py} +104 -101
- package/src/superlocalmemory/learning/__init__.py +0 -0
- package/src/superlocalmemory/learning/adaptive.py +172 -0
- package/src/superlocalmemory/learning/behavioral.py +490 -0
- package/src/superlocalmemory/learning/behavioral_listener.py +94 -0
- package/src/superlocalmemory/learning/bootstrap.py +298 -0
- package/src/superlocalmemory/learning/cross_project.py +399 -0
- package/src/superlocalmemory/learning/database.py +376 -0
- package/src/superlocalmemory/learning/engagement.py +323 -0
- package/src/superlocalmemory/learning/features.py +138 -0
- package/src/superlocalmemory/learning/feedback.py +316 -0
- package/src/superlocalmemory/learning/outcomes.py +255 -0
- package/src/superlocalmemory/learning/project_context.py +366 -0
- package/src/superlocalmemory/learning/ranker.py +155 -0
- package/src/superlocalmemory/learning/source_quality.py +303 -0
- package/src/superlocalmemory/learning/workflows.py +309 -0
- package/src/superlocalmemory/llm/__init__.py +0 -0
- package/src/superlocalmemory/llm/backbone.py +316 -0
- package/src/superlocalmemory/math/__init__.py +0 -0
- package/src/superlocalmemory/math/fisher.py +356 -0
- package/src/superlocalmemory/math/langevin.py +398 -0
- package/src/superlocalmemory/math/sheaf.py +257 -0
- package/src/superlocalmemory/mcp/__init__.py +0 -0
- package/src/superlocalmemory/mcp/resources.py +245 -0
- package/src/superlocalmemory/mcp/server.py +61 -0
- package/src/superlocalmemory/mcp/tools.py +18 -0
- package/src/superlocalmemory/mcp/tools_core.py +305 -0
- package/src/superlocalmemory/mcp/tools_v28.py +223 -0
- package/src/superlocalmemory/mcp/tools_v3.py +286 -0
- package/src/superlocalmemory/retrieval/__init__.py +0 -0
- package/src/superlocalmemory/retrieval/agentic.py +295 -0
- package/src/superlocalmemory/retrieval/ann_index.py +223 -0
- package/src/superlocalmemory/retrieval/bm25_channel.py +185 -0
- package/src/superlocalmemory/retrieval/bridge_discovery.py +170 -0
- package/src/superlocalmemory/retrieval/engine.py +390 -0
- package/src/superlocalmemory/retrieval/entity_channel.py +179 -0
- package/src/superlocalmemory/retrieval/fusion.py +78 -0
- package/src/superlocalmemory/retrieval/profile_channel.py +105 -0
- package/src/superlocalmemory/retrieval/reranker.py +154 -0
- package/src/superlocalmemory/retrieval/semantic_channel.py +232 -0
- package/src/superlocalmemory/retrieval/strategy.py +96 -0
- package/src/superlocalmemory/retrieval/temporal_channel.py +175 -0
- package/src/superlocalmemory/server/__init__.py +1 -0
- package/src/superlocalmemory/server/api.py +248 -0
- package/src/superlocalmemory/server/routes/__init__.py +4 -0
- package/src/superlocalmemory/server/routes/agents.py +107 -0
- package/src/superlocalmemory/server/routes/backup.py +91 -0
- package/src/superlocalmemory/server/routes/behavioral.py +127 -0
- package/src/superlocalmemory/server/routes/compliance.py +160 -0
- package/src/superlocalmemory/server/routes/data_io.py +188 -0
- package/src/superlocalmemory/server/routes/events.py +183 -0
- package/src/superlocalmemory/server/routes/helpers.py +85 -0
- package/src/superlocalmemory/server/routes/learning.py +273 -0
- package/src/superlocalmemory/server/routes/lifecycle.py +116 -0
- package/src/superlocalmemory/server/routes/memories.py +399 -0
- package/src/superlocalmemory/server/routes/profiles.py +219 -0
- package/src/superlocalmemory/server/routes/stats.py +346 -0
- package/src/superlocalmemory/server/routes/v3_api.py +365 -0
- package/src/superlocalmemory/server/routes/ws.py +82 -0
- package/src/superlocalmemory/server/security_middleware.py +57 -0
- package/src/superlocalmemory/server/ui.py +245 -0
- package/src/superlocalmemory/storage/__init__.py +0 -0
- package/src/superlocalmemory/storage/access_control.py +182 -0
- package/src/superlocalmemory/storage/database.py +594 -0
- package/src/superlocalmemory/storage/migrations.py +303 -0
- package/src/superlocalmemory/storage/models.py +406 -0
- package/src/superlocalmemory/storage/schema.py +726 -0
- package/src/superlocalmemory/storage/v2_migrator.py +317 -0
- package/src/superlocalmemory/trust/__init__.py +0 -0
- package/src/superlocalmemory/trust/gate.py +130 -0
- package/src/superlocalmemory/trust/provenance.py +124 -0
- package/src/superlocalmemory/trust/scorer.py +347 -0
- package/src/superlocalmemory/trust/signals.py +153 -0
- package/ui/index.html +278 -5
- package/ui/js/auto-settings.js +70 -0
- package/ui/js/dashboard.js +90 -0
- package/ui/js/fact-detail.js +92 -0
- package/ui/js/feedback.js +2 -2
- package/ui/js/ide-status.js +102 -0
- package/ui/js/math-health.js +98 -0
- package/ui/js/recall-lab.js +127 -0
- package/ui/js/settings.js +2 -2
- package/ui/js/trust-dashboard.js +73 -0
- package/api_server.py +0 -724
- package/bin/aider-smart +0 -72
- package/bin/superlocalmemoryv2-learning +0 -4
- package/bin/superlocalmemoryv2-list +0 -3
- package/bin/superlocalmemoryv2-patterns +0 -4
- package/bin/superlocalmemoryv2-profile +0 -3
- package/bin/superlocalmemoryv2-recall +0 -3
- package/bin/superlocalmemoryv2-remember +0 -3
- package/bin/superlocalmemoryv2-reset +0 -3
- package/bin/superlocalmemoryv2-status +0 -3
- package/configs/chatgpt-desktop-mcp.json +0 -16
- package/configs/cursor-mcp.json +0 -15
- package/docs/SECURITY-QUICK-REFERENCE.md +0 -214
- package/hooks/memory-list-skill.js +0 -139
- package/hooks/memory-profile-skill.js +0 -273
- package/hooks/memory-recall-skill.js +0 -114
- package/hooks/memory-remember-skill.js +0 -127
- package/hooks/memory-reset-skill.js +0 -274
- package/mcp_server.py +0 -1800
- package/requirements-core.txt +0 -22
- package/requirements-learning.txt +0 -12
- package/requirements.txt +0 -12
- package/src/agent_registry.py +0 -411
- package/src/auth_middleware.py +0 -61
- package/src/auto_backup.py +0 -459
- package/src/behavioral/__init__.py +0 -49
- package/src/behavioral/behavioral_listener.py +0 -203
- package/src/behavioral/behavioral_patterns.py +0 -275
- package/src/behavioral/cross_project_transfer.py +0 -206
- package/src/behavioral/outcome_inference.py +0 -194
- package/src/behavioral/outcome_tracker.py +0 -193
- package/src/behavioral/tests/__init__.py +0 -4
- package/src/behavioral/tests/test_behavioral_integration.py +0 -108
- package/src/behavioral/tests/test_behavioral_patterns.py +0 -150
- package/src/behavioral/tests/test_cross_project_transfer.py +0 -142
- package/src/behavioral/tests/test_mcp_behavioral.py +0 -139
- package/src/behavioral/tests/test_mcp_report_outcome.py +0 -117
- package/src/behavioral/tests/test_outcome_inference.py +0 -107
- package/src/behavioral/tests/test_outcome_tracker.py +0 -96
- package/src/cache_manager.py +0 -518
- package/src/compliance/__init__.py +0 -48
- package/src/compliance/abac_engine.py +0 -149
- package/src/compliance/abac_middleware.py +0 -116
- package/src/compliance/audit_db.py +0 -215
- package/src/compliance/audit_logger.py +0 -148
- package/src/compliance/retention_manager.py +0 -289
- package/src/compliance/retention_scheduler.py +0 -186
- package/src/compliance/tests/__init__.py +0 -4
- package/src/compliance/tests/test_abac_enforcement.py +0 -95
- package/src/compliance/tests/test_abac_engine.py +0 -124
- package/src/compliance/tests/test_abac_mcp_integration.py +0 -118
- package/src/compliance/tests/test_audit_db.py +0 -123
- package/src/compliance/tests/test_audit_logger.py +0 -98
- package/src/compliance/tests/test_mcp_audit.py +0 -128
- package/src/compliance/tests/test_mcp_retention_policy.py +0 -125
- package/src/compliance/tests/test_retention_manager.py +0 -131
- package/src/compliance/tests/test_retention_scheduler.py +0 -99
- package/src/compression/__init__.py +0 -25
- package/src/compression/cli.py +0 -150
- package/src/compression/cold_storage.py +0 -217
- package/src/compression/config.py +0 -72
- package/src/compression/orchestrator.py +0 -133
- package/src/compression/tier2_compressor.py +0 -228
- package/src/compression/tier3_compressor.py +0 -153
- package/src/compression/tier_classifier.py +0 -148
- package/src/db_connection_manager.py +0 -536
- package/src/embedding_engine.py +0 -63
- package/src/embeddings/__init__.py +0 -47
- package/src/embeddings/cache.py +0 -70
- package/src/embeddings/cli.py +0 -113
- package/src/embeddings/constants.py +0 -47
- package/src/embeddings/database.py +0 -91
- package/src/embeddings/engine.py +0 -247
- package/src/embeddings/model_loader.py +0 -145
- package/src/event_bus.py +0 -562
- package/src/graph/__init__.py +0 -36
- package/src/graph/build_helpers.py +0 -74
- package/src/graph/cli.py +0 -87
- package/src/graph/cluster_builder.py +0 -188
- package/src/graph/cluster_summary.py +0 -148
- package/src/graph/constants.py +0 -47
- package/src/graph/edge_builder.py +0 -162
- package/src/graph/entity_extractor.py +0 -95
- package/src/graph/graph_core.py +0 -226
- package/src/graph/graph_search.py +0 -231
- package/src/graph/hierarchical.py +0 -207
- package/src/graph/schema.py +0 -99
- package/src/graph_engine.py +0 -52
- package/src/hnsw_index.py +0 -628
- package/src/hybrid_search.py +0 -46
- package/src/learning/__init__.py +0 -217
- package/src/learning/adaptive_ranker.py +0 -682
- package/src/learning/bootstrap/__init__.py +0 -69
- package/src/learning/bootstrap/constants.py +0 -93
- package/src/learning/bootstrap/db_queries.py +0 -316
- package/src/learning/bootstrap/sampling.py +0 -82
- package/src/learning/bootstrap/text_utils.py +0 -71
- package/src/learning/cross_project_aggregator.py +0 -857
- package/src/learning/db/__init__.py +0 -40
- package/src/learning/db/constants.py +0 -44
- package/src/learning/db/schema.py +0 -279
- package/src/learning/engagement_tracker.py +0 -628
- package/src/learning/feature_extractor.py +0 -708
- package/src/learning/feedback_collector.py +0 -806
- package/src/learning/learning_db.py +0 -915
- package/src/learning/project_context_manager.py +0 -572
- package/src/learning/ranking/__init__.py +0 -33
- package/src/learning/ranking/constants.py +0 -84
- package/src/learning/ranking/helpers.py +0 -278
- package/src/learning/source_quality_scorer.py +0 -676
- package/src/learning/synthetic_bootstrap.py +0 -755
- package/src/learning/tests/test_adaptive_ranker.py +0 -325
- package/src/learning/tests/test_adaptive_ranker_v28.py +0 -60
- package/src/learning/tests/test_aggregator.py +0 -306
- package/src/learning/tests/test_auto_retrain_v28.py +0 -35
- package/src/learning/tests/test_e2e_ranking_v28.py +0 -82
- package/src/learning/tests/test_feature_extractor_v28.py +0 -93
- package/src/learning/tests/test_feedback_collector.py +0 -294
- package/src/learning/tests/test_learning_db.py +0 -602
- package/src/learning/tests/test_learning_db_v28.py +0 -110
- package/src/learning/tests/test_learning_init_v28.py +0 -48
- package/src/learning/tests/test_outcome_signals.py +0 -48
- package/src/learning/tests/test_project_context.py +0 -292
- package/src/learning/tests/test_schema_migration.py +0 -319
- package/src/learning/tests/test_signal_inference.py +0 -397
- package/src/learning/tests/test_source_quality.py +0 -351
- package/src/learning/tests/test_synthetic_bootstrap.py +0 -429
- package/src/learning/tests/test_workflow_miner.py +0 -318
- package/src/learning/workflow_pattern_miner.py +0 -655
- package/src/lifecycle/__init__.py +0 -54
- package/src/lifecycle/bounded_growth.py +0 -239
- package/src/lifecycle/compaction_engine.py +0 -226
- package/src/lifecycle/lifecycle_engine.py +0 -355
- package/src/lifecycle/lifecycle_evaluator.py +0 -257
- package/src/lifecycle/lifecycle_scheduler.py +0 -130
- package/src/lifecycle/retention_policy.py +0 -285
- package/src/lifecycle/tests/test_bounded_growth.py +0 -193
- package/src/lifecycle/tests/test_compaction.py +0 -179
- package/src/lifecycle/tests/test_lifecycle_engine.py +0 -137
- package/src/lifecycle/tests/test_lifecycle_evaluation.py +0 -177
- package/src/lifecycle/tests/test_lifecycle_scheduler.py +0 -127
- package/src/lifecycle/tests/test_lifecycle_search.py +0 -109
- package/src/lifecycle/tests/test_mcp_compact.py +0 -149
- package/src/lifecycle/tests/test_mcp_lifecycle_status.py +0 -114
- package/src/lifecycle/tests/test_retention_policy.py +0 -162
- package/src/mcp_tools_v28.py +0 -281
- package/src/memory/__init__.py +0 -36
- package/src/memory/cli.py +0 -205
- package/src/memory/constants.py +0 -39
- package/src/memory/helpers.py +0 -28
- package/src/memory/schema.py +0 -166
- package/src/memory-profiles.py +0 -595
- package/src/memory-reset.py +0 -491
- package/src/memory_compression.py +0 -989
- package/src/memory_store_v2.py +0 -1155
- package/src/migrate_v1_to_v2.py +0 -629
- package/src/pattern_learner.py +0 -34
- package/src/patterns/__init__.py +0 -24
- package/src/patterns/analyzers.py +0 -251
- package/src/patterns/learner.py +0 -271
- package/src/patterns/scoring.py +0 -171
- package/src/patterns/store.py +0 -225
- package/src/patterns/terminology.py +0 -140
- package/src/provenance_tracker.py +0 -312
- package/src/qualixar_attribution.py +0 -139
- package/src/qualixar_watermark.py +0 -78
- package/src/query_optimizer.py +0 -511
- package/src/rate_limiter.py +0 -83
- package/src/search/__init__.py +0 -20
- package/src/search/cli.py +0 -77
- package/src/search/constants.py +0 -26
- package/src/search/engine.py +0 -241
- package/src/search/fusion.py +0 -122
- package/src/search/index_loader.py +0 -114
- package/src/search/methods.py +0 -162
- package/src/search_engine_v2.py +0 -401
- package/src/setup_validator.py +0 -482
- package/src/subscription_manager.py +0 -391
- package/src/tree/__init__.py +0 -59
- package/src/tree/builder.py +0 -185
- package/src/tree/nodes.py +0 -202
- package/src/tree/queries.py +0 -257
- package/src/tree/schema.py +0 -80
- package/src/tree_manager.py +0 -19
- package/src/trust/__init__.py +0 -45
- package/src/trust/constants.py +0 -66
- package/src/trust/queries.py +0 -157
- package/src/trust/schema.py +0 -95
- package/src/trust/scorer.py +0 -299
- package/src/trust/signals.py +0 -95
- package/src/trust_scorer.py +0 -44
- package/ui/app.js +0 -1588
- package/ui/js/graph-cytoscape-monolithic-backup.js +0 -1168
- package/ui/js/graph-cytoscape.js +0 -1168
- package/ui/js/graph-d3-backup.js +0 -32
- package/ui/js/graph.js +0 -32
- package/ui_server.py +0 -266
- /package/docs/{ACCESSIBILITY.md → v2-archive/ACCESSIBILITY.md} +0 -0
- /package/docs/{ARCHITECTURE.md → v2-archive/ARCHITECTURE.md} +0 -0
- /package/docs/{CLI-COMMANDS-REFERENCE.md → v2-archive/CLI-COMMANDS-REFERENCE.md} +0 -0
- /package/docs/{COMPRESSION-README.md → v2-archive/COMPRESSION-README.md} +0 -0
- /package/docs/{FRAMEWORK-INTEGRATIONS.md → v2-archive/FRAMEWORK-INTEGRATIONS.md} +0 -0
- /package/docs/{MCP-MANUAL-SETUP.md → v2-archive/MCP-MANUAL-SETUP.md} +0 -0
- /package/docs/{MCP-TROUBLESHOOTING.md → v2-archive/MCP-TROUBLESHOOTING.md} +0 -0
- /package/docs/{PATTERN-LEARNING.md → v2-archive/PATTERN-LEARNING.md} +0 -0
- /package/docs/{PROFILES-GUIDE.md → v2-archive/PROFILES-GUIDE.md} +0 -0
- /package/docs/{RESET-GUIDE.md → v2-archive/RESET-GUIDE.md} +0 -0
- /package/docs/{SEARCH-ENGINE-V2.2.0.md → v2-archive/SEARCH-ENGINE-V2.2.0.md} +0 -0
- /package/docs/{SEARCH-INTEGRATION-GUIDE.md → v2-archive/SEARCH-INTEGRATION-GUIDE.md} +0 -0
- /package/docs/{UI-SERVER.md → v2-archive/UI-SERVER.md} +0 -0
- /package/docs/{UNIVERSAL-INTEGRATION.md → v2-archive/UNIVERSAL-INTEGRATION.md} +0 -0
- /package/docs/{V2.2.0-OPTIONAL-SEARCH.md → v2-archive/V2.2.0-OPTIONAL-SEARCH.md} +0 -0
- /package/docs/{WINDOWS-INSTALL-README.txt → v2-archive/WINDOWS-INSTALL-README.txt} +0 -0
- /package/docs/{WINDOWS-POST-INSTALL.txt → v2-archive/WINDOWS-POST-INSTALL.txt} +0 -0
- /package/docs/{example_graph_usage.py → v2-archive/example_graph_usage.py} +0 -0
- /package/{completions → ide/completions}/slm.bash +0 -0
- /package/{completions → ide/completions}/slm.zsh +0 -0
- /package/{configs → ide/configs}/cody-commands.json +0 -0
- /package/{install-skills.sh → scripts/install-skills.sh} +0 -0
|
@@ -0,0 +1,170 @@
|
|
|
1
|
+
# Migration from V2
|
|
2
|
+
> SuperLocalMemory V3 Documentation
|
|
3
|
+
> https://superlocalmemory.com | Part of Qualixar
|
|
4
|
+
|
|
5
|
+
Upgrade from SuperLocalMemory V2 to V3. Zero data loss, one command, rollback available.
|
|
6
|
+
|
|
7
|
+
---
|
|
8
|
+
|
|
9
|
+
## What Changed in V3
|
|
10
|
+
|
|
11
|
+
| Area | V2 | V3 |
|
|
12
|
+
|------|----|----|
|
|
13
|
+
| **Retrieval** | Single-channel semantic search | 4-channel: Semantic + BM25 + Entity Graph + Temporal |
|
|
14
|
+
| **Modes** | One mode (cloud required for smart features) | Three modes: A (zero-cloud), B (local LLM), C (cloud LLM) |
|
|
15
|
+
| **Math layer** | None | Fisher-Rao similarity, Sheaf consistency, Langevin lifecycle |
|
|
16
|
+
| **Ingestion** | Basic text storage | 11-step pipeline: entities, facts, emotions, beliefs, graph, and more |
|
|
17
|
+
| **Data directory** | `~/.claude-memory/` | `~/.superlocalmemory/` (symlink preserves old path) |
|
|
18
|
+
| **Consistency** | Manual | Automatic contradiction detection |
|
|
19
|
+
| **Recall quality** | Good | Significantly better on complex queries (multi-hop, temporal) |
|
|
20
|
+
|
|
21
|
+
**What stays the same:** All CLI commands, MCP tools, IDE integrations, profiles, trust scores, and learned patterns carry forward.
|
|
22
|
+
|
|
23
|
+
## Before You Migrate
|
|
24
|
+
|
|
25
|
+
1. **Update to the latest version:**
|
|
26
|
+
|
|
27
|
+
```bash
|
|
28
|
+
npm update -g superlocalmemory
|
|
29
|
+
```
|
|
30
|
+
|
|
31
|
+
2. **Check your current version:**
|
|
32
|
+
|
|
33
|
+
```bash
|
|
34
|
+
slm --version
|
|
35
|
+
# Should show 3.x.x
|
|
36
|
+
```
|
|
37
|
+
|
|
38
|
+
3. **(Optional) Preview changes:**
|
|
39
|
+
|
|
40
|
+
```bash
|
|
41
|
+
slm migrate --dry-run
|
|
42
|
+
```
|
|
43
|
+
|
|
44
|
+
This shows exactly what will change without modifying anything.
|
|
45
|
+
|
|
46
|
+
## Run the Migration
|
|
47
|
+
|
|
48
|
+
```bash
|
|
49
|
+
slm migrate
|
|
50
|
+
```
|
|
51
|
+
|
|
52
|
+
The migration:
|
|
53
|
+
|
|
54
|
+
1. Creates a full backup of your V2 database
|
|
55
|
+
2. Moves data from `~/.claude-memory/` to `~/.superlocalmemory/`
|
|
56
|
+
3. Creates a symlink (`~/.claude-memory/ -> ~/.superlocalmemory/`) so old IDE configs still work
|
|
57
|
+
4. Extends the database schema with V3 tables (15 new tables)
|
|
58
|
+
5. Re-indexes existing memories for 4-channel retrieval
|
|
59
|
+
6. Sets Mode A as default (zero breaking changes)
|
|
60
|
+
7. Verifies integrity
|
|
61
|
+
|
|
62
|
+
**Duration:** Under 30 seconds for most databases. Large databases (10,000+ memories) may take 1-2 minutes.
|
|
63
|
+
|
|
64
|
+
## What Gets Preserved
|
|
65
|
+
|
|
66
|
+
Everything:
|
|
67
|
+
|
|
68
|
+
- All stored memories (content, timestamps, metadata)
|
|
69
|
+
- All profiles and their isolation boundaries
|
|
70
|
+
- Trust scores and provenance data
|
|
71
|
+
- Learned patterns and behavioral data
|
|
72
|
+
- Compliance settings and retention policies
|
|
73
|
+
- Audit trail (hash-chain intact)
|
|
74
|
+
- IDE configurations (via symlink)
|
|
75
|
+
|
|
76
|
+
## What Gets Added
|
|
77
|
+
|
|
78
|
+
The migration adds V3 capabilities to your existing data:
|
|
79
|
+
|
|
80
|
+
- BM25 token index for keyword search
|
|
81
|
+
- Entity graph nodes and edges
|
|
82
|
+
- Temporal event entries
|
|
83
|
+
- Fisher-Rao similarity metadata
|
|
84
|
+
- Sheaf consistency sections
|
|
85
|
+
- Langevin lifecycle state
|
|
86
|
+
|
|
87
|
+
These are computed from your existing memories during migration.
|
|
88
|
+
|
|
89
|
+
## After Migration
|
|
90
|
+
|
|
91
|
+
### Verify
|
|
92
|
+
|
|
93
|
+
```bash
|
|
94
|
+
slm status
|
|
95
|
+
```
|
|
96
|
+
|
|
97
|
+
Confirm:
|
|
98
|
+
- Mode shows `A` (default after migration)
|
|
99
|
+
- Memory count matches your V2 count
|
|
100
|
+
- Health shows all green
|
|
101
|
+
- Profile is your previous active profile
|
|
102
|
+
|
|
103
|
+
### Try a recall
|
|
104
|
+
|
|
105
|
+
```bash
|
|
106
|
+
slm recall "something you stored in V2"
|
|
107
|
+
```
|
|
108
|
+
|
|
109
|
+
Results should match or exceed V2 quality. V3's 4-channel retrieval finds memories that V2's single-channel search might have missed.
|
|
110
|
+
|
|
111
|
+
### Explore V3 features
|
|
112
|
+
|
|
113
|
+
```bash
|
|
114
|
+
slm trace "your query" # See channel-by-channel breakdown
|
|
115
|
+
slm health # Check math layer status
|
|
116
|
+
slm consistency # Run contradiction detection
|
|
117
|
+
slm mode b # Try local LLM mode (if Ollama installed)
|
|
118
|
+
```
|
|
119
|
+
|
|
120
|
+
## Rollback
|
|
121
|
+
|
|
122
|
+
If anything goes wrong, roll back within 30 days:
|
|
123
|
+
|
|
124
|
+
```bash
|
|
125
|
+
slm migrate --rollback
|
|
126
|
+
```
|
|
127
|
+
|
|
128
|
+
This restores your V2 database from the backup created during migration. The symlink is removed and the original `~/.claude-memory/` directory is restored.
|
|
129
|
+
|
|
130
|
+
**After 30 days:** The backup is automatically cleaned up. If you need to roll back after 30 days, restore from your own backups.
|
|
131
|
+
|
|
132
|
+
## IDE Configuration Updates
|
|
133
|
+
|
|
134
|
+
### Automatic (recommended)
|
|
135
|
+
|
|
136
|
+
The migration preserves your IDE configs via symlink. No IDE reconfiguration needed.
|
|
137
|
+
|
|
138
|
+
### Manual (optional)
|
|
139
|
+
|
|
140
|
+
If you want to update your IDE configs to use the new path directly:
|
|
141
|
+
|
|
142
|
+
```bash
|
|
143
|
+
slm connect
|
|
144
|
+
```
|
|
145
|
+
|
|
146
|
+
This updates all detected IDE configs to point to `~/.superlocalmemory/` instead of relying on the symlink.
|
|
147
|
+
|
|
148
|
+
## FAQ
|
|
149
|
+
|
|
150
|
+
**Q: Will my IDE break during migration?**
|
|
151
|
+
No. The symlink ensures old paths still work. Your IDE will not notice the change.
|
|
152
|
+
|
|
153
|
+
**Q: Do I need to reconfigure my API keys?**
|
|
154
|
+
No. API keys are migrated to the new config location automatically.
|
|
155
|
+
|
|
156
|
+
**Q: Can I run V2 and V3 side by side?**
|
|
157
|
+
No. The migration converts your database in place (with backup). Use `--rollback` if you want to return to V2.
|
|
158
|
+
|
|
159
|
+
**Q: What if migration fails halfway?**
|
|
160
|
+
The migration is transactional. If any step fails, everything is rolled back automatically. Your V2 data remains untouched.
|
|
161
|
+
|
|
162
|
+
**Q: I have multiple profiles. Are they all migrated?**
|
|
163
|
+
Yes. All profiles are migrated together. Profile isolation is preserved.
|
|
164
|
+
|
|
165
|
+
**Q: How big will my database get after migration?**
|
|
166
|
+
The V3 schema adds approximately 20-40% to database size due to the entity graph, BM25 index, and math layer metadata. A 50MB V2 database becomes roughly 60-70MB.
|
|
167
|
+
|
|
168
|
+
---
|
|
169
|
+
|
|
170
|
+
*SuperLocalMemory V3 — Copyright 2026 Varun Pratap Bhardwaj. MIT License. Part of Qualixar.*
|
package/docs/profiles.md
ADDED
|
@@ -0,0 +1,173 @@
|
|
|
1
|
+
# Profiles
|
|
2
|
+
> SuperLocalMemory V3 Documentation
|
|
3
|
+
> https://superlocalmemory.com | Part of Qualixar
|
|
4
|
+
|
|
5
|
+
Profiles let you maintain completely isolated memory contexts. Work memories never mix with personal memories. Client A never sees Client B's data.
|
|
6
|
+
|
|
7
|
+
---
|
|
8
|
+
|
|
9
|
+
## What Profiles Are
|
|
10
|
+
|
|
11
|
+
A profile is an isolated memory namespace. Each profile has its own:
|
|
12
|
+
|
|
13
|
+
- Memories and knowledge graph
|
|
14
|
+
- Learned patterns and behavioral data
|
|
15
|
+
- Trust scores and provenance records
|
|
16
|
+
- Retention policies
|
|
17
|
+
- Audit trail
|
|
18
|
+
|
|
19
|
+
There is zero data leakage between profiles. Searching in one profile never returns results from another.
|
|
20
|
+
|
|
21
|
+
## Default Profile
|
|
22
|
+
|
|
23
|
+
After installation, you have one profile called `default`. All memories go here unless you create and switch to another profile.
|
|
24
|
+
|
|
25
|
+
## Managing Profiles
|
|
26
|
+
|
|
27
|
+
### List profiles
|
|
28
|
+
|
|
29
|
+
```bash
|
|
30
|
+
slm profile list
|
|
31
|
+
```
|
|
32
|
+
|
|
33
|
+
Output:
|
|
34
|
+
|
|
35
|
+
```
|
|
36
|
+
Profiles:
|
|
37
|
+
* default (142 memories, active)
|
|
38
|
+
work (89 memories)
|
|
39
|
+
personal (34 memories)
|
|
40
|
+
client-acme (67 memories)
|
|
41
|
+
```
|
|
42
|
+
|
|
43
|
+
The `*` marks the active profile.
|
|
44
|
+
|
|
45
|
+
### Create a profile
|
|
46
|
+
|
|
47
|
+
```bash
|
|
48
|
+
slm profile create work
|
|
49
|
+
slm profile create client-acme
|
|
50
|
+
slm profile create personal
|
|
51
|
+
```
|
|
52
|
+
|
|
53
|
+
### Switch profiles
|
|
54
|
+
|
|
55
|
+
```bash
|
|
56
|
+
slm profile switch work
|
|
57
|
+
```
|
|
58
|
+
|
|
59
|
+
All subsequent `remember`, `recall`, and auto-memory operations use this profile until you switch again.
|
|
60
|
+
|
|
61
|
+
### Delete a profile
|
|
62
|
+
|
|
63
|
+
```bash
|
|
64
|
+
slm profile delete old-project
|
|
65
|
+
```
|
|
66
|
+
|
|
67
|
+
This permanently deletes all memories in that profile. You will be prompted for confirmation.
|
|
68
|
+
|
|
69
|
+
### Export a profile
|
|
70
|
+
|
|
71
|
+
```bash
|
|
72
|
+
slm profile export work > work-backup.json
|
|
73
|
+
```
|
|
74
|
+
|
|
75
|
+
### Import a profile
|
|
76
|
+
|
|
77
|
+
```bash
|
|
78
|
+
slm profile import < work-backup.json
|
|
79
|
+
```
|
|
80
|
+
|
|
81
|
+
## Use Cases
|
|
82
|
+
|
|
83
|
+
### Work vs Personal
|
|
84
|
+
|
|
85
|
+
```bash
|
|
86
|
+
# Morning: switch to work
|
|
87
|
+
slm profile switch work
|
|
88
|
+
# Work memories are captured and recalled all day
|
|
89
|
+
|
|
90
|
+
# Evening: switch to personal
|
|
91
|
+
slm profile switch personal
|
|
92
|
+
# Personal project memories are now active
|
|
93
|
+
```
|
|
94
|
+
|
|
95
|
+
### Per-Client Isolation
|
|
96
|
+
|
|
97
|
+
For consultants and agencies working across multiple clients:
|
|
98
|
+
|
|
99
|
+
```bash
|
|
100
|
+
slm profile create client-alpha
|
|
101
|
+
slm profile create client-beta
|
|
102
|
+
|
|
103
|
+
# Working on Alpha's project
|
|
104
|
+
slm profile switch client-alpha
|
|
105
|
+
# Only Alpha's architecture, decisions, and context are available
|
|
106
|
+
|
|
107
|
+
# Switch to Beta
|
|
108
|
+
slm profile switch client-beta
|
|
109
|
+
# Alpha's data is completely invisible
|
|
110
|
+
```
|
|
111
|
+
|
|
112
|
+
### Per-Project Isolation
|
|
113
|
+
|
|
114
|
+
```bash
|
|
115
|
+
slm profile create mobile-app
|
|
116
|
+
slm profile create backend-api
|
|
117
|
+
slm profile create infrastructure
|
|
118
|
+
```
|
|
119
|
+
|
|
120
|
+
### Temporary Profiles
|
|
121
|
+
|
|
122
|
+
For experiments or short-term work:
|
|
123
|
+
|
|
124
|
+
```bash
|
|
125
|
+
slm profile create experiment-graphql
|
|
126
|
+
slm profile switch experiment-graphql
|
|
127
|
+
# ... do your experiment ...
|
|
128
|
+
|
|
129
|
+
# Done — delete it
|
|
130
|
+
slm profile switch default
|
|
131
|
+
slm profile delete experiment-graphql
|
|
132
|
+
```
|
|
133
|
+
|
|
134
|
+
## Profile-Specific Settings
|
|
135
|
+
|
|
136
|
+
Each profile can have its own retention policy:
|
|
137
|
+
|
|
138
|
+
```bash
|
|
139
|
+
slm profile switch client-acme
|
|
140
|
+
slm retention set gdpr-30d # GDPR compliance for this client
|
|
141
|
+
|
|
142
|
+
slm profile switch internal
|
|
143
|
+
slm retention set indefinite # Keep internal memories forever
|
|
144
|
+
```
|
|
145
|
+
|
|
146
|
+
## Using Profiles With CLI Commands
|
|
147
|
+
|
|
148
|
+
Most commands operate on the active profile. You can override this per-command:
|
|
149
|
+
|
|
150
|
+
```bash
|
|
151
|
+
# Recall from a specific profile without switching
|
|
152
|
+
slm recall "database config" --profile client-acme
|
|
153
|
+
|
|
154
|
+
# Store to a specific profile without switching
|
|
155
|
+
slm remember "Acme uses Aurora PostgreSQL" --profile client-acme
|
|
156
|
+
```
|
|
157
|
+
|
|
158
|
+
## How Profiles Work Internally
|
|
159
|
+
|
|
160
|
+
Each profile stores memories in the same SQLite database but with a profile identifier on every row. Queries are filtered by profile at the database level, ensuring complete isolation.
|
|
161
|
+
|
|
162
|
+
The entity graph, BM25 index, and all math layer state are also per-profile. Building the graph for one profile does not affect another.
|
|
163
|
+
|
|
164
|
+
## Limits
|
|
165
|
+
|
|
166
|
+
- No hard limit on the number of profiles
|
|
167
|
+
- Each profile adds minimal overhead (a few KB for metadata)
|
|
168
|
+
- Performance is determined by per-profile memory count, not total profiles
|
|
169
|
+
- Switching profiles is instant (no data loading required)
|
|
170
|
+
|
|
171
|
+
---
|
|
172
|
+
|
|
173
|
+
*SuperLocalMemory V3 — Copyright 2026 Varun Pratap Bhardwaj. MIT License. Part of Qualixar.*
|
|
@@ -0,0 +1,310 @@
|
|
|
1
|
+
# Troubleshooting
|
|
2
|
+
> SuperLocalMemory V3 Documentation
|
|
3
|
+
> https://superlocalmemory.com | Part of Qualixar
|
|
4
|
+
|
|
5
|
+
Solutions for common issues. If your problem is not listed here, run `slm status --verbose` and check the output for clues.
|
|
6
|
+
|
|
7
|
+
---
|
|
8
|
+
|
|
9
|
+
## Installation Issues
|
|
10
|
+
|
|
11
|
+
### "slm: command not found"
|
|
12
|
+
|
|
13
|
+
The npm global bin directory is not in your shell's PATH.
|
|
14
|
+
|
|
15
|
+
**Fix:**
|
|
16
|
+
|
|
17
|
+
```bash
|
|
18
|
+
# Find where npm puts global binaries
|
|
19
|
+
npm root -g
|
|
20
|
+
# Example output: /usr/local/lib/node_modules
|
|
21
|
+
|
|
22
|
+
# The bin directory is one level up
|
|
23
|
+
# Add to your shell profile (~/.zshrc, ~/.bashrc, or ~/.bash_profile):
|
|
24
|
+
export PATH="$(npm prefix -g)/bin:$PATH"
|
|
25
|
+
|
|
26
|
+
# Reload your shell
|
|
27
|
+
source ~/.zshrc # or source ~/.bashrc
|
|
28
|
+
```
|
|
29
|
+
|
|
30
|
+
**Alternative — use npx:**
|
|
31
|
+
|
|
32
|
+
```bash
|
|
33
|
+
npx superlocalmemory status
|
|
34
|
+
```
|
|
35
|
+
|
|
36
|
+
### "Python not found" during setup
|
|
37
|
+
|
|
38
|
+
SLM V3 requires Python 3.10 or later for the math engine.
|
|
39
|
+
|
|
40
|
+
```bash
|
|
41
|
+
# Check Python version
|
|
42
|
+
python3 --version
|
|
43
|
+
|
|
44
|
+
# Install if missing
|
|
45
|
+
# macOS:
|
|
46
|
+
brew install python@3.12
|
|
47
|
+
|
|
48
|
+
# Ubuntu/Debian:
|
|
49
|
+
sudo apt install python3.12
|
|
50
|
+
|
|
51
|
+
# Windows:
|
|
52
|
+
winget install Python.Python.3.12
|
|
53
|
+
```
|
|
54
|
+
|
|
55
|
+
### "Permission denied" during install
|
|
56
|
+
|
|
57
|
+
```bash
|
|
58
|
+
# Option 1: Fix npm permissions (recommended)
|
|
59
|
+
mkdir -p ~/.npm-global
|
|
60
|
+
npm config set prefix '~/.npm-global'
|
|
61
|
+
export PATH=~/.npm-global/bin:$PATH
|
|
62
|
+
npm install -g superlocalmemory
|
|
63
|
+
|
|
64
|
+
# Option 2: Use sudo (not recommended)
|
|
65
|
+
sudo npm install -g superlocalmemory
|
|
66
|
+
```
|
|
67
|
+
|
|
68
|
+
## Recall Issues
|
|
69
|
+
|
|
70
|
+
### "No memories found" when you know they exist
|
|
71
|
+
|
|
72
|
+
**Check your active profile:**
|
|
73
|
+
|
|
74
|
+
```bash
|
|
75
|
+
slm profile list
|
|
76
|
+
```
|
|
77
|
+
|
|
78
|
+
Memories are profile-scoped. If you stored a memory in the `work` profile but are currently in `default`, it will not appear.
|
|
79
|
+
|
|
80
|
+
```bash
|
|
81
|
+
slm profile switch work
|
|
82
|
+
slm recall "your query"
|
|
83
|
+
```
|
|
84
|
+
|
|
85
|
+
**Check your mode:**
|
|
86
|
+
|
|
87
|
+
```bash
|
|
88
|
+
slm mode
|
|
89
|
+
```
|
|
90
|
+
|
|
91
|
+
Mode A uses math-based retrieval. If you recently switched from Mode C, the retrieval behavior changes. Both modes search the same memories, but ranking differs.
|
|
92
|
+
|
|
93
|
+
**Try a broader query:**
|
|
94
|
+
|
|
95
|
+
```bash
|
|
96
|
+
slm recall "database" # Instead of "PostgreSQL 16 configuration on staging"
|
|
97
|
+
slm list --limit 20 # Browse recent memories directly
|
|
98
|
+
```
|
|
99
|
+
|
|
100
|
+
### Recall returns irrelevant results
|
|
101
|
+
|
|
102
|
+
**Lower your result count:**
|
|
103
|
+
|
|
104
|
+
```bash
|
|
105
|
+
slm recall "your query" --limit 3
|
|
106
|
+
```
|
|
107
|
+
|
|
108
|
+
Fewer results means only the highest-confidence matches are returned.
|
|
109
|
+
|
|
110
|
+
**Use trace to debug:**
|
|
111
|
+
|
|
112
|
+
```bash
|
|
113
|
+
slm trace "your query"
|
|
114
|
+
```
|
|
115
|
+
|
|
116
|
+
This shows which channels contributed what. If BM25 is dominating with weak keyword matches, the query may need different terms.
|
|
117
|
+
|
|
118
|
+
**Rebuild the graph:**
|
|
119
|
+
|
|
120
|
+
```bash
|
|
121
|
+
slm build_graph
|
|
122
|
+
```
|
|
123
|
+
|
|
124
|
+
If entity relationships seem wrong, rebuilding the graph can fix ranking issues.
|
|
125
|
+
|
|
126
|
+
## Mode C Issues
|
|
127
|
+
|
|
128
|
+
### "API key not set" or authentication errors
|
|
129
|
+
|
|
130
|
+
```bash
|
|
131
|
+
# Check your provider configuration
|
|
132
|
+
slm provider
|
|
133
|
+
|
|
134
|
+
# Reset your provider and key
|
|
135
|
+
slm provider set openai
|
|
136
|
+
# Enter your API key when prompted
|
|
137
|
+
|
|
138
|
+
# Or set via environment variable
|
|
139
|
+
export OPENAI_API_KEY="sk-..."
|
|
140
|
+
```
|
|
141
|
+
|
|
142
|
+
### "Connection timeout" or network errors
|
|
143
|
+
|
|
144
|
+
```bash
|
|
145
|
+
# Test connectivity to your provider
|
|
146
|
+
slm status --verbose
|
|
147
|
+
|
|
148
|
+
# Check if you're behind a proxy
|
|
149
|
+
echo $HTTP_PROXY
|
|
150
|
+
echo $HTTPS_PROXY
|
|
151
|
+
```
|
|
152
|
+
|
|
153
|
+
If behind a corporate proxy, set the proxy variables:
|
|
154
|
+
|
|
155
|
+
```bash
|
|
156
|
+
export HTTPS_PROXY="http://proxy.company.com:8080"
|
|
157
|
+
```
|
|
158
|
+
|
|
159
|
+
### Mode C is slow
|
|
160
|
+
|
|
161
|
+
Cloud LLM calls add latency. If speed matters more than maximum recall quality:
|
|
162
|
+
|
|
163
|
+
```bash
|
|
164
|
+
slm mode b # Local LLM (fast, no network)
|
|
165
|
+
slm mode a # Math-only (fastest)
|
|
166
|
+
```
|
|
167
|
+
|
|
168
|
+
## Migration Issues
|
|
169
|
+
|
|
170
|
+
### Migration failed or was interrupted
|
|
171
|
+
|
|
172
|
+
```bash
|
|
173
|
+
# Check if backup exists
|
|
174
|
+
ls ~/.superlocalmemory/backups/
|
|
175
|
+
|
|
176
|
+
# Roll back to V2
|
|
177
|
+
slm migrate --rollback
|
|
178
|
+
|
|
179
|
+
# Try migration again
|
|
180
|
+
slm migrate
|
|
181
|
+
```
|
|
182
|
+
|
|
183
|
+
### "Database is locked"
|
|
184
|
+
|
|
185
|
+
Close all IDE sessions that might be accessing SLM, then retry:
|
|
186
|
+
|
|
187
|
+
```bash
|
|
188
|
+
# Check for processes using the database
|
|
189
|
+
lsof ~/.superlocalmemory/memory.db
|
|
190
|
+
|
|
191
|
+
# Close IDEs, then retry
|
|
192
|
+
slm migrate
|
|
193
|
+
```
|
|
194
|
+
|
|
195
|
+
### Migration succeeded but recall quality seems worse
|
|
196
|
+
|
|
197
|
+
After migration, the entity graph and BM25 index are rebuilt from existing data. This process is automatic but can take a moment for large databases.
|
|
198
|
+
|
|
199
|
+
```bash
|
|
200
|
+
# Force a full re-index
|
|
201
|
+
slm build_graph
|
|
202
|
+
slm compact
|
|
203
|
+
```
|
|
204
|
+
|
|
205
|
+
## IDE Connection Issues
|
|
206
|
+
|
|
207
|
+
### IDE does not show SLM tools
|
|
208
|
+
|
|
209
|
+
1. **Verify SLM is installed:**
|
|
210
|
+
|
|
211
|
+
```bash
|
|
212
|
+
npm list -g superlocalmemory
|
|
213
|
+
```
|
|
214
|
+
|
|
215
|
+
2. **Check the IDE config file has correct JSON:**
|
|
216
|
+
|
|
217
|
+
```bash
|
|
218
|
+
slm connect <your-ide> # Regenerates the config
|
|
219
|
+
```
|
|
220
|
+
|
|
221
|
+
3. **Restart the IDE completely** (not just reload the window).
|
|
222
|
+
|
|
223
|
+
4. **Test the MCP server directly:**
|
|
224
|
+
|
|
225
|
+
```bash
|
|
226
|
+
npx superlocalmemory mcp --test
|
|
227
|
+
```
|
|
228
|
+
|
|
229
|
+
### "Connection refused" in IDE
|
|
230
|
+
|
|
231
|
+
The MCP server failed to start. Common causes:
|
|
232
|
+
|
|
233
|
+
- Node.js version too old (need 18+)
|
|
234
|
+
- Port conflict with another service
|
|
235
|
+
- Corrupted installation
|
|
236
|
+
|
|
237
|
+
```bash
|
|
238
|
+
# Reinstall
|
|
239
|
+
npm uninstall -g superlocalmemory
|
|
240
|
+
npm install -g superlocalmemory
|
|
241
|
+
|
|
242
|
+
# Verify
|
|
243
|
+
slm status
|
|
244
|
+
```
|
|
245
|
+
|
|
246
|
+
### Multiple IDEs conflicting
|
|
247
|
+
|
|
248
|
+
Each IDE has its own MCP config file. They do not conflict. All IDEs share the same underlying database. Concurrent access is safe (SQLite WAL mode handles this).
|
|
249
|
+
|
|
250
|
+
## Database Issues
|
|
251
|
+
|
|
252
|
+
### Database corruption
|
|
253
|
+
|
|
254
|
+
Extremely rare with SQLite WAL mode, but if it happens:
|
|
255
|
+
|
|
256
|
+
```bash
|
|
257
|
+
# Check integrity
|
|
258
|
+
slm status --verbose
|
|
259
|
+
|
|
260
|
+
# Restore from automatic backup
|
|
261
|
+
ls ~/.superlocalmemory/backups/
|
|
262
|
+
cp ~/.superlocalmemory/backups/memory-2026-03-15.db ~/.superlocalmemory/memory.db
|
|
263
|
+
```
|
|
264
|
+
|
|
265
|
+
### Database is too large
|
|
266
|
+
|
|
267
|
+
```bash
|
|
268
|
+
# Check size
|
|
269
|
+
slm memory_used
|
|
270
|
+
|
|
271
|
+
# Compact (merges redundant memories, reclaims space)
|
|
272
|
+
slm compact
|
|
273
|
+
|
|
274
|
+
# Apply a retention policy to auto-delete old memories
|
|
275
|
+
slm retention set custom --days 180
|
|
276
|
+
```
|
|
277
|
+
|
|
278
|
+
## Health Check
|
|
279
|
+
|
|
280
|
+
Run a full diagnostic:
|
|
281
|
+
|
|
282
|
+
```bash
|
|
283
|
+
slm health
|
|
284
|
+
```
|
|
285
|
+
|
|
286
|
+
This reports the status of:
|
|
287
|
+
|
|
288
|
+
| Component | What it checks |
|
|
289
|
+
|-----------|---------------|
|
|
290
|
+
| Database | Integrity, size, table counts |
|
|
291
|
+
| Embedding model | Loaded, version, dimension |
|
|
292
|
+
| Fisher-Rao | Similarity layer active |
|
|
293
|
+
| Sheaf | Consistency layer active |
|
|
294
|
+
| Langevin | Lifecycle layer active |
|
|
295
|
+
| BM25 index | Token count, index health |
|
|
296
|
+
| Entity graph | Node count, edge count |
|
|
297
|
+
|
|
298
|
+
If any component shows an error, the output includes a suggested fix.
|
|
299
|
+
|
|
300
|
+
## Getting Help
|
|
301
|
+
|
|
302
|
+
If none of the above resolves your issue:
|
|
303
|
+
|
|
304
|
+
1. Run `slm status --verbose` and note the output
|
|
305
|
+
2. Check the [GitHub Issues](https://github.com/qualixar/superlocalmemory/issues)
|
|
306
|
+
3. Open a new issue with your `slm status --verbose` output
|
|
307
|
+
|
|
308
|
+
---
|
|
309
|
+
|
|
310
|
+
*SuperLocalMemory V3 — Copyright 2026 Varun Pratap Bhardwaj. MIT License. Part of Qualixar.*
|
|
@@ -1,13 +1,13 @@
|
|
|
1
1
|
{
|
|
2
2
|
"mcpServers": {
|
|
3
|
-
"superlocalmemory
|
|
3
|
+
"superlocalmemory": {
|
|
4
4
|
"command": "python3",
|
|
5
|
-
"args": ["
|
|
5
|
+
"args": ["-m", "superlocalmemory.mcp.server"],
|
|
6
6
|
"env": {
|
|
7
7
|
"PYTHONPATH": "{{INSTALL_DIR}}"
|
|
8
8
|
},
|
|
9
9
|
"cwd": "{{INSTALL_DIR}}",
|
|
10
|
-
"description": "SuperLocalMemory
|
|
10
|
+
"description": "SuperLocalMemory V3 - 100% local memory system"
|
|
11
11
|
}
|
|
12
12
|
}
|
|
13
13
|
}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
{
|
|
2
|
+
"_README": "ChatGPT Integration -- SuperLocalMemory V3 as ChatGPT Connector",
|
|
3
|
+
"_requires": "ChatGPT Pro/Plus/Business/Enterprise with Developer Mode enabled",
|
|
4
|
+
"_tools": "search(query) and fetch(id) -- required by OpenAI MCP spec for Connectors",
|
|
5
|
+
"_setup": {
|
|
6
|
+
"step1": "Start MCP server: slm serve --port 8417",
|
|
7
|
+
"step2": "Expose via tunnel: ngrok http 8417",
|
|
8
|
+
"step3": "Copy the HTTPS URL from ngrok (e.g. https://abc123.ngrok.app)",
|
|
9
|
+
"step4": "In ChatGPT: Settings -> Connectors -> Advanced -> Enable Developer Mode",
|
|
10
|
+
"step5": "Create new Connector -> paste URL with /sse/ suffix (e.g. https://abc123.ngrok.app/sse/)",
|
|
11
|
+
"step6": "Name it 'SuperLocalMemory' and click Create",
|
|
12
|
+
"step7": "In any chat, click + -> More -> select SuperLocalMemory connector"
|
|
13
|
+
},
|
|
14
|
+
"_alternative_transport": "For Streamable HTTP (recommended): slm serve --transport streamable-http --port 8417",
|
|
15
|
+
"_note": "100% local -- your MCP server runs on YOUR machine. The tunnel just makes it reachable by ChatGPT servers. All data stays in ~/.superlocalmemory/memory.db"
|
|
16
|
+
}
|
|
@@ -1,15 +1,15 @@
|
|
|
1
1
|
{
|
|
2
2
|
"mcpServers": {
|
|
3
|
-
"superlocalmemory
|
|
3
|
+
"superlocalmemory": {
|
|
4
4
|
"command": "python3",
|
|
5
5
|
"args": [
|
|
6
|
-
"
|
|
6
|
+
"-m", "superlocalmemory.mcp.server"
|
|
7
7
|
],
|
|
8
8
|
"cwd": "{{INSTALL_DIR}}",
|
|
9
9
|
"env": {
|
|
10
10
|
"PYTHONPATH": "{{INSTALL_DIR}}"
|
|
11
11
|
},
|
|
12
|
-
"description": "SuperLocalMemory
|
|
12
|
+
"description": "SuperLocalMemory V3 - 100% local memory system for AI assistants"
|
|
13
13
|
}
|
|
14
14
|
}
|
|
15
15
|
}
|