@pcircle/memesh 3.0.0 โ†’ 3.1.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 (47) hide show
  1. package/README.de.md +234 -0
  2. package/README.es.md +234 -0
  3. package/README.fr.md +234 -0
  4. package/README.ja.md +234 -0
  5. package/README.ko.md +234 -0
  6. package/README.md +141 -94
  7. package/README.pt.md +234 -0
  8. package/README.th.md +234 -0
  9. package/README.vi.md +234 -0
  10. package/README.zh-CN.md +234 -0
  11. package/README.zh-TW.md +234 -0
  12. package/dashboard/dist/index.html +16 -0
  13. package/dist/core/config.d.ts.map +1 -1
  14. package/dist/core/config.js +5 -1
  15. package/dist/core/config.js.map +1 -1
  16. package/dist/core/failure-analyzer.d.ts +13 -0
  17. package/dist/core/failure-analyzer.d.ts.map +1 -0
  18. package/dist/core/failure-analyzer.js +98 -0
  19. package/dist/core/failure-analyzer.js.map +1 -0
  20. package/dist/core/lesson-engine.d.ts +21 -0
  21. package/dist/core/lesson-engine.d.ts.map +1 -0
  22. package/dist/core/lesson-engine.js +76 -0
  23. package/dist/core/lesson-engine.js.map +1 -0
  24. package/dist/core/operations.d.ts +2 -1
  25. package/dist/core/operations.d.ts.map +1 -1
  26. package/dist/core/operations.js +15 -0
  27. package/dist/core/operations.js.map +1 -1
  28. package/dist/core/schema-export.d.ts.map +1 -1
  29. package/dist/core/schema-export.js +18 -0
  30. package/dist/core/schema-export.js.map +1 -1
  31. package/dist/core/types.d.ts +12 -0
  32. package/dist/core/types.d.ts.map +1 -1
  33. package/dist/transports/cli/cli.js +35 -3
  34. package/dist/transports/cli/cli.js.map +1 -1
  35. package/dist/transports/http/server.d.ts.map +1 -1
  36. package/dist/transports/http/server.js +52 -1
  37. package/dist/transports/http/server.js.map +1 -1
  38. package/dist/transports/mcp/handlers.d.ts +31 -0
  39. package/dist/transports/mcp/handlers.d.ts.map +1 -1
  40. package/dist/transports/mcp/handlers.js +34 -1
  41. package/dist/transports/mcp/handlers.js.map +1 -1
  42. package/package.json +3 -1
  43. package/plugin.json +12 -4
  44. package/scripts/hooks/session-start.js +38 -1
  45. package/scripts/hooks/session-summary.js +34 -2
  46. package/skills/memesh/SKILL.md +73 -0
  47. package/skills/memesh-review/SKILL.md +54 -0
