@pcircle/memesh 2.9.1 → 2.9.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.de.md +119 -78
- package/README.es.md +116 -75
- package/README.fr.md +116 -75
- package/README.id.md +115 -74
- package/README.ja.md +111 -70
- package/README.ko.md +116 -75
- package/README.md +113 -72
- package/README.th.md +118 -77
- package/README.vi.md +116 -75
- package/README.zh-CN.md +120 -79
- package/README.zh-TW.md +116 -75
- package/dist/core/GitCommandParser.d.ts +11 -0
- package/dist/core/GitCommandParser.d.ts.map +1 -0
- package/dist/core/GitCommandParser.js +43 -0
- package/dist/core/GitCommandParser.js.map +1 -0
- package/dist/core/HookIntegration.d.ts +0 -3
- package/dist/core/HookIntegration.d.ts.map +1 -1
- package/dist/core/HookIntegration.js +6 -30
- package/dist/core/HookIntegration.js.map +1 -1
- package/dist/embeddings/EmbeddingService.d.ts +3 -0
- package/dist/embeddings/EmbeddingService.d.ts.map +1 -1
- package/dist/embeddings/EmbeddingService.js +32 -6
- package/dist/embeddings/EmbeddingService.js.map +1 -1
- package/dist/embeddings/InMemoryVectorAdapter.d.ts +15 -0
- package/dist/embeddings/InMemoryVectorAdapter.d.ts.map +1 -0
- package/dist/embeddings/InMemoryVectorAdapter.js +58 -0
- package/dist/embeddings/InMemoryVectorAdapter.js.map +1 -0
- package/dist/embeddings/SqliteVecAdapter.d.ts +15 -0
- package/dist/embeddings/SqliteVecAdapter.d.ts.map +1 -0
- package/dist/embeddings/SqliteVecAdapter.js +107 -0
- package/dist/embeddings/SqliteVecAdapter.js.map +1 -0
- package/dist/embeddings/VectorExtension.d.ts +2 -4
- package/dist/embeddings/VectorExtension.d.ts.map +1 -1
- package/dist/embeddings/VectorExtension.js.map +1 -1
- package/dist/embeddings/VectorSearchAdapter.d.ts +17 -0
- package/dist/embeddings/VectorSearchAdapter.d.ts.map +1 -0
- package/dist/embeddings/VectorSearchAdapter.js +2 -0
- package/dist/embeddings/VectorSearchAdapter.js.map +1 -0
- package/dist/embeddings/index.d.ts +6 -1
- package/dist/embeddings/index.d.ts.map +1 -1
- package/dist/embeddings/index.js +4 -1
- package/dist/embeddings/index.js.map +1 -1
- package/dist/knowledge-graph/ContentHasher.d.ts +4 -0
- package/dist/knowledge-graph/ContentHasher.d.ts.map +1 -0
- package/dist/knowledge-graph/ContentHasher.js +8 -0
- package/dist/knowledge-graph/ContentHasher.js.map +1 -0
- package/dist/knowledge-graph/KGSearchEngine.d.ts +36 -0
- package/dist/knowledge-graph/KGSearchEngine.d.ts.map +1 -0
- package/dist/knowledge-graph/KGSearchEngine.js +257 -0
- package/dist/knowledge-graph/KGSearchEngine.js.map +1 -0
- package/dist/knowledge-graph/index.d.ts +18 -7
- package/dist/knowledge-graph/index.d.ts.map +1 -1
- package/dist/knowledge-graph/index.js +147 -242
- package/dist/knowledge-graph/index.js.map +1 -1
- package/dist/mcp/ServerInitializer.d.ts.map +1 -1
- package/dist/mcp/ServerInitializer.js +1 -1
- package/dist/mcp/ServerInitializer.js.map +1 -1
- package/dist/mcp/StdinBufferManager.d.ts +11 -0
- package/dist/mcp/StdinBufferManager.d.ts.map +1 -0
- package/dist/mcp/StdinBufferManager.js +62 -0
- package/dist/mcp/StdinBufferManager.js.map +1 -0
- package/dist/mcp/daemon/StdioProxyClient.d.ts.map +1 -1
- package/dist/mcp/daemon/StdioProxyClient.js +6 -0
- package/dist/mcp/daemon/StdioProxyClient.js.map +1 -1
- package/dist/mcp/handlers/HookToolHandler.d.ts +10 -0
- package/dist/mcp/handlers/HookToolHandler.d.ts.map +1 -0
- package/dist/mcp/handlers/HookToolHandler.js +92 -0
- package/dist/mcp/handlers/HookToolHandler.js.map +1 -0
- package/dist/mcp/handlers/MemoryToolHandler.d.ts +21 -0
- package/dist/mcp/handlers/MemoryToolHandler.d.ts.map +1 -0
- package/dist/mcp/handlers/MemoryToolHandler.js +430 -0
- package/dist/mcp/handlers/MemoryToolHandler.js.map +1 -0
- package/dist/mcp/handlers/SystemToolHandler.d.ts +14 -0
- package/dist/mcp/handlers/SystemToolHandler.d.ts.map +1 -0
- package/dist/mcp/handlers/SystemToolHandler.js +224 -0
- package/dist/mcp/handlers/SystemToolHandler.js.map +1 -0
- package/dist/mcp/handlers/ToolHandlers.d.ts +4 -17
- package/dist/mcp/handlers/ToolHandlers.d.ts.map +1 -1
- package/dist/mcp/handlers/ToolHandlers.js +19 -689
- package/dist/mcp/handlers/ToolHandlers.js.map +1 -1
- package/dist/mcp/handlers/index.d.ts +3 -0
- package/dist/mcp/handlers/index.d.ts.map +1 -1
- package/dist/mcp/handlers/index.js +3 -0
- package/dist/mcp/handlers/index.js.map +1 -1
- package/dist/mcp/server-bootstrap.js +24 -59
- package/dist/mcp/server-bootstrap.js.map +1 -1
- package/dist/mcp/tools/create-entities.d.ts.map +1 -1
- package/dist/mcp/tools/create-entities.js +18 -24
- package/dist/mcp/tools/create-entities.js.map +1 -1
- package/dist/memory/MemorySearchEngine.d.ts +17 -0
- package/dist/memory/MemorySearchEngine.d.ts.map +1 -0
- package/dist/memory/MemorySearchEngine.js +88 -0
- package/dist/memory/MemorySearchEngine.js.map +1 -0
- package/dist/memory/ProactiveRecaller.d.ts +26 -0
- package/dist/memory/ProactiveRecaller.d.ts.map +1 -0
- package/dist/memory/ProactiveRecaller.js +96 -0
- package/dist/memory/ProactiveRecaller.js.map +1 -0
- package/dist/memory/UnifiedMemoryStore.d.ts +1 -0
- package/dist/memory/UnifiedMemoryStore.d.ts.map +1 -1
- package/dist/memory/UnifiedMemoryStore.js +7 -63
- package/dist/memory/UnifiedMemoryStore.js.map +1 -1
- package/dist/memory/index.d.ts +3 -0
- package/dist/memory/index.d.ts.map +1 -1
- package/dist/memory/index.js +2 -0
- package/dist/memory/index.js.map +1 -1
- package/dist/utils/index.d.ts +0 -2
- package/dist/utils/index.d.ts.map +1 -1
- package/dist/utils/index.js +0 -2
- package/dist/utils/index.js.map +1 -1
- package/dist/utils/tracing/index.d.ts +0 -1
- package/dist/utils/tracing/index.d.ts.map +1 -1
- package/dist/utils/tracing/index.js +0 -1
- package/dist/utils/tracing/index.js.map +1 -1
- package/package.json +2 -11
- package/plugin.json +1 -1
- package/scripts/hooks/__tests__/post-tool-use-recall.test.js +192 -0
- package/scripts/hooks/__tests__/session-start-recall.test.js +86 -0
- package/scripts/hooks/post-tool-use-recall-utils.js +74 -0
- package/scripts/hooks/post-tool-use.js +79 -0
- package/scripts/hooks/session-start-recall-utils.js +40 -0
- package/scripts/hooks/session-start.js +66 -0
package/README.vi.md
CHANGED
|
@@ -1,60 +1,89 @@
|
|
|
1
1
|
<div align="center">
|
|
2
2
|
|
|
3
|
-
|
|
3
|
+
<img src="https://img.shields.io/badge/%F0%9F%A7%A0-MeMesh-blueviolet?style=for-the-badge" alt="MeMesh" />
|
|
4
4
|
|
|
5
|
-
|
|
5
|
+
# MeMesh
|
|
6
6
|
|
|
7
|
-
|
|
7
|
+
### Các phiên lập trình AI của bạn xứng đáng có bộ nhớ.
|
|
8
8
|
|
|
9
|
-
|
|
10
|
-
[](LICENSE)
|
|
11
|
-
[](https://modelcontextprotocol.io)
|
|
9
|
+
MeMesh mang đến cho Claude Code bộ nhớ bền vững, có thể tìm kiếm — để mỗi phiên làm việc đều kế thừa từ phiên trước.
|
|
12
10
|
|
|
13
|
-
[
|
|
11
|
+
[](https://www.npmjs.com/package/@pcircle/memesh)
|
|
12
|
+
[](https://www.npmjs.com/package/@pcircle/memesh)
|
|
13
|
+
[](LICENSE)
|
|
14
|
+
[](https://nodejs.org)
|
|
15
|
+
[](https://modelcontextprotocol.io)
|
|
14
16
|
|
|
15
|
-
|
|
17
|
+
```bash
|
|
18
|
+
npm install -g @pcircle/memesh
|
|
19
|
+
```
|
|
20
|
+
|
|
21
|
+
[Bắt đầu](#bắt-đầu) · [Cách hoạt động](#cách-hoạt-động) · [Lệnh](#lệnh) · [Tài liệu](docs/USER_GUIDE.md)
|
|
22
|
+
|
|
23
|
+
[English](README.md) · [繁體中文](README.zh-TW.md) · [简体中文](README.zh-CN.md) · [日本語](README.ja.md) · [한국어](README.ko.md) · [Français](README.fr.md) · [Deutsch](README.de.md) · [Español](README.es.md) · **Tiếng Việt** · [ภาษาไทย](README.th.md) · [Bahasa Indonesia](README.id.md)
|
|
16
24
|
|
|
17
25
|
</div>
|
|
18
26
|
|
|
27
|
+
> **Lưu ý**: Dự án này ban đầu có tên "Claude Code Buddy" và đã được đổi tên thành MeMesh Plugin để tránh các vấn đề về thương hiệu.
|
|
28
|
+
|
|
19
29
|
---
|
|
20
30
|
|
|
21
|
-
##
|
|
31
|
+
## Vấn đề
|
|
22
32
|
|
|
23
|
-
|
|
33
|
+
Bạn đang làm việc sâu với Claude Code trên một dự án. Bạn đã đưa ra những quyết định quan trọng cách đây ba phiên — thư viện xác thực nào, tại sao chọn schema cơ sở dữ liệu đó, những mẫu thiết kế nào cần tuân theo. Nhưng Claude không nhớ. Bạn phải lặp lại. Bạn mất ngữ cảnh. Bạn lãng phí thời gian.
|
|
24
34
|
|
|
25
|
-
|
|
35
|
+
**MeMesh giải quyết vấn đề này.** Nó cung cấp cho Claude bộ nhớ bền vững, có thể tìm kiếm, phát triển cùng dự án của bạn.
|
|
26
36
|
|
|
27
|
-
|
|
37
|
+
---
|
|
38
|
+
|
|
39
|
+
## Cách hoạt động
|
|
40
|
+
|
|
41
|
+
<table>
|
|
42
|
+
<tr>
|
|
43
|
+
<td width="50%">
|
|
44
|
+
|
|
45
|
+
### Trước MeMesh
|
|
46
|
+
```
|
|
47
|
+
Phiên 1: "Dùng JWT cho auth"
|
|
48
|
+
Phiên 2: "Tại sao mình chọn JWT nhỉ?"
|
|
49
|
+
Phiên 3: "Khoan, mình đang dùng thư viện auth nào?"
|
|
50
|
+
```
|
|
51
|
+
Bạn lặp lại các quyết định. Claude quên ngữ cảnh. Tiến độ bị đình trệ.
|
|
52
|
+
|
|
53
|
+
</td>
|
|
54
|
+
<td width="50%">
|
|
28
55
|
|
|
29
|
-
|
|
56
|
+
### Sau MeMesh
|
|
57
|
+
```
|
|
58
|
+
Phiên 1: "Dùng JWT cho auth" → đã lưu
|
|
59
|
+
Phiên 2: buddy-remember "auth" → nhớ lại ngay
|
|
60
|
+
Phiên 3: Ngữ cảnh tự động tải khi bắt đầu
|
|
61
|
+
```
|
|
62
|
+
Mỗi phiên đều tiếp nối từ nơi bạn dừng lại.
|
|
30
63
|
|
|
31
|
-
|
|
64
|
+
</td>
|
|
65
|
+
</tr>
|
|
66
|
+
</table>
|
|
32
67
|
|
|
33
|
-
|
|
68
|
+
---
|
|
34
69
|
|
|
35
|
-
|
|
70
|
+
## Bạn được gì
|
|
36
71
|
|
|
37
|
-
**
|
|
38
|
-
- Hiển thị tóm tắt phiên trước khi bắt đầu
|
|
39
|
-
- Theo dõi các file đã sửa và kiểm thử
|
|
40
|
-
- Nhắc review code trước khi commit
|
|
41
|
-
- Định tuyến tác vụ đến model tối ưu
|
|
72
|
+
**Bộ nhớ dự án có thể tìm kiếm** — Hỏi "chúng ta đã quyết định gì về auth?" và nhận câu trả lời ngay lập tức, khớp theo ngữ nghĩa. Không phải tìm kiếm từ khóa — mà là tìm kiếm theo *ý nghĩa*, sử dụng ONNX embeddings chạy cục bộ.
|
|
42
73
|
|
|
43
|
-
**
|
|
74
|
+
**Phân tích tác vụ thông minh** — `buddy-do "thêm user auth"` không chỉ đơn giản thực thi. Nó lấy ngữ cảnh liên quan từ các phiên trước, kiểm tra những mẫu thiết kế bạn đã thiết lập, và xây dựng kế hoạch chi tiết trước khi viết một dòng code nào.
|
|
44
75
|
|
|
45
|
-
**
|
|
76
|
+
**Gợi nhớ chủ động** — MeMesh tự động hiển thị các ký ức liên quan khi bạn bắt đầu phiên, gặp lỗi kiểm thử, hoặc gặp lỗi. Không cần tìm kiếm thủ công.
|
|
46
77
|
|
|
47
|
-
|
|
78
|
+
**Tự động hóa quy trình** — Tóm tắt phiên khi khởi động. Theo dõi thay đổi file. Nhắc review code trước khi commit. Tất cả chạy ngầm trong nền.
|
|
48
79
|
|
|
49
|
-
|
|
50
|
-
- **CLAUDE.md** = sách hướng dẫn sử dụng cho Claude
|
|
51
|
-
- **MeMesh** = sổ tay tìm kiếm được + trợ lý thông minh phát triển cùng dự án
|
|
80
|
+
**Học từ lỗi** — Ghi lại lỗi và cách sửa để xây dựng cơ sở tri thức. Cùng một lỗi không xảy ra hai lần.
|
|
52
81
|
|
|
53
82
|
---
|
|
54
83
|
|
|
55
|
-
##
|
|
84
|
+
## Bắt đầu
|
|
56
85
|
|
|
57
|
-
**
|
|
86
|
+
**Yêu cầu**: [Claude Code](https://docs.anthropic.com/en/docs/claude-code) + Node.js 20+
|
|
58
87
|
|
|
59
88
|
```bash
|
|
60
89
|
npm install -g @pcircle/memesh
|
|
@@ -62,16 +91,16 @@ npm install -g @pcircle/memesh
|
|
|
62
91
|
|
|
63
92
|
Khởi động lại Claude Code. Xong.
|
|
64
93
|
|
|
65
|
-
**Kiểm tra
|
|
94
|
+
**Kiểm tra** — gõ trong Claude Code:
|
|
66
95
|
|
|
67
96
|
```
|
|
68
97
|
buddy-help
|
|
69
98
|
```
|
|
70
99
|
|
|
71
|
-
Bạn sẽ thấy danh sách các lệnh.
|
|
100
|
+
Bạn sẽ thấy danh sách các lệnh có sẵn.
|
|
72
101
|
|
|
73
102
|
<details>
|
|
74
|
-
<summary>Cài đặt từ mã nguồn (cho người đóng góp)</summary>
|
|
103
|
+
<summary><strong>Cài đặt từ mã nguồn</strong> (dành cho người đóng góp)</summary>
|
|
75
104
|
|
|
76
105
|
```bash
|
|
77
106
|
git clone https://github.com/PCIRCLE-AI/claude-code-buddy.git
|
|
@@ -83,76 +112,88 @@ npm install && npm run build
|
|
|
83
112
|
|
|
84
113
|
---
|
|
85
114
|
|
|
86
|
-
##
|
|
87
|
-
|
|
88
|
-
MeMesh thêm 3 lệnh vào Claude Code:
|
|
115
|
+
## Lệnh
|
|
89
116
|
|
|
90
117
|
| Lệnh | Chức năng |
|
|
91
|
-
|
|
92
|
-
| `buddy-do "
|
|
118
|
+
|---------|-------------|
|
|
119
|
+
| `buddy-do "tác vụ"` | Thực thi tác vụ với đầy đủ ngữ cảnh bộ nhớ |
|
|
93
120
|
| `buddy-remember "chủ đề"` | Tìm kiếm các quyết định và ngữ cảnh trước đó |
|
|
94
121
|
| `buddy-help` | Hiển thị các lệnh có sẵn |
|
|
95
122
|
|
|
96
|
-
**Ví
|
|
123
|
+
**Ví dụ thực tế:**
|
|
97
124
|
|
|
98
125
|
```bash
|
|
99
|
-
|
|
100
|
-
buddy-do "
|
|
101
|
-
|
|
102
|
-
|
|
126
|
+
# Làm quen với một codebase mới
|
|
127
|
+
buddy-do "explain this codebase"
|
|
128
|
+
|
|
129
|
+
# Xây dựng tính năng với ngữ cảnh từ công việc trước
|
|
130
|
+
buddy-do "add user authentication"
|
|
131
|
+
|
|
132
|
+
# Nhớ lại lý do đưa ra quyết định
|
|
133
|
+
buddy-remember "API design decisions"
|
|
134
|
+
buddy-remember "why we chose PostgreSQL"
|
|
103
135
|
```
|
|
104
136
|
|
|
105
|
-
Tất cả dữ liệu
|
|
137
|
+
Tất cả dữ liệu nằm trên máy bạn. Các quyết định được giữ 90 ngày, ghi chú phiên 30 ngày.
|
|
138
|
+
|
|
139
|
+
---
|
|
140
|
+
|
|
141
|
+
## Khác gì so với CLAUDE.md?
|
|
142
|
+
|
|
143
|
+
| | CLAUDE.md | MeMesh |
|
|
144
|
+
|---|-----------|--------|
|
|
145
|
+
| **Mục đích** | Hướng dẫn tĩnh cho Claude | Bộ nhớ sống, phát triển cùng dự án |
|
|
146
|
+
| **Tìm kiếm** | Tìm kiếm văn bản thủ công | Tìm kiếm ngữ nghĩa theo ý nghĩa |
|
|
147
|
+
| **Cập nhật** | Bạn chỉnh sửa thủ công | Tự động ghi lại quyết định khi bạn làm việc |
|
|
148
|
+
| **Gợi nhớ** | Luôn được tải (có thể rất dài) | Hiển thị ngữ cảnh liên quan theo yêu cầu |
|
|
149
|
+
| **Phạm vi** | Tùy chọn chung | Đồ thị tri thức theo dự án |
|
|
150
|
+
|
|
151
|
+
**Chúng hoạt động cùng nhau.** CLAUDE.md cho Claude biết *cách* làm việc. MeMesh ghi nhớ *những gì* bạn đã xây dựng.
|
|
106
152
|
|
|
107
153
|
---
|
|
108
154
|
|
|
109
155
|
## Nền tảng hỗ trợ
|
|
110
156
|
|
|
111
157
|
| Nền tảng | Trạng thái |
|
|
112
|
-
|
|
113
|
-
|
|
|
114
|
-
|
|
|
115
|
-
|
|
|
116
|
-
|
|
117
|
-
**Hoạt động với:**
|
|
118
|
-
- Claude Code CLI (terminal)
|
|
119
|
-
- Claude Code VS Code Extension
|
|
120
|
-
- Cursor (qua MCP)
|
|
121
|
-
- Các editor tương thích MCP khác
|
|
158
|
+
|----------|--------|
|
|
159
|
+
| macOS | ✅ |
|
|
160
|
+
| Linux | ✅ |
|
|
161
|
+
| Windows | ✅ (khuyên dùng WSL2) |
|
|
122
162
|
|
|
123
|
-
**
|
|
163
|
+
**Hoạt động với:** Claude Code CLI · VS Code Extension · Cursor (qua MCP) · Bất kỳ editor tương thích MCP nào
|
|
124
164
|
|
|
125
165
|
---
|
|
126
166
|
|
|
127
|
-
##
|
|
167
|
+
## Kiến trúc
|
|
128
168
|
|
|
129
|
-
|
|
169
|
+
MeMesh chạy như một MCP server cục bộ bên cạnh Claude Code:
|
|
130
170
|
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
171
|
+
- **Knowledge Graph** — Kho lưu trữ thực thể dựa trên SQLite với tìm kiếm toàn văn FTS5
|
|
172
|
+
- **Vector Embeddings** — ONNX runtime cho tương đồng ngữ nghĩa (chạy 100% cục bộ)
|
|
173
|
+
- **Content Dedup** — Băm SHA-256 bỏ qua tính toán embedding trùng lặp
|
|
174
|
+
- **Batch Processing** — Xử lý hàng loạt hiệu quả cho cơ sở tri thức lớn
|
|
175
|
+
- **Hook System** — Gợi nhớ chủ động khi bắt đầu phiên, lỗi kiểm thử và lỗi chung
|
|
134
176
|
|
|
135
|
-
|
|
136
|
-
node --version
|
|
177
|
+
Mọi thứ chạy cục bộ. Không cloud. Không gọi API. Dữ liệu của bạn không bao giờ rời khỏi máy.
|
|
137
178
|
|
|
138
|
-
|
|
139
|
-
memesh setup
|
|
140
|
-
```
|
|
179
|
+
---
|
|
141
180
|
|
|
142
|
-
|
|
181
|
+
## Tài liệu
|
|
143
182
|
|
|
144
|
-
|
|
183
|
+
| Tài liệu | Mô tả |
|
|
184
|
+
|-----|-------------|
|
|
185
|
+
| [Bắt đầu](docs/GETTING_STARTED.md) | Hướng dẫn cài đặt từng bước |
|
|
186
|
+
| [Hướng dẫn sử dụng](docs/USER_GUIDE.md) | Hướng dẫn đầy đủ với ví dụ |
|
|
187
|
+
| [Lệnh](docs/COMMANDS.md) | Tham chiếu lệnh đầy đủ |
|
|
188
|
+
| [Kiến trúc](docs/ARCHITECTURE.md) | Phân tích kỹ thuật chuyên sâu |
|
|
189
|
+
| [Đóng góp](CONTRIBUTING.md) | Hướng dẫn đóng góp |
|
|
190
|
+
| [Phát triển](docs/DEVELOPMENT.md) | Cài đặt môi trường cho người đóng góp |
|
|
145
191
|
|
|
146
192
|
---
|
|
147
193
|
|
|
148
|
-
##
|
|
194
|
+
## Đóng góp
|
|
149
195
|
|
|
150
|
-
|
|
151
|
-
- **[Hướng dẫn sử dụng](docs/USER_GUIDE.md)** — Hướng dẫn đầy đủ với ví dụ
|
|
152
|
-
- **[Lệnh](docs/COMMANDS.md)** — Tất cả các lệnh có sẵn
|
|
153
|
-
- **[Kiến trúc](docs/ARCHITECTURE.md)** — Cách hoạt động bên trong
|
|
154
|
-
- **[Đóng góp](CONTRIBUTING.md)** — Muốn giúp? Bắt đầu tại đây
|
|
155
|
-
- **[Hướng dẫn phát triển](docs/DEVELOPMENT.md)** — Cho người đóng góp
|
|
196
|
+
Chúng tôi hoan nghênh đóng góp! Xem [CONTRIBUTING.md](CONTRIBUTING.md) để bắt đầu.
|
|
156
197
|
|
|
157
198
|
---
|
|
158
199
|
|
|
@@ -164,8 +205,8 @@ MIT — Xem [LICENSE](LICENSE)
|
|
|
164
205
|
|
|
165
206
|
<div align="center">
|
|
166
207
|
|
|
167
|
-
|
|
208
|
+
**Được xây dựng với Claude Code, cho Claude Code.**
|
|
168
209
|
|
|
169
|
-
[Báo lỗi](https://github.com/PCIRCLE-AI/claude-code-buddy/issues/new?labels=bug&template=bug_report.yml)
|
|
210
|
+
[Báo lỗi](https://github.com/PCIRCLE-AI/claude-code-buddy/issues/new?labels=bug&template=bug_report.yml) · [Yêu cầu tính năng](https://github.com/PCIRCLE-AI/claude-code-buddy/discussions) · [Trợ giúp](https://github.com/PCIRCLE-AI/claude-code-buddy/issues/new)
|
|
170
211
|
|
|
171
212
|
</div>
|
package/README.zh-CN.md
CHANGED
|
@@ -1,77 +1,106 @@
|
|
|
1
1
|
<div align="center">
|
|
2
2
|
|
|
3
|
-
|
|
3
|
+
<img src="https://img.shields.io/badge/%F0%9F%A7%A0-MeMesh-blueviolet?style=for-the-badge" alt="MeMesh" />
|
|
4
4
|
|
|
5
|
-
|
|
5
|
+
# MeMesh
|
|
6
6
|
|
|
7
|
-
|
|
7
|
+
### 你的 AI 编程会话值得拥有记忆。
|
|
8
8
|
|
|
9
|
-
|
|
10
|
-
[](LICENSE)
|
|
11
|
-
[](https://modelcontextprotocol.io)
|
|
9
|
+
MeMesh 为 Claude Code 提供持久的、可搜索的记忆 — 让每次会话都能承接上次的成果。
|
|
12
10
|
|
|
13
|
-
[
|
|
11
|
+
[](https://www.npmjs.com/package/@pcircle/memesh)
|
|
12
|
+
[](https://www.npmjs.com/package/@pcircle/memesh)
|
|
13
|
+
[](LICENSE)
|
|
14
|
+
[](https://nodejs.org)
|
|
15
|
+
[](https://modelcontextprotocol.io)
|
|
14
16
|
|
|
15
|
-
|
|
17
|
+
```bash
|
|
18
|
+
npm install -g @pcircle/memesh
|
|
19
|
+
```
|
|
20
|
+
|
|
21
|
+
[快速开始](#快速开始) · [运作原理](#运作原理) · [命令](#命令) · [文档](docs/USER_GUIDE.md)
|
|
22
|
+
|
|
23
|
+
[English](README.md) · [繁體中文](README.zh-TW.md) · **简体中文** · [日本語](README.ja.md) · [한국어](README.ko.md) · [Français](README.fr.md) · [Deutsch](README.de.md) · [Español](README.es.md) · [Tiếng Việt](README.vi.md) · [ภาษาไทย](README.th.md) · [Bahasa Indonesia](README.id.md)
|
|
16
24
|
|
|
17
25
|
</div>
|
|
18
26
|
|
|
27
|
+
> **注意**:本项目原名「Claude Code Buddy」,为避免潜在的商标问题已更名为 MeMesh Plugin。
|
|
28
|
+
|
|
29
|
+
---
|
|
30
|
+
|
|
31
|
+
## 问题所在
|
|
32
|
+
|
|
33
|
+
你正在用 Claude Code 深入开发一个项目。三个会话之前你做了重要决策 — 选了哪个认证库、为什么选择那个数据库架构、该遵循什么模式。但 Claude 不记得了。你不断重复自己说过的话。你失去了上下文。你浪费了时间。
|
|
34
|
+
|
|
35
|
+
**MeMesh 解决了这个问题。** 它为 Claude 提供一个持久的、可搜索的记忆,随着你的项目一起成长。
|
|
36
|
+
|
|
19
37
|
---
|
|
20
38
|
|
|
21
|
-
##
|
|
39
|
+
## 运作原理
|
|
22
40
|
|
|
23
|
-
|
|
41
|
+
<table>
|
|
42
|
+
<tr>
|
|
43
|
+
<td width="50%">
|
|
24
44
|
|
|
25
|
-
|
|
45
|
+
### 没有 MeMesh 之前
|
|
46
|
+
```
|
|
47
|
+
Session 1: "用 JWT 做认证"
|
|
48
|
+
Session 2: "我们当时为什么选 JWT 来着?"
|
|
49
|
+
Session 3: "等等,我们用的是什么认证库?"
|
|
50
|
+
```
|
|
51
|
+
你不断重复决策。Claude 忘记上下文。进度停滞。
|
|
26
52
|
|
|
27
|
-
>
|
|
53
|
+
</td>
|
|
54
|
+
<td width="50%">
|
|
28
55
|
|
|
29
|
-
|
|
56
|
+
### 有了 MeMesh 之后
|
|
57
|
+
```
|
|
58
|
+
Session 1: "用 JWT 做认证" → 已保存
|
|
59
|
+
Session 2: buddy-remember "auth" → 即时回忆
|
|
60
|
+
Session 3: 启动时自动加载上下文
|
|
61
|
+
```
|
|
62
|
+
每次会话都能从上次中断的地方继续。
|
|
30
63
|
|
|
31
|
-
|
|
64
|
+
</td>
|
|
65
|
+
</tr>
|
|
66
|
+
</table>
|
|
32
67
|
|
|
33
|
-
|
|
68
|
+
---
|
|
34
69
|
|
|
35
|
-
|
|
70
|
+
## 你能获得什么
|
|
36
71
|
|
|
37
|
-
|
|
38
|
-
- 开始新 session 时显示上次工作摘要
|
|
39
|
-
- 追踪你改了哪些文件、测试了哪些
|
|
40
|
-
- 在 commit 前提醒你做 code review
|
|
41
|
-
- 把任务分配到最合适的模型(搜索用快的、规划用强的)
|
|
72
|
+
**可搜索的项目记忆** — 问"我们之前怎么决定 auth 的?"就能得到即时的、语义匹配的答案。不是关键字搜索 — 是*语义*搜索,由本地 ONNX 嵌入驱动。
|
|
42
73
|
|
|
43
|
-
|
|
74
|
+
**智能任务分析** — `buddy-do "添加用户认证"` 不只是执行。它会从过去的会话中提取相关上下文,检查你已建立的模式,并在写任何一行代码之前制定完整的计划。
|
|
44
75
|
|
|
45
|
-
|
|
76
|
+
**主动回忆** — MeMesh 在你开始会话、遇到测试失败或出现错误时,自动浮现相关记忆。无需手动搜索。
|
|
46
77
|
|
|
47
|
-
|
|
78
|
+
**工作流自动化** — 启动时展示会话回顾。文件变更追踪。提交前的代码审查提醒。所有这些都在后台静默运行。
|
|
48
79
|
|
|
49
|
-
|
|
50
|
-
- **CLAUDE.md** = 你写给 Claude 的使用手册
|
|
51
|
-
- **MeMesh** = 可搜索的笔记本 + 随项目成长而学习的智能助手
|
|
80
|
+
**错误学习** — 记录错误和修复方式,构建知识库。同样的错误不会再犯第二次。
|
|
52
81
|
|
|
53
82
|
---
|
|
54
83
|
|
|
55
|
-
##
|
|
84
|
+
## 快速开始
|
|
56
85
|
|
|
57
|
-
|
|
86
|
+
**前提条件**:[Claude Code](https://docs.anthropic.com/en/docs/claude-code) + Node.js 20+
|
|
58
87
|
|
|
59
88
|
```bash
|
|
60
89
|
npm install -g @pcircle/memesh
|
|
61
90
|
```
|
|
62
91
|
|
|
63
|
-
重启 Claude Code
|
|
92
|
+
重启 Claude Code。搞定。
|
|
64
93
|
|
|
65
|
-
|
|
94
|
+
**验证** — 在 Claude Code 中输入:
|
|
66
95
|
|
|
67
96
|
```
|
|
68
97
|
buddy-help
|
|
69
98
|
```
|
|
70
99
|
|
|
71
|
-
|
|
100
|
+
你应该能看到可用命令列表。
|
|
72
101
|
|
|
73
102
|
<details>
|
|
74
|
-
<summary
|
|
103
|
+
<summary><strong>从源码安装</strong>(贡献者)</summary>
|
|
75
104
|
|
|
76
105
|
```bash
|
|
77
106
|
git clone https://github.com/PCIRCLE-AI/claude-code-buddy.git
|
|
@@ -83,76 +112,88 @@ npm install && npm run build
|
|
|
83
112
|
|
|
84
113
|
---
|
|
85
114
|
|
|
86
|
-
##
|
|
115
|
+
## 命令
|
|
87
116
|
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
|
91
|
-
|------|------|
|
|
92
|
-
| `buddy-do "任务"` | 带着记忆上下文执行任务 |
|
|
117
|
+
| 命令 | 功能 |
|
|
118
|
+
|---------|-------------|
|
|
119
|
+
| `buddy-do "任务"` | 带着完整记忆上下文执行任务 |
|
|
93
120
|
| `buddy-remember "主题"` | 搜索过去的决策和上下文 |
|
|
94
|
-
| `buddy-help` |
|
|
121
|
+
| `buddy-help` | 显示可用命令 |
|
|
95
122
|
|
|
96
|
-
|
|
123
|
+
**实际示例:**
|
|
97
124
|
|
|
98
125
|
```bash
|
|
99
|
-
|
|
100
|
-
buddy-do "
|
|
101
|
-
|
|
102
|
-
|
|
126
|
+
# 快速了解一个陌生的代码库
|
|
127
|
+
buddy-do "explain this codebase"
|
|
128
|
+
|
|
129
|
+
# 带着过去工作的上下文构建功能
|
|
130
|
+
buddy-do "add user authentication"
|
|
131
|
+
|
|
132
|
+
# 回忆当初为什么做了那些决策
|
|
133
|
+
buddy-remember "API design decisions"
|
|
134
|
+
buddy-remember "why we chose PostgreSQL"
|
|
103
135
|
```
|
|
104
136
|
|
|
105
|
-
|
|
137
|
+
所有数据都保存在你的本机上。决策保留 90 天,会话笔记保留 30 天。
|
|
106
138
|
|
|
107
139
|
---
|
|
108
140
|
|
|
109
|
-
##
|
|
141
|
+
## 这和 CLAUDE.md 有什么不同?
|
|
110
142
|
|
|
111
|
-
|
|
|
112
|
-
|
|
113
|
-
|
|
|
114
|
-
|
|
|
115
|
-
|
|
|
143
|
+
| | CLAUDE.md | MeMesh |
|
|
144
|
+
|---|-----------|--------|
|
|
145
|
+
| **用途** | 给 Claude 的静态指令 | 随项目成长的活记忆 |
|
|
146
|
+
| **搜索** | 手动文本搜索 | 基于语义的意义搜索 |
|
|
147
|
+
| **更新** | 你手动编辑 | 工作时自动捕获决策 |
|
|
148
|
+
| **回忆** | 始终加载(可能变得很长) | 按需浮现相关上下文 |
|
|
149
|
+
| **范围** | 通用偏好设置 | 项目专属的知识图谱 |
|
|
150
|
+
|
|
151
|
+
**它们协同工作。** CLAUDE.md 告诉 Claude *怎么*工作。MeMesh 记住你*做了*什么。
|
|
116
152
|
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
153
|
+
---
|
|
154
|
+
|
|
155
|
+
## 平台支持
|
|
156
|
+
|
|
157
|
+
| 平台 | 状态 |
|
|
158
|
+
|----------|--------|
|
|
159
|
+
| macOS | ✅ |
|
|
160
|
+
| Linux | ✅ |
|
|
161
|
+
| Windows | ✅(建议使用 WSL2) |
|
|
122
162
|
|
|
123
|
-
|
|
163
|
+
**兼容:** Claude Code CLI · VS Code 扩展 · Cursor(通过 MCP) · 任何兼容 MCP 的编辑器
|
|
124
164
|
|
|
125
165
|
---
|
|
126
166
|
|
|
127
|
-
##
|
|
167
|
+
## 架构
|
|
128
168
|
|
|
129
|
-
|
|
169
|
+
MeMesh 作为本地 MCP 服务器与 Claude Code 一起运行:
|
|
130
170
|
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
171
|
+
- **知识图谱** — 基于 SQLite 的实体存储,支持 FTS5 全文搜索
|
|
172
|
+
- **向量嵌入** — ONNX 运行时实现语义相似度(100% 本地运行)
|
|
173
|
+
- **内容去重** — SHA-256 哈希跳过冗余的嵌入计算
|
|
174
|
+
- **批量处理** — 高效的批量操作,适用于大型知识库
|
|
175
|
+
- **Hook 系统** — 在会话开始、测试失败和错误发生时主动回忆
|
|
134
176
|
|
|
135
|
-
|
|
136
|
-
node --version
|
|
177
|
+
一切都在本地运行。无需云服务。无需 API 调用。你的数据永远不会离开你的机器。
|
|
137
178
|
|
|
138
|
-
|
|
139
|
-
memesh setup
|
|
140
|
-
```
|
|
179
|
+
---
|
|
141
180
|
|
|
142
|
-
|
|
181
|
+
## 文档
|
|
143
182
|
|
|
144
|
-
|
|
183
|
+
| 文档 | 说明 |
|
|
184
|
+
|-----|-------------|
|
|
185
|
+
| [快速开始](docs/GETTING_STARTED.md) | 分步设置指南 |
|
|
186
|
+
| [使用指南](docs/USER_GUIDE.md) | 完整使用指南与示例 |
|
|
187
|
+
| [命令参考](docs/COMMANDS.md) | 完整命令参考 |
|
|
188
|
+
| [架构说明](docs/ARCHITECTURE.md) | 技术深度解析 |
|
|
189
|
+
| [贡献指南](CONTRIBUTING.md) | 贡献指南 |
|
|
190
|
+
| [开发指南](docs/DEVELOPMENT.md) | 贡献者开发设置 |
|
|
145
191
|
|
|
146
192
|
---
|
|
147
193
|
|
|
148
|
-
##
|
|
194
|
+
## 贡献
|
|
149
195
|
|
|
150
|
-
|
|
151
|
-
- **[使用指南](docs/USER_GUIDE.md)** — 完整使用示例
|
|
152
|
-
- **[指令参考](docs/COMMANDS.md)** — 所有可用指令
|
|
153
|
-
- **[架构说明](docs/ARCHITECTURE.md)** — 内部运作原理
|
|
154
|
-
- **[贡献指南](CONTRIBUTING.md)** — 想帮忙?从这里开始
|
|
155
|
-
- **[开发指南](docs/DEVELOPMENT.md)** — 给贡献者
|
|
196
|
+
欢迎贡献!请参阅 [CONTRIBUTING.md](CONTRIBUTING.md) 开始。
|
|
156
197
|
|
|
157
198
|
---
|
|
158
199
|
|
|
@@ -164,8 +205,8 @@ MIT — 详见 [LICENSE](LICENSE)
|
|
|
164
205
|
|
|
165
206
|
<div align="center">
|
|
166
207
|
|
|
167
|
-
|
|
208
|
+
**用 Claude Code 构建,为 Claude Code 而生。**
|
|
168
209
|
|
|
169
|
-
[
|
|
210
|
+
[报告 Bug](https://github.com/PCIRCLE-AI/claude-code-buddy/issues/new?labels=bug&template=bug_report.yml) · [功能请求](https://github.com/PCIRCLE-AI/claude-code-buddy/discussions) · [获取帮助](https://github.com/PCIRCLE-AI/claude-code-buddy/issues/new)
|
|
170
211
|
|
|
171
212
|
</div>
|