memorix 0.6.5 → 0.7.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.
package/CHANGELOG.md CHANGED
@@ -2,6 +2,41 @@
2
2
 
3
3
  All notable changes to this project will be documented in this file.
4
4
 
5
+ ## [0.7.1] — 2026-02-22
6
+
7
+ ### Fixed
8
+ - **Dashboard checkbox checkmark not visible** — Added `position: relative/absolute` to `.obs-checkbox::after` so the ✓ renders correctly in batch select mode
9
+ - **Embedding provider status flickers to "fulltext only"** — Replaced `initialized` boolean flag with a shared Promise lock; concurrent callers now wait for the same initialization instead of seeing `provider = null` mid-load
10
+ - **`memorix_dashboard` MCP tool reliability** — Replaced fixed 800ms wait with TCP port polling (up to 5s) so the tool only returns after the HTTP server is actually listening
11
+ - **Dashboard embedding status always shows "fulltext only"** — Fixed root cause: dashboard is an independent process, `isEmbeddingEnabled()` from orama-store always returns false there; now uses `provider !== null` directly
12
+
13
+ ## [0.7.0] — 2026-02-21
14
+
15
+ ### Added
16
+ - **Memory-Driven Skills Engine** (`memorix_skills` MCP tool):
17
+ - `list` — Discover all `SKILL.md` files across 7 agent directories
18
+ - `generate` — Auto-generate project-specific skills from observation patterns (gotchas, decisions, how-it-works)
19
+ - `inject` — Return full skill content directly to agent context
20
+ - Intelligent scoring: requires skill-worthy observation types, not just volume
21
+ - Write to any target agent with `write: true, target: "<agent>"`
22
+ - **Transformers.js Embedding Provider**:
23
+ - Pure JavaScript fallback (`@huggingface/transformers`) — no native deps required
24
+ - Provider chain: `fastembed` → `transformers.js` → fulltext-only
25
+ - Quantized model (`q8`) for small footprint
26
+ - **Dashboard Enhancements**:
27
+ - Canvas donut chart for observation type distribution
28
+ - Embedding provider status card (enabled/provider/dimensions)
29
+ - Search result highlighting with `<mark>` tags
30
+ - **17 new tests** for Skills Engine (list, generate, inject, write, scoring, dedup)
31
+
32
+ ### Changed
33
+ - Scoring algorithm requires at least 1 skill-worthy type (gotcha/decision/how-it-works/problem-solution/trade-off) — pure discovery/what-changed entities won't generate skills
34
+ - Volume bonus reduced from 2×obs to 1×obs (capped at 5) to favor quality over quantity
35
+ - Type diversity bonus increased from 2 to 3 points per unique skill-worthy type
36
+
37
+ ### Fixed
38
+ - 422 tests passing (up from 405), 34 test files, zero regressions
39
+
5
40
  ## [0.5.0] — 2026-02-15
6
41
 
7
42
  ### Added
package/README.md CHANGED
@@ -7,7 +7,7 @@
7
7
  <a href="https://www.npmjs.com/package/memorix"><img src="https://img.shields.io/npm/dm/memorix.svg?style=flat-square&color=blue" alt="npm downloads"></a>
8
8
  <a href="LICENSE"><img src="https://img.shields.io/badge/license-Apache%202.0-green.svg?style=flat-square" alt="License"></a>
9
9
  <a href="https://github.com/AVIDS2/memorix"><img src="https://img.shields.io/github/stars/AVIDS2/memorix?style=flat-square&color=yellow" alt="GitHub stars"></a>
10
- <img src="https://img.shields.io/badge/tests-405%20passed-brightgreen?style=flat-square" alt="Tests">
10
+ <img src="https://img.shields.io/badge/tests-422%20passed-brightgreen?style=flat-square" alt="Tests">
11
11
  </p>
12
12
  <p align="center">
13
13
  <a href="#-quick-start">Quick Start</a> •
@@ -28,11 +28,8 @@
28
28
 
29
29
  ## ⚡ Quick Start
30
30
 
31
- ### 30-Second Setup (Zero Install)
31
+ One config line. Seven agents. Zero context loss.
32
32
 
33
- Add Memorix to your agent's MCP config — **that's it**. No global install needed.
34
-
35
- **Windsurf** → `~/.codeium/windsurf/mcp_config.json`
36
33
  ```json
37
34
  {
38
35
  "mcpServers": {
@@ -44,17 +41,9 @@ Add Memorix to your agent's MCP config — **that's it**. No global install need
44
41
  }
45
42
  ```
46
43
 