package/README.ko.md ADDED
@@ -0,0 +1,234 @@
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)
2
+
3
+ <p align="center">
4
+ <h1 align="center">MeMesh LLM Memory</h1>
5
+ <p align="center">
6
+ <strong>๊ฐ€์žฅ ๊ฐ€๋ฒผ์šด ๋ฒ”์šฉ AI ๋ฉ”๋ชจ๋ฆฌ ๋ ˆ์ด์–ด.</strong><br />
7
+ SQLite ํŒŒ์ผ ํ•˜๋‚˜. ์–ด๋–ค LLM์ด๋“ . ํด๋ผ์šฐ๋“œ ์—†์ด.
8
+ </p>
9
+ <p align="center">
10
+ <a href="https://www.npmjs.com/package/@pcircle/memesh"><img src="https://img.shields.io/npm/v/@pcircle/memesh?style=flat-square&color=3b82f6&label=npm" alt="npm" /></a>
11
+ <a href="LICENSE"><img src="https://img.shields.io/badge/license-MIT-22c55e?style=flat-square" alt="MIT" /></a>
12
+ <a href="https://nodejs.org"><img src="https://img.shields.io/badge/node-%3E%3D20-22c55e?style=flat-square" alt="Node" /></a>
13
+ <a href="https://modelcontextprotocol.io"><img src="https://img.shields.io/badge/MCP-compatible-a855f7?style=flat-square" alt="MCP" /></a>
14
+ <a href="https://pypi.org/project/memesh/"><img src="https://img.shields.io/badge/pip-memesh-3b82f6?style=flat-square" alt="PyPI" /></a>
15
+ </p>
16
+ </p>
17
+
18
+ ---
19
+
20
+ ## ๋ฌธ์ œ์˜ ๋ณธ์งˆ
21
+
22
+ AI๋Š” ์„ธ์…˜์ด ๋๋‚  ๋•Œ๋งˆ๋‹ค ๋ชจ๋“  ๊ฒƒ์„ ์žŠ์–ด๋ฒ„๋ฆฝ๋‹ˆ๋‹ค. ๋ชจ๋“  ๊ฒฐ์ •, ๋ชจ๋“  ๋ฒ„๊ทธ ์ˆ˜์ •, ๋ชจ๋“  ๊ตํ›ˆโ€”โ€”์‚ฌ๋ผ์ง‘๋‹ˆ๋‹ค. ๊ฐ™์€ ๋งฅ๋ฝ์„ ๋ฐ˜๋ณตํ•ด์„œ ์„ค๋ช…ํ•˜๊ณ , Claude๋Š” ๊ฐ™์€ ํŒจํ„ด์„ ๋‹ค์‹œ ๋ฐœ๊ฒฌํ•˜๋ฉฐ, ํŒ€์˜ AI ์ง€์‹์€ ๋งค๋ฒˆ ์ œ๋กœ๋กœ ์ดˆ๊ธฐํ™”๋ฉ๋‹ˆ๋‹ค.
23
+
24
+ **MeMesh๋Š” ๋ชจ๋“  AI์—๊ฒŒ ์ง€์†์ ์ด๊ณ , ๊ฒ€์ƒ‰ ๊ฐ€๋Šฅํ•˜๋ฉฐ, ์ง„ํ™”ํ•˜๋Š” ๋ฉ”๋ชจ๋ฆฌ๋ฅผ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค.**
25
+
26
+ ---
27
+
28
+ ## 60์ดˆ ๋งŒ์— ์‹œ์ž‘ํ•˜๊ธฐ
29
+
30
+ ### 1๋‹จ๊ณ„: ์„ค์น˜
31
+
32
+ ```bash
33
+ npm install -g @pcircle/memesh
34
+ ```
35
+
36
+ ### 2๋‹จ๊ณ„: AI๊ฐ€ ๊ธฐ์–ตํ•˜๊ธฐ
37
+
38
+ ```bash
39
+ memesh remember --name "auth-decision" --type "decision" --obs "Use OAuth 2.0 with PKCE"
40
+ ```
41
+
42
+ ### 3๋‹จ๊ณ„: AI๊ฐ€ ๋– ์˜ฌ๋ฆฌ๊ธฐ
43
+
44
+ ```bash
45
+ memesh recall "login security"
46
+ # โ†’ ๋‹ค๋ฅธ ๋‹จ์–ด๋กœ ๊ฒ€์ƒ‰ํ•ด๋„ "OAuth 2.0 with PKCE"๋ฅผ ์ฐพ์•„๋ƒ…๋‹ˆ๋‹ค
47
+ ```
48
+
49
+ **๋์ž…๋‹ˆ๋‹ค.** MeMesh๊ฐ€ ์„ธ์…˜์„ ๋„˜๋‚˜๋“ค๋ฉฐ ๊ธฐ์–ตํ•˜๊ณ  ๋– ์˜ฌ๋ฆฌ๊ธฐ ์‹œ์ž‘ํ–ˆ์Šต๋‹ˆ๋‹ค.
50
+
51
+ ๋Œ€์‹œ๋ณด๋“œ๋ฅผ ์—ด์–ด ๋ฉ”๋ชจ๋ฆฌ๋ฅผ ํƒ์ƒ‰ํ•ด๋ณด์„ธ์š”:
52
+
53
+ ```bash
54
+ memesh
55
+ ```
56
+
57
+ <p align="center">
58
+ <img src="docs/images/dashboard-search.png" alt="MeMesh Search โ€” ์–ด๋–ค ๋ฉ”๋ชจ๋ฆฌ๋„ ์ฆ‰์‹œ ๊ฒ€์ƒ‰" width="100%" />
59
+ </p>
60
+
61
+ <p align="center">
62
+ <img src="docs/images/dashboard-analytics.png" alt="MeMesh Analytics โ€” AI์˜ ์ง€์‹์„ ํ•œ๋ˆˆ์— ํŒŒ์•…" width="100%" />
63
+ </p>
64
+
65
+ ---
66
+
67
+ ## ๋ˆ„๊ตฌ๋ฅผ ์œ„ํ•œ ๋„๊ตฌ์ธ๊ฐ€?
68
+
69
+ | ๋‹น์‹ ์ดโ€ฆ๋ผ๋ฉด | MeMesh๊ฐ€ ์ด๋ ‡๊ฒŒ ๋„์™€์ค๋‹ˆ๋‹ค |
70
+ |---------------|---------------------|
71
+ | **Claude Code๋ฅผ ์‚ฌ์šฉํ•˜๋Š” ๊ฐœ๋ฐœ์ž** | ๊ฒฐ์ •, ํŒจํ„ด, ๊ตํ›ˆ์„ ์„ธ์…˜์„ ๋„˜๋‚˜๋“ค๋ฉฐ ์ž๋™์œผ๋กœ ๊ธฐ์–ต |
72
+ | **LLM์œผ๋กœ ์ œํ’ˆ์„ ๋งŒ๋“œ๋Š” ํŒ€** | ๋‚ด๋ณด๋‚ด๊ธฐ/๊ฐ€์ ธ์˜ค๊ธฐ๋กœ ํŒ€ ์ง€์‹์„ ๊ณต์œ ํ•˜๊ณ  ๋ชจ๋‘์˜ AI ๋งฅ๋ฝ์„ ์ •๋ ฌ |
73
+ | **AI ์—์ด์ „ํŠธ ๊ฐœ๋ฐœ์ž** | MCP, HTTP API, Python SDK๋ฅผ ํ†ตํ•ด ์—์ด์ „ํŠธ์— ์ง€์† ๋ฉ”๋ชจ๋ฆฌ ๋ถ€์—ฌ |
74
+ | **์—ฌ๋Ÿฌ AI ๋„๊ตฌ๋ฅผ ์“ฐ๋Š” ํŒŒ์›Œ ์œ ์ €** | Claude, GPT, LLaMA, Ollama ๋˜๋Š” ๋ชจ๋“  MCP ํด๋ผ์ด์–ธํŠธ์™€ ์ž‘๋™ํ•˜๋Š” ๋‹จ์ผ ๋ฉ”๋ชจ๋ฆฌ ๋ ˆ์ด์–ด |
75
+
76
+ ---
77
+
78
+ ## ๋ชจ๋“  ๊ฒƒ๊ณผ ์—ฐ๋™
79
+
80
+ <table>
81
+ <tr>
82
+ <td width="33%" align="center">
83
+
84
+ **Claude Code / Desktop**
85
+ ```bash
86
+ memesh-mcp
87
+ ```
88
+ MCP ํ”„๋กœํ† ์ฝœ (์ž๋™ ์„ค์ •)
89
+
90
+ </td>
91
+ <td width="33%" align="center">
92
+
93
+ **Python / LangChain**
94
+ ```python
95
+ from memesh import MeMesh
96
+ m = MeMesh()
97
+ m.recall("auth")
98
+ ```
99
+ `pip install memesh`
100
+
101
+ </td>
102
+ <td width="33%" align="center">
103
+
104
+ **๋ชจ๋“  LLM (OpenAI ํ˜•์‹)**
105
+ ```bash
106
+ memesh export-schema \
107
+ --format openai
108
+ ```
109
+ ์–ด๋–ค API ํ˜ธ์ถœ์—๋„ ๋ถ™์—ฌ๋„ฃ๊ธฐ
110
+
111
+ </td>
112
+ </tr>
113
+ </table>
114
+
115
+ ---
116
+
117
+ ## ์™œ Mem0 / Zep๊ฐ€ ์•„๋‹Œ๊ฐ€?
118
+
119
+ | | **MeMesh** | Mem0 | Zep |
120
+ |---|---|---|---|
121
+ | **์„ค์น˜ ์‹œ๊ฐ„** | 5์ดˆ | 30~60๋ถ„ | 30๋ถ„ ์ด์ƒ |
122
+ | **์„ค์ • ๋ฐฉ๋ฒ•** | `npm i -g` โ€” ์™„๋ฃŒ | Neo4j + VectorDB + API ํ‚ค | Neo4j + ์„ค์ • |
123
+ | **์ €์žฅ์†Œ** | SQLite ํŒŒ์ผ ํ•˜๋‚˜ | Neo4j + Qdrant | Neo4j |
124
+ | **์˜คํ”„๋ผ์ธ ์‚ฌ์šฉ** | ํ•ญ์ƒ ๊ฐ€๋Šฅ | ๋ถˆ๊ฐ€ | ๋ถˆ๊ฐ€ |
125
+ | **๋Œ€์‹œ๋ณด๋“œ** | ๋‚ด์žฅ (5๊ฐœ ํƒญ) | ์—†์Œ | ์—†์Œ |
126
+ | **์˜์กด์„ฑ** | 6๊ฐœ | 20๊ฐœ ์ด์ƒ | 10๊ฐœ ์ด์ƒ |
127
+ | **๊ฐ€๊ฒฉ** | ์˜๊ตฌ ๋ฌด๋ฃŒ | ๋ฌด๋ฃŒ ํ‹ฐ์–ด / ์œ ๋ฃŒ | ๋ฌด๋ฃŒ ํ‹ฐ์–ด / ์œ ๋ฃŒ |
128
+
129
+ **MeMesh์˜ ํŠธ๋ ˆ์ด๋“œ์˜คํ”„:** ์—”ํ„ฐํ”„๋ผ์ด์ฆˆ๊ธ‰ ๋ฉ€ํ‹ฐํ…Œ๋„ŒํŠธ ๊ธฐ๋Šฅ์„ ํฌ๊ธฐํ•˜๋Š” ๋Œ€์‹  **์ฆ‰์‹œ ์„ค์น˜, ์ œ๋กœ ์ธํ”„๋ผ, 100% ํ”„๋ผ์ด๋ฒ„์‹œ**๋ฅผ ์–ป์Šต๋‹ˆ๋‹ค.
130
+
131
+ ---
132
+
133
+ ## ์ž๋™์œผ๋กœ ์ผ์–ด๋‚˜๋Š” ์ผ๋“ค
134
+
135
+ ๋ชจ๋“  ๊ฒƒ์„ ์ง์ ‘ ๊ธฐ์–ตํ•  ํ•„์š”๊ฐ€ ์—†์Šต๋‹ˆ๋‹ค. MeMesh์—๋Š” **4๊ฐœ์˜ ํ›…**์ด ์žˆ์–ด ์•„๋ฌด๊ฒƒ๋„ ํ•˜์ง€ ์•Š์•„๋„ ์ง€์‹์„ ์ž๋™์œผ๋กœ ํฌ์ฐฉํ•ฉ๋‹ˆ๋‹ค:
136
+
137
+ | ์–ธ์ œ | MeMesh๊ฐ€ ํ•˜๋Š” ์ผ |
138
+ |------|------------------|
139
+ | **๋ชจ๋“  ์„ธ์…˜ ์‹œ์ž‘ ์‹œ** | ์Šค์ฝ”์–ด๋ง ์•Œ๊ณ ๋ฆฌ์ฆ˜์œผ๋กœ ๊ฐ€์žฅ ๊ด€๋ จ์„ฑ ๋†’์€ ๋ฉ”๋ชจ๋ฆฌ๋ฅผ ๋กœ๋“œ |
140
+ | **๋ชจ๋“  `git commit` ํ›„** | ๋ณ€๊ฒฝ ๋‚ด์šฉ๊ณผ diff ํ†ต๊ณ„๋ฅผ ๊ธฐ๋ก |
141
+ | **Claude ์ข…๋ฃŒ ์‹œ** | ํŽธ์ง‘ํ•œ ํŒŒ์ผ, ์ˆ˜์ •ํ•œ ์˜ค๋ฅ˜, ๋‚ด๋ฆฐ ๊ฒฐ์ •์„ ํฌ์ฐฉ |
142
+ | **์ปจํ…์ŠคํŠธ ์••์ถ• ์ „** | ์ปจํ…์ŠคํŠธ ํ•œ๊ณ„๋กœ ์‚ฌ๋ผ์ง€๊ธฐ ์ „์— ์ง€์‹์„ ์ €์žฅ |
143
+
144
+ > **์–ธ์ œ๋“  ๋น„ํ™œ์„ฑํ™”:** `export MEMESH_AUTO_CAPTURE=false`
145
+
146
+ ---
147
+
148
+ ## ์Šค๋งˆํŠธ ๊ธฐ๋Šฅ
149
+
150
+ **๐Ÿง  ์Šค๋งˆํŠธ ๊ฒ€์ƒ‰** โ€” "login security"๋ฅผ ๊ฒ€์ƒ‰ํ•˜๋ฉด "OAuth PKCE"์— ๊ด€ํ•œ ๋ฉ”๋ชจ๋ฆฌ๋ฅผ ์ฐพ์•„๋ƒ…๋‹ˆ๋‹ค. ์„ค์ •ํ•œ LLM์„ ์ด์šฉํ•ด ์ฟผ๋ฆฌ๋ฅผ ๊ด€๋ จ ์šฉ์–ด๋กœ ํ™•์žฅํ•ฉ๋‹ˆ๋‹ค.
151
+
152
+ **๐Ÿ“Š ์ ์ˆ˜ ๊ธฐ๋ฐ˜ ์ˆœ์œ„** โ€” ๊ฒฐ๊ณผ๋Š” ๊ด€๋ จ์„ฑ(35%) + ์ตœ๊ทผ ์‚ฌ์šฉ ์‹œ๊ฐ(25%) + ์‚ฌ์šฉ ๋นˆ๋„(20%) + ์‹ ๋ขฐ๋„(15%) + ์ •๋ณด ์œ ํšจ์„ฑ(5%)์œผ๋กœ ์ˆœ์œ„๋ฅผ ๋งค๊น๋‹ˆ๋‹ค.
153
+
154
+ **๐Ÿ”„ ์ง€์‹ ์ง„ํ™”** โ€” ๊ฒฐ์ •์€ ๋ฐ”๋€๋‹ˆ๋‹ค. `forget`์€ ์˜ค๋ž˜๋œ ๋ฉ”๋ชจ๋ฆฌ๋ฅผ ์•„์นด์ด๋ธŒํ•ฉ๋‹ˆ๋‹ค(์ ˆ๋Œ€ ์‚ญ์ œํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค). `supersedes` ๊ด€๊ณ„๊ฐ€ ์ด์ „ ๊ฒƒ๊ณผ ์ƒˆ ๊ฒƒ์„ ์—ฐ๊ฒฐํ•ฉ๋‹ˆ๋‹ค. AI๋Š” ํ•ญ์ƒ ์ตœ์‹  ๋ฒ„์ „์„ ์ฐธ์กฐํ•ฉ๋‹ˆ๋‹ค.
155
+
156
+ **โš ๏ธ ์ถฉ๋Œ ๊ฐ์ง€** โ€” ๋‘ ๋ฉ”๋ชจ๋ฆฌ๊ฐ€ ์„œ๋กœ ๋ชจ์ˆœ๋  ๊ฒฝ์šฐ MeMesh๊ฐ€ ๊ฒฝ๊ณ ๋ฅผ ๋ณด๋ƒ…๋‹ˆ๋‹ค.
157
+
158
+ **๐Ÿ“ฆ ํŒ€ ๊ณต์œ ** โ€” `memesh export > team-knowledge.json` โ†’ ํŒ€๊ณผ ๊ณต์œ  โ†’ `memesh import team-knowledge.json`
159
+
160
+ ---
161
+
162
+ ## ์Šค๋งˆํŠธ ๋ชจ๋“œ ํ™œ์„ฑํ™” (์„ ํƒ ์‚ฌํ•ญ)
163
+
164
+ MeMesh๋Š” ๊ธฐ๋ณธ์ ์œผ๋กœ ์™„์ „ํžˆ ์˜คํ”„๋ผ์ธ์œผ๋กœ ๋™์ž‘ํ•ฉ๋‹ˆ๋‹ค. LLM API ํ‚ค๋ฅผ ์ถ”๊ฐ€ํ•˜๋ฉด ๋” ์Šค๋งˆํŠธํ•œ ๊ฒ€์ƒ‰์„ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค:
165
+
166
+ ```bash
167
+ memesh config set llm.provider anthropic
168
+ memesh config set llm.api-key sk-ant-...
169
+ ```
170
+
171
+ ๋˜๋Š” ๋Œ€์‹œ๋ณด๋“œ ์„ค์ • ํƒญ์—์„œ ์‹œ๊ฐ์ ์œผ๋กœ ์„ค์ •:
172
+
173
+ ```bash
174
+ memesh # ๋Œ€์‹œ๋ณด๋“œ ์—ด๊ธฐ โ†’ ์„ค์ • ํƒญ
175
+ ```
176
+
177
+ | | ๋ ˆ๋ฒจ 0 (๊ธฐ๋ณธ๊ฐ’) | ๋ ˆ๋ฒจ 1 (์Šค๋งˆํŠธ ๋ชจ๋“œ) |
178
+ |---|---|---|
179
+ | **๊ฒ€์ƒ‰** | FTS5 ํ‚ค์›Œ๋“œ ๋งค์นญ | + LLM ์ฟผ๋ฆฌ ํ™•์žฅ (~97% ์žฌํ˜„์œจ) |
180
+ | **์ž๋™ ํฌ์ฐฉ** | ๊ทœ์น™ ๊ธฐ๋ฐ˜ ํŒจํ„ด | + LLM์ด ๊ฒฐ์ • & ๊ตํ›ˆ ์ถ”์ถœ |
181
+ | **์••์ถ•** | ์‚ฌ์šฉ ๋ถˆ๊ฐ€ | `consolidate`๋กœ ์žฅํ™ฉํ•œ ๋ฉ”๋ชจ๋ฆฌ ์••์ถ• |
182
+ | **๋น„์šฉ** | ๋ฌด๋ฃŒ, API ํ‚ค ๋ถˆํ•„์š” | ๊ฒ€์ƒ‰๋‹น ~$0.0001 (Haiku) |
183
+
184
+ ---
185
+
186
+ ## ์ „์ฒด 6๊ฐ€์ง€ ๋ฉ”๋ชจ๋ฆฌ ๋„๊ตฌ
187
+
188
+ | ๋„๊ตฌ | ๊ธฐ๋Šฅ |
189
+ |------|-------------|
190
+ | `remember` | ๊ด€์ฐฐ ๊ธฐ๋ก, ๊ด€๊ณ„, ํƒœ๊ทธ์™€ ํ•จ๊ป˜ ์ง€์‹ ์ €์žฅ |
191
+ | `recall` | ๋‹ค์ค‘ ์š”์†Œ ์Šค์ฝ”์–ด๋ง๊ณผ LLM ์ฟผ๋ฆฌ ํ™•์žฅ์„ ํ™œ์šฉํ•œ ์Šค๋งˆํŠธ ๊ฒ€์ƒ‰ |
192
+ | `forget` | ์†Œํ”„ํŠธ ์•„์นด์ด๋ธŒ(์ ˆ๋Œ€ ์‚ญ์ œ ์—†์Œ) ๋˜๋Š” ํŠน์ • ๊ด€์ฐฐ ๊ธฐ๋ก ์ œ๊ฑฐ |
193
+ | `consolidate` | LLM ๊ธฐ๋ฐ˜ ์žฅํ™ฉํ•œ ๋ฉ”๋ชจ๋ฆฌ ์••์ถ• |
194
+ | `export` | ๋ฉ”๋ชจ๋ฆฌ๋ฅผ JSON์œผ๋กœ ํ”„๋กœ์ ํŠธ ๋˜๋Š” ํŒ€์›๊ณผ ๊ณต์œ  |
195
+ | `import` | ๋ณ‘ํ•ฉ ์ „๋žต(๊ฑด๋„ˆ๋›ฐ๊ธฐ / ๋ฎ์–ด์“ฐ๊ธฐ / ์ถ”๊ฐ€)์„ ์„ ํƒํ•ด ๋ฉ”๋ชจ๋ฆฌ ๊ฐ€์ ธ์˜ค๊ธฐ |
196
+
197
+ ---
198
+
199
+ ## ์•„ํ‚คํ…์ฒ˜
200
+
201
+ ```
202
+ โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”
203
+ โ”‚ Core Engine โ”‚
204
+ โ”‚ (6 operations) โ”‚
205
+ โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ฌโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜
206
+ โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ผโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”
207
+ โ”‚ โ”‚ โ”‚
208
+ CLI (memesh) HTTP API (serve) MCP (memesh-mcp)
209
+ โ”‚ โ”‚ โ”‚
210
+ โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ผโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜
211
+ โ”‚
212
+ SQLite + FTS5 + sqlite-vec
213
+ (~/.memesh/knowledge-graph.db)
214
+ ```
215
+
216
+ ์ฝ”์–ด๋Š” ํ”„๋ ˆ์ž„์›Œํฌ ๋…๋ฆฝ์ . ํ„ฐ๋ฏธ๋„, HTTP, MCP ์–ด๋””์„œ ํ˜ธ์ถœํ•ด๋„ ๋™์ผํ•œ ๋กœ์ง์ด ์‹คํ–‰๋ฉ๋‹ˆ๋‹ค.
217
+
218
+ ---
219
+
220
+ ## ๊ธฐ์—ฌํ•˜๊ธฐ
221
+
222
+ ```bash
223
+ git clone https://github.com/PCIRCLE-AI/memesh-llm-memory
224
+ cd memesh-llm-memory && npm install && npm run build
225
+ npm test -- --run # 289 tests
226
+ ```
227
+
228
+ ๋Œ€์‹œ๋ณด๋“œ: `cd dashboard && npm install && npm run dev`
229
+
230
+ ---
231
+
232
+ <p align="center">
233
+ <strong>MIT</strong> โ€” <a href="https://pcircle.ai">PCIRCLE AI</a> ์ œ์ž‘
234
+ </p>
package/README.md CHANGED
@@ -1,3 +1,5 @@
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)
2
+
1
3
  <p align="center">
