superlocalmemory 2.8.6 → 3.0.1

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.
Files changed (431) hide show
  1. package/LICENSE +9 -1
  2. package/NOTICE +63 -0
  3. package/README.md +165 -480
  4. package/bin/slm +17 -449
  5. package/bin/slm-npm +62 -48
  6. package/conftest.py +5 -0
  7. package/docs/api-reference.md +284 -0
  8. package/docs/architecture.md +149 -0
  9. package/docs/auto-memory.md +150 -0
  10. package/docs/cli-reference.md +276 -0
  11. package/docs/compliance.md +191 -0
  12. package/docs/configuration.md +182 -0
  13. package/docs/getting-started.md +102 -0
  14. package/docs/ide-setup.md +261 -0
  15. package/docs/mcp-tools.md +220 -0
  16. package/docs/migration-from-v2.md +170 -0
  17. package/docs/profiles.md +173 -0
  18. package/docs/troubleshooting.md +310 -0
  19. package/{configs → ide/configs}/antigravity-mcp.json +3 -3
  20. package/ide/configs/chatgpt-desktop-mcp.json +16 -0
  21. package/{configs → ide/configs}/claude-desktop-mcp.json +3 -3
  22. package/{configs → ide/configs}/codex-mcp.toml +4 -4
  23. package/{configs → ide/configs}/continue-mcp.yaml +4 -3
  24. package/{configs → ide/configs}/continue-skills.yaml +6 -6
  25. package/ide/configs/cursor-mcp.json +15 -0
  26. package/{configs → ide/configs}/gemini-cli-mcp.json +2 -2
  27. package/{configs → ide/configs}/jetbrains-mcp.json +2 -2
  28. package/{configs → ide/configs}/opencode-mcp.json +2 -2
  29. package/{configs → ide/configs}/perplexity-mcp.json +2 -2
  30. package/{configs → ide/configs}/vscode-copilot-mcp.json +2 -2
  31. package/{configs → ide/configs}/windsurf-mcp.json +3 -3
  32. package/{configs → ide/configs}/zed-mcp.json +2 -2
  33. package/{hooks → ide/hooks}/context-hook.js +9 -20
  34. package/ide/hooks/memory-list-skill.js +70 -0
  35. package/ide/hooks/memory-profile-skill.js +101 -0
  36. package/ide/hooks/memory-recall-skill.js +62 -0
  37. package/ide/hooks/memory-remember-skill.js +68 -0
  38. package/ide/hooks/memory-reset-skill.js +160 -0
  39. package/{hooks → ide/hooks}/post-recall-hook.js +2 -2
  40. package/ide/integrations/langchain/README.md +106 -0
  41. package/ide/integrations/langchain/langchain_superlocalmemory/__init__.py +9 -0
  42. package/ide/integrations/langchain/langchain_superlocalmemory/chat_message_history.py +201 -0
  43. package/ide/integrations/langchain/pyproject.toml +38 -0
  44. package/{src/learning → ide/integrations/langchain}/tests/__init__.py +1 -0
  45. package/ide/integrations/langchain/tests/test_chat_message_history.py +215 -0
  46. package/ide/integrations/langchain/tests/test_security.py +117 -0
  47. package/ide/integrations/llamaindex/README.md +81 -0
  48. package/ide/integrations/llamaindex/llama_index/storage/chat_store/superlocalmemory/__init__.py +9 -0
  49. package/ide/integrations/llamaindex/llama_index/storage/chat_store/superlocalmemory/base.py +316 -0
  50. package/ide/integrations/llamaindex/pyproject.toml +43 -0
  51. package/{src/lifecycle → ide/integrations/llamaindex}/tests/__init__.py +1 -2
  52. package/ide/integrations/llamaindex/tests/test_chat_store.py +294 -0
  53. package/ide/integrations/llamaindex/tests/test_security.py +241 -0
  54. package/{skills → ide/skills}/slm-build-graph/SKILL.md +6 -6
  55. package/{skills → ide/skills}/slm-list-recent/SKILL.md +5 -5
  56. package/{skills → ide/skills}/slm-recall/SKILL.md +5 -5
  57. package/{skills → ide/skills}/slm-remember/SKILL.md +6 -6
  58. package/{skills → ide/skills}/slm-show-patterns/SKILL.md +7 -7
  59. package/{skills → ide/skills}/slm-status/SKILL.md +9 -9
  60. package/{skills → ide/skills}/slm-switch-profile/SKILL.md +9 -9
  61. package/package.json +13 -22
  62. package/pyproject.toml +85 -0
  63. package/scripts/build-dmg.sh +417 -0
  64. package/scripts/install-skills.ps1 +334 -0
  65. package/scripts/postinstall.js +2 -2
  66. package/scripts/start-dashboard.ps1 +52 -0
  67. package/scripts/start-dashboard.sh +41 -0
  68. package/scripts/sync-wiki.ps1 +127 -0
  69. package/scripts/sync-wiki.sh +82 -0
  70. package/scripts/test-dmg.sh +161 -0
  71. package/scripts/test-npm-package.ps1 +252 -0
  72. package/scripts/test-npm-package.sh +207 -0
  73. package/scripts/verify-install.ps1 +294 -0
  74. package/scripts/verify-install.sh +266 -0
  75. package/src/superlocalmemory/__init__.py +0 -0
  76. package/src/superlocalmemory/attribution/__init__.py +9 -0
  77. package/src/superlocalmemory/attribution/mathematical_dna.py +235 -0
  78. package/src/superlocalmemory/attribution/signer.py +153 -0
  79. package/src/superlocalmemory/attribution/watermark.py +189 -0
  80. package/src/superlocalmemory/cli/__init__.py +5 -0
  81. package/src/superlocalmemory/cli/commands.py +245 -0
  82. package/src/superlocalmemory/cli/main.py +89 -0
  83. package/src/superlocalmemory/cli/migrate_cmd.py +55 -0
  84. package/src/superlocalmemory/cli/post_install.py +99 -0
  85. package/src/superlocalmemory/cli/setup_wizard.py +129 -0
  86. package/src/superlocalmemory/compliance/__init__.py +0 -0
  87. package/src/superlocalmemory/compliance/abac.py +204 -0
  88. package/src/superlocalmemory/compliance/audit.py +314 -0
  89. package/src/superlocalmemory/compliance/eu_ai_act.py +131 -0
  90. package/src/superlocalmemory/compliance/gdpr.py +294 -0
  91. package/src/superlocalmemory/compliance/lifecycle.py +158 -0
  92. package/src/superlocalmemory/compliance/retention.py +232 -0
  93. package/src/superlocalmemory/compliance/scheduler.py +148 -0
  94. package/src/superlocalmemory/core/__init__.py +0 -0
  95. package/src/superlocalmemory/core/config.py +391 -0
  96. package/src/superlocalmemory/core/embeddings.py +293 -0
  97. package/src/superlocalmemory/core/engine.py +701 -0
  98. package/src/superlocalmemory/core/hooks.py +65 -0
  99. package/src/superlocalmemory/core/maintenance.py +172 -0
  100. package/src/superlocalmemory/core/modes.py +140 -0
  101. package/src/superlocalmemory/core/profiles.py +234 -0
  102. package/src/superlocalmemory/core/registry.py +117 -0
  103. package/src/superlocalmemory/dynamics/__init__.py +0 -0
  104. package/src/superlocalmemory/dynamics/fisher_langevin_coupling.py +223 -0
  105. package/src/superlocalmemory/encoding/__init__.py +0 -0
  106. package/src/superlocalmemory/encoding/consolidator.py +485 -0
  107. package/src/superlocalmemory/encoding/emotional.py +125 -0
  108. package/src/superlocalmemory/encoding/entity_resolver.py +525 -0
  109. package/src/superlocalmemory/encoding/entropy_gate.py +104 -0
  110. package/src/superlocalmemory/encoding/fact_extractor.py +775 -0
  111. package/src/superlocalmemory/encoding/foresight.py +91 -0
  112. package/src/superlocalmemory/encoding/graph_builder.py +302 -0
  113. package/src/superlocalmemory/encoding/observation_builder.py +160 -0
  114. package/src/superlocalmemory/encoding/scene_builder.py +183 -0
  115. package/src/superlocalmemory/encoding/signal_inference.py +90 -0
  116. package/src/superlocalmemory/encoding/temporal_parser.py +426 -0
  117. package/src/superlocalmemory/encoding/type_router.py +235 -0
  118. package/src/superlocalmemory/hooks/__init__.py +3 -0
  119. package/src/superlocalmemory/hooks/auto_capture.py +111 -0
  120. package/src/superlocalmemory/hooks/auto_recall.py +93 -0
  121. package/src/superlocalmemory/hooks/ide_connector.py +204 -0
  122. package/src/superlocalmemory/hooks/rules_engine.py +99 -0
  123. package/src/superlocalmemory/infra/__init__.py +3 -0
  124. package/src/superlocalmemory/infra/auth_middleware.py +82 -0
  125. package/src/superlocalmemory/infra/backup.py +317 -0
  126. package/src/superlocalmemory/infra/cache_manager.py +267 -0
  127. package/src/superlocalmemory/infra/event_bus.py +381 -0
  128. package/src/superlocalmemory/infra/rate_limiter.py +135 -0
  129. package/src/{webhook_dispatcher.py → superlocalmemory/infra/webhook_dispatcher.py} +104 -101
  130. package/src/superlocalmemory/learning/__init__.py +0 -0
  131. package/src/superlocalmemory/learning/adaptive.py +172 -0
  132. package/src/superlocalmemory/learning/behavioral.py +490 -0
  133. package/src/superlocalmemory/learning/behavioral_listener.py +94 -0
  134. package/src/superlocalmemory/learning/bootstrap.py +298 -0
  135. package/src/superlocalmemory/learning/cross_project.py +399 -0
  136. package/src/superlocalmemory/learning/database.py +376 -0
  137. package/src/superlocalmemory/learning/engagement.py +323 -0
  138. package/src/superlocalmemory/learning/features.py +138 -0
  139. package/src/superlocalmemory/learning/feedback.py +316 -0
  140. package/src/superlocalmemory/learning/outcomes.py +255 -0
  141. package/src/superlocalmemory/learning/project_context.py +366 -0
  142. package/src/superlocalmemory/learning/ranker.py +155 -0
  143. package/src/superlocalmemory/learning/source_quality.py +303 -0
  144. package/src/superlocalmemory/learning/workflows.py +309 -0
  145. package/src/superlocalmemory/llm/__init__.py +0 -0
  146. package/src/superlocalmemory/llm/backbone.py +316 -0
  147. package/src/superlocalmemory/math/__init__.py +0 -0
  148. package/src/superlocalmemory/math/fisher.py +356 -0
  149. package/src/superlocalmemory/math/langevin.py +398 -0
  150. package/src/superlocalmemory/math/sheaf.py +257 -0
  151. package/src/superlocalmemory/mcp/__init__.py +0 -0
  152. package/src/superlocalmemory/mcp/resources.py +245 -0
  153. package/src/superlocalmemory/mcp/server.py +61 -0
  154. package/src/superlocalmemory/mcp/tools.py +18 -0
  155. package/src/superlocalmemory/mcp/tools_core.py +305 -0
  156. package/src/superlocalmemory/mcp/tools_v28.py +223 -0
  157. package/src/superlocalmemory/mcp/tools_v3.py +286 -0
  158. package/src/superlocalmemory/retrieval/__init__.py +0 -0
  159. package/src/superlocalmemory/retrieval/agentic.py +295 -0
  160. package/src/superlocalmemory/retrieval/ann_index.py +223 -0
  161. package/src/superlocalmemory/retrieval/bm25_channel.py +185 -0
  162. package/src/superlocalmemory/retrieval/bridge_discovery.py +170 -0
  163. package/src/superlocalmemory/retrieval/engine.py +390 -0
  164. package/src/superlocalmemory/retrieval/entity_channel.py +179 -0
  165. package/src/superlocalmemory/retrieval/fusion.py +78 -0
  166. package/src/superlocalmemory/retrieval/profile_channel.py +105 -0
  167. package/src/superlocalmemory/retrieval/reranker.py +154 -0
  168. package/src/superlocalmemory/retrieval/semantic_channel.py +232 -0
  169. package/src/superlocalmemory/retrieval/strategy.py +96 -0
  170. package/src/superlocalmemory/retrieval/temporal_channel.py +175 -0
  171. package/src/superlocalmemory/server/__init__.py +1 -0
  172. package/src/superlocalmemory/server/api.py +248 -0
  173. package/src/superlocalmemory/server/routes/__init__.py +4 -0
  174. package/src/superlocalmemory/server/routes/agents.py +107 -0
  175. package/src/superlocalmemory/server/routes/backup.py +91 -0
  176. package/src/superlocalmemory/server/routes/behavioral.py +127 -0
  177. package/src/superlocalmemory/server/routes/compliance.py +160 -0
  178. package/src/superlocalmemory/server/routes/data_io.py +188 -0
  179. package/src/superlocalmemory/server/routes/events.py +183 -0
  180. package/src/superlocalmemory/server/routes/helpers.py +85 -0
  181. package/src/superlocalmemory/server/routes/learning.py +273 -0
  182. package/src/superlocalmemory/server/routes/lifecycle.py +116 -0
  183. package/src/superlocalmemory/server/routes/memories.py +399 -0
  184. package/src/superlocalmemory/server/routes/profiles.py +219 -0
  185. package/src/superlocalmemory/server/routes/stats.py +346 -0
  186. package/src/superlocalmemory/server/routes/v3_api.py +365 -0
  187. package/src/superlocalmemory/server/routes/ws.py +82 -0
  188. package/src/superlocalmemory/server/security_middleware.py +57 -0
  189. package/src/superlocalmemory/server/ui.py +245 -0
  190. package/src/superlocalmemory/storage/__init__.py +0 -0
  191. package/src/superlocalmemory/storage/access_control.py +182 -0
  192. package/src/superlocalmemory/storage/database.py +594 -0
  193. package/src/superlocalmemory/storage/migrations.py +303 -0
  194. package/src/superlocalmemory/storage/models.py +406 -0
  195. package/src/superlocalmemory/storage/schema.py +726 -0
  196. package/src/superlocalmemory/storage/v2_migrator.py +317 -0
  197. package/src/superlocalmemory/trust/__init__.py +0 -0
  198. package/src/superlocalmemory/trust/gate.py +130 -0
  199. package/src/superlocalmemory/trust/provenance.py +124 -0
  200. package/src/superlocalmemory/trust/scorer.py +347 -0
  201. package/src/superlocalmemory/trust/signals.py +153 -0
  202. package/ui/index.html +278 -5
  203. package/ui/js/auto-settings.js +70 -0
  204. package/ui/js/dashboard.js +90 -0
  205. package/ui/js/fact-detail.js +92 -0
  206. package/ui/js/feedback.js +2 -2
  207. package/ui/js/ide-status.js +102 -0
  208. package/ui/js/math-health.js +98 -0
  209. package/ui/js/recall-lab.js +127 -0
  210. package/ui/js/settings.js +2 -2
  211. package/ui/js/trust-dashboard.js +73 -0
  212. package/api_server.py +0 -724
  213. package/bin/aider-smart +0 -72
  214. package/bin/superlocalmemoryv2-learning +0 -4
  215. package/bin/superlocalmemoryv2-list +0 -3
  216. package/bin/superlocalmemoryv2-patterns +0 -4
  217. package/bin/superlocalmemoryv2-profile +0 -3
  218. package/bin/superlocalmemoryv2-recall +0 -3
  219. package/bin/superlocalmemoryv2-remember +0 -3
  220. package/bin/superlocalmemoryv2-reset +0 -3
  221. package/bin/superlocalmemoryv2-status +0 -3
  222. package/configs/chatgpt-desktop-mcp.json +0 -16
  223. package/configs/cursor-mcp.json +0 -15
  224. package/hooks/memory-list-skill.js +0 -139
  225. package/hooks/memory-profile-skill.js +0 -273
  226. package/hooks/memory-recall-skill.js +0 -114
  227. package/hooks/memory-remember-skill.js +0 -127
  228. package/hooks/memory-reset-skill.js +0 -274
  229. package/mcp_server.py +0 -1808
  230. package/requirements-core.txt +0 -22
  231. package/requirements-learning.txt +0 -12
  232. package/requirements.txt +0 -12
  233. package/src/agent_registry.py +0 -411
  234. package/src/auth_middleware.py +0 -61
  235. package/src/auto_backup.py +0 -459
  236. package/src/behavioral/__init__.py +0 -49
  237. package/src/behavioral/behavioral_listener.py +0 -203
  238. package/src/behavioral/behavioral_patterns.py +0 -275
  239. package/src/behavioral/cross_project_transfer.py +0 -206
  240. package/src/behavioral/outcome_inference.py +0 -194
  241. package/src/behavioral/outcome_tracker.py +0 -193
  242. package/src/behavioral/tests/__init__.py +0 -4
  243. package/src/behavioral/tests/test_behavioral_integration.py +0 -108
  244. package/src/behavioral/tests/test_behavioral_patterns.py +0 -150
  245. package/src/behavioral/tests/test_cross_project_transfer.py +0 -142
  246. package/src/behavioral/tests/test_mcp_behavioral.py +0 -139
  247. package/src/behavioral/tests/test_mcp_report_outcome.py +0 -117
  248. package/src/behavioral/tests/test_outcome_inference.py +0 -107
  249. package/src/behavioral/tests/test_outcome_tracker.py +0 -96
  250. package/src/cache_manager.py +0 -518
  251. package/src/compliance/__init__.py +0 -48
  252. package/src/compliance/abac_engine.py +0 -149
  253. package/src/compliance/abac_middleware.py +0 -116
  254. package/src/compliance/audit_db.py +0 -215
  255. package/src/compliance/audit_logger.py +0 -148
  256. package/src/compliance/retention_manager.py +0 -289
  257. package/src/compliance/retention_scheduler.py +0 -186
  258. package/src/compliance/tests/__init__.py +0 -4
  259. package/src/compliance/tests/test_abac_enforcement.py +0 -95
  260. package/src/compliance/tests/test_abac_engine.py +0 -124
  261. package/src/compliance/tests/test_abac_mcp_integration.py +0 -118
  262. package/src/compliance/tests/test_audit_db.py +0 -123
  263. package/src/compliance/tests/test_audit_logger.py +0 -98
  264. package/src/compliance/tests/test_mcp_audit.py +0 -128
  265. package/src/compliance/tests/test_mcp_retention_policy.py +0 -125
  266. package/src/compliance/tests/test_retention_manager.py +0 -131
  267. package/src/compliance/tests/test_retention_scheduler.py +0 -99
  268. package/src/compression/__init__.py +0 -25
  269. package/src/compression/cli.py +0 -150
  270. package/src/compression/cold_storage.py +0 -217
  271. package/src/compression/config.py +0 -72
  272. package/src/compression/orchestrator.py +0 -133
  273. package/src/compression/tier2_compressor.py +0 -228
  274. package/src/compression/tier3_compressor.py +0 -153
  275. package/src/compression/tier_classifier.py +0 -148
  276. package/src/db_connection_manager.py +0 -536
  277. package/src/embedding_engine.py +0 -63
  278. package/src/embeddings/__init__.py +0 -47
  279. package/src/embeddings/cache.py +0 -70
  280. package/src/embeddings/cli.py +0 -113
  281. package/src/embeddings/constants.py +0 -47
  282. package/src/embeddings/database.py +0 -91
  283. package/src/embeddings/engine.py +0 -247
  284. package/src/embeddings/model_loader.py +0 -145
  285. package/src/event_bus.py +0 -562
  286. package/src/graph/__init__.py +0 -36
  287. package/src/graph/build_helpers.py +0 -74
  288. package/src/graph/cli.py +0 -87
  289. package/src/graph/cluster_builder.py +0 -188
  290. package/src/graph/cluster_summary.py +0 -148
  291. package/src/graph/constants.py +0 -47
  292. package/src/graph/edge_builder.py +0 -162
  293. package/src/graph/entity_extractor.py +0 -95
  294. package/src/graph/graph_core.py +0 -226
  295. package/src/graph/graph_search.py +0 -231
  296. package/src/graph/hierarchical.py +0 -207
  297. package/src/graph/schema.py +0 -99
  298. package/src/graph_engine.py +0 -52
  299. package/src/hnsw_index.py +0 -628
  300. package/src/hybrid_search.py +0 -46
  301. package/src/learning/__init__.py +0 -217
  302. package/src/learning/adaptive_ranker.py +0 -682
  303. package/src/learning/bootstrap/__init__.py +0 -69
  304. package/src/learning/bootstrap/constants.py +0 -93
  305. package/src/learning/bootstrap/db_queries.py +0 -316
  306. package/src/learning/bootstrap/sampling.py +0 -82
  307. package/src/learning/bootstrap/text_utils.py +0 -71
  308. package/src/learning/cross_project_aggregator.py +0 -857
  309. package/src/learning/db/__init__.py +0 -40
  310. package/src/learning/db/constants.py +0 -44
  311. package/src/learning/db/schema.py +0 -279
  312. package/src/learning/engagement_tracker.py +0 -628
  313. package/src/learning/feature_extractor.py +0 -708
  314. package/src/learning/feedback_collector.py +0 -806
  315. package/src/learning/learning_db.py +0 -915
  316. package/src/learning/project_context_manager.py +0 -572
  317. package/src/learning/ranking/__init__.py +0 -33
  318. package/src/learning/ranking/constants.py +0 -84
  319. package/src/learning/ranking/helpers.py +0 -278
  320. package/src/learning/source_quality_scorer.py +0 -676
  321. package/src/learning/synthetic_bootstrap.py +0 -755
  322. package/src/learning/tests/test_adaptive_ranker.py +0 -325
  323. package/src/learning/tests/test_adaptive_ranker_v28.py +0 -60
  324. package/src/learning/tests/test_aggregator.py +0 -306
  325. package/src/learning/tests/test_auto_retrain_v28.py +0 -35
  326. package/src/learning/tests/test_e2e_ranking_v28.py +0 -82
  327. package/src/learning/tests/test_feature_extractor_v28.py +0 -93
  328. package/src/learning/tests/test_feedback_collector.py +0 -294
  329. package/src/learning/tests/test_learning_db.py +0 -602
  330. package/src/learning/tests/test_learning_db_v28.py +0 -110
  331. package/src/learning/tests/test_learning_init_v28.py +0 -48
  332. package/src/learning/tests/test_outcome_signals.py +0 -48
  333. package/src/learning/tests/test_project_context.py +0 -292
  334. package/src/learning/tests/test_schema_migration.py +0 -319
  335. package/src/learning/tests/test_signal_inference.py +0 -397
  336. package/src/learning/tests/test_source_quality.py +0 -351
  337. package/src/learning/tests/test_synthetic_bootstrap.py +0 -429
  338. package/src/learning/tests/test_workflow_miner.py +0 -318
  339. package/src/learning/workflow_pattern_miner.py +0 -655
  340. package/src/lifecycle/__init__.py +0 -54
  341. package/src/lifecycle/bounded_growth.py +0 -239
  342. package/src/lifecycle/compaction_engine.py +0 -226
  343. package/src/lifecycle/lifecycle_engine.py +0 -355
  344. package/src/lifecycle/lifecycle_evaluator.py +0 -257
  345. package/src/lifecycle/lifecycle_scheduler.py +0 -130
  346. package/src/lifecycle/retention_policy.py +0 -285
  347. package/src/lifecycle/tests/test_bounded_growth.py +0 -193
  348. package/src/lifecycle/tests/test_compaction.py +0 -179
  349. package/src/lifecycle/tests/test_lifecycle_engine.py +0 -137
  350. package/src/lifecycle/tests/test_lifecycle_evaluation.py +0 -177
  351. package/src/lifecycle/tests/test_lifecycle_scheduler.py +0 -127
  352. package/src/lifecycle/tests/test_lifecycle_search.py +0 -109
  353. package/src/lifecycle/tests/test_mcp_compact.py +0 -149
  354. package/src/lifecycle/tests/test_mcp_lifecycle_status.py +0 -114
  355. package/src/lifecycle/tests/test_retention_policy.py +0 -162
  356. package/src/mcp_tools_v28.py +0 -281
  357. package/src/memory/__init__.py +0 -36
  358. package/src/memory/cli.py +0 -205
  359. package/src/memory/constants.py +0 -39
  360. package/src/memory/helpers.py +0 -28
  361. package/src/memory/schema.py +0 -166
  362. package/src/memory-profiles.py +0 -595
  363. package/src/memory-reset.py +0 -491
  364. package/src/memory_compression.py +0 -989
  365. package/src/memory_store_v2.py +0 -1155
  366. package/src/migrate_v1_to_v2.py +0 -629
  367. package/src/pattern_learner.py +0 -34
  368. package/src/patterns/__init__.py +0 -24
  369. package/src/patterns/analyzers.py +0 -251
  370. package/src/patterns/learner.py +0 -271
  371. package/src/patterns/scoring.py +0 -171
  372. package/src/patterns/store.py +0 -225
  373. package/src/patterns/terminology.py +0 -140
  374. package/src/provenance_tracker.py +0 -312
  375. package/src/qualixar_attribution.py +0 -139
  376. package/src/qualixar_watermark.py +0 -78
  377. package/src/query_optimizer.py +0 -511
  378. package/src/rate_limiter.py +0 -83
  379. package/src/search/__init__.py +0 -20
  380. package/src/search/cli.py +0 -77
  381. package/src/search/constants.py +0 -26
  382. package/src/search/engine.py +0 -241
  383. package/src/search/fusion.py +0 -122
  384. package/src/search/index_loader.py +0 -114
  385. package/src/search/methods.py +0 -162
  386. package/src/search_engine_v2.py +0 -401
  387. package/src/setup_validator.py +0 -482
  388. package/src/subscription_manager.py +0 -391
  389. package/src/tree/__init__.py +0 -59
  390. package/src/tree/builder.py +0 -185
  391. package/src/tree/nodes.py +0 -202
  392. package/src/tree/queries.py +0 -257
  393. package/src/tree/schema.py +0 -80
  394. package/src/tree_manager.py +0 -19
  395. package/src/trust/__init__.py +0 -45
  396. package/src/trust/constants.py +0 -66
  397. package/src/trust/queries.py +0 -157
  398. package/src/trust/schema.py +0 -95
  399. package/src/trust/scorer.py +0 -299
  400. package/src/trust/signals.py +0 -95
  401. package/src/trust_scorer.py +0 -44
  402. package/ui/app.js +0 -1588
  403. package/ui/js/graph-cytoscape-monolithic-backup.js +0 -1168
  404. package/ui/js/graph-cytoscape.js +0 -1168
  405. package/ui/js/graph-d3-backup.js +0 -32
  406. package/ui/js/graph.js +0 -32
  407. package/ui_server.py +0 -286
  408. /package/docs/{ACCESSIBILITY.md → v2-archive/ACCESSIBILITY.md} +0 -0
  409. /package/docs/{ARCHITECTURE.md → v2-archive/ARCHITECTURE.md} +0 -0
  410. /package/docs/{CLI-COMMANDS-REFERENCE.md → v2-archive/CLI-COMMANDS-REFERENCE.md} +0 -0
  411. /package/docs/{COMPRESSION-README.md → v2-archive/COMPRESSION-README.md} +0 -0
  412. /package/docs/{FRAMEWORK-INTEGRATIONS.md → v2-archive/FRAMEWORK-INTEGRATIONS.md} +0 -0
  413. /package/docs/{MCP-MANUAL-SETUP.md → v2-archive/MCP-MANUAL-SETUP.md} +0 -0
  414. /package/docs/{MCP-TROUBLESHOOTING.md → v2-archive/MCP-TROUBLESHOOTING.md} +0 -0
  415. /package/docs/{PATTERN-LEARNING.md → v2-archive/PATTERN-LEARNING.md} +0 -0
  416. /package/docs/{PROFILES-GUIDE.md → v2-archive/PROFILES-GUIDE.md} +0 -0
  417. /package/docs/{RESET-GUIDE.md → v2-archive/RESET-GUIDE.md} +0 -0
  418. /package/docs/{SEARCH-ENGINE-V2.2.0.md → v2-archive/SEARCH-ENGINE-V2.2.0.md} +0 -0
  419. /package/docs/{SEARCH-INTEGRATION-GUIDE.md → v2-archive/SEARCH-INTEGRATION-GUIDE.md} +0 -0
  420. /package/docs/{UI-SERVER.md → v2-archive/UI-SERVER.md} +0 -0
  421. /package/docs/{UNIVERSAL-INTEGRATION.md → v2-archive/UNIVERSAL-INTEGRATION.md} +0 -0
  422. /package/docs/{V2.2.0-OPTIONAL-SEARCH.md → v2-archive/V2.2.0-OPTIONAL-SEARCH.md} +0 -0
  423. /package/docs/{WINDOWS-INSTALL-README.txt → v2-archive/WINDOWS-INSTALL-README.txt} +0 -0
  424. /package/docs/{WINDOWS-POST-INSTALL.txt → v2-archive/WINDOWS-POST-INSTALL.txt} +0 -0
  425. /package/docs/{example_graph_usage.py → v2-archive/example_graph_usage.py} +0 -0
  426. /package/{completions → ide/completions}/slm.bash +0 -0
  427. /package/{completions → ide/completions}/slm.zsh +0 -0
  428. /package/{configs → ide/configs}/cody-commands.json +0 -0
  429. /package/{install-skills.sh → scripts/install-skills.sh} +0 -0
  430. /package/{install.ps1 → scripts/install.ps1} +0 -0
  431. /package/{install.sh → scripts/install.sh} +0 -0
