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.
Files changed (434) hide show
  1. package/CHANGELOG.md +11 -0
  2. package/LICENSE +9 -1
  3. package/NOTICE +63 -0
  4. package/README.md +165 -480
  5. package/bin/slm +17 -449
  6. package/bin/slm-npm +2 -2
  7. package/bin/slm.bat +4 -2
  8. package/conftest.py +5 -0
  9. package/docs/api-reference.md +284 -0
  10. package/docs/architecture.md +149 -0
  11. package/docs/auto-memory.md +150 -0
  12. package/docs/cli-reference.md +276 -0
  13. package/docs/compliance.md +191 -0
  14. package/docs/configuration.md +182 -0
  15. package/docs/getting-started.md +102 -0
  16. package/docs/ide-setup.md +261 -0
  17. package/docs/mcp-tools.md +220 -0
  18. package/docs/migration-from-v2.md +170 -0
  19. package/docs/profiles.md +173 -0
  20. package/docs/troubleshooting.md +310 -0
  21. package/{configs → ide/configs}/antigravity-mcp.json +3 -3
  22. package/ide/configs/chatgpt-desktop-mcp.json +16 -0
  23. package/{configs → ide/configs}/claude-desktop-mcp.json +3 -3
  24. package/{configs → ide/configs}/codex-mcp.toml +4 -4
  25. package/{configs → ide/configs}/continue-mcp.yaml +4 -3
  26. package/{configs → ide/configs}/continue-skills.yaml +6 -6
  27. package/ide/configs/cursor-mcp.json +15 -0
  28. package/{configs → ide/configs}/gemini-cli-mcp.json +2 -2
  29. package/{configs → ide/configs}/jetbrains-mcp.json +2 -2
  30. package/{configs → ide/configs}/opencode-mcp.json +2 -2
  31. package/{configs → ide/configs}/perplexity-mcp.json +2 -2
  32. package/{configs → ide/configs}/vscode-copilot-mcp.json +2 -2
  33. package/{configs → ide/configs}/windsurf-mcp.json +3 -3
  34. package/{configs → ide/configs}/zed-mcp.json +2 -2
  35. package/{hooks → ide/hooks}/context-hook.js +9 -20
  36. package/ide/hooks/memory-list-skill.js +70 -0
  37. package/ide/hooks/memory-profile-skill.js +101 -0
  38. package/ide/hooks/memory-recall-skill.js +62 -0
  39. package/ide/hooks/memory-remember-skill.js +68 -0
  40. package/ide/hooks/memory-reset-skill.js +160 -0
  41. package/{hooks → ide/hooks}/post-recall-hook.js +2 -2
  42. package/ide/integrations/langchain/README.md +106 -0
  43. package/ide/integrations/langchain/langchain_superlocalmemory/__init__.py +9 -0
  44. package/ide/integrations/langchain/langchain_superlocalmemory/chat_message_history.py +201 -0
  45. package/ide/integrations/langchain/pyproject.toml +38 -0
  46. package/{src/learning → ide/integrations/langchain}/tests/__init__.py +1 -0
  47. package/ide/integrations/langchain/tests/test_chat_message_history.py +215 -0
  48. package/ide/integrations/langchain/tests/test_security.py +117 -0
  49. package/ide/integrations/llamaindex/README.md +81 -0
  50. package/ide/integrations/llamaindex/llama_index/storage/chat_store/superlocalmemory/__init__.py +9 -0
  51. package/ide/integrations/llamaindex/llama_index/storage/chat_store/superlocalmemory/base.py +316 -0
  52. package/ide/integrations/llamaindex/pyproject.toml +43 -0
  53. package/{src/lifecycle → ide/integrations/llamaindex}/tests/__init__.py +1 -2
  54. package/ide/integrations/llamaindex/tests/test_chat_store.py +294 -0
  55. package/ide/integrations/llamaindex/tests/test_security.py +241 -0
  56. package/{skills → ide/skills}/slm-build-graph/SKILL.md +6 -6
  57. package/{skills → ide/skills}/slm-list-recent/SKILL.md +5 -5
  58. package/{skills → ide/skills}/slm-recall/SKILL.md +5 -5
  59. package/{skills → ide/skills}/slm-remember/SKILL.md +6 -6
  60. package/{skills → ide/skills}/slm-show-patterns/SKILL.md +7 -7
  61. package/{skills → ide/skills}/slm-status/SKILL.md +9 -9
  62. package/{skills → ide/skills}/slm-switch-profile/SKILL.md +9 -9
  63. package/package.json +13 -22
  64. package/pyproject.toml +85 -0
  65. package/scripts/build-dmg.sh +417 -0
  66. package/scripts/install-skills.ps1 +334 -0
  67. package/{install.ps1 → scripts/install.ps1} +36 -4
  68. package/{install.sh → scripts/install.sh} +14 -13
  69. package/scripts/postinstall.js +2 -2
  70. package/scripts/start-dashboard.ps1 +52 -0
  71. package/scripts/start-dashboard.sh +41 -0
  72. package/scripts/sync-wiki.ps1 +127 -0
  73. package/scripts/sync-wiki.sh +82 -0
  74. package/scripts/test-dmg.sh +161 -0
  75. package/scripts/test-npm-package.ps1 +252 -0
  76. package/scripts/test-npm-package.sh +207 -0
  77. package/scripts/verify-install.ps1 +294 -0
  78. package/scripts/verify-install.sh +266 -0
  79. package/src/superlocalmemory/__init__.py +0 -0
  80. package/src/superlocalmemory/attribution/__init__.py +9 -0
  81. package/src/superlocalmemory/attribution/mathematical_dna.py +235 -0
  82. package/src/superlocalmemory/attribution/signer.py +153 -0
  83. package/src/superlocalmemory/attribution/watermark.py +189 -0
  84. package/src/superlocalmemory/cli/__init__.py +5 -0
  85. package/src/superlocalmemory/cli/commands.py +245 -0
  86. package/src/superlocalmemory/cli/main.py +89 -0
  87. package/src/superlocalmemory/cli/migrate_cmd.py +55 -0
  88. package/src/superlocalmemory/cli/post_install.py +99 -0
  89. package/src/superlocalmemory/cli/setup_wizard.py +129 -0
  90. package/src/superlocalmemory/compliance/__init__.py +0 -0
  91. package/src/superlocalmemory/compliance/abac.py +204 -0
  92. package/src/superlocalmemory/compliance/audit.py +314 -0
  93. package/src/superlocalmemory/compliance/eu_ai_act.py +131 -0
  94. package/src/superlocalmemory/compliance/gdpr.py +294 -0
  95. package/src/superlocalmemory/compliance/lifecycle.py +158 -0
  96. package/src/superlocalmemory/compliance/retention.py +232 -0
  97. package/src/superlocalmemory/compliance/scheduler.py +148 -0
  98. package/src/superlocalmemory/core/__init__.py +0 -0
  99. package/src/superlocalmemory/core/config.py +391 -0
  100. package/src/superlocalmemory/core/embeddings.py +293 -0
  101. package/src/superlocalmemory/core/engine.py +701 -0
  102. package/src/superlocalmemory/core/hooks.py +65 -0
  103. package/src/superlocalmemory/core/maintenance.py +172 -0
  104. package/src/superlocalmemory/core/modes.py +140 -0
  105. package/src/superlocalmemory/core/profiles.py +234 -0
  106. package/src/superlocalmemory/core/registry.py +117 -0
  107. package/src/superlocalmemory/dynamics/__init__.py +0 -0
  108. package/src/superlocalmemory/dynamics/fisher_langevin_coupling.py +223 -0
  109. package/src/superlocalmemory/encoding/__init__.py +0 -0
  110. package/src/superlocalmemory/encoding/consolidator.py +485 -0
  111. package/src/superlocalmemory/encoding/emotional.py +125 -0
  112. package/src/superlocalmemory/encoding/entity_resolver.py +525 -0
  113. package/src/superlocalmemory/encoding/entropy_gate.py +104 -0
  114. package/src/superlocalmemory/encoding/fact_extractor.py +775 -0
  115. package/src/superlocalmemory/encoding/foresight.py +91 -0
  116. package/src/superlocalmemory/encoding/graph_builder.py +302 -0
  117. package/src/superlocalmemory/encoding/observation_builder.py +160 -0
  118. package/src/superlocalmemory/encoding/scene_builder.py +183 -0
  119. package/src/superlocalmemory/encoding/signal_inference.py +90 -0
  120. package/src/superlocalmemory/encoding/temporal_parser.py +426 -0
  121. package/src/superlocalmemory/encoding/type_router.py +235 -0
  122. package/src/superlocalmemory/hooks/__init__.py +3 -0
  123. package/src/superlocalmemory/hooks/auto_capture.py +111 -0
  124. package/src/superlocalmemory/hooks/auto_recall.py +93 -0
  125. package/src/superlocalmemory/hooks/ide_connector.py +204 -0
  126. package/src/superlocalmemory/hooks/rules_engine.py +99 -0
  127. package/src/superlocalmemory/infra/__init__.py +3 -0
  128. package/src/superlocalmemory/infra/auth_middleware.py +82 -0
  129. package/src/superlocalmemory/infra/backup.py +317 -0
  130. package/src/superlocalmemory/infra/cache_manager.py +267 -0
  131. package/src/superlocalmemory/infra/event_bus.py +381 -0
  132. package/src/superlocalmemory/infra/rate_limiter.py +135 -0
  133. package/src/{webhook_dispatcher.py → superlocalmemory/infra/webhook_dispatcher.py} +104 -101
  134. package/src/superlocalmemory/learning/__init__.py +0 -0
  135. package/src/superlocalmemory/learning/adaptive.py +172 -0
  136. package/src/superlocalmemory/learning/behavioral.py +490 -0
  137. package/src/superlocalmemory/learning/behavioral_listener.py +94 -0
  138. package/src/superlocalmemory/learning/bootstrap.py +298 -0
  139. package/src/superlocalmemory/learning/cross_project.py +399 -0
  140. package/src/superlocalmemory/learning/database.py +376 -0
  141. package/src/superlocalmemory/learning/engagement.py +323 -0
  142. package/src/superlocalmemory/learning/features.py +138 -0
  143. package/src/superlocalmemory/learning/feedback.py +316 -0
  144. package/src/superlocalmemory/learning/outcomes.py +255 -0
  145. package/src/superlocalmemory/learning/project_context.py +366 -0
  146. package/src/superlocalmemory/learning/ranker.py +155 -0
  147. package/src/superlocalmemory/learning/source_quality.py +303 -0
  148. package/src/superlocalmemory/learning/workflows.py +309 -0
  149. package/src/superlocalmemory/llm/__init__.py +0 -0
  150. package/src/superlocalmemory/llm/backbone.py +316 -0
  151. package/src/superlocalmemory/math/__init__.py +0 -0
  152. package/src/superlocalmemory/math/fisher.py +356 -0
  153. package/src/superlocalmemory/math/langevin.py +398 -0
  154. package/src/superlocalmemory/math/sheaf.py +257 -0
  155. package/src/superlocalmemory/mcp/__init__.py +0 -0
  156. package/src/superlocalmemory/mcp/resources.py +245 -0
  157. package/src/superlocalmemory/mcp/server.py +61 -0
  158. package/src/superlocalmemory/mcp/tools.py +18 -0
  159. package/src/superlocalmemory/mcp/tools_core.py +305 -0
  160. package/src/superlocalmemory/mcp/tools_v28.py +223 -0
  161. package/src/superlocalmemory/mcp/tools_v3.py +286 -0
  162. package/src/superlocalmemory/retrieval/__init__.py +0 -0
  163. package/src/superlocalmemory/retrieval/agentic.py +295 -0
  164. package/src/superlocalmemory/retrieval/ann_index.py +223 -0
  165. package/src/superlocalmemory/retrieval/bm25_channel.py +185 -0
  166. package/src/superlocalmemory/retrieval/bridge_discovery.py +170 -0
  167. package/src/superlocalmemory/retrieval/engine.py +390 -0
  168. package/src/superlocalmemory/retrieval/entity_channel.py +179 -0
  169. package/src/superlocalmemory/retrieval/fusion.py +78 -0
  170. package/src/superlocalmemory/retrieval/profile_channel.py +105 -0
  171. package/src/superlocalmemory/retrieval/reranker.py +154 -0
  172. package/src/superlocalmemory/retrieval/semantic_channel.py +232 -0
  173. package/src/superlocalmemory/retrieval/strategy.py +96 -0
  174. package/src/superlocalmemory/retrieval/temporal_channel.py +175 -0
  175. package/src/superlocalmemory/server/__init__.py +1 -0
  176. package/src/superlocalmemory/server/api.py +248 -0
  177. package/src/superlocalmemory/server/routes/__init__.py +4 -0
  178. package/src/superlocalmemory/server/routes/agents.py +107 -0
  179. package/src/superlocalmemory/server/routes/backup.py +91 -0
  180. package/src/superlocalmemory/server/routes/behavioral.py +127 -0
  181. package/src/superlocalmemory/server/routes/compliance.py +160 -0
  182. package/src/superlocalmemory/server/routes/data_io.py +188 -0
  183. package/src/superlocalmemory/server/routes/events.py +183 -0
  184. package/src/superlocalmemory/server/routes/helpers.py +85 -0
  185. package/src/superlocalmemory/server/routes/learning.py +273 -0
  186. package/src/superlocalmemory/server/routes/lifecycle.py +116 -0
  187. package/src/superlocalmemory/server/routes/memories.py +399 -0
  188. package/src/superlocalmemory/server/routes/profiles.py +219 -0
  189. package/src/superlocalmemory/server/routes/stats.py +346 -0
  190. package/src/superlocalmemory/server/routes/v3_api.py +365 -0
  191. package/src/superlocalmemory/server/routes/ws.py +82 -0
  192. package/src/superlocalmemory/server/security_middleware.py +57 -0
  193. package/src/superlocalmemory/server/ui.py +245 -0
  194. package/src/superlocalmemory/storage/__init__.py +0 -0
  195. package/src/superlocalmemory/storage/access_control.py +182 -0
  196. package/src/superlocalmemory/storage/database.py +594 -0
  197. package/src/superlocalmemory/storage/migrations.py +303 -0
  198. package/src/superlocalmemory/storage/models.py +406 -0
  199. package/src/superlocalmemory/storage/schema.py +726 -0
  200. package/src/superlocalmemory/storage/v2_migrator.py +317 -0
  201. package/src/superlocalmemory/trust/__init__.py +0 -0
  202. package/src/superlocalmemory/trust/gate.py +130 -0
  203. package/src/superlocalmemory/trust/provenance.py +124 -0
  204. package/src/superlocalmemory/trust/scorer.py +347 -0
  205. package/src/superlocalmemory/trust/signals.py +153 -0
  206. package/ui/index.html +278 -5
  207. package/ui/js/auto-settings.js +70 -0
  208. package/ui/js/dashboard.js +90 -0
  209. package/ui/js/fact-detail.js +92 -0
  210. package/ui/js/feedback.js +2 -2
  211. package/ui/js/ide-status.js +102 -0
  212. package/ui/js/math-health.js +98 -0
  213. package/ui/js/recall-lab.js +127 -0
  214. package/ui/js/settings.js +2 -2
  215. package/ui/js/trust-dashboard.js +73 -0
  216. package/api_server.py +0 -724
  217. package/bin/aider-smart +0 -72
  218. package/bin/superlocalmemoryv2-learning +0 -4
  219. package/bin/superlocalmemoryv2-list +0 -3
  220. package/bin/superlocalmemoryv2-patterns +0 -4
  221. package/bin/superlocalmemoryv2-profile +0 -3
  222. package/bin/superlocalmemoryv2-recall +0 -3
  223. package/bin/superlocalmemoryv2-remember +0 -3
  224. package/bin/superlocalmemoryv2-reset +0 -3
  225. package/bin/superlocalmemoryv2-status +0 -3
  226. package/configs/chatgpt-desktop-mcp.json +0 -16
  227. package/configs/cursor-mcp.json +0 -15
  228. package/docs/SECURITY-QUICK-REFERENCE.md +0 -214
  229. package/hooks/memory-list-skill.js +0 -139
  230. package/hooks/memory-profile-skill.js +0 -273
  231. package/hooks/memory-recall-skill.js +0 -114
  232. package/hooks/memory-remember-skill.js +0 -127
  233. package/hooks/memory-reset-skill.js +0 -274
  234. package/mcp_server.py +0 -1800
  235. package/requirements-core.txt +0 -22
  236. package/requirements-learning.txt +0 -12
  237. package/requirements.txt +0 -12
  238. package/src/agent_registry.py +0 -411
  239. package/src/auth_middleware.py +0 -61
  240. package/src/auto_backup.py +0 -459
  241. package/src/behavioral/__init__.py +0 -49
  242. package/src/behavioral/behavioral_listener.py +0 -203
  243. package/src/behavioral/behavioral_patterns.py +0 -275
  244. package/src/behavioral/cross_project_transfer.py +0 -206
  245. package/src/behavioral/outcome_inference.py +0 -194
  246. package/src/behavioral/outcome_tracker.py +0 -193
  247. package/src/behavioral/tests/__init__.py +0 -4
  248. package/src/behavioral/tests/test_behavioral_integration.py +0 -108
  249. package/src/behavioral/tests/test_behavioral_patterns.py +0 -150
  250. package/src/behavioral/tests/test_cross_project_transfer.py +0 -142
  251. package/src/behavioral/tests/test_mcp_behavioral.py +0 -139
  252. package/src/behavioral/tests/test_mcp_report_outcome.py +0 -117
  253. package/src/behavioral/tests/test_outcome_inference.py +0 -107
  254. package/src/behavioral/tests/test_outcome_tracker.py +0 -96
  255. package/src/cache_manager.py +0 -518
  256. package/src/compliance/__init__.py +0 -48
  257. package/src/compliance/abac_engine.py +0 -149
  258. package/src/compliance/abac_middleware.py +0 -116
  259. package/src/compliance/audit_db.py +0 -215
  260. package/src/compliance/audit_logger.py +0 -148
  261. package/src/compliance/retention_manager.py +0 -289
  262. package/src/compliance/retention_scheduler.py +0 -186
  263. package/src/compliance/tests/__init__.py +0 -4
  264. package/src/compliance/tests/test_abac_enforcement.py +0 -95
  265. package/src/compliance/tests/test_abac_engine.py +0 -124
  266. package/src/compliance/tests/test_abac_mcp_integration.py +0 -118
  267. package/src/compliance/tests/test_audit_db.py +0 -123
  268. package/src/compliance/tests/test_audit_logger.py +0 -98
  269. package/src/compliance/tests/test_mcp_audit.py +0 -128
  270. package/src/compliance/tests/test_mcp_retention_policy.py +0 -125
  271. package/src/compliance/tests/test_retention_manager.py +0 -131
  272. package/src/compliance/tests/test_retention_scheduler.py +0 -99
  273. package/src/compression/__init__.py +0 -25
  274. package/src/compression/cli.py +0 -150
  275. package/src/compression/cold_storage.py +0 -217
  276. package/src/compression/config.py +0 -72
  277. package/src/compression/orchestrator.py +0 -133
  278. package/src/compression/tier2_compressor.py +0 -228
  279. package/src/compression/tier3_compressor.py +0 -153
  280. package/src/compression/tier_classifier.py +0 -148
  281. package/src/db_connection_manager.py +0 -536
  282. package/src/embedding_engine.py +0 -63
  283. package/src/embeddings/__init__.py +0 -47
  284. package/src/embeddings/cache.py +0 -70
  285. package/src/embeddings/cli.py +0 -113
  286. package/src/embeddings/constants.py +0 -47
  287. package/src/embeddings/database.py +0 -91
  288. package/src/embeddings/engine.py +0 -247
  289. package/src/embeddings/model_loader.py +0 -145
  290. package/src/event_bus.py +0 -562
  291. package/src/graph/__init__.py +0 -36
  292. package/src/graph/build_helpers.py +0 -74
  293. package/src/graph/cli.py +0 -87
  294. package/src/graph/cluster_builder.py +0 -188
  295. package/src/graph/cluster_summary.py +0 -148
  296. package/src/graph/constants.py +0 -47
  297. package/src/graph/edge_builder.py +0 -162
  298. package/src/graph/entity_extractor.py +0 -95
  299. package/src/graph/graph_core.py +0 -226
  300. package/src/graph/graph_search.py +0 -231
  301. package/src/graph/hierarchical.py +0 -207
  302. package/src/graph/schema.py +0 -99
  303. package/src/graph_engine.py +0 -52
  304. package/src/hnsw_index.py +0 -628
  305. package/src/hybrid_search.py +0 -46
  306. package/src/learning/__init__.py +0 -217
  307. package/src/learning/adaptive_ranker.py +0 -682
  308. package/src/learning/bootstrap/__init__.py +0 -69
  309. package/src/learning/bootstrap/constants.py +0 -93
  310. package/src/learning/bootstrap/db_queries.py +0 -316
  311. package/src/learning/bootstrap/sampling.py +0 -82
  312. package/src/learning/bootstrap/text_utils.py +0 -71
  313. package/src/learning/cross_project_aggregator.py +0 -857
  314. package/src/learning/db/__init__.py +0 -40
  315. package/src/learning/db/constants.py +0 -44
  316. package/src/learning/db/schema.py +0 -279
  317. package/src/learning/engagement_tracker.py +0 -628
  318. package/src/learning/feature_extractor.py +0 -708
  319. package/src/learning/feedback_collector.py +0 -806
  320. package/src/learning/learning_db.py +0 -915
  321. package/src/learning/project_context_manager.py +0 -572
  322. package/src/learning/ranking/__init__.py +0 -33
  323. package/src/learning/ranking/constants.py +0 -84
  324. package/src/learning/ranking/helpers.py +0 -278
  325. package/src/learning/source_quality_scorer.py +0 -676
  326. package/src/learning/synthetic_bootstrap.py +0 -755
  327. package/src/learning/tests/test_adaptive_ranker.py +0 -325
  328. package/src/learning/tests/test_adaptive_ranker_v28.py +0 -60
  329. package/src/learning/tests/test_aggregator.py +0 -306
  330. package/src/learning/tests/test_auto_retrain_v28.py +0 -35
  331. package/src/learning/tests/test_e2e_ranking_v28.py +0 -82
  332. package/src/learning/tests/test_feature_extractor_v28.py +0 -93
  333. package/src/learning/tests/test_feedback_collector.py +0 -294
  334. package/src/learning/tests/test_learning_db.py +0 -602
  335. package/src/learning/tests/test_learning_db_v28.py +0 -110
  336. package/src/learning/tests/test_learning_init_v28.py +0 -48
  337. package/src/learning/tests/test_outcome_signals.py +0 -48
  338. package/src/learning/tests/test_project_context.py +0 -292
  339. package/src/learning/tests/test_schema_migration.py +0 -319
  340. package/src/learning/tests/test_signal_inference.py +0 -397
  341. package/src/learning/tests/test_source_quality.py +0 -351
  342. package/src/learning/tests/test_synthetic_bootstrap.py +0 -429
  343. package/src/learning/tests/test_workflow_miner.py +0 -318
  344. package/src/learning/workflow_pattern_miner.py +0 -655
  345. package/src/lifecycle/__init__.py +0 -54
  346. package/src/lifecycle/bounded_growth.py +0 -239
  347. package/src/lifecycle/compaction_engine.py +0 -226
  348. package/src/lifecycle/lifecycle_engine.py +0 -355
  349. package/src/lifecycle/lifecycle_evaluator.py +0 -257
  350. package/src/lifecycle/lifecycle_scheduler.py +0 -130
  351. package/src/lifecycle/retention_policy.py +0 -285
  352. package/src/lifecycle/tests/test_bounded_growth.py +0 -193
  353. package/src/lifecycle/tests/test_compaction.py +0 -179
  354. package/src/lifecycle/tests/test_lifecycle_engine.py +0 -137
  355. package/src/lifecycle/tests/test_lifecycle_evaluation.py +0 -177
  356. package/src/lifecycle/tests/test_lifecycle_scheduler.py +0 -127
  357. package/src/lifecycle/tests/test_lifecycle_search.py +0 -109
  358. package/src/lifecycle/tests/test_mcp_compact.py +0 -149
  359. package/src/lifecycle/tests/test_mcp_lifecycle_status.py +0 -114
  360. package/src/lifecycle/tests/test_retention_policy.py +0 -162
  361. package/src/mcp_tools_v28.py +0 -281
  362. package/src/memory/__init__.py +0 -36
  363. package/src/memory/cli.py +0 -205
  364. package/src/memory/constants.py +0 -39
  365. package/src/memory/helpers.py +0 -28
  366. package/src/memory/schema.py +0 -166
  367. package/src/memory-profiles.py +0 -595
  368. package/src/memory-reset.py +0 -491
  369. package/src/memory_compression.py +0 -989
  370. package/src/memory_store_v2.py +0 -1155
  371. package/src/migrate_v1_to_v2.py +0 -629
  372. package/src/pattern_learner.py +0 -34
  373. package/src/patterns/__init__.py +0 -24
  374. package/src/patterns/analyzers.py +0 -251
  375. package/src/patterns/learner.py +0 -271
  376. package/src/patterns/scoring.py +0 -171
  377. package/src/patterns/store.py +0 -225
  378. package/src/patterns/terminology.py +0 -140
  379. package/src/provenance_tracker.py +0 -312
  380. package/src/qualixar_attribution.py +0 -139
  381. package/src/qualixar_watermark.py +0 -78
  382. package/src/query_optimizer.py +0 -511
  383. package/src/rate_limiter.py +0 -83
  384. package/src/search/__init__.py +0 -20
  385. package/src/search/cli.py +0 -77
  386. package/src/search/constants.py +0 -26
  387. package/src/search/engine.py +0 -241
  388. package/src/search/fusion.py +0 -122
  389. package/src/search/index_loader.py +0 -114
  390. package/src/search/methods.py +0 -162
  391. package/src/search_engine_v2.py +0 -401
  392. package/src/setup_validator.py +0 -482
  393. package/src/subscription_manager.py +0 -391
  394. package/src/tree/__init__.py +0 -59
  395. package/src/tree/builder.py +0 -185
  396. package/src/tree/nodes.py +0 -202
  397. package/src/tree/queries.py +0 -257
  398. package/src/tree/schema.py +0 -80
  399. package/src/tree_manager.py +0 -19
  400. package/src/trust/__init__.py +0 -45
  401. package/src/trust/constants.py +0 -66
  402. package/src/trust/queries.py +0 -157
  403. package/src/trust/schema.py +0 -95
  404. package/src/trust/scorer.py +0 -299
  405. package/src/trust/signals.py +0 -95
  406. package/src/trust_scorer.py +0 -44
  407. package/ui/app.js +0 -1588
  408. package/ui/js/graph-cytoscape-monolithic-backup.js +0 -1168
  409. package/ui/js/graph-cytoscape.js +0 -1168
  410. package/ui/js/graph-d3-backup.js +0 -32
  411. package/ui/js/graph.js +0 -32
  412. package/ui_server.py +0 -266
  413. /package/docs/{ACCESSIBILITY.md → v2-archive/ACCESSIBILITY.md} +0 -0
  414. /package/docs/{ARCHITECTURE.md → v2-archive/ARCHITECTURE.md} +0 -0
  415. /package/docs/{CLI-COMMANDS-REFERENCE.md → v2-archive/CLI-COMMANDS-REFERENCE.md} +0 -0
  416. /package/docs/{COMPRESSION-README.md → v2-archive/COMPRESSION-README.md} +0 -0
  417. /package/docs/{FRAMEWORK-INTEGRATIONS.md → v2-archive/FRAMEWORK-INTEGRATIONS.md} +0 -0
  418. /package/docs/{MCP-MANUAL-SETUP.md → v2-archive/MCP-MANUAL-SETUP.md} +0 -0
  419. /package/docs/{MCP-TROUBLESHOOTING.md → v2-archive/MCP-TROUBLESHOOTING.md} +0 -0
  420. /package/docs/{PATTERN-LEARNING.md → v2-archive/PATTERN-LEARNING.md} +0 -0
  421. /package/docs/{PROFILES-GUIDE.md → v2-archive/PROFILES-GUIDE.md} +0 -0
  422. /package/docs/{RESET-GUIDE.md → v2-archive/RESET-GUIDE.md} +0 -0
  423. /package/docs/{SEARCH-ENGINE-V2.2.0.md → v2-archive/SEARCH-ENGINE-V2.2.0.md} +0 -0
  424. /package/docs/{SEARCH-INTEGRATION-GUIDE.md → v2-archive/SEARCH-INTEGRATION-GUIDE.md} +0 -0
  425. /package/docs/{UI-SERVER.md → v2-archive/UI-SERVER.md} +0 -0
  426. /package/docs/{UNIVERSAL-INTEGRATION.md → v2-archive/UNIVERSAL-INTEGRATION.md} +0 -0
  427. /package/docs/{V2.2.0-OPTIONAL-SEARCH.md → v2-archive/V2.2.0-OPTIONAL-SEARCH.md} +0 -0
  428. /package/docs/{WINDOWS-INSTALL-README.txt → v2-archive/WINDOWS-INSTALL-README.txt} +0 -0
  429. /package/docs/{WINDOWS-POST-INSTALL.txt → v2-archive/WINDOWS-POST-INSTALL.txt} +0 -0
  430. /package/docs/{example_graph_usage.py → v2-archive/example_graph_usage.py} +0 -0
  431. /package/{completions → ide/completions}/slm.bash +0 -0
  432. /package/{completions → ide/completions}/slm.zsh +0 -0
  433. /package/{configs → ide/configs}/cody-commands.json +0 -0
  434. /package/{install-skills.sh → scripts/install-skills.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.*