2
4
  <h1 align="center">MeMesh LLM Memory</h1>
3
5
  <p align="center">
@@ -15,127 +17,182 @@
15
17
 
16
18
  ---
17
19
 
18
- Your AI forgets everything between sessions. **MeMesh fixes that.**
20
+ ## The Problem
21
+
22
+ Your AI forgets everything between sessions. Every decision, every bug fix, every lesson learned โ€” gone. You re-explain the same context, Claude re-discovers the same patterns, and your team's AI knowledge resets to zero.
23
+
24
+ **MeMesh gives every AI persistent, searchable, evolving memory.**
25
+
26
+ ---
27
+
28
+ ## Get Started in 60 Seconds
19
29
 
20
- Install once, configure in 30 seconds, and every AI tool you use โ€” Claude, GPT, LLaMA, or any MCP client โ€” gets persistent, searchable, evolving memory. No cloud. No Neo4j. No vector database. Just one SQLite file.
30
+ ### Step 1: Install
21
31
 
22
32
  ```bash
23
33
  npm install -g @pcircle/memesh
24
34
  ```
25
35
 
26
- ---
36
+ ### Step 2: Your AI remembers
37
+
38
+ ```bash
39
+ memesh remember --name "auth-decision" --type "decision" --obs "Use OAuth 2.0 with PKCE"
40
+ ```
27
41
 