47
- Restart your agent and Memorix is running! 🎉
48
-
49
- > 💡 More agent configs: [Cursor](#cursor) • [Claude Code](#claude-code) • [Codex](#codex) • [VS Code Copilot](#vs-code-copilot) • [Antigravity](#antigravity) • [Kiro](#kiro)
50
-
51
- ### Or Install Globally
52
-
53
- ```bash
54
- npm install -g memorix
55
- ```
44
+ Add this to your agent's MCP config, restart done. 🎉
56
45
 
57
- Then use `"command": "memorix"` instead of `"command": "npx"` in your config.
46
+ > 💡 Agent-specific config paths: [Windsurf](#windsurf) [Cursor](#cursor) [Claude Code](#claude-code) [Codex](#codex) • [VS Code Copilot](#vs-code-copilot) • [Antigravity](#antigravity) • [Kiro](#kiro)
58
47
 
59
48
  ---
60
49
 
@@ -97,6 +86,7 @@ Then use `"command": "memorix"` instead of `"command": "npx"` in your config.
97
86
  - **MCP Config Migration** — Detect and migrate MCP server configs (merges — never overwrites)
98
87
  - **Rules Sync** — Scan → Deduplicate → Conflict detection → Cross-format generation
99
88
  - **Skills & Workflows** — Copy skill folders and workflow files across agents
89
+ - **Memory-Driven Skills** — `memorix_skills` auto-generates project-specific `SKILL.md` from observation patterns (gotchas, decisions, how-it-works)
100
90
  - **Apply with Safety** — Backup `.bak` → Atomic write → Auto-rollback on failure
101
91
 
102
92
  ### 🔒 Project Isolation
@@ -112,8 +102,11 @@ Then use `"command": "memorix"` instead of `"command": "npx"` in your config.
112
102
  - **Web Dashboard** — `memorix_dashboard` opens a beautiful web UI at `http://localhost:3210`
113
103
  - **Project Switcher** — Dropdown to view any project's data without switching IDEs
114
104
  - **Knowledge Graph** — Interactive visualization of entities and relations
105
+ - **Type Distribution Chart** — Canvas donut chart showing observation type breakdown
106
+ - **Embedding Status** — Real-time display of vector search provider status (enabled/provider/dimensions)
115
107
  - **Retention Scores** — Exponential decay scoring with immunity status
116
- - **Observation Management** — Expand/collapse details, search, delete with confirmation, data export
108
+ - **Observation Management** — Expand/collapse details, **search with text highlighting**, delete with confirmation, data export
109
+ - **Batch Cleanup** — Auto-detect and bulk-delete low-quality observations
117
110
  - **Light/Dark Theme** — Premium glassmorphism design, bilingual (EN/中文)
118
111
 
119
112
  ### 🪝 Auto-Memory Hooks
@@ -139,6 +132,32 @@ Session 2: New chat, same project
139
132
 
140
133
  ## 🔧 Agent Configuration
141
134
 
135
+ ### Windsurf
136
+
137
+ `~/.codeium/windsurf/mcp_config.json`:
138
+ ```json
139
+ {
140
+ "mcpServers": {
141
+ "memorix": {
142
+ "command": "npx",
143
+ "args": ["-y", "memorix@latest", "serve"]
144
+ }
145
+ }
146
+ }
147
+ ```
148
+
149
+ > **Timeout troubleshooting** — If you see `MCP server initialization timed out after 60 seconds`, add `--cwd` to force the project root:
150
+ > ```json
151
+ > {
152
+ > "mcpServers": {
153
+ > "memorix": {
154
+ > "command": "npx",
155
+ > "args": ["-y", "memorix@latest", "serve", "--cwd", "<your-project-path>"]
156
+ > }
157
+ > }
158
+ > }
159
+ > ```
160
+
142
161
  ### Cursor
143
162
 
144
163
  `.cursor/mcp.json`:
@@ -327,15 +346,26 @@ Files: ["src/auth/jwt.ts", "src/config.ts"]
327
346
 
328
347
  ## 🔮 Optional: Vector Search
329
348
 
330
- Install `fastembed` for hybrid (BM25 + semantic) search:
349
+ Memorix supports **hybrid search** (BM25 + semantic vectors) with a provider priority chain:
350
+
351
+ | Priority | Provider | How to Enable | Notes |
352
+ |----------|----------|---------------|-------|
353
+ | 1st | `fastembed` | `npm install -g fastembed` | Fastest, native ONNX bindings |
354
+ | 2nd | `transformers.js` | `npm install -g @huggingface/transformers` | Pure JS/WASM, cross-platform |
355
+ | Fallback | Full-text (BM25) | Always available | Already very effective for code |
331
356
 
332
357
  ```bash
358
+ # Option A: Native speed (recommended if it installs cleanly)
333
359
  npm install -g fastembed
360
+
361
+ # Option B: Universal compatibility (works everywhere, no native deps)
362
+ npm install -g @huggingface/transformers
334
363
  ```
335
364
 
336
- - **Without it** — BM25 full-text search (already very effective for code)
337
- - **With it** — Queries like "authentication" also match "login flow" via semantic similarity
338
- - Local ONNX inference, zero API calls, zero privacy risk
365
+ - **Without either** — BM25 full-text search works great out of the box
366
+ - **With any provider** — Queries like "authentication" also match "login flow" via semantic similarity
367
+ - Both run **locally** zero API calls, zero privacy risk, zero cost
368
+ - The dashboard shows which provider is active in real-time
339
369
 
340
370
  ---
341
371
 
@@ -379,7 +409,8 @@ src/
379
409
  ├── memory/ # Graph, observations, retention, entity extraction
380
410
  ├── store/ # Orama search engine + disk persistence
381
411
  ├── compact/ # 3-layer Progressive Disclosure engine
382
- ├── embedding/ # Optional fastembed vector provider
412
+ ├── embedding/ # Vector providers (fastembed transformers.js → fallback)
413
+ ├── skills/ # Memory-driven project skills engine (list → generate → inject)
383
414
  ├── hooks/ # Auto-memory hooks (normalizer + pattern detector)
384
415
  ├── workspace/ # Cross-agent MCP/workflow/skills sync
385
416
  ├── rules/ # Cross-agent rules sync (7 adapters)