@pcircle/memesh 4.1.7 → 4.2.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 (127) hide show
  1. package/.claude-plugin/marketplace.json +1 -1
  2. package/.claude-plugin/plugin.json +1 -1
  3. package/README.de.md +43 -8
  4. package/README.es.md +77 -15
  5. package/README.fr.md +44 -9
  6. package/README.ja.md +78 -15
  7. package/README.ko.md +81 -18
  8. package/README.md +7 -5
  9. package/README.pt.md +43 -8
  10. package/README.th.md +41 -6
  11. package/README.vi.md +43 -8
  12. package/README.zh-CN.md +78 -15
  13. package/README.zh-TW.md +107 -44
  14. package/dashboard/dist/index.html +8 -8
  15. package/dist/cli/view-live.js +2 -2
  16. package/dist/cli/view.d.ts.map +1 -1
  17. package/dist/cli/view.js +8 -11
  18. package/dist/cli/view.js.map +1 -1
  19. package/dist/core/auto-tagger.d.ts +7 -2
  20. package/dist/core/auto-tagger.d.ts.map +1 -1
  21. package/dist/core/auto-tagger.js +12 -4
  22. package/dist/core/auto-tagger.js.map +1 -1
  23. package/dist/core/config.d.ts +2 -0
  24. package/dist/core/config.d.ts.map +1 -1
  25. package/dist/core/config.js +19 -11
  26. package/dist/core/config.js.map +1 -1
  27. package/dist/core/consolidator.d.ts.map +1 -1
  28. package/dist/core/consolidator.js +13 -4
  29. package/dist/core/consolidator.js.map +1 -1
  30. package/dist/core/digest-validator.d.ts +18 -0
  31. package/dist/core/digest-validator.d.ts.map +1 -0
  32. package/dist/core/digest-validator.js +79 -0
  33. package/dist/core/digest-validator.js.map +1 -0
  34. package/dist/core/doctor.d.ts.map +1 -1
  35. package/dist/core/doctor.js +28 -11
  36. package/dist/core/doctor.js.map +1 -1
  37. package/dist/core/dreamer.d.ts +8 -1
  38. package/dist/core/dreamer.d.ts.map +1 -1
  39. package/dist/core/dreamer.js +68 -14
  40. package/dist/core/dreamer.js.map +1 -1
  41. package/dist/core/embedder.d.ts.map +1 -1
  42. package/dist/core/embedder.js +2 -2
  43. package/dist/core/embedder.js.map +1 -1
  44. package/dist/core/extractor.d.ts.map +1 -1
  45. package/dist/core/extractor.js +2 -1
  46. package/dist/core/extractor.js.map +1 -1
  47. package/dist/core/failure-analyzer.d.ts +6 -1
  48. package/dist/core/failure-analyzer.d.ts.map +1 -1
  49. package/dist/core/failure-analyzer.js +10 -2
  50. package/dist/core/failure-analyzer.js.map +1 -1
  51. package/dist/core/install-hooks.d.ts.map +1 -1
  52. package/dist/core/install-hooks.js +1 -7
  53. package/dist/core/install-hooks.js.map +1 -1
  54. package/dist/core/install-id.d.ts.map +1 -1
  55. package/dist/core/install-id.js +2 -3
  56. package/dist/core/install-id.js.map +1 -1
  57. package/dist/core/kg-backfill.d.ts +30 -0
  58. package/dist/core/kg-backfill.d.ts.map +1 -0
  59. package/dist/core/kg-backfill.js +197 -0
  60. package/dist/core/kg-backfill.js.map +1 -0
  61. package/dist/core/llm-client.d.ts +13 -0
  62. package/dist/core/llm-client.d.ts.map +1 -1
  63. package/dist/core/llm-client.js +63 -3
  64. package/dist/core/llm-client.js.map +1 -1
  65. package/dist/core/llm-telemetry.d.ts +35 -0
  66. package/dist/core/llm-telemetry.d.ts.map +1 -0
  67. package/dist/core/llm-telemetry.js +96 -0
  68. package/dist/core/llm-telemetry.js.map +1 -0
  69. package/dist/core/llm-validator.d.ts.map +1 -1
  70. package/dist/core/llm-validator.js +3 -3
  71. package/dist/core/llm-validator.js.map +1 -1
  72. package/dist/core/operations.d.ts.map +1 -1
  73. package/dist/core/operations.js +4 -35
  74. package/dist/core/operations.js.map +1 -1
  75. package/dist/core/paths.d.ts +6 -0
  76. package/dist/core/paths.d.ts.map +1 -0
  77. package/dist/core/paths.js +27 -0
  78. package/dist/core/paths.js.map +1 -0
  79. package/dist/core/prompt-safety.d.ts.map +1 -1
  80. package/dist/core/prompt-safety.js.map +1 -1
  81. package/dist/core/scoring.d.ts +5 -0
  82. package/dist/core/scoring.d.ts.map +1 -1
  83. package/dist/core/scoring.js +8 -0
  84. package/dist/core/scoring.js.map +1 -1
  85. package/dist/core/serializer.js +1 -1
  86. package/dist/core/serializer.js.map +1 -1
  87. package/dist/core/skill-usage-log.js +2 -2
  88. package/dist/core/skill-usage-log.js.map +1 -1
  89. package/dist/core/types.d.ts +2 -2
  90. package/dist/core/types.d.ts.map +1 -1
  91. package/dist/core/verifier.d.ts.map +1 -1
  92. package/dist/core/verifier.js +4 -4
  93. package/dist/core/verifier.js.map +1 -1
  94. package/dist/core/version-check.d.ts.map +1 -1
  95. package/dist/core/version-check.js +4 -3
  96. package/dist/core/version-check.js.map +1 -1
  97. package/dist/db.d.ts.map +1 -1
  98. package/dist/db.js +71 -14
  99. package/dist/db.js.map +1 -1
  100. package/dist/knowledge-graph.d.ts +1 -1
  101. package/dist/knowledge-graph.d.ts.map +1 -1
  102. package/dist/knowledge-graph.js +1 -1
  103. package/dist/knowledge-graph.js.map +1 -1
  104. package/dist/skills-manifest.json +16 -16
  105. package/dist/storage/fts-index.js +1 -1
  106. package/dist/storage/fts-index.js.map +1 -1
  107. package/dist/transports/cli/cli.js +118 -6
  108. package/dist/transports/cli/cli.js.map +1 -1
  109. package/dist/transports/http/server.d.ts.map +1 -1
  110. package/dist/transports/http/server.js +192 -24
  111. package/dist/transports/http/server.js.map +1 -1
  112. package/dist/transports/mcp/handlers.d.ts +1 -1
  113. package/dist/transports/mcp/handlers.d.ts.map +1 -1
  114. package/dist/transports/mcp/handlers.js +1 -1
  115. package/dist/transports/mcp/handlers.js.map +1 -1
  116. package/package.json +2 -2
  117. package/scripts/hooks/_shared.js +177 -14
  118. package/scripts/hooks/post-commit.js +50 -8
  119. package/scripts/hooks/pre-bash-orchestration-nudge.js +8 -3
  120. package/scripts/hooks/pre-compact.js +13 -16
  121. package/scripts/hooks/pre-edit-recall.js +28 -13
  122. package/scripts/hooks/session-start.js +194 -184
  123. package/scripts/hooks/session-summary.js +377 -41
  124. package/dist/core/query-expander.d.ts +0 -4
  125. package/dist/core/query-expander.d.ts.map +0 -1
  126. package/dist/core/query-expander.js +0 -53
  127. package/dist/core/query-expander.js.map +0 -1
@@ -8,7 +8,7 @@
8
8
  "name": "memesh",
