@pcircle/memesh 4.0.3 โ†’ 4.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 (50) hide show
  1. package/README.de.md +227 -53
  2. package/README.es.md +230 -56
  3. package/README.fr.md +230 -56
  4. package/README.ja.md +229 -55
  5. package/README.ko.md +230 -56
  6. package/README.md +54 -3
  7. package/README.pt.md +230 -56
  8. package/README.th.md +230 -56
  9. package/README.vi.md +228 -54
  10. package/README.zh-CN.md +230 -56
  11. package/README.zh-TW.md +228 -54
  12. package/dist/core/config.d.ts.map +1 -1
  13. package/dist/core/config.js +6 -10
  14. package/dist/core/config.js.map +1 -1
  15. package/dist/core/doctor.d.ts +40 -0
  16. package/dist/core/doctor.d.ts.map +1 -0
  17. package/dist/core/doctor.js +217 -0
  18. package/dist/core/doctor.js.map +1 -0
  19. package/dist/core/embedder.js.map +1 -1
  20. package/dist/core/schema-export.d.ts.map +1 -1
  21. package/dist/core/schema-export.js +34 -0
  22. package/dist/core/schema-export.js.map +1 -1
  23. package/dist/core/skill-usage-log.d.ts +11 -0
  24. package/dist/core/skill-usage-log.d.ts.map +1 -0
  25. package/dist/core/skill-usage-log.js +121 -0
  26. package/dist/core/skill-usage-log.js.map +1 -0
  27. package/dist/core/verifier.d.ts +37 -0
  28. package/dist/core/verifier.d.ts.map +1 -0
  29. package/dist/core/verifier.js +142 -0
  30. package/dist/core/verifier.js.map +1 -0
  31. package/dist/transports/cli/cli.js +115 -5
  32. package/dist/transports/cli/cli.js.map +1 -1
  33. package/dist/transports/http/server.d.ts.map +1 -1
  34. package/dist/transports/http/server.js +16 -1
  35. package/dist/transports/http/server.js.map +1 -1
  36. package/dist/transports/mcp/handlers.d.ts +93 -0
  37. package/dist/transports/mcp/handlers.d.ts.map +1 -1
  38. package/dist/transports/mcp/handlers.js +51 -1
  39. package/dist/transports/mcp/handlers.js.map +1 -1
  40. package/dist/transports/schemas.d.ts +28 -0
  41. package/dist/transports/schemas.d.ts.map +1 -1
  42. package/dist/transports/schemas.js +25 -0
  43. package/dist/transports/schemas.js.map +1 -1
  44. package/hooks/hooks.json +10 -0
  45. package/package.json +5 -3
  46. package/plugin.json +1 -1
  47. package/scripts/hooks/pre-bash-orchestration-nudge.js +150 -0
  48. package/scripts/hooks/pre-edit-recall.js +0 -0
  49. package/scripts/hooks/session-start.js +55 -2
  50. package/skills/agentic-orchestration/SKILL.md +399 -0
