superlocalmemory 3.4.17 → 3.4.19

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 (80) hide show
  1. package/CHANGELOG.md +19 -0
  2. package/package.json +1 -3
  3. package/pyproject.toml +10 -1
  4. package/src/superlocalmemory/cli/setup_wizard.py +30 -0
  5. package/src/superlocalmemory/core/embeddings.py +8 -2
  6. package/src/superlocalmemory/retrieval/reranker.py +4 -2
  7. package/src/superlocalmemory.egg-info/PKG-INFO +4 -1
  8. package/src/superlocalmemory.egg-info/requires.txt +3 -0
  9. package/docs/ARCHITECTURE.md +0 -149
  10. package/docs/api-reference.md +0 -284
  11. package/docs/auto-memory.md +0 -150
  12. package/docs/cli-reference.md +0 -327
  13. package/docs/cloud-backup.md +0 -174
  14. package/docs/compliance.md +0 -191
  15. package/docs/configuration.md +0 -182
  16. package/docs/getting-started.md +0 -102
  17. package/docs/ide-setup.md +0 -261
  18. package/docs/mcp-tools.md +0 -220
  19. package/docs/migration-from-v2.md +0 -170
  20. package/docs/profiles.md +0 -173
  21. package/docs/screenshots/01-dashboard-main.png +0 -0
  22. package/docs/screenshots/02-knowledge-graph.png +0 -0
  23. package/docs/screenshots/03-math-health.png +0 -0
  24. package/docs/screenshots/03-patterns-learning.png +0 -0
  25. package/docs/screenshots/04-learning-dashboard.png +0 -0
  26. package/docs/screenshots/04-recall-lab.png +0 -0
  27. package/docs/screenshots/05-behavioral-analysis.png +0 -0
  28. package/docs/screenshots/05-trust-dashboard.png +0 -0
  29. package/docs/screenshots/06-graph-communities.png +0 -0
  30. package/docs/screenshots/06-settings.png +0 -0
  31. package/docs/screenshots/07-memories-blurred.png +0 -0
  32. package/docs/skill-evolution.md +0 -256
  33. package/docs/troubleshooting.md +0 -310
  34. package/docs/v2-archive/ACCESSIBILITY.md +0 -291
  35. package/docs/v2-archive/ARCHITECTURE.md +0 -886
  36. package/docs/v2-archive/CLI-COMMANDS-REFERENCE.md +0 -425
  37. package/docs/v2-archive/COMPRESSION-README.md +0 -390
  38. package/docs/v2-archive/FRAMEWORK-INTEGRATIONS.md +0 -300
  39. package/docs/v2-archive/MCP-MANUAL-SETUP.md +0 -775
  40. package/docs/v2-archive/MCP-TROUBLESHOOTING.md +0 -787
  41. package/docs/v2-archive/PATTERN-LEARNING.md +0 -228
  42. package/docs/v2-archive/PROFILES-GUIDE.md +0 -453
  43. package/docs/v2-archive/RESET-GUIDE.md +0 -353
  44. package/docs/v2-archive/SEARCH-ENGINE-V2.2.0.md +0 -749
  45. package/docs/v2-archive/SEARCH-INTEGRATION-GUIDE.md +0 -502
  46. package/docs/v2-archive/UI-SERVER.md +0 -262
  47. package/docs/v2-archive/UNIVERSAL-INTEGRATION.md +0 -488
  48. package/docs/v2-archive/V2.2.0-OPTIONAL-SEARCH.md +0 -666
  49. package/docs/v2-archive/WINDOWS-INSTALL-README.txt +0 -34
  50. package/docs/v2-archive/WINDOWS-POST-INSTALL.txt +0 -45
  51. package/docs/v2-archive/example_graph_usage.py +0 -146
  52. package/ui/index.html +0 -1879
  53. package/ui/js/agents.js +0 -192
  54. package/ui/js/auto-settings.js +0 -399
  55. package/ui/js/behavioral.js +0 -276
  56. package/ui/js/clusters.js +0 -206
  57. package/ui/js/compliance.js +0 -252
  58. package/ui/js/core.js +0 -246
  59. package/ui/js/dashboard.js +0 -110
  60. package/ui/js/events.js +0 -178
  61. package/ui/js/fact-detail.js +0 -92
  62. package/ui/js/feedback.js +0 -333
  63. package/ui/js/graph-core.js +0 -447
  64. package/ui/js/graph-filters.js +0 -220
  65. package/ui/js/graph-interactions.js +0 -351
  66. package/ui/js/graph-ui.js +0 -214
  67. package/ui/js/ide-status.js +0 -102
  68. package/ui/js/init.js +0 -45
  69. package/ui/js/learning.js +0 -435
  70. package/ui/js/lifecycle.js +0 -298
  71. package/ui/js/math-health.js +0 -98
  72. package/ui/js/memories.js +0 -264
  73. package/ui/js/modal.js +0 -357
  74. package/ui/js/patterns.js +0 -93
  75. package/ui/js/profiles.js +0 -236
  76. package/ui/js/recall-lab.js +0 -292
  77. package/ui/js/search.js +0 -59
  78. package/ui/js/settings.js +0 -224
  79. package/ui/js/timeline.js +0 -32
  80. package/ui/js/trust-dashboard.js +0 -73