9
9
  "source": "./",
10
10
  "description": "MeMesh — Local memory for Claude Code and MCP coding agents. One SQLite file, zero cloud required.",
11
- "version": "4.1.7",
11
+ "version": "4.2.0",
12
12
  "author": {
13
13
  "name": "PCIRCLE AI"
14
14
  },
@@ -4,7 +4,7 @@
4
4
  "author": {
5
5
  "name": "PCIRCLE AI"
6
6
  },
7
- "version": "4.1.7",
7
+ "version": "4.2.0",
8
8
  "homepage": "https://pcircle.ai/memesh-llm-memory",
9
9
  "repository": "https://github.com/PCIRCLE-AI/memesh-llm-memory",
10
10
  "license": "MIT",
package/README.de.md CHANGED
@@ -1,6 +1,3 @@
1
- <!-- translated from README.md @ ab9d25f8d9cb7c78c4cc271717709e2efb4bac76 -->
2
- <!-- DO NOT edit this file by hand. The maintainer regenerates it from README.md via a private toolkit script (see internal docs). Manual edits will be overwritten on next sync. -->
3
-
4
1
  🌐 [English](README.md) | [繁體中文](README.zh-TW.md) | [简体中文](README.zh-CN.md) | [日本語](README.ja.md) | [한국어](README.ko.md) | [Português](README.pt.md) | [Français](README.fr.md) | [Deutsch](README.de.md) | [Tiếng Việt](README.vi.md) | [Español](README.es.md) | [ภาษาไทย](README.th.md)
5
2
 
6
3
  <p align="center">
@@ -29,6 +26,22 @@ Dieses Paket ist die lokale Speicherschicht der MeMesh-Produktfamilie. Es ist be
29
26
 
30
27
  ---
31
28
 