package/README.ko.md CHANGED
@@ -1,110 +1,284 @@
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
+
1
4
  ๐ŸŒ [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
5
 
3
6
  <p align="center">
4
7
  <h1 align="center">MeMesh LLM Memory</h1>
5
8
  <p align="center">
6
- <strong>Claude Code์™€ MCP coding agents๋ฅผ ์œ„ํ•œ ๋กœ์ปฌ ๋ฉ”๋ชจ๋ฆฌ ๋ ˆ์ด์–ด.</strong><br />
7
- SQLite ํŒŒ์ผ ํ•˜๋‚˜. Docker ๋ถˆํ•„์š”. ํด๋ผ์šฐ๋“œ ๋ถˆํ•„์š”.
9
+ <strong>Claude Code์™€ MCP ์ฝ”๋”ฉ ์—์ด์ „ํŠธ๋ฅผ ์œ„ํ•œ ๋กœ์ปฌ ๋ฉ”๋ชจ๋ฆฌ.</strong><br />
10
+ SQLite ํŒŒ์ผ ํ•˜๋‚˜. Docker ์—†์Œ. ํด๋ผ์šฐ๋“œ ํ•„์ˆ˜ ์•„๋‹˜.
11
+ </p>
12
+ <p align="center">
13
+ <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>
14
+ <a href="LICENSE"><img src="https://img.shields.io/badge/license-MIT-22c55e?style=flat-square" alt="MIT" /></a>
15
+ <a href="https://nodejs.org"><img src="https://img.shields.io/badge/node-%3E%3D20-22c55e?style=flat-square" alt="Node" /></a>
16
+ <a href="https://modelcontextprotocol.io"><img src="https://img.shields.io/badge/MCP-compatible-a855f7?style=flat-square" alt="MCP" /></a>
8
17
  </p>
9
18
  </p>
10
19
 
11
- > ์ด ํ•œ๊ตญ์–ด README๋Š” ํ•ต์‹ฌ๋งŒ ์ •๋ฆฌํ•œ ์•ˆ๋‚ด ๋ฒ„์ „์ž…๋‹ˆ๋‹ค. ์ตœ์‹ ์˜ ์™„์ „ํ•œ ๋‚ด์šฉ์€ [English README](README.md)๋ฅผ ๊ธฐ์ค€์œผ๋กœ ๋ณด์„ธ์š”.
20
+ ---
12
21
 
13
- ## ์–ด๋–ค ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•˜๋‚˜?
22
+ ## ๋ฌธ์ œ์ 
14
23
 
15
- coding agent๋Š” ์„ธ์…˜์ด ๋ฐ”๋€Œ๋ฉด ๋งฅ๋ฝ์„ ์žƒ๊ธฐ ์‰ฝ์Šต๋‹ˆ๋‹ค. ์•„ํ‚คํ…์ฒ˜ ๊ฒฐ์ •, ๋ฒ„๊ทธ๋ฅผ ๊ณ ์นœ ๊ณผ์ •, ์ด๋ฏธ ๋ฐฐ์šด ๊ตํ›ˆ, ํ”„๋กœ์ ํŠธ ์ œ์•ฝ์„ ๊ณ„์† ๋‹ค์‹œ ์„ค๋ช…ํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.
24
+ ์ฝ”๋”ฉ ์—์ด์ „ํŠธ๋Š” ์„ธ์…˜์ด ๋๋‚˜๋ฉด ๋ชจ๋“  ๊ฒƒ์„ ์žŠ์–ด๋ฒ„๋ฆฝ๋‹ˆ๋‹ค. ์•„ํ‚คํ…์ฒ˜ ๊ฒฐ์ •, ๋ฒ„๊ทธ ์ˆ˜์ •, ์‹คํŒจํ•œ ํ…Œ์ŠคํŠธ, ํž˜๋“ค๊ฒŒ ์–ป์€ ๊ตํ›ˆ โ€” ๋งค๋ฒˆ ๋‹ค์‹œ ์„ค๋ช…ํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. Claude Code๋Š” ๋งค๋ฒˆ ์ƒˆ๋กœ ์‹œ์ž‘ํ•˜๊ณ , ์ด๋ฏธ ์•Œ์•„์•ผ ํ•  ์ œ์•ฝ ์กฐ๊ฑด์„ ๋‹ค์‹œ ๋ฐœ๊ฒฌํ•˜๋ฉฐ, ๋ถˆํ•„์š”ํ•˜๊ฒŒ ์ปจํ…์ŠคํŠธ๋ฅผ ์†Œ๋น„ํ•ฉ๋‹ˆ๋‹ค.
16
25
 
17
- **MeMesh๋Š” ์ด๋Ÿฐ ์ง€์‹์„ ๋กœ์ปฌ์— ๋‚จ๊ธฐ๊ณ , ๊ฒ€์ƒ‰ ๊ฐ€๋Šฅํ•˜๊ฒŒ ์œ ์ง€ํ•˜๋ฉฐ, ๋‚˜์ค‘์— ๋‹ค์‹œ ๋ถˆ๋Ÿฌ์˜ฌ ์ˆ˜ ์žˆ๊ฒŒ ํ•ด์ค๋‹ˆ๋‹ค.**
26
+ **MeMesh๋Š” ์ฝ”๋”ฉ ์—์ด์ „ํŠธ์—๊ฒŒ ์˜๊ตฌ์ ์ด๊ณ  ๊ฒ€์ƒ‰ ๊ฐ€๋Šฅํ•˜๋ฉฐ ์ง„ํ™”ํ•˜๋Š” ๋กœ์ปฌ ๋ฉ”๋ชจ๋ฆฌ๋ฅผ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค.**
18
27
 
19
- ์ด npm package๋Š” MeMesh์˜ ๋กœ์ปฌ plugin / package ๋ฒ„์ „์ž…๋‹ˆ๋‹ค. ํด๋ผ์šฐ๋“œ ์›Œํฌ์ŠคํŽ˜์ด์Šค๋‚˜ ์—”ํ„ฐํ”„๋ผ์ด์ฆˆ ํ”Œ๋žซํผ ์ „์ฒด๋ฅผ ๋‹ด์€ ์ œํ’ˆ์€ ์•„๋‹™๋‹ˆ๋‹ค.
28
+ ์ด ํŒจํ‚ค์ง€๋Š” MeMesh ์ œํ’ˆ๊ตฐ์˜ ๋กœ์ปฌ ๋ฉ”๋ชจ๋ฆฌ ๋ ˆ์ด์–ด์ž…๋‹ˆ๋‹ค. ์˜๋„์ ์œผ๋กœ ์ž‘๊ณ  ์˜คํ”ˆ์†Œ์Šค์ž…๋‹ˆ๋‹ค: npm์œผ๋กœ ์„ค์น˜ํ•˜๊ณ , ๋ฉ”๋ชจ๋ฆฌ๋Š” `~/.memesh/knowledge-graph.db`์— ๋ณด๊ด€ํ•˜๋ฉฐ, Claude Code ๋˜๋Š” MCP ํ˜ธํ™˜ ํด๋ผ์ด์–ธํŠธ์™€ ์—ฐ๊ฒฐํ•ฉ๋‹ˆ๋‹ค. ํ˜ธ์ŠคํŒ… ์›Œํฌ์ŠคํŽ˜์ด์Šค์™€ ์—”ํ„ฐํ”„๋ผ์ด์ฆˆ OS ์ œํ’ˆ์€ ์ด ํŒจํ‚ค์ง€์˜ README์™€ ๋กœ๋“œ๋งต๊ณผ ๋ณ„๊ฐœ๋กœ ์œ ์ง€๋ฉ๋‹ˆ๋‹ค.
20
29
 
21
- ## 60์ดˆ ์‹œ์ž‘
30
+ ---
22
31
 
23
- ### 1. ์„ค์น˜
32
+ ## 60์ดˆ ์•ˆ์— ์‹œ์ž‘ํ•˜๊ธฐ
33
+
34
+ ### 1๋‹จ๊ณ„: ์„ค์น˜
24
35
 
25
36
  ```bash
26
37
  npm install -g @pcircle/memesh
27
38
  ```
28
39
 
29
- ### 2. ๊ฒฐ์ • ํ•˜๋‚˜ ์ €์žฅ
40
+ ### 2๋‹จ๊ณ„: ์˜์‚ฌ๊ฒฐ์ • ์ €์žฅ
30
41
 
31
42
  ```bash
32
43
  memesh remember --name "auth-decision" --type "decision" --obs "Use OAuth 2.0 with PKCE"
33
44
  ```
34
45
 
35
- ### 3. ๋‚˜์ค‘์— ๋‹ค์‹œ ์ฐพ๊ธฐ
46
+ ### 3๋‹จ๊ณ„: ๋‚˜์ค‘์— ํšŒ์ƒ
36
47
 
37
48
  ```bash
38
49
  memesh recall "login security"
39
- # โ†’ ํ‘œํ˜„์ด ๋‹ฌ๋ผ๋„ "OAuth 2.0 with PKCE"๋ฅผ ์ฐพ์„ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค
50
+ # โ†’ ๋‹ค๋ฅธ ๋‹จ์–ด๋ฅผ ๊ฒ€์ƒ‰ํ–ˆ์–ด๋„ "OAuth 2.0 with PKCE"๋ฅผ ์ฐพ์Šต๋‹ˆ๋‹ค
51
+ ```
52
+
53
+ **์ด๊ฒŒ ์ „๋ถ€์ž…๋‹ˆ๋‹ค.** MeMesh๊ฐ€ ์ด์ œ ์„ธ์…˜ ๊ฐ„์— ๊ธฐ์–ตํ•˜๊ณ  ํšŒ์ƒํ•ฉ๋‹ˆ๋‹ค.
54
+
55
+ ์„ค์น˜์™€ ๋กœ์ปฌ ์—ฐ๊ฒฐ์„ ํ™•์ธํ•˜๋ ค๋ฉด:
56
+
57
+ ```bash
58
+ memesh doctor
40
59
  ```
41
60
 
42
- ๋Œ€์‹œ๋ณด๋“œ ์—ด๊ธฐ:
61
+ ๋Œ€์‹œ๋ณด๋“œ๋ฅผ ์—ด์–ด์„œ ๋ฉ”๋ชจ๋ฆฌ๋ฅผ ํƒ์ƒ‰ํ•ฉ๋‹ˆ๋‹ค:
43
62
 
44
63
  ```bash
45
64
  memesh
46
65
  ```
47
66
 
48
- ## ์ด๋Ÿฐ ์‚ฌ์šฉ์ž์—๊ฒŒ ๋งž์Šต๋‹ˆ๋‹ค
67
+ <p align="center">
68
+ <img src="docs/images/dashboard-search.png" alt="MeMesh Search โ€” ๋ชจ๋“  ๋ฉ”๋ชจ๋ฆฌ๋ฅผ ์ฆ‰์‹œ ์ฐพ์Šต๋‹ˆ๋‹ค" width="100%" />
69
+ </p>
70
+
71
+ <p align="center">
72
+ <img src="docs/images/dashboard-analytics.png" alt="MeMesh Analytics โ€” ๊ฑด๊ฐ• ์ ์ˆ˜, ํƒ€์ž„๋ผ์ธ, ํŒจํ„ด, ์ง€์‹ ์ปค๋ฒ„๋ฆฌ์ง€" width="100%" />
73
+ </p>
74
+
75
+ <p align="center">
76
+ <img src="docs/images/dashboard-graph.png" alt="MeMesh Graph โ€” ํƒ€์ž… ํ•„ํ„ฐ์™€ ์—๊ณ  ๋ชจ๋“œ๊ฐ€ ์žˆ๋Š” ์ธํ„ฐ๋ž™ํ‹ฐ๋ธŒ ์ง€์‹ ๊ทธ๋ž˜ํ”„" width="100%" />
77
+ </p>
78
+
79
+ ---
80
+
81
+ ## ๋ˆ„๊ฐ€ ์‚ฌ์šฉํ• ๊นŒ์š”?
82
+
83
+ | ์ด๋Ÿฐ ๊ฐœ๋ฐœ์ž๋ผ๋ฉด | MeMesh๊ฐ€ ๋„์™€์ค๋‹ˆ๋‹ค |
84
+ |---|---|
85
+ | **Claude Code๋ฅผ ์‚ฌ์šฉ ์ค‘** | ํ”„๋กœ์ ํŠธ ๊ฒฐ์ •, ํŒŒ์ผ๋ณ„ ๊ตํ›ˆ, ๊ณผ๊ฑฐ ์‹คํŒจ๋ฅผ ์ž‘์—… ์ค‘์— ์ž๋™์œผ๋กœ ํšŒ์ƒ |
86
+ | **์ฝ”๋”ฉ ์—์ด์ „ํŠธ ํŒŒ์›Œ ์œ ์ €** | MCP ํ˜ธํ™˜ ๋„๊ตฌ ์ „์ฒด์—์„œ ํ•˜๋‚˜์˜ ๋กœ์ปฌ ๋ฉ”๋ชจ๋ฆฌ ๋ ˆ์ด์–ด ๊ณต์œ  |
87
+ | **ํŒ€์ด AI ์ฝ”๋”ฉ ์›Œํฌํ”Œ๋กœ์šฐ ์‹คํ—˜ ์ค‘** | ํ˜ธ์ŠคํŒ… ์ธํ”„๋ผ ๋„์ž… ์—†์ด ํ”„๋กœ์ ํŠธ ์ง€์‹ ๋‚ด๋ณด๋‚ด๊ธฐ/๊ฐ€์ ธ์˜ค๊ธฐ |
88
+ | **์—์ด์ „ํŠธ ๊ฐœ๋ฐœ์ž** | MCP, HTTP, CLI, Python SDK๋ฅผ ํ†ตํ•ด ๋กœ์ปฌ ๋ฉ”๋ชจ๋ฆฌ ์ถ”๊ฐ€ |
89
+
90
+ ---
91
+
92
+ ## ์ฝ”๋”ฉ ์—์ด์ „ํŠธ๋ฅผ ์šฐ์„ ์œผ๋กœ ์„ค๊ณ„
93
+
94
+ <table>
95
+ <tr>
96
+ <td width="33%" align="center">
97
+
98
+ **Claude Code / Desktop**
99
+ ```bash
100
+ memesh-mcp
101
+ ```
102
+ MCP ๋„๊ตฌ + Claude Code ํ›…
103
+
104
+ </td>
105
+ <td width="33%" align="center">
106
+
107
+ **๋ชจ๋“  HTTP ํด๋ผ์ด์–ธํŠธ**
108
+ ```bash
109
+ curl localhost:3737/v1/recall \
110
+ -H "Content-Type: application/json" \
111
+ -d '{"query":"auth"}'
112
+ ```
113
+ `memesh serve` (REST API)
114
+
115
+ </td>
116
+ <td width="33%" align="center">
117
+
118
+ **๋ชจ๋“  LLM (OpenAI ํ˜•์‹)**
119
+ ```bash
120
+ memesh export-schema \
121
+ --format openai
122
+ ```
123
+ ๋ชจ๋“  API ํ˜ธ์ถœ์— ๋„๊ตฌ ๋ถ™์—ฌ๋„ฃ๊ธฐ
124
+
125
+ </td>
126
+ </tr>
127
+ </table>
128
+
129
+ ---
49
130
 
50
- - Claude Code๋ฅผ ์“ฐ๋ฉด์„œ ์„ธ์…˜ ์‚ฌ์ด์—๋„ ํ”„๋กœ์ ํŠธ ๋งฅ๋ฝ์„ ์œ ์ง€ํ•˜๊ณ  ์‹ถ์€ ๊ฐœ๋ฐœ์ž
51
- - ๊ฐ™์€ ๋กœ์ปฌ ๋ฉ”๋ชจ๋ฆฌ๋ฅผ ์—ฌ๋Ÿฌ MCP coding agents์—์„œ ํ•จ๊ป˜ ์“ฐ๊ณ  ์‹ถ์€ ๊ณ ๊ธ‰ ์‚ฌ์šฉ์ž
52
- - export / import๋กœ ํŒ€ ์ง€์‹์„ ๊ณต์œ ํ•˜๋ ค๋Š” ์†Œ๊ทœ๋ชจ AI-native ๊ฐœ๋ฐœํŒ€
53
- - CLI, HTTP, MCP ํ๋ฆ„์— ๋กœ์ปฌ ๋ฉ”๋ชจ๋ฆฌ๋ฅผ ๋ถ™์ด๊ณ  ์‹ถ์€ agent ๊ฐœ๋ฐœ์ž
131
+ ## OpenMemory, Cursor Memories, Mem0, Zep์™€๋Š” ์™œ ๋‹ค๋ฅผ๊นŒ์š”?
54
132
 
55
- ## ์™œ MeMesh์ธ๊ฐ€?
133
+ | | **MeMesh** | OpenMemory | Cursor Memories | Mem0 | Zep / Graphiti |
134
+ |---|---|---|---|---|---|
135
+ | **์ตœ์ ํ™” ๋Œ€์ƒ** | ์ฝ”๋”ฉ ์—์ด์ „ํŠธ ๋กœ์ปฌ ๋ฉ”๋ชจ๋ฆฌ | ๋กœ์ปฌ/ํฌ๋กœ์Šค ํด๋ผ์ด์–ธํŠธ MCP ๋ฉ”๋ชจ๋ฆฌ | Cursor ๋„ค์ดํ‹ฐ๋ธŒ ํ”„๋กœ์ ํŠธ ๋ฉ”๋ชจ๋ฆฌ | ๊ด€๋ฆฌํ˜• ์•ฑ/์—์ด์ „ํŠธ ๋ฉ”๋ชจ๋ฆฌ | ์‹œ๊ณ„์—ด ์ง€์‹ ๊ทธ๋ž˜ํ”„ |
136
+ | **์„ค์น˜ ๋ฐฉ์‹** | `npm install -g @pcircle/memesh` | ๋กœ์ปฌ ์•ฑ/์„œ๋ฒ„ ํ๋ฆ„ | Cursor ๋‚ด์žฅ | ํด๋ผ์šฐ๋“œ API / SDK / MCP | ์„œ๋น„์Šค/ํ”„๋ ˆ์ž„์›Œํฌ ๊ตฌ์„ฑ |
137
+ | **์ €์žฅ์†Œ** | ๋กœ์ปฌ SQLite ํŒŒ์ผ ํ•˜๋‚˜ | ๋กœ์ปฌ ๋ฉ”๋ชจ๋ฆฌ ์Šคํƒ | Cursor ๊ด€๋ฆฌ ๊ทœ์น™/๋ฉ”๋ชจ๋ฆฌ | ํ˜ธ์ŠคํŒ… ๋˜๋Š” ์…€ํ”„ ํ˜ธ์ŠคํŒ… ์Šคํƒ | ๊ทธ๋ž˜ํ”„ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค |
138
+ | **ํด๋ผ์šฐ๋“œ ํ•„์ˆ˜** | ์•„๋‹ˆ์˜ค | ๋กœ์ปฌ ๋ชจ๋“œ๋Š” ์•„๋‹ˆ์˜ค | Cursor ๊ณ„์ •/์„ค์ •์— ๋”ฐ๋ผ | ํ”Œ๋žซํผ์„ ์œ„ํ•ด์„œ ํ•„์ˆ˜ | ๋ณดํ†ต ํ•„์ˆ˜/์…€ํ”„ ํ˜ธ์ŠคํŒ… |
139
+ | **Claude Code ํ›…** | 1์ˆœ์œ„ | MCP ๋„๊ตฌ | ์—†์Œ | MCP ๋„๊ตฌ | Claude Code ํŠนํ™” ์•„๋‹˜ |
140
+ | **๋Œ€์‹œ๋ณด๋“œ** | ๋‚ด์žฅ | ๋‚ด์žฅ | Cursor ์„ค์ • | ํ”Œ๋žซํผ ๋Œ€์‹œ๋ณด๋“œ | ํ”Œ๋žซํผ/๊ทธ๋ž˜ํ”„ ๋„๊ตฌ |
141
+ | **ํŠธ๋ ˆ์ด๋“œ์˜คํ”„** | ๊ฐ„๋‹จํ•œ ๋กœ์ปฌ ์†”๋ฃจ์…˜, ์—”ํ„ฐํ”„๋ผ์ด์ฆˆ ๊ทœ๋ชจ ์•„๋‹˜ | ๋” ๋„“์€ ๋กœ์ปฌ ์•ฑ ํ’‹ํ”„๋ฆฐํŠธ | Cursor์— ์ข…์† | ๊ฐ•๋ ฅํ•œ ๊ด€๋ฆฌํ˜• ํ”Œ๋žซํผ, ๋กœ์ปฌ ์šฐ์„  ์•„๋‹˜ | ๊ฐ•๋ ฅํ•œ ๊ทธ๋ž˜ํ”„ ๋ชจ๋ธ, ๋ณต์žกํ•œ ๊ตฌ์„ฑ |
56
142
 
57
- - ๋กœ์ปฌ ์šฐ์„ : ๋ฐ์ดํ„ฐ๊ฐ€ ๋‚ด SQLite ํŒŒ์ผ์— ์ €์žฅ๋จ
58
- - ๊ฐ€๋ฒผ์šด ์„ค์น˜: `npm install -g` ํ›„ ๋ฐ”๋กœ ์‚ฌ์šฉ ๊ฐ€๋Šฅ
59
- - ์—ฐ๊ฒฐ ๋ฐฉ์‹์ด ๋ช…ํ™•ํ•จ: CLI, HTTP, MCP ์ง€์›
60
- - Claude Code ์นœํ™”์ : hooks๋กœ ์ž‘์—… ์ค‘ ๊ด€๋ จ ๋ฉ”๋ชจ๋ฆฌ๋ฅผ ์‰ฝ๊ฒŒ ๋ถˆ๋Ÿฌ์˜ด
61
- - ํ™•์ธ๊ณผ ์ •๋ฆฌ๊ฐ€ ์‰ฌ์›€: dashboard๊ฐ€ ์žˆ์–ด ๋ธ”๋ž™๋ฐ•์Šค๊ฐ€ ์•„๋‹˜
62
- - import ์•ˆ์ „ ๊ฒฝ๊ณ„: importํ•œ ๋ฉ”๋ชจ๋ฆฌ๋Š” ๊ฒ€์ƒ‰๋˜๋”๋ผ๋„, ๊ฒ€ํ† ํ•˜๊ฑฐ๋‚˜ ๋‹ค์‹œ ์ €์žฅํ•˜๊ธฐ ์ „์—๋Š” Claude hooks์— ์ž๋™ ์ฃผ์ž…๋˜์ง€ ์•Š์Œ
143
+ **MeMesh๋Š” ์—”ํ„ฐํ”„๋ผ์ด์ฆˆ๊ธ‰ ๊ด€๋ฆฌ ์ธํ”„๋ผ๋ฅผ ํฌ๊ธฐํ•˜๊ณ  ์ฆ‰๊ฐ์ ์ธ ๋กœ์ปฌ ๊ตฌ์„ฑ, ๊ฒ€์‚ฌ ๊ฐ€๋Šฅํ•œ ์ €์žฅ์†Œ, ์ฝ”๋”ฉ ์—์ด์ „ํŠธ ์›Œํฌํ”Œ๋กœ์šฐ ํ›…์„ ์–ป์Šต๋‹ˆ๋‹ค.**
63
144
 
64
- ## Claude Code์—์„œ ์ž๋™์œผ๋กœ ํ•˜๋Š” ์ผ
145
+ ---
65
146
 
66
- MeMesh๋Š” ํ˜„์žฌ ๋‹ค์Œ 5๊ฐ€์ง€ ์‹œ์ ์— ๋„์›€์„ ์ค๋‹ˆ๋‹ค.
147
+ ## Claude Code์—์„œ ์ž๋™์œผ๋กœ ์ผ์–ด๋‚˜๋Š” ์ผ
67
148
 
68
- - ์„ธ์…˜ ์‹œ์ž‘ ์‹œ ๊ด€๋ จ ๋ฉ”๋ชจ๋ฆฌ์™€ ์ด๋ฏธ ๋ฐฐ์šด ๊ตํ›ˆ์„ ๋ถˆ๋Ÿฌ์˜ด
69
- - ํŒŒ์ผ ํŽธ์ง‘ ์ „์— ๊ทธ ํŒŒ์ผ์ด๋‚˜ ํ”„๋กœ์ ํŠธ์™€ ๊ด€๋ จ๋œ ๋ฉ”๋ชจ๋ฆฌ๋ฅผ ๋จผ์ € ์ฐพ์Œ
70
- - `git commit` ํ›„ ๋ณ€๊ฒฝ ๋‚ด์šฉ์„ ๊ธฐ๋กํ•จ
71
- - ์„ธ์…˜ ์ข…๋ฃŒ ์‹œ ์ด๋ฒˆ ์ˆ˜์ •, ์˜ค๋ฅ˜, lesson learned๋ฅผ ์ •๋ฆฌํ•จ
72
- - context compact ์ „์— ์ค‘์š”ํ•œ ๋‚ด์šฉ์„ ๋กœ์ปฌ ๋ฉ”๋ชจ๋ฆฌ์— ์ €์žฅํ•จ
149
+ ๋ชจ๋“  ๊ฒƒ์„ ์ˆ˜๋™์œผ๋กœ ๊ธฐ์–ตํ•  ํ•„์š”๋Š” ์—†์Šต๋‹ˆ๋‹ค. MeMesh๋Š” ์ž‘์—… ์ค‘์— ์ง€์‹์„ ์บก์ฒ˜ํ•˜๊ณ  ์ฃผ์ž…ํ•˜๋Š” **6๊ฐ€์ง€ ํ›…**์ด ์žˆ์Šต๋‹ˆ๋‹ค:
73
150
 
74
- ## Dashboard์—๋Š” ๋ฌด์—‡์ด ์žˆ๋‚˜?
151
+ | ์‹œ์  | MeMesh๊ฐ€ ์ˆ˜ํ–‰ํ•˜๋Š” ์ž‘์—… |
152
+ |------|---|
153
+ | **๋งค ์„ธ์…˜ ์‹œ์ž‘** | ๊ฐ€์žฅ ๊ด€๋ จ ์žˆ๋Š” ๋ฉ”๋ชจ๋ฆฌ + ๊ณผ๊ฑฐ ๊ตํ›ˆ์˜ ์‚ฌ์ „ ๊ฒฝ๊ณ  + ์—์ด์ „ํŠธ ์˜ค์ผ€์ŠคํŠธ๋ ˆ์ด์…˜ ๋ฐฐ๋„ˆ ๋กœ๋“œ |
154
+ | **ํŒŒ์ผ ํŽธ์ง‘ ์ „** | Claude๊ฐ€ ์ฝ”๋“œ๋ฅผ ์ž‘์„ฑํ•˜๊ธฐ ์ „์— ํŒŒ์ผ ๋˜๋Š” ํ”„๋กœ์ ํŠธ์™€ ์—ฐ๊ฒฐ๋œ ๋ฉ”๋ชจ๋ฆฌ ํšŒ์ƒ |
155
+ | **Bash ๋ช…๋ น ์ „** | Claude๊ฐ€ ๋†’์€ ๊ฒ€์ฆ ๊ฐ€๋Šฅ์„ฑ์˜ ๋ช…๋ น์–ด(ํ…Œ์ŠคํŠธ, ๋นŒ๋“œ, ๋ฆฐํŠธ, ๋งˆ์ด๊ทธ๋ ˆ์ด์…˜, ๋ฐฐํฌ, ๋ฒค์น˜๋งˆํฌ)๋ฅผ ๋ฐฑ๊ทธ๋ผ์šด๋“œ ์—์ด์ „ํŠธ๋กœ ์‹คํ–‰ํ•˜๋„๋ก ์œ ๋„ |
156
+ | **๋ชจ๋“  `git commit` ํ›„** | ๋ณ€๊ฒฝ ์‚ฌํ•ญ์„ diff ํ†ต๊ณ„์™€ ํ•จ๊ป˜ ๊ธฐ๋ก |
157
+ | **Claude๊ฐ€ ๋ฉˆ์ถœ ๋•Œ** | ํŽธ์ง‘๋œ ํŒŒ์ผ, ์ˆ˜์ •๋œ ์—๋Ÿฌ, ์‹คํŒจ๋กœ๋ถ€ํ„ฐ ์ž๋™ ์ƒ์„ฑ๋œ ๊ตฌ์กฐํ™”๋œ ๊ตํ›ˆ ์บก์ฒ˜ |
158
+ | **์ปจํ…์ŠคํŠธ ์••์ถ• ์ „** | ์ปจํ…์ŠคํŠธ ์ œํ•œ์œผ๋กœ ์†์‹ค๋˜๊ธฐ ์ „์— ์ง€์‹ ์ €์žฅ |
75
159
 
76
- Dashboard๋Š” ํ˜„์žฌ 7๊ฐœ ํƒญ๊ณผ 11๊ฐœ ์–ธ์–ด๋ฅผ ์ง€์›ํ•ฉ๋‹ˆ๋‹ค.
160
+ > **์–ธ์ œ๋“  ํ•ด์ œ ๊ฐ€๋Šฅ:** `export MEMESH_AUTO_CAPTURE=false`
77
161
 
78
- - Search: ๋ฉ”๋ชจ๋ฆฌ ๊ฒ€์ƒ‰
79
- - Browse: ์ „์ฒด ๋ฉ”๋ชจ๋ฆฌ ๋ณด๊ธฐ
80
- - Analytics: ๊ฑด๊ฐ•๋„์™€ ์ถ”์„ธ ํ™•์ธ
81
- - Graph: ์ง€์‹ ๊ด€๊ณ„ ๋ณด๊ธฐ
82
- - Lessons: ๊ณผ๊ฑฐ ๊ตํ›ˆ ๋ณด๊ธฐ
83
- - Manage: ์•„์นด์ด๋ธŒ์™€ ๋ณต์›
84
- - Settings: LLM provider์™€ ์–ธ์–ด ์„ค์ •
162
+ ---
85
163
 
86
- ## Smart Mode๋ž€?
164
+ ## ๋Œ€์‹œ๋ณด๋“œ
87
165
 
88
- MeMesh๋Š” ๊ธฐ๋ณธ์ ์œผ๋กœ ์˜คํ”„๋ผ์ธ์—์„œ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์—ฌ๊ธฐ์— LLM API key๋ฅผ ์„ค์ •ํ•˜๋ฉด ๋‹ค์Œ๊ณผ ๊ฐ™์€ ๊ธฐ๋Šฅ์„ ๋” ์“ธ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
166
+ 7๊ฐœ ํƒญ, 11๊ฐœ ์–ธ์–ด, ์™ธ๋ถ€ ์˜์กด์„ฑ ์—†์Œ. ์„œ๋ฒ„ ์‹คํ–‰ ์ค‘ `http://localhost:3737/dashboard`์—์„œ ์ ‘๊ทผํ•ฉ๋‹ˆ๋‹ค.
89
167
 
90
- - query expansion
91
- - ๋” ๋‚˜์€ ์ž๋™ ์ถ”์ถœ
92
- - ๋” ๋˜‘๋˜‘ํ•œ ์ •๋ฆฌ์™€ ์••์ถ•
168
+ | ํƒญ | ๋‚ด์šฉ |
169
+ |------|---|
170
+ | **Search** | ๋ชจ๋“  ๋ฉ”๋ชจ๋ฆฌ์— ๊ฑธ์นœ ์ „์ฒด ํ…์ŠคํŠธ + ๋ฒกํ„ฐ ์œ ์‚ฌ์„ฑ ๊ฒ€์ƒ‰ |
171
+ | **Browse** | ๋ณด๊ด€ ๋ฐ ๋ณต๊ตฌ ์˜ต์…˜์ด ์žˆ๋Š” ๋ชจ๋“  ์—”ํ‹ฐํ‹ฐ ํŽ˜์ด์ง€ ๋ฆฌ์ŠคํŠธ |
172
+ | **Analytics** | ๋ฉ”๋ชจ๋ฆฌ ๊ฑด๊ฐ• ์ ์ˆ˜(0-100), 30์ผ ํƒ€์ž„๋ผ์ธ, ๊ฐ€์น˜ ์ง€ํ‘œ, ์ง€์‹ ์ปค๋ฒ„๋ฆฌ์ง€, ์ •๋ฆฌ ์ œ์•ˆ, ์ž‘์—… ํŒจํ„ด |
173
+ | **Graph** | ํƒ€์ž… ํ•„ํ„ฐ, ๊ฒ€์ƒ‰, ์—๊ณ  ๋ชจ๋“œ, ์ตœ๊ทผ์„ฑ ํžˆํŠธ๋งต์ด ์žˆ๋Š” ์ธํ„ฐ๋ž™ํ‹ฐ๋ธŒ ํฌ์Šค ๋””๋ ‰์…˜ ์ง€์‹ ๊ทธ๋ž˜ํ”„ |
174
+ | **Lessons** | ๊ณผ๊ฑฐ ์‹คํŒจ๋กœ๋ถ€ํ„ฐ ๊ตฌ์กฐํ™”๋œ ๊ตํ›ˆ(์—๋Ÿฌ, ๊ทผ๋ณธ ์›์ธ, ์ˆ˜์ •, ์˜ˆ๋ฐฉ) |
175
+ | **Manage** | ์—”ํ‹ฐํ‹ฐ ๋ณด๊ด€ ๋ฐ ๋ณต๊ตฌ |
176
+ | **Settings** | LLM ํ”„๋กœ๋ฐ”์ด๋” ์„ค์ •, ์ฆ‰์‹œ ์–ธ์–ด ์„ ํƒ๊ธฐ |
93
177
 
94
- API key๊ฐ€ ์—†์–ด๋„ ํ•ต์‹ฌ ๊ธฐ๋Šฅ์€ ๊ทธ๋Œ€๋กœ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
178
+ ---
95
179
 
96
- ## ๋” ์•Œ์•„๋ณด๊ธฐ
180
+ ## ์Šค๋งˆํŠธ ๊ธฐ๋Šฅ
97
181
 
98
- - ์ „์ฒด ๊ธฐ๋Šฅ, ๋น„๊ต, API, release ์ •๋ณด: [English README](README.md)
99
- - ํ”Œ๋žซํผ๋ณ„ ์•ˆ๋‚ด: [docs/platforms/README.md](docs/platforms/README.md)
100
- - API ์ฐธ๊ณ : [docs/api/API_REFERENCE.md](docs/api/API_REFERENCE.md)
182
+ **๐Ÿง  ์Šค๋งˆํŠธ ๊ฒ€์ƒ‰** โ€” "login security"๋ฅผ ๊ฒ€์ƒ‰ํ•˜๋ฉด "OAuth PKCE"์— ๊ด€ํ•œ ๋ฉ”๋ชจ๋ฆฌ๋ฅผ ์ฐพ์Šต๋‹ˆ๋‹ค. MeMesh๋Š” ์„ค์ •๋œ LLM์œผ๋กœ ์ฟผ๋ฆฌ๋ฅผ ๊ด€๋ จ ์šฉ์–ด๋กœ ํ™•์žฅํ•ฉ๋‹ˆ๋‹ค.
101
183
 
102
- ## ๊ฐœ๋ฐœ๊ณผ ๊ฒ€์ฆ
184
+ **๐Ÿ“Š ์ ์ˆ˜ ์ˆœ์œ„ ๋งค๊น€** โ€” ๊ฒฐ๊ณผ๋Š” ๊ด€๋ จ์„ฑ(30%) + ์ตœ๊ทผ์„ฑ(25%) + ๋นˆ๋„(15%) + ์‹ ๋ขฐ๋„(15%) + ํšŒ์ƒ ์˜ํ–ฅ(10%) + ์‹œ๊ณ„์—ด ์œ ํšจ์„ฑ(5%)์œผ๋กœ ์ˆœ์œ„ ๋งค๊ฒจ์ง‘๋‹ˆ๋‹ค.
185
+
186
+ **๐Ÿ”„ ์ง€์‹ ์ง„ํ™”** โ€” ๊ฒฐ์ •์€ ๋ณ€ํ•ฉ๋‹ˆ๋‹ค. `forget`์œผ๋กœ ์˜ค๋ž˜๋œ ๋ฉ”๋ชจ๋ฆฌ ๋ณด๊ด€(์ ˆ๋Œ€ ์‚ญ์ œ ์•ˆ ํ•จ). `supersedes` ๊ด€๊ณ„๊ฐ€ ๊ตฌ โ†’ ์‹  ์„ ์—ฐ๊ฒฐํ•ฉ๋‹ˆ๋‹ค. AI๋Š” ํ•ญ์ƒ ์ตœ์‹  ๋ฒ„์ „์„ ๋ด…๋‹ˆ๋‹ค.
187
+
188
+ **โš ๏ธ ์ถฉ๋Œ ๊ฐ์ง€** โ€” ์„œ๋กœ ๋ชจ์ˆœ๋˜๋Š” ๋ฉ”๋ชจ๋ฆฌ ๋‘ ๊ฐœ๊ฐ€ ์žˆ์œผ๋ฉด MeMesh๊ฐ€ ๊ฒฝ๊ณ ํ•ฉ๋‹ˆ๋‹ค.
189
+
190
+ **๐Ÿ“ฆ ํŒ€ ๊ณต์œ ** โ€” `memesh export > team-knowledge.json` โ†’ ํŒ€๊ณผ ๊ณต์œ  โ†’ `memesh import team-knowledge.json`
191
+ ์ž„ํฌํŠธ๋œ ๋ฒˆ๋“ค์€ ๊ณ„์† ๊ฒ€์ƒ‰ ๊ฐ€๋Šฅํ•˜์ง€๋งŒ, MeMesh๋Š” ๊ฒ€ํ† ํ•˜๊ฑฐ๋‚˜ ๋กœ์ปฌ์— ๋‹ค์‹œ ์ €์žฅํ•  ๋•Œ๊นŒ์ง€ Claude ํ›…์— ์ž„ํฌํŠธ๋œ ๋ฉ”๋ชจ๋ฆฌ๋ฅผ ์ž๋™ ์ฃผ์ž…ํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค.
192
+
193
+ ---
194
+
195
+ ## ์‚ฌ์šฉ ์˜ˆ์‹œ
196
+
197
+ > "MeMesh๊ฐ€ 3์ฃผ ์ „์— ์•”์‹œ์  ํ๋ฆ„๋ณด๋‹ค PKCE๋ฅผ ์„ ํƒํ–ˆ๋‹ค๋Š” ๊ฒƒ์„ ๊ธฐ์–ตํ–ˆ์Šต๋‹ˆ๋‹ค. ๋‹ค์‹œ ์ธ์ฆ์— ๋Œ€ํ•ด Claude์—๊ฒŒ ๋ฌผ์—ˆ์„ ๋•Œ, ์ด๋ฏธ ์•Œ๊ณ  ์žˆ์—ˆ์Šต๋‹ˆ๋‹ค โ€” ์„ค๋ช…ํ•  ํ•„์š” ์—†์—ˆ์Šต๋‹ˆ๋‹ค."
198
+ > โ€” **SaaS๋ฅผ ๋งŒ๋“œ๋Š” ๊ฐœ๋ณ„ ๊ฐœ๋ฐœ์ž**
199
+
200
+ > "๋งค์ฃผ ๊ธˆ์š”์ผ ํŒ€ ๋ฉ”๋ชจ๋ฆฌ๋ฅผ ๋‚ด๋ณด๋‚ด๊ณ  ์›”์š”์ผ์— ์ž„ํฌํŠธํ•ฉ๋‹ˆ๋‹ค. ๋ชจ๋“  Claude๊ฐ€ ์ฃผ๊ฐ„ ์‹œ์ž‘ ์‹œ ํŒ€์ด ์ง€๋‚œ์ฃผ์— ๋ฐฐ์šด ๊ฒƒ์„ ์•Œ๊ณ  ์‹œ์ž‘ํ•ฉ๋‹ˆ๋‹ค."
201
+ > โ€” **3๋ช… ์Šคํƒ€ํŠธ์—…, ๊ณต์œ  ์ง€์‹๋ฒ ์ด์Šค**
202
+
203
+ > "๋Œ€์‹œ๋ณด๋“œ๋ฅผ ๋ณด๋‹ˆ ๋ฉ”๋ชจ๋ฆฌ์˜ 90%๊ฐ€ ์ž๋™ ์ƒ์„ฑ๋œ ์„ธ์…˜ ๋กœ๊ทธ์˜€์Šต๋‹ˆ๋‹ค. `remember`๋ฅผ ์˜์‹์ ์œผ๋กœ ์‚ฌ์šฉํ•ด์„œ ์•„ํ‚คํ…์ฒ˜ ๊ฒฐ์ •์„ ์ €์žฅํ•˜๊ธฐ ์‹œ์ž‘ํ–ˆ์Šต๋‹ˆ๋‹ค. ์ •๋ง ๋ฐ”๋€Œ์—ˆ์Šต๋‹ˆ๋‹ค."
204
+ > โ€” **Analytics ํƒญ์„ ๋ฐœ๊ฒฌํ•œ ๊ฐœ๋ฐœ์ž**
205
+
206
+ ---
207
+
208
+ ## ์Šค๋งˆํŠธ ๋ชจ๋“œ ์–ธ์ž ๊ธˆ (์„ ํƒ)
209
+
210
+ MeMesh๋Š” ๊ธฐ๋ณธ์ ์œผ๋กœ ์˜คํ”„๋ผ์ธ์—์„œ ์ž‘๋™ํ•ฉ๋‹ˆ๋‹ค. ์ฟผ๋ฆฌ ํ™•์žฅ, ๋” ์Šค๋งˆํŠธํ•œ ์ถ”์ถœ, ์••์ถ•์„ ์›ํ•  ๋•Œ๋งŒ LLM API ํ‚ค๋ฅผ ์ถ”๊ฐ€ํ•ฉ๋‹ˆ๋‹ค:
211
+
212
+ ```bash
213
+ memesh config set llm.provider anthropic
214
+ memesh config set llm.api-key sk-ant-...
215
+ ```
216
+
217
+ ๋˜๋Š” ๋Œ€์‹œ๋ณด๋“œ Settings ํƒญ ์‚ฌ์šฉ (๋น„์ฃผ์–ผ ์„ค์ •):
218
+
219
+ ```bash
220
+ memesh # ๋Œ€์‹œ๋ณด๋“œ ์—ด๊ธฐ โ†’ Settings ํƒญ
221
+ ```
222
+
223
+ | | Level 0 (๊ธฐ๋ณธ) | Level 1 (์Šค๋งˆํŠธ ๋ชจ๋“œ) |
224
+ |---|---|---|
225
+ | **๊ฒ€์ƒ‰** | FTS5 ํ‚ค์›Œ๋“œ ๋งค์นญ | + LLM ์ฟผ๋ฆฌ ํ™•์žฅ (~97% ํšŒ์ƒ์œจ) |
226
+ | **์ž๋™ ์บก์ฒ˜** | ๊ทœ์น™ ๊ธฐ๋ฐ˜ ํŒจํ„ด | + LLM์ด ๊ฒฐ์ •๊ณผ ๊ตํ›ˆ ์ถ”์ถœ |
227
+ | **์••์ถ•** | ์‚ฌ์šฉ ๋ถˆ๊ฐ€ | `consolidate`๋กœ ์žฅํ™ฉํ•œ ๋ฉ”๋ชจ๋ฆฌ ์••์ถ• |
228
+ | **๋น„์šฉ** | ๋ฌด๋ฃŒ, API ํ‚ค ๋ถˆํ•„์š” | ~$0.0001 ๊ฒ€์ƒ‰๋‹น (Haiku) |
229
+
230
+ ---
231
+
232
+ ## 9๊ฐ€์ง€ ๋ฉ”๋ชจ๋ฆฌ ๋„๊ตฌ ์ „์ฒด
233
+
234
+ | ๋„๊ตฌ | ์—ญํ•  |
235
+ |---|---|
236
+ | `remember` | ๊ด€์ฐฐ, ๊ด€๊ณ„, ํƒœ๊ทธ๋ฅผ ํฌํ•จํ•œ ์ง€์‹ ์ €์žฅ |
237
+ | `recall` | ๋‹ค์ค‘ ์š”์†Œ ์ ์ˆ˜ ๋งค๊น€๊ณผ LLM ์ฟผ๋ฆฌ ํ™•์žฅ์ด ์žˆ๋Š” ์Šค๋งˆํŠธ ๊ฒ€์ƒ‰ |
238
+ | `forget` | ์†Œํ”„ํŠธ ๋ณด๊ด€(์ ˆ๋Œ€ ์‚ญ์ œ ์•ˆ ํ•จ) ๋˜๋Š” ํŠน์ • ๊ด€์ฐฐ ์ œ๊ฑฐ |
239
+ | `consolidate` | LLM ๊ธฐ๋ฐ˜ ์žฅํ™ฉํ•œ ๋ฉ”๋ชจ๋ฆฌ ์••์ถ• |
240
+ | `export` | ํ”„๋กœ์ ํŠธ๋‚˜ ํŒ€ ๋ฉค๋ฒ„ ๊ฐ„ ๋ฉ”๋ชจ๋ฆฌ JSON ๊ณต์œ  |
241
+ | `import` | ๋ณ‘ํ•ฉ ์ „๋žต(์Šคํ‚ต/๋ฎ์–ด์“ฐ๊ธฐ/์ถ”๊ฐ€)์ด ์žˆ๋Š” ๋ฉ”๋ชจ๋ฆฌ ์ž„ํฌํŠธ |
242
+ | `learn` | ์‹ค์ˆ˜๋กœ๋ถ€ํ„ฐ ๊ตฌ์กฐํ™”๋œ ๊ตํ›ˆ ๊ธฐ๋ก(์—๋Ÿฌ, ๊ทผ๋ณธ ์›์ธ, ์ˆ˜์ •, ์˜ˆ๋ฐฉ) |
243
+ | `user_patterns` | ์ž‘์—… ํŒจํ„ด ๋ถ„์„ โ€” ์ผ์ •, ๋„๊ตฌ, ๊ฐ•์ , ํ•™์Šต ์˜์—ญ |
244
+ | `verify_agent_work` | ๋ฐฑ๊ทธ๋ผ์šด๋“œ ์—์ด์ „ํŠธ ์ž‘์—…์— ๋Œ€ํ•œ ๊ฒ€์ฆ ๋ณด๊ณ ์„œ ์œ ์ง€; ์ฒญ๊ตฌ๋œ ํŒŒ์ผ ๋ณ€๊ฒฝ์‚ฌํ•ญ์„ `git diff`์™€ ํ˜„์‹ค ํ™•์ธ |
245
+
246
+ ---
247
+
248
+ ## ์•„ํ‚คํ…์ฒ˜
249
+
250
+ ```
251
+ โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”
252
+ โ”‚ Core Engine โ”‚
253
+ โ”‚ (8 operations) โ”‚
254
+ โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ฌโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜
255
+ โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ผโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”
256
+ โ”‚ โ”‚ โ”‚
257
+ CLI (memesh) HTTP API (serve) MCP (memesh-mcp)
258
+ โ”‚ โ”‚ โ”‚
259
+ โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ผโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜
260
+ โ”‚
261
+ SQLite + FTS5 + sqlite-vec
262
+ (~/.memesh/knowledge-graph.db)
263
+ ```
264
+
265
+ ์ฝ”์–ด๋Š” ํ”„๋ ˆ์ž„์›Œํฌ์— ๊ตฌ์• ๋ฐ›์ง€ ์•Š์Šต๋‹ˆ๋‹ค. ๊ฐ™์€ ๋กœ์ง์ด ํ„ฐ๋ฏธ๋„, HTTP, MCP์—์„œ ์‹คํ–‰๋ฉ๋‹ˆ๋‹ค.
266
+
267
+ ---
268
+
269
+ ## ๊ธฐ์—ฌํ•˜๊ธฐ
103
270
 
104
271
  ```bash
105
272
  git clone https://github.com/PCIRCLE-AI/memesh-llm-memory
106
- cd memesh-llm-memory
107
- npm install
108
- npm run build
109
- npm test
273
+ cd memesh-llm-memory && npm install && npm run build
274
+ npm test # 489 tests
275
+ npm run test:e2e-dashboard
110
276
  ```
277
+
278
+ ๋Œ€์‹œ๋ณด๋“œ: `cd dashboard && npm install && npm run dev`
279
+
280
+ ---
281
+
282
+ <p align="center">
283
+ <strong>MIT</strong> โ€” Made by <a href="https://pcircle.ai">PCIRCLE AI</a>
284
+ </p>
package/README.md CHANGED
@@ -26,6 +26,22 @@ This package is the local memory layer of the MeMesh product family. It is inten
26
26
 
27
27
  ---
28
28
 
29
+ ## Proof โ€” 95.40% R@5 on LongMemEval-S
30
+
31
+ MeMesh's retrieval engine is **FTS5 alone** (no LLM, no embeddings on the hot path), measured against the public [LongMemEval-S](https://huggingface.co/datasets/xiaowu0162/longmemeval) benchmark (500 questions, MIT-licensed):
32
+
33
+ | System | R@5 | Source |
34
+ |---|---|---|
35
+ | **MeMesh (Mode A, FTS5)** | **95.40%** | [benchmarks/longmemeval/RESULTS.md](benchmarks/longmemeval/RESULTS.md) |
36
+ | MemPalace | 96.6% | Vendor self-report |
37
+ | Supermemory | ~82% | Vendor estimate |
38
+ | Zep | 63.8% | LongMemEval paper |
39
+ | Mem0 | 49.0% | LongMemEval paper |
40
+
41
+ Reproduction commands, dataset SHA256, raw per-question results, and known-failure analysis are all in [`benchmarks/longmemeval/`](benchmarks/longmemeval/). Re-runnable in ~10 seconds.
42
+
43
+ ---
44
+
29
45
  ## Get Started in 60 Seconds
30
46
 
31
47
  ### Step 1: Install
@@ -34,12 +50,22 @@ This package is the local memory layer of the MeMesh product family. It is inten
34
50
  npm install -g @pcircle/memesh
35
51
  ```
36
52
 
53
+ > **First-install notes (one-time):**
54
+ > - **Native modules** โ€” `better-sqlite3` and `sqlite-vec` install via prebuilt binaries on macOS (arm64/x64), Linux (x64/arm64), and Windows x64. On uncommon platforms or when prebuilds fail, you'll need a working C/C++ toolchain.
55
+ > - **Embedding model** โ€” the first call that triggers a local embedding (e.g. `recall` with semantic mode) downloads `Xenova/all-MiniLM-L6-v2` (~80 MB) into `~/.memesh/models/`. Subsequent calls are instant. The default retrieval path (FTS5) does not require this download.
56
+
37
57
  ### Step 2: Store a decision
38
58
 
39
59
  ```bash
40
60
  memesh remember --name "auth-decision" --type "decision" --obs "Use OAuth 2.0 with PKCE"
41
61
  ```
42
62
 
63
+ Or quick-capture in one line:
64
+
65
+ ```bash
66
+ memesh remember "Use OAuth 2.0 with PKCE for the new auth"
67
+ ```
68
+
43
69
  ### Step 3: Recall it later
44
70
 
45
71
  ```bash
@@ -49,6 +75,12 @@ memesh recall "login security"
49
75
 
50
76
  **That's it.** MeMesh is now remembering and recalling across sessions.
51
77
 
78
+ If you want to verify the install and local wiring end to end:
79
+
80
+ ```bash
81
+ memesh doctor
82
+ ```
83
+
52
84
  Open the dashboard to explore your memory:
53
85
 
54
86
  ```bash
@@ -137,12 +169,13 @@ Paste tools into any API call
137
169
 
138
170
  ## What Happens Automatically In Claude Code
139
171
 
140
- You don't need to manually remember everything. MeMesh has **5 hooks** that capture and inject knowledge while you work:
172
+ You don't need to manually remember everything. MeMesh has **6 hooks** that capture and inject knowledge while you work:
141
173
 
142
174
  | When | What MeMesh does |
143
175
  |------|------------------|
144
176
  | **Every session start** | Loads your most relevant memories + proactive warnings from past lessons |
145
177
  | **Before editing files** | Recalls memories tied to the file or project before Claude writes code |
178
+ | **Before bash commands** | (Opt-in) Nudges Claude to dispatch high-verifiability commands (test, build, lint, migrate, deploy, benchmark) as background agents |
146
179
  | **After every `git commit`** | Records what you changed, with diff stats |
147
180
  | **When Claude stops** | Captures files edited, errors fixed, and auto-generates structured lessons from failures |
148
181
  | **Before context compaction** | Saves knowledge before it's lost to context limits |
@@ -151,6 +184,23 @@ You don't need to manually remember everything. MeMesh has **5 hooks** that capt
151
184
 
152
185
  ---
153
186
 
187
+ ## Configuration
188
+
189
+ All configuration is via environment variables. Defaults are local-only and zero-network โ€” you don't need to set anything to get a working system.
190
+
191
+ | Variable | Default | What it does |
192
+ |---|---|---|
193
+ | `MEMESH_DB_PATH` | `~/.memesh/knowledge-graph.db` | Override the SQLite database location. |
194
+ | `MEMESH_AUTO_CAPTURE` | `true` | Disable the auto-capture hooks (`Stop`, `PreCompact`) entirely. |
195
+ | `MEMESH_AUTO_DETECT_LLM` | unset | Set to `1` to let memesh auto-detect a provider from your shell env (`OPENAI_API_KEY` etc.) and switch to BYOK embeddings. **Default fresh-install is local ONNX (384-dim) only** โ€” opt in if you want cloud embeddings. Without this flag set, an `OPENAI_API_KEY` lying around in your shell is ignored. |
196
+ | `MEMESH_ENABLE_AGENTIC_ORCHESTRATION` | unset | Set to `1` to enable an experimental working-model protocol (CTO / Orchestrator / Agents framing). Adds a session-start banner, a Bash command nudge, and `verify_agent_work` telemetry. The protocol's effectiveness is being instrumented, not yet proven โ€” opt in if you want to participate. **Default is OFF**: the core memory features work without this flag. |
197
+ | `OPENAI_API_KEY` | unset | Your OpenAI key. Only used when `MEMESH_AUTO_DETECT_LLM=1` or you explicitly configure the provider. |
198
+ | `OLLAMA_HOST` | `http://localhost:11434` | Override the Ollama endpoint when using a local Ollama provider. |
199
+
200
+ `memesh doctor` prints the resolved configuration so you can see what's active.
201
+
202
+ ---
203
+
154
204
  ## Dashboard
155
205
 
156
206
  7 tabs, 11 languages, zero external dependencies. Access at `http://localhost:3737/dashboard` when the server is running.
@@ -219,7 +269,7 @@ memesh # opens dashboard โ†’ Settings tab
219
269
 
220
270
  ---
221
271
 
222
- ## All 8 Memory Tools
272
+ ## All 9 Memory Tools
223
273
 
224
274
  | Tool | What it does |
225
275
  |------|-------------|
@@ -231,6 +281,7 @@ memesh # opens dashboard โ†’ Settings tab
231
281
  | `import` | Import memories with merge strategies (skip / overwrite / append) |
232
282
  | `learn` | Record structured lessons from mistakes (error, root cause, fix, prevention) |
233
283
  | `user_patterns` | Analyze your work patterns โ€” schedule, tools, strengths, learning areas |
284
+ | `verify_agent_work` | Persist a verification report for background-agent work; reality-checks claimed file changes against `git diff` |
234
285
 
235
286
  ---
236
287
 
@@ -260,7 +311,7 @@ Core is framework-agnostic. Same logic runs from terminal, HTTP, or MCP.
260
311
  ```bash
261
312
  git clone https://github.com/PCIRCLE-AI/memesh-llm-memory
262
313
  cd memesh-llm-memory && npm install && npm run build
263
- npm test # 484 tests
314
+ npm test # 489 tests
264
315
  npm run test:e2e-dashboard
265
316
  ```
266
317