package/docs/profiles.md DELETED
@@ -1,173 +0,0 @@
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. Elastic License 2.0. Part of Qualixar.*
Binary file
Binary file
Binary file
@@ -1,256 +0,0 @@
1
- # Skill Evolution — SuperLocalMemory
2
-
3
- > Track, analyze, and evolve your AI agent skills automatically.
4
-
5
- ---
6
-
7
- ## What Is Skill Evolution?
8
-
9
- Skill Evolution turns SuperLocalMemory from a passive memory system into an active learning engine that tracks how your skills perform and helps them improve over time.
10
-
11
- **The problem:** AI agent skills (SKILL.md files, slash commands, agent definitions) are static. A skill installed today works the same way 6 months from now — even if it failed 50 times, even if a better approach was discovered.
12
-
13
- **The solution:** SLM observes every skill invocation, builds execution traces, computes performance metrics, and surfaces insights so you (and eventually the system itself) can evolve skills based on real data.
14
-
15
- ---
16
-
17
- ## How It Works
18
-
19
- ```
20
- Your session
21
-
22
- │ SLM hook captures every tool call (enriched: input, output, session, project)
23
-
24
- tool_events table (rich execution data)
25
-
26
- │ SkillPerformanceMiner runs during consolidation
27
-
28
- Per-skill metrics + behavioral assertions + skill entities
29
-
30
- │ Next session's soft prompts include skill routing recommendations
31
-
32
- Smarter skill selection, session by session
33
- ```
34
-
35
- ### Three Data Sources
36
-
37
- | Source | What It Captures | Cost |
38
- |--------|-----------------|------|
39
- | **SLM Hook** (primary) | Every tool call with input/output (500 chars), session ID, project path. Secret scrubbing built-in. | Zero — runs locally, no LLM calls |
40
- | **ECC Integration** (optional) | Rich observations from [Everything Claude Code](https://github.com/affaan-m/everything-claude-code) via `slm ingest --source ecc` | Zero — reads existing ECC data |
41
- | **Consolidation Pipeline** | Mines tool_events for patterns, creates assertions, updates skill entities | Zero — statistical analysis only |
42
-
43
- ### What Gets Tracked Per Skill
44
-
45
- | Metric | Description |
46
- |--------|-------------|
47
- | **Invocation count** | How many times the skill was used |
48
- | **Effective score** | Approximate success rate based on execution trace analysis |
49
- | **Session count** | How many sessions used this skill |
50
- | **Skill correlations** | Which skills are frequently used together |
51
-
52
- ### Outcome Heuristic
53
-
54
- SLM uses a conservative, approximate heuristic to determine if a skill invocation was effective:
55
-
56
- | Signal | Type | What It Means |
57
- |--------|------|---------------|
58
- | Productive tools follow (Edit, Write, Bash success) | Positive | Skill likely helped |
59
- | Same skill re-invoked within 5 minutes | Negative | Likely retry = failure |
60
- | Bash errors in next 3 tool events | Negative | Something went wrong |
61
- | Session continues 10+ events | Weak positive | User stayed engaged |
62
-
63
- These signals are labeled as **approximate** everywhere. They inform soft prompt routing but do not trigger automatic changes without human review.
64
-
65
- ---
66
-
67
- ## Dashboard: Skill Evolution Tab
68
-
69
- The dedicated **Skill Evolution** tab in the SLM dashboard shows:
70
-
71
- - **Overview cards** — Total skill events, unique skills, performance assertions, skill correlations
72
- - **Skill performance cards** — Per-skill effective score, invocation count, confidence level
73
- - **Evolution Engine status** — Backend detection, enable/disable toggle, run button
74
- - **Skill Lineage DAG** — Visual graph of evolved skill versions (parent → child relationships)
75
- - **Lineage table** — Clickable rows showing evolution type, status, verification result
76
- - **Skill correlations** — Which skills work well together
77
-
78
- Access: Open `http://localhost:8765` and navigate to the Skill Evolution tab in the sidebar.
79
-
80
- ---
81
-
82
- ## IDE Compatibility
83
-
84
- | IDE | Status | How |
85
- |-----|--------|-----|
86
- | **Claude Code** | Supported | SLM hook auto-registered via `slm init` |
87
- | **Cursor** | Planned | Adapter needed |
88
- | **Windsurf** | Planned | Adapter needed |
89
- | **VS Code Copilot** | Planned | Extension events adapter needed |
90
- | **JetBrains** | Planned | Adapter needed |
91
- | **Any IDE** | API available | POST to `/api/v3/tool-event` directly |
92
-
93
- The backend (API, miner, database, dashboard) is fully IDE-agnostic. Any client that POSTs tool events to the `/api/v3/tool-event` endpoint gets full benefit. The hook that ships with SLM is currently optimized for Claude Code.
94
-
95
- ### API Endpoint
96
-
97
- ```bash
98
- POST http://localhost:8765/api/v3/tool-event
99
- Content-Type: application/json
100
-
101
- {
102
- "tool_name": "Skill",
103
- "event_type": "complete",
104
- "input_summary": "{\"skill\": \"my-skill-name\", \"args\": \"...\"}",
105
- "output_summary": "{\"success\": true}",
106
- "session_id": "your-session-id",
107
- "project_path": "/path/to/project"
108
- }
109
- ```
110
-
111
- All fields except `tool_name` are optional. Existing integrations that send only `tool_name` + `event_type` continue to work.
112
-
113
- ---
114
-
115
- ## ECC Integration
116
-
117
- [Everything Claude Code (ECC)](https://github.com/affaan-m/everything-claude-code) is a popular plugin for Claude Code that provides continuous learning, instinct-based pattern detection, and a rich observation pipeline.
118
-
119
- SLM's skill observation patterns were inspired by ECC's architecture. If you have ECC installed, you can enrich SLM's skill tracking with ECC's deeper observations:
120
-
121
- ```bash
122
- # One-time import of existing ECC observations
123
- slm ingest --source ecc
124
-
125
- # Preview without writing (dry run)
126
- slm ingest --source ecc --dry-run
127
- ```
128
-
129
- This reads ECC's observation files from `~/.claude/homunculus/projects/*/observations.jsonl` and imports them into SLM's `tool_events` table with full input/output preservation.
130
-
131
- **ECC is not required.** SLM is fully self-sufficient — its own hook captures all the data needed for skill tracking. ECC integration is an optional enhancement for users who want both systems working together.
132
-
133
- ---
134
-
135
- ## Configuration
136
-
137
- ### Skill Tracking (C1 — always on)
138
-
139
- Skill performance tracking is enabled by default when the SLM hook is registered. Zero-LLM, zero-cost. Runs as Step 10 in the consolidation pipeline.
140
-
141
- ```bash
142
- slm status # Shows hook registration status
143
- slm consolidate --cognitive # Trigger manual consolidation
144
- ```
145
-
146
- ### Skill Evolution (C2 — off by default)
147
-
148
- The Skill Evolution Engine uses LLM calls to generate improved skill versions. **It is OFF by default** — end users must opt in.
149
-
150
- **Why off by default:** Evolution makes LLM calls (confirmation gate + mutation + blind verification). Even with budget caps, users should consciously enable this and configure their LLM backend.
151
-
152
- #### Enable via CLI
153
-
154
- ```bash
155
- slm config set evolution.enabled true
156
- ```
157
-
158
- #### Enable via Interactive Installer
159
-
160
- ```bash
161
- slm setup # Interactive wizard includes evolution opt-in
162
- ```
163
-
164
- #### Enable via Dashboard
165
-
166
- Navigate to Settings → Skill Evolution → Enable.
167
-
168
- ### LLM Backend — Auto-Detect
169
-
170
- Evolution uses a single auto-detect chain. No manual configuration needed for most users:
171
-
172
- ```
173
- Priority 1: `claude` CLI available → spawn `claude --model haiku` (FREE, best quality)
174
- Priority 2: Ollama running → use Ollama (FREE, local)
175
- Priority 3: API key set → use Anthropic/OpenAI API (paid)
176
- Priority 4: Nothing available → dashboard-only (show candidates, manual evolution)
177
- ```
178
-
179
- This means:
180
- - **Claude Code users:** Evolution works for free — uses your existing Claude subscription
181
- - **Other IDE users with Ollama:** Evolution works for free — uses local Ollama
182
- - **Advanced users:** Can point at Anthropic/OpenAI API if preferred
183
-
184
- ```bash
185
- # Override auto-detect (optional — most users never need this)
186
- slm config set evolution.backend claude
187
- slm config set evolution.backend ollama
188
- slm config set evolution.backend anthropic
189
- ```
190
-
191
- ### Full Evolution Config Reference
192
-
193
- | Key | Default | Description |
194
- |-----|---------|-------------|
195
- | `evolution.enabled` | `false` | Master switch — off by default, opt-in |
196
- | `evolution.backend` | `auto` | LLM backend: `auto`, `claude`, `ollama`, `anthropic`, `openai` |
197
- | `evolution.max_evolutions_per_cycle` | `3` | Budget cap per consolidation cycle |
198
-
199
- ### Tracking Thresholds (C1)
200
-
201
- | Parameter | Default | Description |
202
- |-----------|---------|-------------|
203
- | MIN_INVOCATIONS | 5 | Minimum uses before creating assertions |
204
- | MIN_CONFIDENCE | 0.5 | Minimum confidence for soft prompt injection |
205
- | TRACE_WINDOW | 10 | Tool events to analyze after each Skill call |
206
- | RETRY_WINDOW | 300s | Same Skill within this window = potential retry |
207
-
208
- These are conservative by design — we'd rather miss a pattern than hallucinate one.
209
-
210
- ---
211
-
212
- ## Research Foundations
213
-
214
- SLM's skill evolution system draws from:
215
-
216
- - **[EvoSkills](https://arxiv.org/abs/2604.01687)** (HKUDS, 2026) — Co-evolutionary verification with information isolation. +30pp improvement from blind verification.
217
- - **[OpenSpace](https://github.com/HKUDS/OpenSpace)** (HKUDS, MIT) — 3-trigger evolution system (post-analysis + tool degradation + metric monitor). Anti-loop guards. Version DAG model.
218
- - **[SkillsBench](https://arxiv.org/abs/2602.12670)** (2026) — 86-task benchmark showing self-generated skills provide zero benefit without verification. Focused 2-3 module skills outperform exhaustive docs.
219
- - **[SoK: Agent Skills](https://arxiv.org/abs/2602.12430)** (2026) — Four-axis taxonomy. Skills and MCP are orthogonal layers.
220
-
221
- ---
222
-
223
- ## MCP Tools
224
-
225
- Three MCP tools are available for programmatic access:
226
-
227
- | Tool | Description |
228
- |------|-------------|
229
- | `evolve_skill` | Manually trigger evolution for a specific skill |
230
- | `skill_health` | Get health metrics (invocations, error rate, status) for skills |
231
- | `skill_lineage` | Get evolution lineage tree for a skill |
232
-
233
- These tools are registered automatically and available in all supported IDEs.
234
-
235
- ## CLI Commands
236
-
237
- ```bash
238
- slm config get evolution.enabled # Check if evolution is enabled
239
- slm config set evolution.enabled true # Enable evolution
240
- slm config set evolution.backend auto # Set LLM backend
241
- ```
242
-
243
- ## What's Next
244
-
245
- - **IDE Adapters** — Cursor, Windsurf, VS Code Copilot, JetBrains support for skill tracking.
246
- - **Skill lineage visualization improvements** — Richer DAG with performance history overlay.
247
-
248
- ---
249
-
250
- ## Links
251
-
252
- - [SLM GitHub](https://github.com/qualixar/superlocalmemory)
253
- - [Qualixar](https://qualixar.com)
254
- - [Everything Claude Code](https://github.com/affaan-m/everything-claude-code)
255
- - [OpenSpace](https://github.com/HKUDS/OpenSpace)
256
- - [EvoSkills Paper](https://arxiv.org/abs/2604.01687)