29
+ ## Proof — 95.40% R@5 on LongMemEval-S
30
+
31
+ MeMeshs Retrieval-Engine ist **FTS5 alleine** (kein LLM, keine Embeddings auf dem Hot Path), gemessen am öffentlichen [LongMemEval-S](https://huggingface.co/datasets/xiaowu0162/longmemeval) Benchmark (500 Fragen, MIT-lizenziert):
32
+
33
+ | System | R@5 | Quelle |
34
+ |---|---|---|
35
+ | **MeMesh (Mode A, FTS5)** | **95.40%** | [benchmarks/longmemeval/RESULTS.md](benchmarks/longmemeval/RESULTS.md) |
36
+ | MemPalace | 96.6% | Eigenangabe des Anbieters |
37
+ | Supermemory | ~82% | Schätzung des Anbieters |
38
+ | Zep | 63.8% | LongMemEval-Paper |
39
+ | Mem0 | 49.0% | LongMemEval-Paper |
40
+
41
+ Reproduktionsbefehle, Datensatz-SHA256, rohe Ergebnisse pro Frage und Analyse bekannter Fehlschläge finden sich vollständig in [`benchmarks/longmemeval/`](benchmarks/longmemeval/). In ~10 Sekunden reproduzierbar.
42
+
43
+ ---
44
+
32
45
  ## In 60 Sekunden starten
33
46
 
34
47
  ### Schritt 1: Installation
@@ -172,6 +185,26 @@ Sie müssen nicht manuell alles speichern. MeMesh verfügt über **6 Hooks**, di
172
185
 
173
186
  ---
174
187
 
188
+ ## Configuration
189
+
190
+ Die gesamte Konfiguration erfolgt über Umgebungsvariablen. Die Standardwerte sind rein lokal und ohne Netzwerk — Sie müssen nichts setzen, um ein funktionierendes System zu erhalten.
191
+
192
+ | Variable | Standard | Was sie bewirkt |
193
+ |---|---|---|
194
+ | `MEMESH_DB_PATH` | `~/.memesh/knowledge-graph.db` | Überschreibt den Speicherort der SQLite-Datenbank. |
195
+ | `MEMESH_AUTO_CAPTURE` | `true` | Deaktiviert die Auto-Capture-Hooks (`Stop`, `PreCompact`) vollständig. |
196
+ | `MEMESH_AUTO_DETECT_LLM` | nicht gesetzt | Auf `1` setzen, damit memesh einen Provider aus Ihrer Shell-Umgebung (`OPENAI_API_KEY` etc.) automatisch erkennt und auf BYOK-Embeddings umschaltet. **Standard bei einer frischen Installation ist ausschließlich lokales ONNX (384-dim)** — Opt-in, falls Sie Cloud-Embeddings wünschen. Ohne dieses Flag wird ein in der Shell vorhandener `OPENAI_API_KEY` ignoriert. |
197
+ | `MEMESH_ENABLE_AGENTIC_ORCHESTRATION` | nicht gesetzt | Auf `1` setzen, um ein experimentelles Working-Model-Protokoll zu aktivieren (CTO / Orchestrator / Agents-Framing). Fügt ein Session-Start-Banner, einen Bash-Befehls-Nudge und `verify_agent_work`-Telemetrie hinzu. Die Wirksamkeit des Protokolls wird derzeit instrumentiert, ist aber noch nicht erwiesen — Opt-in, falls Sie teilnehmen möchten. **Standard ist OFF**: Die Kern-Memory-Funktionen arbeiten ohne dieses Flag. |
198
+ | `MEMESH_AUTO_UPDATE` | `off` | Auto-Update-Richtlinie. `off` (Standard) aktualisiert nie automatisch; `patch` erlaubt `X.Y.Z → X.Y.Z+N`; `minor` ergänzt `X.Y.Z → X.Y+1.0`; `major` erlaubt jedes Bump. Wenn zugelassen, läuft am Session-Ende (Stop-Hook) ein abgekoppeltes `npm install -g`, sodass es Ihre Arbeit nie blockiert — Ergebnisse landen in `~/.memesh/auto-update.log`. Ebenfalls als `autoUpdate` in `~/.memesh/config.json` setzbar (Env hat Vorrang). Wenn die installierte Version von den Maintainern als veraltet markiert wird (Sicherheitswarnung), wird `patch` auch bei `off` erzwungen erlaubt — Minor- / Major-Bumps bleiben manuell, um stille Verhaltensänderungen zu vermeiden. |
199
+ | `OPENAI_API_KEY` | nicht gesetzt | Ihr OpenAI-Schlüssel. Wird nur verwendet, wenn `MEMESH_AUTO_DETECT_LLM=1` gesetzt ist oder Sie den Provider explizit konfigurieren. |
200
+ | `OLLAMA_HOST` | `http://localhost:11434` | Überschreibt den Ollama-Endpoint, wenn ein lokaler Ollama-Provider verwendet wird. |
201
+
202
+ `memesh doctor` gibt die aufgelöste Konfiguration aus, sodass Sie sehen, was aktiv ist.
203
+
204
+ Wenn npm eine installierte Version als veraltet kennzeichnet (typischerweise eine Sicherheitswarnung), stellt der nächste Session-Start ein deutliches `⚠️ MeMesh <ver> is DEPRECATED`-Banner voran und `memesh update-status` zeigt dieselbe Zeile, bis Sie aktualisiert haben. Die Prüfung wird unter `~/.memesh/update-check.<version>.json` zwischengespeichert, sodass ein vorübergehender Netzwerkfehler die Warnung nicht abschwächen kann.
205
+
206
+ ---
207
+
175
208
  ## Dashboard
176
209
 
177
210
  7 Reiter, 11 Sprachen, keine externen Abhängigkeiten. Zugang unter `http://localhost:3737/dashboard` wenn der Server läuft.
@@ -218,7 +251,7 @@ Importierte Bundles bleiben durchsuchbar, aber MeMesh injiziert importierte Memo
218
251
 
219
252
  ## Smart Mode freischalten (optional)
220
253
 
221
- MeMesh funktioniert standardmäßig offline. Fügen Sie einen LLM API-Schlüssel nur hinzu, wenn Sie Query-Erweiterung, intelligentere Extraktion und Kompression wünschen:
254
+ MeMesh funktioniert standardmäßig offline — Recall bleibt strikt LLM-frei (95,40 % R@5 auf LongMemEval-S, ohne LLM). Fügen Sie einen LLM API-Schlüssel nur hinzu, wenn Sie LLM-augmentierte Analyseflüsse zusätzlich nutzen möchten: intelligentere Session-Extraktion, Auto-Tagging neuer Memories, Lektionen aus Fehlern und `consolidate` / `dream` Kompression:
222
255
 
223
256
  ```bash
224
257
  memesh config set llm.provider anthropic
@@ -233,10 +266,12 @@ memesh # öffnet Dashboard → Settings-Reiter
233
266
 
234
267
  | | Stufe 0 (Standard) | Stufe 1 (Smart Mode) |
235
268
  |---|---|---|
236
- | **Search** | FTS5-Keyword-Matching | + LLM Query-Erweiterung (~97 % Recall) |
269
+ | **Search** | FTS5 + sqlite-vec, 95,40 % R@5 (~18 ms/Query) | unverändert — Recall ist auf jeder Stufe LLM-frei |
237
270
  | **Auto-Capture** | Regelbasierte Muster | + LLM extrahiert Entscheidungen & Lektionen |
238
- | **Kompression** | Nicht verfügbar | `consolidate` komprimiert ausschweifende Memories |
239
- | **Kosten** | Kostenlos, kein API-Schlüssel | ~$0,0001 pro Suche (Haiku) |
271
+ | **Auto-Tagging** | Nur manuelle Tags | + LLM generiert Tags für neue Memories |
272
+ | **Fehleranalyse** | Nicht verfügbar | + LLM wandelt Session-Fehler in strukturierte Lektionen um |
273
+ | **Kompression** | Nicht verfügbar | `consolidate` + `dream` komprimieren ausschweifende Memories |
274
+ | **Kosten** | Kostenlos, kein API-Schlüssel | ~$0,0001 pro Analyseanfrage (Haiku) |
240
275
 
241
276
  ---
242
277
 
@@ -245,7 +280,7 @@ memesh # öffnet Dashboard → Settings-Reiter
245
280
  | Tool | Was es tut |
246
281
  |------|-------------|
247
282
  | `remember` | Wissen mit Beobachtungen, Relationen und Tags speichern |
248
- | `recall` | Intelligente Suche mit Multi-Faktor-Bewertung und LLM Query-Erweiterung |
283
+ | `recall` | FTS5 + sqlite-vec Suche mit Multi-Faktor-Bewertung (Relevanz, Aktualität, Häufigkeit, Konfidenz, zeitliche Gültigkeit) — kein LLM auf dem Hot Path |
249
284
  | `forget` | Soft-Archivierung (löscht nie) oder entfernt spezifische Beobachtungen |
250
285
  | `consolidate` | LLM-gestützte Kompression ausschweifender Memories |
251
286
  | `export` | Memories als JSON zwischen Projekten oder Teamkollegen teilen |
package/README.es.md CHANGED
@@ -1,6 +1,3 @@
1
- <!-- translated from README.md @ ab9d25f8d9cb7c78c4cc271717709e2efb4bac76 -->
2
- <!-- DO NOT edit this file by hand. The maintainer regenerates it from README.md via a private toolkit script (see internal docs). Manual edits will be overwritten on next sync. -->
3
-
4
1
  🌐 [English](README.md) | [繁體中文](README.zh-TW.md) | [简体中文](README.zh-CN.md) | [日本語](README.ja.md) | [한국어](README.ko.md) | [Português](README.pt.md) | [Français](README.fr.md) | [Deutsch](README.de.md) | [Tiếng Việt](README.vi.md) | [Español](README.es.md) | [ภาษาไทย](README.th.md)
5
2
 
6
3
  <p align="center">
@@ -29,27 +26,70 @@ Este paquete es la capa de memoria local de la familia de productos MeMesh. Es i
29
26
 
30
27
  ---
31
28
 
29
+ ## Prueba — 95.40% R@5 en LongMemEval-S
30
+
31
+ El motor de recuperación de MeMesh es **solo FTS5** (sin LLM, sin embeddings en la ruta caliente), medido contra el benchmark público [LongMemEval-S](https://huggingface.co/datasets/xiaowu0162/longmemeval) (500 preguntas, licencia MIT):
32
+
33
+ | Sistema | R@5 | Fuente |
34
+ |---|---|---|
35
+ | **MeMesh (Modo A, FTS5)** | **95.40%** | [benchmarks/longmemeval/RESULTS.md](benchmarks/longmemeval/RESULTS.md) |
36
+ | MemPalace | 96.6% | Auto-reporte del proveedor |
37
+ | Supermemory | ~82% | Estimación del proveedor |
38
+ | Zep | 63.8% | Paper de LongMemEval |
39
+ | Mem0 | 49.0% | Paper de LongMemEval |
40
+
41
+ Los comandos de reproducción, SHA256 del dataset, resultados crudos por pregunta y análisis de fallos conocidos están todos en [`benchmarks/longmemeval/`](benchmarks/longmemeval/). Re-ejecutable en ~10 segundos.
42
+
43
+ ---
44
+
32
45
  ## Primeros Pasos en 60 Segundos
33
46
 
34
- ### Paso 1: Instala
47
+ ### Opción A — Plugin de Claude Code (instalación de una línea)
48
+
49
+ Si usas Claude Code, instala MeMesh como plugin desde dentro de la CLI:
50
+
51
+ ```
52
+ /plugin marketplace add PCIRCLE-AI/memesh-llm-memory
53
+ /plugin install memesh@pcircle-memesh
54
+ ```
55
+
56
+ Claude Code conecta los hooks, skills y el servidor MCP automáticamente. Obtienes auto-captura en sesión, recuperación proactiva, el skill `/memesh` (remember / recall / learn / forget) dentro de la conversación de Claude Code, y `remember` / `recall` / `forget` / `learn` disponibles como herramientas MCP para el agente. La CLI y el dashboard local también son completamente accesibles sin ninguna instalación global adicional — `npx @pcircle/memesh <command>` ejecuta cada comando CLI, y `npx @pcircle/memesh` lanza el dashboard en `localhost:3737`. El servidor MCP usa el mismo patrón de lanzamiento basado en `npx` que los plugins oficiales de Anthropic (p. ej. `context7`), por lo que no se necesita `npm install -g` para ninguna característica.
57
+
58
+ ### Opción B — npm global (optimización opcional)
59
+
60
+ Si quieres el binario directamente en tu `PATH` de shell (para que `memesh`, `memesh-mcp`, etc. funcionen en cualquier terminal sin la búsqueda `npx` por llamada), o quieres exponer `memesh-mcp` como un comando stdio de ruta fija a **clientes MCP que no son Claude Code** (Cursor, Cline, flujos solo de terminal):
35
61
 
36
62
  ```bash
37
63
  npm install -g @pcircle/memesh
38
64
  ```
39
65
 
40
- ### Paso 1.5: Conecta MeMesh a Claude Code (recomendado, una sola vez)
66
+ > **Notas de primera instalación (única vez):**
67
+ > - **Módulos nativos** — `better-sqlite3` y `sqlite-vec` se instalan mediante binarios precompilados en macOS (arm64/x64), Linux (x64/arm64) y Windows x64. En plataformas poco comunes o cuando los precompilados fallan, necesitarás un toolchain C/C++ funcional.
68
+ > - **Modelo de embedding** — la primera llamada que activa un embedding local (p. ej. `recall` con modo semántico) descarga `Xenova/all-MiniLM-L6-v2` (~80 MB) en `~/.memesh/models/`. Las llamadas subsiguientes son instantáneas. La ruta de recuperación por defecto (FTS5) no requiere esta descarga.
41
69
 
42
- `npm install -g` pone la CLI en el PATH y registra el servidor MCP, pero **no** conecta automáticamente los hooks de sesión de MeMesh a Claude Code. Sin estos hooks, puedes usar `memesh remember` / `recall` manualmente, pero el **bucle de captura automática** (sesión lecciones → recall proactivo en la siguiente sesión) queda en silencio.
70
+ ### Paso 1.5: Conecta MeMesh a Claude Code (solo ruta npm)
71
+
72
+ Si instalaste mediante la **Opción A** (`/plugin install memesh@pcircle-memesh`), omite este paso — Claude Code conecta los hooks del plugin automáticamente.
73
+
74
+ Si instalaste mediante la **Opción B** (`npm install -g`), la CLI está en tu PATH y el servidor MCP está registrado, pero los hooks de sesión de Claude Code no se conectan automáticamente. Sin ellos, aún puedes usar `memesh remember` / `recall` manualmente, pero el **bucle de captura automática** (sesiones → lecciones → recall en la siguiente sesión) queda en silencio.
43
75
 
44
76
  ```bash
45
77
  memesh install-hooks # añade los hooks de memesh a ~/.claude/settings.json
46
78
  memesh doctor # confirma que "Hooks wired into Claude Code" pasa
47
79
  ```
48
80
 
49
- Estos hooks coexisten con tus hooks personalizados en `~/.claude/hooks/` — `install-hooks` escribe de forma aditiva y nunca sobrescribe los tuyos. Para eliminarlos: `memesh uninstall-hooks`.
81
+ Estos hooks coexisten con cualquier hook personalizado que ya tengas en `~/.claude/hooks/` — `install-hooks` escribe entradas aditivas y nunca sobrescribe los tuyos. Para eliminarlos después: `memesh uninstall-hooks`.
50
82
 
51
83
  ### Paso 2: Guarda una decisión
52
84
 
85
+ > Los ejemplos bash a continuación asumen que `memesh` está en tu `PATH` (Opción B). Los usuarios de la Opción A (solo plugin) tienen dos rutas equivalentes: pregunta en la conversación de Claude Code (el skill `/memesh` + las herramientas MCP cubren los mismos flujos), o reemplaza `memesh` con `npx @pcircle/memesh` en cualquier shell — mismas flags, sin necesidad de instalación global.
86
+
87
+ ```bash
88
+ memesh remember "Use OAuth 2.0 with PKCE for the new auth"
89
+ ```
90
+
91
+ O usa la forma explícita cuando quieres un nombre y tipo estables para filtrado posterior:
92
+
53
93
  ```bash
54
94
  memesh remember --name "auth-decision" --type "decision" --obs "Use OAuth 2.0 with PKCE"
55
95
  ```
@@ -161,10 +201,10 @@ No necesitas recordar todo manualmente. MeMesh tiene **7 hooks** que capturan e
161
201
 
162
202
  | Cuándo | Qué hace MeMesh |
163
203
  |---|---|
164
- | **Al inicio de cada sesión** | Carga tus memorias más relevantes + advertencias proactivas de lecciones pasadas + banner de orquestación agentica |
204
+ | **Al inicio de cada sesión** | Carga tus memorias más relevantes + advertencias proactivas de lecciones pasadas |
165
205
  | **Antes de editar archivos** | Recupera memorias vinculadas al archivo o proyecto antes de que Claude escriba código |
166
- | **Antes de comandos bash** | Nudge a Claude para que envíe comandos de alta verificabilidad (test, build, lint, migrate, deploy, benchmark) como agentes de fondo |
167
- | **Cuando pides recordar** | Detecta intención de "remember this" / "記下來" y recuerda a Claude que escriba dual (memesh + MEMORY.md) |
206
+ | **Antes de comandos bash** | (Opt-in) Nudge a Claude para que envíe comandos de alta verificabilidad (test, build, lint, migrate, deploy, benchmark) como agentes de fondo |
207
+ | **Cuando pides recordar** | Detecta intención de "remember this" / "guardar en memesh" / "sauvegarder dans memesh" / "記下來" (5 idiomas) y recuerda a Claude que use memesh |
168
208
  | **Después de cada `git commit`** | Registra qué cambiaste, con estadísticas de diff |
169
209
  | **Cuando Claude se detiene** | Captura archivos editados, errores corregidos y genera automáticamente lecciones estructuradas a partir de fallos |
170
210
  | **Antes de compresión de contexto** | Guarda conocimiento antes de que se pierda en límites de contexto |
@@ -173,6 +213,26 @@ No necesitas recordar todo manualmente. MeMesh tiene **7 hooks** que capturan e
173
213
 
174
214
  ---
175
215
 
216
+ ## Configuración
217
+
218
+ Toda la configuración se realiza mediante variables de entorno. Los valores por defecto son solo locales y sin red — no necesitas configurar nada para tener un sistema funcional.
219
+
220
+ | Variable | Por defecto | Qué hace |
221
+ |---|---|---|
222
+ | `MEMESH_DB_PATH` | `~/.memesh/knowledge-graph.db` | Sobrescribe la ubicación de la base de datos SQLite. |
223
+ | `MEMESH_AUTO_CAPTURE` | `true` | Desactiva por completo los hooks de auto-captura (`Stop`, `PreCompact`). |
224
+ | `MEMESH_AUTO_DETECT_LLM` | sin definir | Establece a `1` para que memesh auto-detecte un proveedor desde tu env de shell (`OPENAI_API_KEY` etc.) y cambie a embeddings BYOK. **La instalación nueva por defecto es solo ONNX local (384-dim)** — opta por activarlo si quieres embeddings en la nube. Sin esta flag activada, una `OPENAI_API_KEY` que ande por tu shell se ignora. |
225
+ | `MEMESH_ENABLE_AGENTIC_ORCHESTRATION` | sin definir | Establece a `1` para activar un protocolo experimental de modelo de trabajo (encuadre CTO / Orquestador / Agentes). Añade un banner al inicio de sesión, un nudge de comando Bash y telemetría `verify_agent_work`. La efectividad del protocolo se está instrumentando, aún no probada — opta por activarlo si quieres participar. **Por defecto está OFF**: las características de memoria centrales funcionan sin esta flag. |
226
+ | `MEMESH_AUTO_UPDATE` | `off` | Política de auto-actualización. `off` (por defecto) nunca auto-actualiza; `patch` permite `X.Y.Z → X.Y.Z+N`; `minor` añade `X.Y.Z → X.Y+1.0`; `major` permite cualquier bump. Cuando se permite, un `npm install -g` independiente se dispara al final de la sesión (hook Stop) por lo que nunca bloquea tu trabajo — los resultados aterrizan en `~/.memesh/auto-update.log`. También configurable como `autoUpdate` en `~/.memesh/config.json` (env gana). Cuando los mantenedores deprecan la versión instalada (aviso de seguridad), `patch` se fuerza a permitir incluso en `off` — los bumps minor / major siguen siendo manuales para evitar deriva silenciosa de comportamiento. |
227
+ | `OPENAI_API_KEY` | sin definir | Tu clave de OpenAI. Solo se usa cuando `MEMESH_AUTO_DETECT_LLM=1` o configuras explícitamente el proveedor. |
228
+ | `OLLAMA_HOST` | `http://localhost:11434` | Sobrescribe el endpoint de Ollama cuando uses un proveedor Ollama local. |
229
+
230
+ `memesh doctor` imprime la configuración resuelta para que puedas ver qué está activo.
231
+
232
+ Cuando npm marca una versión instalada como deprecada (típicamente un aviso de seguridad), el siguiente inicio de sesión antepone un fuerte banner `⚠️ MeMesh <ver> is DEPRECATED` y `memesh update-status` muestra la misma línea hasta que actualices. La verificación se cachea en `~/.memesh/update-check.<version>.json` para que un fallo de red transitorio no atenúe la advertencia.
233
+
234
+ ---
235
+
176
236
  ## Dashboard
177
237
 
178
238
  7 pestañas, 11 idiomas, cero dependencias externas. Accede en `http://localhost:3737/dashboard` cuando el servidor está en ejecución.
@@ -219,7 +279,7 @@ Los bundles importados permanecen buscables, pero MeMesh no inyecta automáticam
219
279
 
220
280
  ## Desbloquea Modo Inteligente (Opcional)
221
281
 
222
- MeMesh funciona sin conexión por defecto. Añade una clave API de LLM solo si quieres expansión de consultas, extracción más inteligente y compresión:
282
+ MeMesh funciona sin conexión por defecto — el recall permanece estrictamente sin LLM (95.40% R@5 en LongMemEval-S de fábrica). Añade una clave API de LLM solo si quieres flujos de análisis aumentados por LLM encima: extracción de sesión más inteligente, auto-etiquetado de nuevas memorias, generación de lecciones a partir de fallos, y compresión `consolidate` / `dream`:
223
283
 
224
284
  ```bash
225
285
  memesh config set llm.provider anthropic
@@ -234,10 +294,12 @@ memesh # abre dashboard → pestaña Settings
234
294
 
235
295
  | | Nivel 0 (por defecto) | Nivel 1 (Modo Inteligente) |
236
296
  |---|---|---|
237
- | **Búsqueda** | Coincidencia de palabras clave FTS5 | + expansión de consultas LLM (~97% de recall) |
297
+ | **Búsqueda** | FTS5 + sqlite-vec, 95.40% R@5 (~18ms/consulta) | sin cambios el recall es sin LLM en cada nivel |
238
298
  | **Auto-capture** | Patrones basados en reglas | + LLM extrae decisiones y lecciones |
239
- | **Compresión** | No disponible | `consolidate` comprime memorias verbosas |
240
- | **Costo** | Gratis, sin clave API | ~$0.0001 por búsqueda (Haiku) |
299
+ | **Auto-etiquetado** | Solo etiquetas manuales | + LLM genera etiquetas para nuevas memorias |
300
+ | **Análisis de fallos** | No disponible | + LLM convierte errores de sesión en lecciones estructuradas |
301
+ | **Compresión** | No disponible | `consolidate` + `dream` comprimen memorias verbosas |
302
+ | **Costo** | Gratis, sin clave API | ~$0.0001 por llamada de análisis (Haiku) |
241
303
 
242
304
  ---
243
305
 
@@ -246,7 +308,7 @@ memesh # abre dashboard → pestaña Settings
246
308
  | Herramienta | Qué hace |
247
309
  |---|---|
248
310
  | `remember` | Guardar conocimiento con observaciones, relaciones y etiquetas |
249
- | `recall` | Búsqueda inteligente con scoring multifactor y expansión de consultas LLM |
311
+ | `recall` | Búsqueda FTS5 + sqlite-vec con scoring multifactor (relevancia, recencia, frecuencia, confianza, validez temporal) — sin LLM en la ruta caliente |
250
312
  | `forget` | Archivo suave (nunca borra) o elimina observaciones específicas |
251
313
  | `consolidate` | Compresión impulsada por LLM de memorias verbosas |
252
314
  | `export` | Compartir memorias como JSON entre proyectos o miembros del equipo |
package/README.fr.md CHANGED
@@ -1,6 +1,3 @@
1
- <!-- translated from README.md @ ab9d25f8d9cb7c78c4cc271717709e2efb4bac76 -->
2
- <!-- DO NOT edit this file by hand. The maintainer regenerates it from README.md via a private toolkit script (see internal docs). Manual edits will be overwritten on next sync. -->
3
-
4
1
  🌐 [English](README.md) | [繁體中文](README.zh-TW.md) | [简体中文](README.zh-CN.md) | [日本語](README.ja.md) | [한국어](README.ko.md) | [Português](README.pt.md) | [Français](README.fr.md) | [Deutsch](README.de.md) | [Tiếng Việt](README.vi.md) | [Español](README.es.md) | [ภาษาไทย](README.th.md)
5
2
 
6
3
  <p align="center">
@@ -29,6 +26,22 @@ Ce package constitue la couche de mémoire locale de la famille de produits MeMe
29
26
 
30
27
  ---
31
28
 
29
+ ## Preuve — 95,40 % R@5 sur LongMemEval-S
30
+
31
+ Le moteur de récupération de MeMesh utilise **FTS5 seul** (pas de LLM, pas d'embeddings sur le chemin chaud), mesuré sur le benchmark public [LongMemEval-S](https://huggingface.co/datasets/xiaowu0162/longmemeval) (500 questions, licence MIT) :
32
+
33
+ | Système | R@5 | Source |
34
+ |---|---|---|
35
+ | **MeMesh (Mode A, FTS5)** | **95,40 %** | [benchmarks/longmemeval/RESULTS.md](benchmarks/longmemeval/RESULTS.md) |
36
+ | MemPalace | 96,6 % | Auto-déclaration de l'éditeur |
37
+ | Supermemory | ~82 % | Estimation de l'éditeur |
38
+ | Zep | 63,8 % | Article LongMemEval |
39
+ | Mem0 | 49,0 % | Article LongMemEval |
40
+
41
+ Les commandes de reproduction, le SHA256 du jeu de données, les résultats bruts par question et l'analyse des échecs connus se trouvent tous dans [`benchmarks/longmemeval/`](benchmarks/longmemeval/). Réexécutable en environ 10 secondes.
42
+
43
+ ---
44
+
32
45
  ## Démarrer en 60 Secondes
33
46
 
34
47
  ### Étape 1 : Installer
@@ -173,6 +186,26 @@ Vous n'avez pas besoin de tout mémoriser manuellement. MeMesh possède **7 hook
173
186
 
174
187
  ---
175
188
 
189
+ ## Configuration
190
+
191
+ Toute la configuration passe par des variables d'environnement. Les valeurs par défaut sont strictement locales et sans accès réseau — vous n'avez rien à définir pour obtenir un système fonctionnel.
192
+
193
+ | Variable | Défaut | Effet |
194
+ |---|---|---|
195
+ | `MEMESH_DB_PATH` | `~/.memesh/knowledge-graph.db` | Remplace l'emplacement de la base SQLite. |
196
+ | `MEMESH_AUTO_CAPTURE` | `true` | Désactive entièrement les hooks d'auto-capture (`Stop`, `PreCompact`). |
197
+ | `MEMESH_AUTO_DETECT_LLM` | non défini | Mettre à `1` pour laisser memesh détecter automatiquement un fournisseur depuis l'environnement shell (`OPENAI_API_KEY`, etc.) et basculer sur des embeddings BYOK. **L'installation neuve par défaut utilise uniquement ONNX local (384 dimensions)** — activez cette option si vous voulez des embeddings cloud. Sans ce flag, une `OPENAI_API_KEY` présente dans le shell est ignorée. |
198
+ | `MEMESH_ENABLE_AGENTIC_ORCHESTRATION` | non défini | Mettre à `1` pour activer un protocole de modèle de travail expérimental (cadre CTO / Orchestrateur / Agents). Ajoute une bannière en début de session, un nudge sur les commandes Bash et la télémétrie `verify_agent_work`. L'efficacité du protocole est instrumentée mais pas encore prouvée — activez-la si vous souhaitez participer. **Désactivé par défaut** : les fonctionnalités de mémoire principales fonctionnent sans ce flag. |
199
+ | `MEMESH_AUTO_UPDATE` | `off` | Politique de mise à jour automatique. `off` (défaut) ne met jamais à jour automatiquement ; `patch` autorise `X.Y.Z → X.Y.Z+N` ; `minor` ajoute `X.Y.Z → X.Y+1.0` ; `major` autorise tout incrément. Quand c'est permis, un `npm install -g` détaché s'exécute en fin de session (hook Stop) pour ne jamais bloquer votre travail — les résultats arrivent dans `~/.memesh/auto-update.log`. Configurable aussi via `autoUpdate` dans `~/.memesh/config.json` (la variable d'environnement l'emporte). Quand la version installée est dépréciée par les mainteneurs (alerte de sécurité), `patch` est forcé même en `off` — les incréments minor / major restent manuels pour éviter une dérive de comportement silencieuse. |
200
+ | `OPENAI_API_KEY` | non défini | Votre clé OpenAI. Utilisée uniquement quand `MEMESH_AUTO_DETECT_LLM=1` ou que vous configurez explicitement le fournisseur. |
201
+ | `OLLAMA_HOST` | `http://localhost:11434` | Remplace l'endpoint Ollama lors de l'utilisation d'un fournisseur Ollama local. |
202
+
203
+ `memesh doctor` affiche la configuration résolue pour que vous puissiez voir ce qui est actif.
204
+
205
+ Lorsque npm signale une version installée comme dépréciée (typiquement une alerte de sécurité), le prochain démarrage de session ajoute en tête une bannière forte `⚠️ MeMesh <ver> is DEPRECATED` et `memesh update-status` affiche la même ligne jusqu'à la mise à jour. La vérification est mise en cache dans `~/.memesh/update-check.<version>.json` pour qu'une panne réseau transitoire ne puisse pas atténuer l'avertissement.
206
+
207
+ ---
208
+
176
209
  ## Tableau De Bord
177
210
 
178
211
  7 onglets, 11 langues, zéro dépendance externe. Accessible à `http://localhost:3737/dashboard` quand le serveur s'exécute.
@@ -191,7 +224,7 @@ Vous n'avez pas besoin de tout mémoriser manuellement. MeMesh possède **7 hook
191
224
 
192
225
  ## Fonctionnalités Intelligentes
193
226
 
194
- **🧠 Recherche Intelligente** — Cherchez « sécurité login » et trouvez des mémoires sur « OAuth PKCE ». MeMesh enrichit les requêtes avec des termes connexes en utilisant votre LLM configuré.
227
+ **🧠 Recherche Intelligente** — Cherchez « sécurité login » et trouvez des mémoires sur « OAuth PKCE ». MeMesh combine FTS5 et la similarité vectorielle sqlite-vec pour trouver des mémoires sémantiquement liées sans LLM sur le chemin chaud.
195
228
 
196
229
  **📊 Classement Avec Score** — Les résultats sont classés par pertinence (30 %) + récence (25 %) + fréquence (15 %) + confiance (15 %) + impact de rappel (10 %) + validité temporelle (5 %).
197
230
 
@@ -219,7 +252,7 @@ Les bundles importés restent consultables, mais MeMesh n'injecte pas automatiqu
219
252
 
220
253
  ## Déverrouiller Le Mode Smart (Optionnel)
221
254
 
222
- MeMesh fonctionne hors ligne par défaut. Ajoutez une clé API LLM uniquement si vous souhaitez l'expansion de requête, l'extraction plus intelligente et la compression :
255
+ MeMesh fonctionne hors ligne par défaut — le rappel reste strictement sans LLM (95,40 % R@5 sur LongMemEval-S dès l'installation). Ajoutez une clé API LLM uniquement si vous voulez des flux d'analyse augmentés par LLM par-dessus : extraction de session plus intelligente, auto-tagging des nouvelles mémoires, génération de leçons depuis les défaillances et compression `consolidate` / `dream` :
223
256
 
224
257
  ```bash
225
258
  memesh config set llm.provider anthropic
@@ -234,10 +267,12 @@ memesh # ouvre le tableau de bord → onglet Settings
234
267
 
235
268
  | | Niveau 0 (défaut) | Niveau 1 (Mode Smart) |
236
269
  |---|---|---|
237
- | **Recherche** | Correspondance de mots-clés FTS5 | + expansion de requête LLM (~97 % de rappel) |
270
+ | **Recherche** | FTS5 + sqlite-vec, 95,40 % R@5 (~18 ms/requête) | inchangé le rappel est sans LLM à tous les niveaux |
238
271
  | **Auto-capture** | Motifs basés sur les règles | + LLM extrait les décisions & leçons |
239
- | **Compression** | Non disponible | `consolidate` compresse les mémoires verbeux |
240
- | **Coût** | Gratuit, aucune clé API | ~$0.0001 par recherche (Haiku) |
272
+ | **Auto-tagging** | Tags manuels uniquement | + LLM génère des tags pour les nouvelles mémoires |
273
+ | **Analyse de défaillance** | Indisponible | + LLM convertit les erreurs de session en leçons structurées |
274
+ | **Compression** | Indisponible | `consolidate` + `dream` compressent les mémoires verbeux |
275
+ | **Coût** | Gratuit, aucune clé API | ~$0,0001 par appel d'analyse (Haiku) |
241
276
 
242
277
  ---
243
278
 
@@ -246,7 +281,7 @@ memesh # ouvre le tableau de bord → onglet Settings
246
281
  | Outil | Ce qu'il fait |
247
282
  |---|---|
248
283
  | `remember` | Stocker les connaissances avec observations, relations et tags |
249
- | `recall` | Recherche intelligente avec notation multi-facteurs et expansion de requête LLM |
284
+ | `recall` | Recherche FTS5 + sqlite-vec avec notation multi-facteurs (pertinence, récence, fréquence, confiance, validité temporelle) — pas de LLM sur le chemin chaud |
250
285
  | `forget` | Soft-archivage (jamais supprimer) ou suppression d'observations spécifiques |
251
286
  | `consolidate` | Compression des mémoires verbeux alimentée par LLM |
252
287
  | `export` | Partager les mémoires au format JSON entre projets ou membres d'équipe |
package/README.ja.md CHANGED
@@ -1,6 +1,3 @@
1
- <!-- translated from README.md @ ab9d25f8d9cb7c78c4cc271717709e2efb4bac76 -->
2
- <!-- DO NOT edit this file by hand. The maintainer regenerates it from README.md via a private toolkit script (see internal docs). Manual edits will be overwritten on next sync. -->
3
-
4
1
  🌐 [English](README.md) | [繁體中文](README.zh-TW.md) | [简体中文](README.zh-CN.md) | [日本語](README.ja.md) | [한국어](README.ko.md) | [Português](README.pt.md) | [Français](README.fr.md) | [Deutsch](README.de.md) | [Tiếng Việt](README.vi.md) | [Español](README.es.md) | [ภาษาไทย](README.th.md)
5
2
 
6
3
  <p align="center">
@@ -29,17 +26,52 @@
29
26
 
30
27
  ---
31
28
 
29
+ ## エビデンス — LongMemEval-S で 95.40% R@5
30
+
31
+ MeMesh の検索エンジンは **FTS5 のみ**(LLM もホットパスのエンベディングも使用しない)で、公開されている [LongMemEval-S](https://huggingface.co/datasets/xiaowu0162/longmemeval) ベンチマーク(500 問、MIT ライセンス)で測定された結果です:
32
+
33
+ | システム | R@5 | ソース |
34
+ |---|---|---|
35
+ | **MeMesh (Mode A, FTS5)** | **95.40%** | [benchmarks/longmemeval/RESULTS.md](benchmarks/longmemeval/RESULTS.md) |
36
+ | MemPalace | 96.6% | ベンダー自社申告 |
37
+ | Supermemory | ~82% | ベンダー推定値 |
38
+ | Zep | 63.8% | LongMemEval 論文 |
39
+ | Mem0 | 49.0% | LongMemEval 論文 |
40
+
41
+ 再現コマンド、データセット SHA256、問題ごとの生結果、既知失敗の分析はすべて [`benchmarks/longmemeval/`](benchmarks/longmemeval/) にあります。約 10 秒で再実行可能です。
42
+
43
+ ---
44
+
32
45
  ## 60 秒で始める
33
46
 
34
- ### ステップ 1: インストール
47
+ ### オプション A — Claude Code プラグイン(ワンライナーインストール)
48
+
49
+ Claude Code を使っている場合、CLI 内から MeMesh をプラグインとしてインストールできます:
50
+
51
+ ```
52
+ /plugin marketplace add PCIRCLE-AI/memesh-llm-memory
53
+ /plugin install memesh@pcircle-memesh
54
+ ```
55
+
56
+ Claude Code がフック、スキル、MCP サーバーを自動的にワイヤリングします。セッション内自動キャプチャ、プロアクティブリコール、Claude Code 会話内の `/memesh` スキル(remember / recall / learn / forget)、エージェント向け MCP ツールとしての `remember` / `recall` / `forget` / `learn` がすべて使えるようになります。CLI とローカルダッシュボードもグローバルインストールなしで完全にアクセス可能です — `npx @pcircle/memesh <command>` であらゆる CLI コマンドが実行でき、`npx @pcircle/memesh` で `localhost:3737` のダッシュボードが起動します。MCP サーバーは Anthropic の公式プラグイン(例: `context7`)と同じ `npx` ベースの起動パターンを使用するため、どの機能にも `npm install -g` は不要です。
57
+
58
+ ### オプション B — npm グローバル(オプションの最適化)
59
+
60
+ シェルの `PATH` にバイナリを直接配置したい場合(`memesh`、`memesh-mcp` 等が任意のターミナルで `npx` ルックアップなしに動作)、または `memesh-mcp` を **Claude Code 以外の MCP クライアント**(Cursor、Cline、ターミナル専用フロー)に固定パスの stdio コマンドとして公開したい場合:
35
61
 
36
62
  ```bash
37
63
  npm install -g @pcircle/memesh
38
64
  ```
39
65
 
40
- ### ステップ 1.5: MeMesh を Claude Code に接続(推奨、一度きり)
66
+ > **初回インストールに関する注意(一度きり):**
67
+ > - **ネイティブモジュール** — `better-sqlite3` と `sqlite-vec` は macOS (arm64/x64)、Linux (x64/arm64)、Windows x64 でビルド済みバイナリ経由でインストールされます。珍しいプラットフォームやビルド済みバイナリが失敗した場合は、動作する C/C++ ツールチェインが必要です。
68
+ > - **エンベディングモデル** — ローカルエンベディングをトリガーする最初の呼び出し(例: セマンティックモードでの `recall`)で `Xenova/all-MiniLM-L6-v2`(~80 MB)が `~/.memesh/models/` にダウンロードされます。以降の呼び出しは即時です。デフォルトの検索パス(FTS5)はこのダウンロードを必要としません。
41
69
 
42
- `npm install -g` CLI PATH に配置し MCP サーバーを登録しますが、MeMesh の Claude Code セッションフックは自動的にはワイヤリング**されません**。フックがないと `memesh remember` / `recall` は手動で使えますが、**自動キャプチャループ**(セッション → レッスン → 次のセッションで自発的にリコール)はサイレントになります。
70
+ ### ステップ 1.5: MeMesh を Claude Code に接続(npm パスのみ)
71
+
72
+ **オプション A**(`/plugin install memesh@pcircle-memesh`)でインストールした場合はこのステップをスキップしてください — Claude Code がプラグインフックを自動的にワイヤリングします。
73
+
74
+ **オプション B**(`npm install -g`)でインストールした場合、CLI は PATH に配置され MCP サーバーは登録されますが、Claude Code セッションフックは自動的にはワイヤリングされません。フックがないと `memesh remember` / `recall` は手動で使えますが、**自動キャプチャループ**(セッション → レッスン → 次のセッションで自発的にリコール)はサイレントになります。
43
75
 
44
76
  ```bash
45
77
  memesh install-hooks # ~/.claude/settings.json に memesh フックを追加
@@ -50,6 +82,14 @@ memesh doctor # "Hooks wired into Claude Code" が PASS になる
50
82
 
51
83
  ### ステップ 2: 決定を記録
52
84
 
85
+ > 以下の bash 例は `memesh` が `PATH` 上にあること(オプション B)を前提にしています。オプション A(プラグイン専用)のユーザーには等価な 2 つのパスがあります: Claude Code 会話内で尋ねる(`/memesh` スキル + MCP ツールが同じフローをカバー)か、任意のシェルで `memesh` を `npx @pcircle/memesh` に置き換える — フラグは同じで、グローバルインストール不要です。
86
+
87
+ ```bash
88
+ memesh remember "Use OAuth 2.0 with PKCE for the new auth"
89
+ ```
90
+
91
+ または、後でフィルタリングしたい場合に安定した名前と型を付ける明示形式:
92
+
53
93
  ```bash
54
94
  memesh remember --name "auth-decision" --type "decision" --obs "Use OAuth 2.0 with PKCE"
55
95
  ```
@@ -157,13 +197,14 @@ memesh export-schema \
157
197
 
158
198
  ## Claude Code での自動動作
159
199
 
160
- すべてを手動で記録する必要はありません。MeMesh に **6 つのフック** があり、作業中に知識を自動キャプチャ・注入します:
200
+ すべてを手動で記録する必要はありません。MeMesh に **7 つのフック** があり、作業中に知識を自動キャプチャ・注入します:
161
201
 
162
202
  | タイミング | MeMesh の動作 |
163
203
  |---------|-----------|
164
- | **セッション開始時** | 最も関連の高いメモリ + 過去の教訓から得た予防警告 + エージェント編成バナーをロード |
204
+ | **セッション開始時** | 最も関連の高いメモリ + 過去の教訓から得た予防警告をロード |
165
205
  | **ファイル編集前** | ファイルまたはプロジェクト関連のメモリをリコール (Claude がコード執筆前) |
166
- | **bash コマンド実行前** | 高い検証性を持つコマンド (テスト、ビルド、lint、マイグレーション、デプロイ、ベンチマーク) をバックグラウンドエージェントとして実行するよう促す |
206
+ | **bash コマンド実行前** | (オプトイン)高い検証性を持つコマンド(テスト、ビルド、lint、マイグレーション、デプロイ、ベンチマーク)をバックグラウンドエージェントとして実行するよう Claude を促す |
207
+ | **記憶を依頼したとき** | "remember this" / "guardar en memesh" / "sauvegarder dans memesh" / "記下來" の意図(5 言語)を検出し、Claude に memesh 使用をリマインド |
167
208
  | **`git commit` 後** | 変更内容と diff 統計を記録 |
168
209
  | **Claude 停止時** | 編集ファイル、修正エラー、失敗から自動生成した構造化教訓をキャプチャ |
169
210
  | **コンテキスト圧縮前** | コンテキスト限界で失われる前に知識を保存 |
@@ -172,6 +213,26 @@ memesh export-schema \
172
213
 
173
214
  ---
174
215
 
216
+ ## 設定
217
+
218
+ すべての設定は環境変数経由です。デフォルトはローカル専用・ネットワークなしで、何も設定せずに動作するシステムが手に入ります。
219
+
220
+ | 変数 | デフォルト | 動作 |
221
+ |---|---|---|
222
+ | `MEMESH_DB_PATH` | `~/.memesh/knowledge-graph.db` | SQLite データベースの保存場所を上書き。 |
223
+ | `MEMESH_AUTO_CAPTURE` | `true` | 自動キャプチャフック(`Stop`、`PreCompact`)を完全に無効化。 |
224
+ | `MEMESH_AUTO_DETECT_LLM` | 未設定 | `1` に設定すると、memesh がシェル環境変数(`OPENAI_API_KEY` 等)からプロバイダを自動検出し BYOK エンベディングに切り替えます。**新規インストールのデフォルトはローカル ONNX(384 次元)のみ** — クラウドエンベディングを使いたい場合のみオプトインしてください。このフラグが未設定なら、シェルに `OPENAI_API_KEY` があっても無視されます。 |
225
+ | `MEMESH_ENABLE_AGENTIC_ORCHESTRATION` | 未設定 | `1` に設定すると、実験的なワーキングモデルプロトコル(CTO / Orchestrator / Agents のフレーミング)が有効になります。セッション開始バナー、Bash コマンドの促し、`verify_agent_work` テレメトリが追加されます。プロトコルの有効性は計測中であり、まだ証明されていません — 参加したい場合のみオプトイン。**デフォルトは OFF**: コアメモリ機能はこのフラグなしで動作します。 |
226
+ | `MEMESH_AUTO_UPDATE` | `off` | 自動更新ポリシー。`off`(デフォルト)は自動更新を行いません。`patch` は `X.Y.Z → X.Y.Z+N` を許可、`minor` は `X.Y.Z → X.Y+1.0` を追加、`major` は任意のバンプを許可。許可されている場合、デタッチ実行された `npm install -g` がセッション終了時(Stop フック)に発火するため作業をブロックしません — 結果は `~/.memesh/auto-update.log` に記録されます。`~/.memesh/config.json` の `autoUpdate` でも設定可能(env が優先)。インストール済みバージョンがメンテナーによって非推奨化された場合(セキュリティアドバイザリ)、`off` でも `patch` は強制的に許可されます — minor / major バンプはサイレントな挙動変化を避けるため手動のままです。 |
227
+ | `OPENAI_API_KEY` | 未設定 | OpenAI のキー。`MEMESH_AUTO_DETECT_LLM=1` のとき、または明示的にプロバイダを設定したときのみ使用。 |
228
+ | `OLLAMA_HOST` | `http://localhost:11434` | ローカル Ollama プロバイダ使用時の Ollama エンドポイントを上書き。 |
229
+
230
+ `memesh doctor` は解決された設定を表示するため、何が有効かを確認できます。
231
+
232
+ npm がインストール済みバージョンを非推奨としてフラグした場合(典型的にはセキュリティアドバイザリ)、次のセッション開始時に強い `⚠️ MeMesh <ver> is DEPRECATED` バナーが先頭に表示され、`memesh update-status` がアップグレードまで同じ行を表示し続けます。チェックは `~/.memesh/update-check.<version>.json` にキャッシュされ、一時的なネットワーク障害で警告が薄まらないようになっています。
233
+
234
+ ---
235
+
175
236
  ## ダッシュボード
176
237
 
177
238
  7 つのタブ、11 言語対応、外部依存なし。サーバー実行中は `http://localhost:3737/dashboard` でアクセス可能。
@@ -190,7 +251,7 @@ memesh export-schema \
190
251
 
191
252
  ## スマート機能
192
253
 
193
- **🧠 スマート検索** — 「login security」で検索すると「OAuth PKCE」についてのメモリが見つかります。設定した LLM を使いクエリを関連用語で拡張します。
254
+ **🧠 スマート検索** — 「login security」で検索すると「OAuth PKCE」についてのメモリが見つかります。MeMesh は設定された LLM を使い、クエリを関連用語で拡張します。
194
255
 
195
256
  **📊 スコア付きランキング** — 関連性 (30%) + 新しさ (25%) + 頻度 (15%) + 信頼度 (15%) + リコール影響度 (10%) + 時間的有効性 (5%) でランク付け。
196
257
 
@@ -218,7 +279,7 @@ memesh export-schema \
218
279
 
219
280
  ## スマートモードをアンロック (オプション)
220
281
 
221
- MeMesh はデフォルトでオフライン動作します。クエリ拡張、より賢い抽出、圧縮が必要な場合のみ LLM API キーを追加:
282
+ MeMesh はデフォルトでオフライン動作します — リコールは厳密に LLM フリーのまま(箱出し状態で LongMemEval-S 95.40% R@5)。LLM API キーを追加するのは、その上に LLM 拡張の分析フローを重ねたい場合のみです: より賢いセッション抽出、新規メモリの自動タグ付け、失敗からのレッスン生成、`consolidate` / `dream` 圧縮:
222
283
 
223
284
  ```bash
224
285
  memesh config set llm.provider anthropic
@@ -233,10 +294,12 @@ memesh # ダッシュボード → Settings タブを開く
233
294
 
234
295
  | | レベル 0 (デフォルト) | レベル 1 (スマートモード) |
235
296
  |---|---|---|
236
- | **検索** | FTS5 キーワードマッチング | + LLM クエリ拡張 (~97% リコール率) |
297
+ | **検索** | FTS5 + sqlite-vec、95.40% R@5(~18ms/クエリ) | 変更なし リコールはどのレベルでも LLM フリー |
237
298
  | **自動キャプチャ** | ルールベースパターン | + LLM が判断・教訓を抽出 |
238
- | **圧縮** | 利用不可 | `consolidate` で冗長メモリを圧縮 |
239
- | **コスト** | 無料、API キー不要 | 検索あたり ~$0.0001 (Haiku) |
299
+ | **自動タグ付け** | 手動タグのみ | + LLM が新規メモリにタグを生成 |
300
+ | **失敗分析** | 利用不可 | + LLM がセッションエラーを構造化教訓に変換 |
301
+ | **圧縮** | 利用不可 | `consolidate` + `dream` が冗長メモリを圧縮 |
302
+ | **コスト** | 無料、API キー不要 | 分析呼び出しあたり ~$0.0001(Haiku) |
240
303
 
241
304
  ---
242
305
 
@@ -245,7 +308,7 @@ memesh # ダッシュボード → Settings タブを開く
245
308
  | ツール | 機能 |
246
309
  |------|------|
247
310
  | `remember` | 観察、関係、タグ付きで知識を保存 |
248
- | `recall` | 多要素スコアリングと LLM クエリ拡張のスマート検索 |
311
+ | `recall` | FTS5 + sqlite-vec 検索、多要素スコアリング(関連性、新しさ、頻度、信頼度、時間的有効性) — ホットパスに LLM なし |
249
312
  | `forget` | ソフトアーカイブ (削除されない) または特定の観察を削除 |
250
313
  | `consolidate` | LLM が冗長メモリを圧縮 |
251
314
  | `export` | メモリを JSON でシェア (プロジェクト・チーム間) |