28
- ## Dashboard
42
+ ### Step 3: Your AI recalls
29
43
 
30
- <p align="center">
31
- <img src="docs/images/dashboard-search.png" alt="MeMesh Search" width="100%" />
32
- </p>
44
+ ```bash
45
+ memesh recall "login security"
46
+ # โ†’ Finds "OAuth 2.0 with PKCE" even though you searched different words
47
+ ```
48
+
49
+ **That's it.** MeMesh is now remembering and recalling across sessions.
50
+
51
+ Open the dashboard to explore your memory:
52
+
53
+ ```bash
54
+ memesh
55
+ ```
33
56
 
34
57
  <p align="center">
35
- <img src="docs/images/dashboard-analytics.png" alt="MeMesh Analytics" width="100%" />
58
+ <img src="docs/images/dashboard-search.png" alt="MeMesh Search โ€” find any memory instantly" width="100%" />
36
59
  </p>
37
60
 
38
61
  <p align="center">
39
- <img src="docs/images/dashboard-browse.png" alt="MeMesh Browse" width="100%" />
62
+ <img src="docs/images/dashboard-analytics.png" alt="MeMesh Analytics โ€” understand your AI's knowledge" width="100%" />
40
63
  </p>
41
64
 
42
- Run `memesh` to open the interactive dashboard with Search, Browse, Analytics, Manage, and Settings.
43
-
44
65
  ---