@@ -0,0 +1,276 @@
1
+ # CLI Reference
2
+ > SuperLocalMemory V3 Documentation
3
+ > https://superlocalmemory.com | Part of Qualixar
4
+
5
+ Complete reference for the `slm` command-line interface.
6
+
7
+ ---
8
+
9
+ ## Setup & Configuration
10
+
11
+ ### `slm setup`
12
+
13
+ Run the interactive setup wizard. Guides you through mode selection, IDE connection, and verification.
14
+
15
+ ```bash
16
+ slm setup
17
+ ```
18
+
19
+ ### `slm mode [a|b|c]`
20
+
21
+ Get or set the operating mode.
22
+
23
+ ```bash
24
+ slm mode # Show current mode
25
+ slm mode a # Zero-cloud (no LLM, no API key)
26
+ slm mode b # Local LLM via Ollama
27
+ slm mode c # Cloud LLM (requires API key)
28
+ ```
29
+
30
+ ### `slm provider [set]`
31
+
32
+ Get or set the LLM provider for Mode B/C.
33
+
34
+ ```bash
35
+ slm provider # Show current provider
36
+ slm provider set # Interactive provider selector
37
+ slm provider set openai # Set provider directly
38
+ ```
39
+
40
+ ### `slm connect [ide]`
41
+
42
+ Configure IDE integrations.
43
+
44
+ ```bash
45
+ slm connect # Auto-detect and configure all IDEs
46
+ slm connect cursor # Configure Cursor specifically
47
+ slm connect claude # Configure Claude Code specifically
48
+ ```
49
+
50
+ Supported IDEs: `claude`, `cursor`, `vscode`, `windsurf`, `gemini`, `jetbrains`, `continue`, `zed`
51
+
52
+ ## Memory Operations
53
+
54
+ ### `slm remember "content" [options]`
55
+
56
+ Store a memory.
57
+
58
+ ```bash
59
+ slm remember "API rate limit is 100 req/min on staging"
60
+ slm remember "Use camelCase for JS, snake_case for Python" --tags "style,convention"
61
+ slm remember "Maria owns the auth service" --tags "team,ownership"
62
+ ```
63
+
64
+ | Option | Description |
65
+ |--------|-------------|
66
+ | `--tags "a,b"` | Comma-separated tags for categorization |
67
+ | `--profile name` | Store in a specific profile (overrides active profile) |
68
+
69
+ ### `slm recall "query" [options]`
70
+
71
+ Search your memories. Returns the most relevant results.
72
+
73
+ ```bash
74
+ slm recall "rate limit"
75
+ slm recall "who owns auth" --limit 5
76
+ slm recall "database config" --profile work
77
+ ```
78
+
79
+ | Option | Default | Description |
80
+ |--------|---------|-------------|
81
+ | `--limit N` | 10 | Maximum results to return |
82
+ | `--profile name` | active | Search in a specific profile |
83
+
84
+ ### `slm search "query" [options]`
85
+
86
+ Alias for `slm recall`. Same behavior, same options.
87
+
88
+ ### `slm forget "query" [options]`
89
+
90
+ Delete memories matching a query.
91
+
92
+ ```bash
93
+ slm forget "old staging credentials"
94
+ slm forget --id 42 # Delete by memory ID
95
+ slm forget --before "2026-01-01" # Delete memories before a date
96
+ ```
97
+
98
+ | Option | Description |
99
+ |--------|-------------|
100
+ | `--id N` | Delete a specific memory by ID |
101
+ | `--before "date"` | Delete all memories before this date |
102
+ | `--confirm` | Skip the confirmation prompt |
103
+
104
+ ### `slm list [options]`
105
+
106
+ List recent memories.
107
+
108
+ ```bash
109
+ slm list # Last 20 memories
110
+ slm list --limit 50 # Last 50 memories
111
+ ```
112
+
113
+ ## V3 Features
114
+
115
+ ### `slm trace "query"`
116
+
117
+ Recall with a channel-by-channel breakdown. Shows how each retrieval channel contributed to the results.
118
+
119
+ ```bash
120
+ slm trace "database port"
121
+ ```
122
+
123
+ Output shows scores from each channel:
124
+ - Semantic (vector similarity)
125
+ - BM25 (keyword matching)
126
+ - Entity Graph (relationship traversal)
127
+ - Temporal (time-based relevance)
128
+
129
+ ### `slm health`
130
+
131
+ Show diagnostics for the mathematical layers.
132
+
133
+ ```bash
134
+ slm health
135
+ ```
136
+
137
+ Reports status of:
138
+ - Fisher-Rao similarity layer
139
+ - Sheaf consistency layer
140
+ - Langevin lifecycle dynamics
141
+ - Embedding model status
142
+ - Database integrity
143
+
144
+ ### `slm consistency`
145
+
146
+ Run a consistency check across your memories. Detects contradictions and outdated information.
147
+
148
+ ```bash
149
+ slm consistency
150
+ ```
151
+
152
+ ## Migration
153
+
154
+ ### `slm migrate [options]`
155
+
156
+ Migrate a V2 database to V3 format.
157
+
158
+ ```bash
159
+ slm migrate # Run migration
160
+ slm migrate --dry-run # Preview what will change
161
+ slm migrate --rollback # Undo migration (within 30 days)
162
+ ```
163
+
164
+ | Option | Description |
165
+ |--------|-------------|
166
+ | `--dry-run` | Show what would change without modifying anything |
167
+ | `--rollback` | Revert to V2 format (backup must exist) |
168
+
169
+ ## Profile Management
170
+
171
+ ### `slm profile [command]`
172
+
173
+ Manage memory profiles (isolated memory contexts).
174
+
175
+ ```bash
176
+ slm profile list # List all profiles
177
+ slm profile switch work # Switch to "work" profile
178
+ slm profile create client-acme # Create a new profile
179
+ slm profile delete old-project # Delete a profile
180
+ slm profile export work > backup.json # Export a profile
181
+ ```
182
+
183
+ ## System & Maintenance
184
+
185
+ ### `slm status`
186
+
187
+ Show system status: mode, profile, memory count, database location, health.
188
+
189
+ ```bash
190
+ slm status
191
+ ```
192
+
193
+ ### `slm compact`
194
+
195
+ Compress and optimize the memory database. Merges redundant memories and reclaims space.
196
+
197
+ ```bash
198
+ slm compact
199
+ ```
200
+
201
+ ### `slm backup`
202
+
203
+ Check backup status or create a manual backup.
204
+
205
+ ```bash
206
+ slm backup # Show backup status
207
+ slm backup create # Create a backup now
208
+ ```
209
+
210
+ ### `slm audit [options]`
211
+
212
+ View the audit trail. Shows all memory operations with timestamps and hash-chain verification.
213
+
214
+ ```bash
215
+ slm audit # Recent audit entries
216
+ slm audit --limit 100 # Last 100 entries
217
+ slm audit --verify # Verify hash-chain integrity
218
+ ```
219
+
220
+ ### `slm retention [policy]`
221
+
222
+ Manage retention policies.
223
+
224
+ ```bash
225
+ slm retention # Show current policy
226
+ slm retention set gdpr-30d # Apply GDPR 30-day policy
227
+ slm retention set hipaa-7y # Apply HIPAA 7-year policy
228
+ slm retention set custom --days 90 # Custom retention period
229
+ ```
230
+
231
+ ## Global Options
232
+
233
+ These options work with any command:
234
+
235
+ | Option | Description |
236
+ |--------|-------------|
237
+ | `--help` | Show help for a command |
238
+ | `--version` | Show SLM version |
239
+ | `--verbose` | Show detailed output |
240
+ | `--json` | Output in JSON format (for scripting) |
241
+ | `--profile name` | Override the active profile for this command |
242
+
243
+ ## Examples
244
+
245
+ ### Daily workflow
246
+
247
+ ```bash
248
+ # Morning: check what you remembered yesterday
249
+ slm list --limit 10
250
+
251
+ # During work: store a decision
252
+ slm remember "Decided to use WebSocket instead of SSE for real-time updates" --tags "architecture"
253
+
254
+ # Later: recall the decision
255
+ slm recall "real-time communication approach"
256
+
257
+ # End of day: check system health
258
+ slm status
259
+ ```
260
+
261
+ ### Project setup
262
+
263
+ ```bash
264
+ # Create a profile for a new project
265
+ slm profile create mobile-app
266
+ slm profile switch mobile-app
267
+
268
+ # Store project context
269
+ slm remember "React Native 0.76 with Expo SDK 52"
270
+ slm remember "Backend is FastAPI on AWS ECS"
271
+ slm remember "CI/CD via GitHub Actions, deploys on merge to main"
272
+ ```
273
+
274
+ ---
275
+
276
+ *SuperLocalMemory V3 — Copyright 2026 Varun Pratap Bhardwaj. MIT License. Part of Qualixar.*
@@ -0,0 +1,191 @@
1
+ # Compliance
2
+ > SuperLocalMemory V3 Documentation
3
+ > https://superlocalmemory.com | Part of Qualixar
4
+
5
+ SuperLocalMemory is designed for organizations that need to meet data protection and privacy regulations. Mode A satisfies the strictest requirements by keeping all data local.
6
+
7
+ ---
8
+
9
+ ## EU AI Act
10
+
11
+ The EU AI Act (Regulation 2024/1689) establishes requirements for AI systems operating in the European Union.
12
+
13
+ ### Mode A: Full Compliance by Architecture
14
+
15
+ In Mode A, SuperLocalMemory operates as a local data retrieval system with zero cloud dependency:
16
+
17
+ | Requirement | How Mode A satisfies it |
18
+ |-------------|------------------------|
19
+ | **Data sovereignty** | All data stored and processed locally. Nothing leaves the device. |
20
+ | **Right to erasure** | `slm forget` deletes data from the local database. No cloud logs exist to purge. |
21
+ | **Transparency** | The retrieval pipeline is fully auditable. No black-box AI decisions. |
22
+ | **Risk classification** | A local retrieval system with no autonomous decision-making qualifies as minimal risk. |
23
+
24
+ ### Mode B: Full Compliance
25
+
26
+ Mode B uses a local LLM (Ollama). Data never leaves the device. Same compliance posture as Mode A.
27
+
28
+ ### Mode C: Shared Responsibility
29
+
30
+ Mode C sends recall queries to a cloud LLM provider. In this mode:
31
+
32
+ - **Your data** (stored memories) remains local
33
+ - **Queries** are sent to the cloud provider
34
+ - The cloud provider's compliance posture applies to those queries
35
+ - A Data Processing Agreement (DPA) with your provider is recommended
36
+
37
+ ## GDPR
38
+
39
+ The General Data Protection Regulation applies to personal data of EU residents.
40
+
41
+ ### Right to Erasure (Article 17)
42
+
43
+ ```bash
44
+ # Delete specific memories
45
+ slm forget "John's phone number"
46
+ slm forget --id 42
47
+
48
+ # Delete all memories before a date
49
+ slm forget --before "2025-01-01"
50
+
51
+ # Delete an entire profile
52
+ slm profile delete client-eu
53
+ ```
54
+
55
+ Deletion is permanent. In Mode A, there are no cloud copies to worry about.
56
+
57
+ ### Data Portability (Article 20)
58
+
59
+ ```bash
60
+ # Export all memories for a profile
61
+ slm profile export work > work-data.json
62
+
63
+ # The export is standard JSON — readable by any system
64
+ ```
65
+
66
+ ### Data Minimization (Article 5)
67
+
68
+ The entropy gate in the ingestion pipeline filters out redundant and low-value information automatically. Only memories with sufficient information value are stored.
69
+
70
+ ### Purpose Limitation
71
+
72
+ Profiles enforce purpose limitation. Client A's data is stored in Client A's profile and is never accessible from another profile.
73
+
74
+ ## Retention Policies
75
+
76
+ Named retention policies automate data lifecycle management.
77
+
78
+ ### Built-in policies
79
+
80
+ | Policy | Retention period | Use case |
81
+ |--------|:----------------:|----------|
82
+ | `indefinite` | Forever | Default. No automatic deletion. |
83
+ | `gdpr-30d` | 30 days | GDPR-compliant short retention |
84
+ | `hipaa-7y` | 7 years | HIPAA medical records requirement |
85
+
86
+ ### Apply a policy
87
+
88
+ ```bash
89
+ slm retention set gdpr-30d
90
+ ```
91
+
92
+ This applies to the active profile. Memories older than the retention period are automatically archived and then deleted.
93
+
94
+ ### Custom policies
95
+
96
+ ```bash
97
+ slm retention set custom --days 90
98
+ ```
99
+
100
+ ### Per-profile policies
101
+
102
+ Different profiles can have different policies:
103
+
104
+ ```bash
105
+ slm profile switch client-eu
106
+ slm retention set gdpr-30d
107
+
108
+ slm profile switch internal
109
+ slm retention set indefinite
110
+ ```
111
+
112
+ ## Access Control
113
+
114
+ SuperLocalMemory uses Attribute-Based Access Control (ABAC) per profile.
115
+
116
+ - Each profile is an isolated access boundary
117
+ - No cross-profile data access is possible
118
+ - Profile switching requires the `slm profile switch` command
119
+ - The audit trail logs all profile switches
120
+
121
+ ## Audit Trail
122
+
123
+ Every memory operation is logged in a tamper-evident hash chain.
124
+
125
+ ### View the audit trail
126
+
127
+ ```bash
128
+ slm audit # Recent entries
129
+ slm audit --limit 100 # Last 100 entries
130
+ slm audit --action store # Only store operations
131
+ slm audit --action delete # Only delete operations
132
+ ```
133
+
134
+ ### Verify integrity
135
+
136
+ ```bash
137
+ slm audit --verify
138
+ ```
139
+
140
+ This checks the hash chain for tampering. Each entry contains a hash of the previous entry, creating a blockchain-like chain. Any modification to a past entry breaks the chain and is detected.
141
+
142
+ ### What gets logged
143
+
144
+ | Action | What is recorded |
145
+ |--------|-----------------|
146
+ | `store` | Memory ID, timestamp, profile, content hash |
147
+ | `recall` | Query, timestamp, profile, result count |
148
+ | `delete` | Memory ID, timestamp, profile, reason |
149
+ | `profile_switch` | From profile, to profile, timestamp |
150
+ | `mode_change` | From mode, to mode, timestamp |
151
+ | `migration` | Source version, target version, timestamp |
152
+
153
+ ## HIPAA
154
+
155
+ For healthcare applications:
156
+
157
+ 1. Use Mode A (zero cloud) to ensure PHI never leaves the device
158
+ 2. Apply the `hipaa-7y` retention policy
159
+ 3. Use per-patient or per-case profiles for isolation
160
+ 4. Enable audit trail verification for compliance audits
161
+
162
+ ```bash
163
+ slm profile create patient-12345
164
+ slm profile switch patient-12345
165
+ slm retention set hipaa-7y
166
+ ```
167
+
168
+ ## SOC 2
169
+
170
+ SuperLocalMemory supports SOC 2 requirements through:
171
+
172
+ - **Access controls:** Profile-based isolation with ABAC
173
+ - **Audit logging:** Hash-chained, tamper-evident audit trail
174
+ - **Data encryption:** SQLite database can be encrypted at rest using OS-level encryption (FileVault, BitLocker, LUKS)
175
+ - **Change management:** All configuration changes are logged
176
+
177
+ ## Compliance Checklist
178
+
179
+ | Requirement | Mode A | Mode B | Mode C |
180
+ |-------------|:------:|:------:|:------:|
181
+ | Data stays on device | Yes | Yes | Partial (queries sent to cloud) |
182
+ | No cloud dependency | Yes | Yes | No |
183
+ | Right to erasure | Yes | Yes | Yes (local); cloud logs depend on provider |
184
+ | Audit trail | Yes | Yes | Yes |
185
+ | Retention policies | Yes | Yes | Yes |
186
+ | Profile isolation | Yes | Yes | Yes |
187
+ | Tamper detection | Yes | Yes | Yes |
188
+
189
+ ---
190
+
191
+ *SuperLocalMemory V3 — Copyright 2026 Varun Pratap Bhardwaj. MIT License. Part of Qualixar.*
@@ -0,0 +1,182 @@
1
+ # Configuration
2
+ > SuperLocalMemory V3 Documentation
3
+ > https://superlocalmemory.com | Part of Qualixar
4
+
5
+ Control how SuperLocalMemory stores, retrieves, and processes your memories.
6
+
7
+ ---
8
+
9
+ ## Three Operating Modes
10
+
11
+ SuperLocalMemory runs in one of three modes. You pick the trade-off between privacy and power.
12
+
13
+ | Mode | What it does | Needs API key? | Data leaves your machine? |
14
+ |------|-------------|:--------------:|:-------------------------:|
15
+ | **A: Zero-Cloud** | Math-based retrieval. No LLM calls. | No | Never |
16
+ | **B: Local LLM** | Mode A + a local LLM via Ollama. | No | Never |
17
+ | **C: Cloud LLM** | Mode B + a cloud LLM for maximum recall quality. | Yes | Yes (queries only) |
18
+
19
+ ### Check your current mode
20
+
21
+ ```bash
22
+ slm mode
23
+ ```
24
+
25
+ ### Switch modes
26
+
27
+ ```bash
28
+ slm mode a # Zero-cloud (default)
29
+ slm mode b # Local LLM
30
+ slm mode c # Cloud LLM
31
+ ```
32
+
33
+ Switching modes takes effect immediately. No data is lost.
34
+
35
+ ### Mode A: Zero-Cloud (Default)
36
+
37
+ All operations run locally. Retrieval uses four channels (semantic similarity, keyword search, entity graph, and temporal context) combined with mathematical scoring. No network calls.
38
+
39
+ Best for: privacy-sensitive work, air-gapped environments, EU AI Act compliance.
40
+
41
+ ### Mode B: Local LLM
42
+
43
+ Everything from Mode A, plus a local LLM (via Ollama) that improves recall by understanding query intent and reranking results.
44
+
45
+ **Setup:**
46
+
47
+ ```bash
48
+ # Install Ollama (if not already installed)
49
+ brew install ollama # macOS
50
+ curl -fsSL https://ollama.com/install.sh | sh # Linux
51
+
52
+ # Pull a model
53
+ ollama pull llama3.2
54
+
55
+ # Switch to Mode B
56
+ slm mode b
57
+ ```
58
+
59
+ Best for: developers who want better recall without sending data to the cloud.
60
+
61
+ ### Mode C: Cloud LLM
62
+
63
+ Everything from Mode B, plus a cloud LLM for cross-encoder reranking and agentic multi-round retrieval. Highest recall quality.
64
+
65
+ **Setup:**
66
+
67
+ ```bash
68
+ slm mode c
69
+ slm provider set openai
70
+ ```
71
+
72
+ You will be prompted for your API key (stored locally in your config file, never transmitted except to the provider you choose).
73
+
74
+ Best for: maximum recall quality when privacy constraints allow cloud calls.
75
+
76
+ ## Provider Configuration
77
+
78
+ Mode C supports multiple LLM providers.
79
+
80
+ ### Set your provider
81
+
82
+ ```bash
83
+ slm provider # Show current provider
84
+ slm provider set # Interactive provider selector
85
+ ```
86
+
87
+ ### Supported providers
88
+
89
+ | Provider | Command | Env variable |
90
+ |----------|---------|-------------|
91
+ | OpenAI | `slm provider set openai` | `OPENAI_API_KEY` |
92
+ | Anthropic | `slm provider set anthropic` | `ANTHROPIC_API_KEY` |
93
+ | Azure OpenAI | `slm provider set azure` | `AZURE_OPENAI_API_KEY` |
94
+ | Ollama (local) | `slm provider set ollama` | None needed |
95
+ | OpenRouter | `slm provider set openrouter` | `OPENROUTER_API_KEY` |
96
+
97
+ ### Set API keys
98
+
99
+ You can set keys interactively or via environment variables:
100
+
101
+ ```bash
102
+ # Interactive (stored in config file)
103
+ slm provider set openai
104
+ # Prompts: Enter your OpenAI API key: sk-...
105
+
106
+ # Via environment variable (takes precedence)
107
+ export OPENAI_API_KEY="sk-..."
108
+ ```
109
+
110
+ ## Config File
111
+
112
+ All settings live in:
113
+
114
+ ```
115
+ ~/.superlocalmemory/config.json
116
+ ```
117
+
118
+ ### Example config
119
+
120
+ ```json
121
+ {
122
+ "mode": "a",
123
+ "profile": "default",
124
+ "provider": {
125
+ "name": "openai",
126
+ "model": "gpt-4o-mini",
127
+ "api_key_env": "OPENAI_API_KEY"
128
+ },
129
+ "auto_capture": true,
130
+ "auto_recall": true,
131
+ "embedding_model": "all-MiniLM-L6-v2",
132
+ "max_recall_results": 10,
133
+ "retention": {
134
+ "default_policy": "indefinite"
135
+ }
136
+ }
137
+ ```
138
+
139
+ ### Key settings
140
+
141
+ | Setting | Default | Description |
142
+ |---------|---------|-------------|
143
+ | `mode` | `"a"` | Operating mode: `a`, `b`, or `c` |
144
+ | `profile` | `"default"` | Active memory profile |
145
+ | `auto_capture` | `true` | Automatically store decisions and context |
146
+ | `auto_recall` | `true` | Automatically inject relevant memories |
147
+ | `embedding_model` | `"all-MiniLM-L6-v2"` | Sentence transformer for semantic search |
148
+ | `max_recall_results` | `10` | Maximum memories returned per query |
149
+
150
+ ## Environment Variables
151
+
152
+ These override config file settings when set:
153
+
154
+ | Variable | Purpose |
155
+ |----------|---------|
156
+ | `SLM_MODE` | Override operating mode |
157
+ | `SLM_PROFILE` | Override active profile |
158
+ | `SLM_DATA_DIR` | Override data directory (default: `~/.superlocalmemory/`) |
159
+ | `OPENAI_API_KEY` | OpenAI API key for Mode C |
160
+ | `ANTHROPIC_API_KEY` | Anthropic API key for Mode C |
161
+ | `AZURE_OPENAI_API_KEY` | Azure OpenAI API key for Mode C |
162
+ | `OPENROUTER_API_KEY` | OpenRouter API key for Mode C |
163
+
164
+ ## Database Location
165
+
166
+ All data is stored locally in:
167
+
168
+ ```
169
+ ~/.superlocalmemory/memory.db # SQLite database
170
+ ~/.superlocalmemory/config.json # Configuration
171
+ ~/.superlocalmemory/backups/ # Automatic backups
172
+ ```
173
+
174
+ To use a custom location:
175
+
176
+ ```bash
177
+ export SLM_DATA_DIR="/path/to/your/data"
178
+ ```
179
+
180
+ ---
181
+
182
+ *SuperLocalMemory V3 — Copyright 2026 Varun Pratap Bhardwaj. MIT License. Part of Qualixar.*