45
66
 
46
- ## Quick Start
67
+ ## Who Is This For?
47
68
 
48
- ```bash
49
- # Store a memory
50
- memesh remember --name "auth-decision" --type "decision" --obs "Use OAuth 2.0 with PKCE"
69
+ | If you are... | MeMesh helps you... |
70
+ |---------------|---------------------|
71
+ | **A developer using Claude Code** | Remember decisions, patterns, and lessons across sessions automatically |
72
+ | **A team building with LLMs** | Share team knowledge via export/import, keep everyone's AI context aligned |
73
+ | **An AI agent developer** | Give your agents persistent memory via MCP, HTTP API, or Python SDK |
74
+ | **A power user with multiple AI tools** | One memory layer that works with Claude, GPT, LLaMA, Ollama, or any MCP client |
51
75
 
52
- # Search memories (finds "OAuth" even if you search "login security" with Smart Mode)
53
- memesh recall "login security"
76
+ ---
54
77
 
55
- # Archive outdated memories (soft-delete, never lost)
56
- memesh forget --name "old-auth-design"
78
+ ## Works With Everything
57
79
 
58
- # Open the dashboard
59
- memesh
80
+ <table>
81
+ <tr>
82
+ <td width="33%" align="center">
60
83
 
61
- # Start HTTP API (for Python SDK, integrations)
62
- memesh serve
84
+ **Claude Code / Desktop**
85
+ ```bash
86
+ memesh-mcp
63
87
  ```
88
+ MCP protocol (auto-configured)
64
89
 
65
- ### Python
90
+ </td>
91
+ <td width="33%" align="center">
66
92
 
93
+ **Python / LangChain**
67
94
  ```python
68
95
  from memesh import MeMesh
69
-
70
- m = MeMesh() # connects to localhost:3737
71
- m.remember("auth", "decision", observations=["Use OAuth 2.0 with PKCE"])
72
- results = m.recall("auth")
96
+ m = MeMesh()
97
+ m.recall("auth")
73
98
  ```
99
+ `pip install memesh`
74
100
 
75
- ### Any LLM (OpenAI function calling format)
101
+ </td>
102
+ <td width="33%" align="center">
76
103
 
104
+ **Any LLM (OpenAI format)**
77
105
  ```bash
78
- memesh export-schema --format openai
79
- # โ†’ JSON array of tools, paste into your OpenAI/Claude/Gemini API call
106
+ memesh export-schema \
107
+ --format openai
80
108
  ```
109
+ Paste tools into any API call
110
+
111
+ </td>
112
+ </tr>
113
+ </table>
81
114
 
82
115
  ---
83
116
 
84
- ## Why MeMesh?
117
+ ## Why Not Just Use Mem0 / Zep?
85
118
 
86
- Most AI memory solutions need Neo4j, vector databases, API keys, and 30+ minutes of setup. MeMesh needs **one command**.
119
+ | | **MeMesh** | Mem0 | Zep |
120
+ |---|---|---|---|
121
+ | **Install time** | 5 seconds | 30-60 minutes | 30+ minutes |
122
+ | **Setup** | `npm i -g` โ€” done | Neo4j + VectorDB + API keys | Neo4j + config |
123
+ | **Storage** | Single SQLite file | Neo4j + Qdrant | Neo4j |
124
+ | **Works offline** | Yes, always | No | No |
125
+ | **Dashboard** | Built-in (5 tabs) | None | None |
126
+ | **Dependencies** | 6 | 20+ | 10+ |
127
+ | **Price** | Free forever | Free tier / Paid | Free tier / Paid |
87
128
 
88
- | | **MeMesh** | Mem0 | Zep | Anthropic Memory |
89
- |---|---|---|---|---|
90
- | **Install** | `npm i -g` (5 sec) | pip + Neo4j + VectorDB | pip + Neo4j | Built-in (cloud) |
91
- | **Storage** | Single SQLite file | Neo4j + Qdrant | Neo4j | Cloud |
92
- | **Search** | FTS5 + scoring + LLM expansion | Semantic + BM25 | Temporal graph | Key lookup |
93
- | **Privacy** | 100% local, always | Cloud option | Self-host | Cloud |
94
- | **Dependencies** | 6 | 20+ | 10+ | 0 (but cloud-locked) |
95
- | **Offline** | Yes | No | No | No |
96
- | **Dashboard** | Built-in (5 tabs) | None | None | None |
97
- | **Price** | Free | Free/Paid | Free/Paid | Included w/ API |
129
+ **MeMesh trades:** enterprise-scale multi-tenant features for **instant setup, zero infrastructure, and 100% privacy**.
98
130
 
99
131
  ---
100
132
 
101
- ## Features
133
+ ## What Happens Automatically
102
134
 
103
- ### 6 Memory Tools
135
+ You don't need to manually remember everything. MeMesh has **4 hooks** that capture knowledge without you doing anything:
136
+
137
+ | When | What MeMesh does |
138
+ |------|------------------|
139
+ | **Every session start** | Loads your most relevant memories (ranked by scoring algorithm) |
140
+ | **After every `git commit`** | Records what you changed, with diff stats |
141
+ | **When Claude stops** | Captures files edited, errors fixed, and decisions made |
142
+ | **Before context compaction** | Saves knowledge before it's lost to context limits |
143
+
144
+ > **Opt out anytime:** `export MEMESH_AUTO_CAPTURE=false`
145
+
146
+ ---
147
+
148
+ ## Smart Features
149
+
150
+ **๐Ÿง  Smart Search** โ€” Search "login security" and find memories about "OAuth PKCE". MeMesh expands queries with related terms using your configured LLM.
151
+
152
+ **๐Ÿ“Š Scored Ranking** โ€” Results ranked by relevance (35%) + how recently you used it (25%) + how often (20%) + confidence (15%) + whether the info is still current (5%).
153
+
154
+ **๐Ÿ”„ Knowledge Evolution** โ€” Decisions change. `forget` archives old memories (never deletes). `supersedes` relations link old โ†’ new. Your AI always sees the latest version.
155
+
156
+ **โš ๏ธ Conflict Detection** โ€” If you have two memories that contradict each other, MeMesh warns you.
157
+
158
+ **๐Ÿ“ฆ Team Sharing** โ€” `memesh export > team-knowledge.json` โ†’ share with your team โ†’ `memesh import team-knowledge.json`
159
+
160
+ ---
161
+
162
+ ## Unlock Smart Mode (Optional)
163
+
164
+ MeMesh works fully offline out of the box. Add an LLM API key to unlock smarter search:
165
+
166
+ ```bash
167
+ memesh config set llm.provider anthropic
168
+ memesh config set llm.api-key sk-ant-...
169
+ ```
170
+
171
+ Or use the dashboard Settings tab (visual setup):
172
+
173
+ ```bash
174
+ memesh # opens dashboard โ†’ Settings tab
175
+ ```
176
+
177
+ | | Level 0 (default) | Level 1 (Smart Mode) |
178
+ |---|---|---|
179
+ | **Search** | FTS5 keyword matching | + LLM query expansion (~97% recall) |
180
+ | **Auto-capture** | Rule-based patterns | + LLM extracts decisions & lessons |
181
+ | **Compression** | Not available | `consolidate` compresses verbose memories |
182
+ | **Cost** | Free, no API key | ~$0.0001 per search (Haiku) |
183
+
184
+ ---
185
+
186
+ ## All 6 Memory Tools
104
187
 
105
188
  | Tool | What it does |
106
189
  |------|-------------|
107
- | **remember** | Store knowledge with observations, relations, and tags |
108
- | **recall** | Smart search with multi-factor scoring and LLM query expansion |
109
- | **forget** | Soft-archive (never deletes) or remove specific observations |
110
- | **consolidate** | LLM-powered compression of verbose memories |
111
- | **export** | Share memories as JSON between projects or team members |
112
- | **import** | Import memories with merge strategies (skip / overwrite / append) |
113
-
114
- ### 3 Access Methods
115
-
116
- | Method | Command | Best for |
117
- |--------|---------|----------|
118
- | **CLI** | `memesh` | Terminal, scripting, CI/CD |
119
- | **HTTP API** | `memesh serve` | Python SDK, dashboard, integrations |
120
- | **MCP** | `memesh-mcp` | Claude Code, Claude Desktop, any MCP client |
121
-
122
- ### 4 Auto-Capture Hooks
123
-
124
- | Hook | Trigger | What it captures |
125
- |------|---------|-----------------|
126
- | **Session Start** | Every session | Loads your top memories by relevance |
127
- | **Post Commit** | After `git commit` | Records commit with diff stats |
128
- | **Session Summary** | When Claude stops | Files edited, errors fixed, decisions made |
129
- | **Pre-Compact** | Before compaction | Saves knowledge before context is lost |
130
-
131
- ### Smart Features
132
-
133
- - **Knowledge Evolution** โ€” `forget` archives, not deletes. `supersedes` relations replace old decisions with new ones. History is preserved.
134
- - **Smart Recall** โ€” LLM expands your search query into related terms. "login security" finds "OAuth PKCE".
135
- - **Multi-Factor Scoring** โ€” Results ranked by relevance (35%) + recency (25%) + frequency (20%) + confidence (15%) + temporal validity (5%).
136
- - **Conflict Detection** โ€” Warns when memories contradict each other.
137
- - **Auto-Decay** โ€” Stale memories (30+ days unused) gradually fade in ranking. Never deleted.
138
- - **Namespaces** โ€” `personal`, `team`, `global` scopes for organizing and sharing.
190
+ | `remember` | Store knowledge with observations, relations, and tags |
191
+ | `recall` | Smart search with multi-factor scoring and LLM query expansion |
192
+ | `forget` | Soft-archive (never deletes) or remove specific observations |
193
+ | `consolidate` | LLM-powered compression of verbose memories |
194
+ | `export` | Share memories as JSON between projects or team members |
195
+ | `import` | Import memories with merge strategies (skip / overwrite / append) |
139
196
 
140
197
  ---
141
198
 
@@ -156,32 +213,22 @@ Most AI memory solutions need Neo4j, vector databases, API keys, and 30+ minutes
156
213
  (~/.memesh/knowledge-graph.db)
157
214
  ```
158
215
 
159
- **Core** is framework-agnostic โ€” the same `remember`/`recall`/`forget` logic runs identically whether invoked from terminal, HTTP, or MCP.
160
-
161
- **Dependencies**: `better-sqlite3`, `sqlite-vec`, `@modelcontextprotocol/sdk`, `zod`, `express`, `commander`
216
+ Core is framework-agnostic. Same logic runs from terminal, HTTP, or MCP.
162
217
 
163
218
  ---
164
219
 
165
- ## Development
220
+ ## Contributing
166
221
 
167
222
  ```bash
168
223
  git clone https://github.com/PCIRCLE-AI/memesh-llm-memory
169
- cd memesh-llm-memory
170
- npm install
171
- npm run build
224
+ cd memesh-llm-memory && npm install && npm run build
172
225
  npm test -- --run # 289 tests
173
226
  ```
174
227
 
175
- Dashboard development:
176
- ```bash
177
- cd dashboard
178
- npm install
179
- npm run dev # Vite dev server with hot reload
180
- npm run build # Build to single HTML file
181
- ```
228
+ Dashboard: `cd dashboard && npm install && npm run dev`
182
229
 
183
230
  ---
184
231
 
185
- ## License
186
-
187
- MIT โ€” [PCIRCLE AI](https://pcircle.ai)
232
+ <p align="center">
233
+ <strong>MIT</strong> โ€” Made by <a href="https://pcircle.ai">PCIRCLE AI</a>
234
+ </p>