@pcircle/memesh 4.0.2 → 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.
- package/README.de.md +115 -86
- package/README.es.md +107 -78
- package/README.fr.md +111 -82
- package/README.ja.md +117 -88
- package/README.ko.md +111 -82
- package/README.md +54 -3
- package/README.pt.md +103 -74
- package/README.th.md +117 -88
- package/README.vi.md +113 -84
- package/README.zh-CN.md +114 -85
- package/README.zh-TW.md +115 -86
- package/dashboard/dist/index.html +4 -4
- package/dist/core/config.d.ts.map +1 -1
- package/dist/core/config.js +6 -10
- package/dist/core/config.js.map +1 -1
- package/dist/core/doctor.d.ts +40 -0
- package/dist/core/doctor.d.ts.map +1 -0
- package/dist/core/doctor.js +217 -0
- package/dist/core/doctor.js.map +1 -0
- package/dist/core/embedder.js.map +1 -1
- package/dist/core/install-channel.d.ts +30 -0
- package/dist/core/install-channel.d.ts.map +1 -0
- package/dist/core/install-channel.js +83 -0
- package/dist/core/install-channel.js.map +1 -0
- package/dist/core/schema-export.d.ts.map +1 -1
- package/dist/core/schema-export.js +34 -0
- package/dist/core/schema-export.js.map +1 -1
- package/dist/core/skill-usage-log.d.ts +11 -0
- package/dist/core/skill-usage-log.d.ts.map +1 -0
- package/dist/core/skill-usage-log.js +121 -0
- package/dist/core/skill-usage-log.js.map +1 -0
- package/dist/core/updater.d.ts +11 -0
- package/dist/core/updater.d.ts.map +1 -0
- package/dist/core/updater.js +28 -0
- package/dist/core/updater.js.map +1 -0
- package/dist/core/verifier.d.ts +37 -0
- package/dist/core/verifier.d.ts.map +1 -0
- package/dist/core/verifier.js +142 -0
- package/dist/core/verifier.js.map +1 -0
- package/dist/core/version-check.d.ts +28 -4
- package/dist/core/version-check.d.ts.map +1 -1
- package/dist/core/version-check.js +167 -21
- package/dist/core/version-check.js.map +1 -1
- package/dist/transports/cli/cli.js +154 -16
- package/dist/transports/cli/cli.js.map +1 -1
- package/dist/transports/http/server.d.ts.map +1 -1
- package/dist/transports/http/server.js +48 -1
- package/dist/transports/http/server.js.map +1 -1
- package/dist/transports/mcp/handlers.d.ts +93 -0
- package/dist/transports/mcp/handlers.d.ts.map +1 -1
- package/dist/transports/mcp/handlers.js +51 -1
- package/dist/transports/mcp/handlers.js.map +1 -1
- package/dist/transports/schemas.d.ts +28 -0
- package/dist/transports/schemas.d.ts.map +1 -1
- package/dist/transports/schemas.js +25 -0
- package/dist/transports/schemas.js.map +1 -1
- package/hooks/hooks.json +10 -0
- package/package.json +5 -3
- package/plugin.json +2 -2
- package/scripts/hooks/pre-bash-orchestration-nudge.js +150 -0
- package/scripts/hooks/pre-edit-recall.js +0 -0
- package/scripts/hooks/session-start.js +55 -2
- package/skills/agentic-orchestration/SKILL.md +399 -0
package/README.zh-CN.md
CHANGED
|
@@ -1,10 +1,13 @@
|
|
|
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
|
|
7
|
-
一个 SQLite
|
|
9
|
+
<strong>为 Claude Code 和 MCP 编码代理设计的本地内存层。</strong><br />
|
|
10
|
+
一个 SQLite 文件。无需 Docker。无需云服务。
|
|
8
11
|
</p>
|
|
9
12
|
<p align="center">
|
|
10
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>
|
|
@@ -16,15 +19,17 @@
|
|
|
16
19
|
|
|
17
20
|
---
|
|
18
21
|
|
|
19
|
-
##
|
|
22
|
+
## 问题
|
|
23
|
+
|
|
24
|
+
编码代理在会话间会遗忘。每个架构决策、每次 bug 修复、失败的测试用例、每一次来之不易的经验教训都需要重新解释一遍。Claude Code 每次都从零开始,重新发现老约束,浪费上下文在早该掌握的东西上。
|
|
20
25
|
|
|
21
|
-
|
|
26
|
+
**MeMesh 为编码代理提供持久化、可搜索、不断演进的本地内存。**
|
|
22
27
|
|
|
23
|
-
|
|
28
|
+
本包是 MeMesh 产品系列的本地内存层。我们刻意保持简洁并开源:用 npm 安装,内存文件保存在 `~/.memesh/knowledge-graph.db`,连接到 Claude Code 或任何兼容 MCP 的客户端即可。托管工作区和企业级操作系统产品应当独立于本包的 README 和路线图。
|
|
24
29
|
|
|
25
30
|
---
|
|
26
31
|
|
|
27
|
-
## 60
|
|
32
|
+
## 60 秒快速开始
|
|
28
33
|
|
|
29
34
|
### 第一步:安装
|
|
30
35
|
|
|
@@ -32,53 +37,59 @@
|
|
|
32
37
|
npm install -g @pcircle/memesh
|
|
33
38
|
```
|
|
34
39
|
|
|
35
|
-
###
|
|
40
|
+
### 第二步:记录一个决策
|
|
36
41
|
|
|
37
42
|
```bash
|
|
38
43
|
memesh remember --name "auth-decision" --type "decision" --obs "Use OAuth 2.0 with PKCE"
|
|
39
44
|
```
|
|
40
45
|
|
|
41
|
-
###
|
|
46
|
+
### 第三步:之后随时调用
|
|
42
47
|
|
|
43
48
|
```bash
|
|
44
49
|
memesh recall "login security"
|
|
45
|
-
# →
|
|
50
|
+
# → 即使用词不同,也能找到 "OAuth 2.0 with PKCE"
|
|
46
51
|
```
|
|
47
52
|
|
|
48
|
-
**就这样。** MeMesh
|
|
53
|
+
**就这样。** MeMesh 现在已经在会话间记忆和回忆了。
|
|
49
54
|
|
|
50
|
-
|
|
55
|
+
想验证安装和本地接线是否完整:
|
|
56
|
+
|
|
57
|
+
```bash
|
|
58
|
+
memesh doctor
|
|
59
|
+
```
|
|
60
|
+
|
|
61
|
+
打开仪表板浏览你的内存:
|
|
51
62
|
|
|
52
63
|
```bash
|
|
53
64
|
memesh
|
|
54
65
|
```
|
|
55
66
|
|
|
56
67
|
<p align="center">
|
|
57
|
-
<img src="docs/images/dashboard-search.png" alt="MeMesh
|
|
68
|
+
<img src="docs/images/dashboard-search.png" alt="MeMesh 搜索 — 瞬间找到任何记忆" width="100%" />
|
|
58
69
|
</p>
|
|
59
70
|
|
|
60
71
|
<p align="center">
|
|
61
|
-
<img src="docs/images/dashboard-analytics.png" alt="MeMesh
|
|
72
|
+
<img src="docs/images/dashboard-analytics.png" alt="MeMesh 分析 — 健康评分、时间线、模式、知识覆盖" width="100%" />
|
|
62
73
|
</p>
|
|
63
74
|
|
|
64
75
|
<p align="center">
|
|
65
|
-
<img src="docs/images/dashboard-graph.png" alt="MeMesh
|
|
76
|
+
<img src="docs/images/dashboard-graph.png" alt="MeMesh 知识图 — 交互式知识图,支持类型过滤和中心模式" width="100%" />
|
|
66
77
|
</p>
|
|
67
78
|
|
|
68
79
|
---
|
|
69
80
|
|
|
70
81
|
## 这是为谁设计的?
|
|
71
82
|
|
|
72
|
-
|
|
|
73
|
-
|
|
74
|
-
| **使用 Claude Code 的开发者** |
|
|
75
|
-
|
|
|
76
|
-
|
|
|
77
|
-
|
|
|
83
|
+
| 你是... | MeMesh 帮助你... |
|
|
84
|
+
|--------|-----------------|
|
|
85
|
+
| **使用 Claude Code 的开发者** | 工作时自动回忆项目决策、文件特定的经验教训和过去的失败 |
|
|
86
|
+
| **编码代理重度用户** | 在 MCP 兼容工具间共享一个本地内存层 |
|
|
87
|
+
| **团队试验 AI 编码工作流** | 导出/导入项目知识,无需引入托管基础设施 |
|
|
88
|
+
| **代理开发者** | 通过 MCP、HTTP、CLI 或 Python SDK 添加本地内存 |
|
|
78
89
|
|
|
79
90
|
---
|
|
80
91
|
|
|
81
|
-
##
|
|
92
|
+
## 为编码代理优先设计
|
|
82
93
|
|
|
83
94
|
<table>
|
|
84
95
|
<tr>
|
|
@@ -88,28 +99,28 @@ memesh
|
|
|
88
99
|
```bash
|
|
89
100
|
memesh-mcp
|
|
90
101
|
```
|
|
91
|
-
MCP
|
|
102
|
+
MCP 工具 + Claude Code 钩子
|
|
92
103
|
|
|
93
104
|
</td>
|
|
94
105
|
<td width="33%" align="center">
|
|
95
106
|
|
|
96
|
-
|
|
97
|
-
```
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
107
|
+
**任何 HTTP 客户端**
|
|
108
|
+
```bash
|
|
109
|
+
curl localhost:3737/v1/recall \
|
|
110
|
+
-H "Content-Type: application/json" \
|
|
111
|
+
-d '{"query":"auth"}'
|
|
101
112
|
```
|
|
102
|
-
`
|
|
113
|
+
`memesh serve` (REST API)
|
|
103
114
|
|
|
104
115
|
</td>
|
|
105
116
|
<td width="33%" align="center">
|
|
106
117
|
|
|
107
|
-
**任何 LLM
|
|
118
|
+
**任何 LLM (OpenAI 格式)**
|
|
108
119
|
```bash
|
|
109
120
|
memesh export-schema \
|
|
110
121
|
--format openai
|
|
111
122
|
```
|
|
112
|
-
|
|
123
|
+
粘贴工具到任何 API 调用
|
|
113
124
|
|
|
114
125
|
</td>
|
|
115
126
|
</tr>
|
|
@@ -117,32 +128,34 @@ memesh export-schema \
|
|
|
117
128
|
|
|
118
129
|
---
|
|
119
130
|
|
|
120
|
-
##
|
|
131
|
+
## 为什么不用 OpenMemory、Cursor Memories、Mem0 或 Zep?
|
|
121
132
|
|
|
122
|
-
| | **MeMesh** | Mem0 | Zep |
|
|
123
|
-
|
|
124
|
-
|
|
|
125
|
-
|
|
|
126
|
-
| **存储方式** |
|
|
127
|
-
|
|
|
128
|
-
|
|
|
129
|
-
|
|
|
130
|
-
|
|
|
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 钩子** | 一级支持 | MCP 工具 | 否 | MCP 工具 | 不针对 Claude Code |
|
|
140
|
+
| **仪表板** | 内置 | 内置 | Cursor 设置 | 平台仪表板 | 平台/图形工具 |
|
|
141
|
+
| **权衡** | 简洁的本地方案,不适用企业规模 | 更宽泛的本地应用足迹 | 绑定 Cursor | 强大的托管平台,本地化程度低 | 强大的图模型,配置更复杂 |
|
|
131
142
|
|
|
132
|
-
**MeMesh
|
|
143
|
+
**MeMesh 用即插即用的本地设置、可检视的存储和编码代理工作流钩子,换取企业级托管基础设施。**
|
|
133
144
|
|
|
134
145
|
---
|
|
135
146
|
|
|
136
|
-
##
|
|
147
|
+
## Claude Code 中的自动化流程
|
|
137
148
|
|
|
138
|
-
|
|
149
|
+
你不需要手动记住一切。MeMesh 有 **6 个钩子**在你工作时自动捕获和注入知识:
|
|
139
150
|
|
|
140
|
-
|
|
|
141
|
-
|
|
142
|
-
|
|
|
143
|
-
|
|
|
144
|
-
|
|
|
145
|
-
|
|
|
151
|
+
| 触发条件 | MeMesh 的动作 |
|
|
152
|
+
|---------|------------|
|
|
153
|
+
| **每个会话开始** | 加载最相关的记忆 + 来自过去经验教训的主动警告 + 代理编排横幅 |
|
|
154
|
+
| **编辑文件前** | 回忆与该文件或项目相关的记忆,然后 Claude 才开始写代码 |
|
|
155
|
+
| **执行 bash 命令前** | 推动 Claude 派遣高可验证性命令(测试、构建、lint、迁移、部署、基准测试)作为后台代理 |
|
|
156
|
+
| **每次 `git commit` 后** | 记录你的改动,附带 diff 统计 |
|
|
157
|
+
| **Claude 停止时** | 捕获编辑过的文件、修复的错误、自动从失败中生成结构化经验教训 |
|
|
158
|
+
| **上下文压缩前** | 在知识被上下文限制吞没前保存 |
|
|
146
159
|
|
|
147
160
|
> **随时退出:** `export MEMESH_AUTO_CAPTURE=false`
|
|
148
161
|
|
|
@@ -150,70 +163,85 @@ memesh export-schema \
|
|
|
150
163
|
|
|
151
164
|
## 仪表板
|
|
152
165
|
|
|
153
|
-
7
|
|
166
|
+
7 个标签页,11 种语言,零外部依赖。服务器运行时访问 `http://localhost:3737/dashboard`。
|
|
154
167
|
|
|
155
|
-
| 标签页 |
|
|
156
|
-
|
|
157
|
-
|
|
|
158
|
-
|
|
|
159
|
-
|
|
|
160
|
-
|
|
|
161
|
-
|
|
|
162
|
-
|
|
|
163
|
-
|
|
|
168
|
+
| 标签页 | 你看到什么 |
|
|
169
|
+
|--------|---------|
|
|
170
|
+
| **搜索** | 全文 + 向量相似度搜索,覆盖所有记忆 |
|
|
171
|
+
| **浏览** | 所有实体的分页列表,支持归档/恢复 |
|
|
172
|
+
| **分析** | 内存健康评分(0-100)、30 天时间线、价值指标、知识覆盖、清理建议、你的工作模式 |
|
|
173
|
+
| **知识图** | 交互式力导向图,支持类型过滤、搜索、中心模式、新近度热力图 |
|
|
174
|
+
| **经验教训** | 来自过去失败的结构化经验教训(错误、根本原因、修复、预防) |
|
|
175
|
+
| **管理** | 归档和恢复实体 |
|
|
176
|
+
| **设置** | LLM 提供商配置、即时语言切换器 |
|
|
164
177
|
|
|
165
178
|
---
|
|
166
179
|
|
|
167
|
-
##
|
|
180
|
+
## 聪慧功能
|
|
168
181
|
|
|
169
|
-
**🧠 智能搜索** —
|
|
182
|
+
**🧠 智能搜索** — 搜索"登录安全"会找到"OAuth PKCE"相关的记忆。MeMesh 用你配置的 LLM 扩展查询。
|
|
183
|
+
|
|
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
|
+
---
|
|
170
194
|
|
|
171
|
-
|
|
195
|
+
## 使用示例
|
|
172
196
|
|
|
173
|
-
|
|
197
|
+
> "MeMesh 记得我们三周前选择了 PKCE 而不是隐式流。我再次问 Claude 有关身份验证的问题时,它已经知道——无需重新解释。"
|
|
198
|
+
> — **独立开发者,正在构建 SaaS**
|
|
174
199
|
|
|
175
|
-
|
|
200
|
+
> "我们每周五导出团队的内存,周一导入。每个人的 Claude 周一开始时都知道团队上周学到了什么。"
|
|
201
|
+
> — **3 人初创公司,共享知识库**
|
|
176
202
|
|
|
177
|
-
|
|
203
|
+
> "仪表板显示我 90% 的记忆是自动生成的会话日志。我开始有意使用 `remember` 记录架构决策。彻底改变了游戏规则。"
|
|
204
|
+
> — **发现分析标签页的开发者**
|
|
178
205
|
|
|
179
206
|
---
|
|
180
207
|
|
|
181
|
-
##
|
|
208
|
+
## 解锁智能模式(可选)
|
|
182
209
|
|
|
183
|
-
MeMesh
|
|
210
|
+
MeMesh 默认离线工作。仅当你需要查询扩展、更聪慧的提取和压缩时,才添加 LLM API 密钥:
|
|
184
211
|
|
|
185
212
|
```bash
|
|
186
213
|
memesh config set llm.provider anthropic
|
|
187
214
|
memesh config set llm.api-key sk-ant-...
|
|
188
215
|
```
|
|
189
216
|
|
|
190
|
-
|
|
217
|
+
或使用仪表板设置标签页(可视化配置):
|
|
191
218
|
|
|
192
219
|
```bash
|
|
193
220
|
memesh # 打开仪表板 → 设置标签页
|
|
194
221
|
```
|
|
195
222
|
|
|
196
|
-
| |
|
|
223
|
+
| | 级别 0(默认) | 级别 1(智能模式) |
|
|
197
224
|
|---|---|---|
|
|
198
|
-
| **搜索** | FTS5
|
|
199
|
-
| **自动捕获** |
|
|
200
|
-
| **压缩** |
|
|
201
|
-
|
|
|
225
|
+
| **搜索** | FTS5 关键词匹配 | + LLM 查询扩展(~97% 召回率) |
|
|
226
|
+
| **自动捕获** | 基于规则的模式 | + LLM 提取决策和经验教训 |
|
|
227
|
+
| **压缩** | 不可用 | `consolidate` 压缩冗长的记忆 |
|
|
228
|
+
| **成本** | 免费,无需 API 密钥 | ~$0.0001 每次搜索(Haiku) |
|
|
202
229
|
|
|
203
230
|
---
|
|
204
231
|
|
|
205
|
-
## 全部
|
|
232
|
+
## 全部 9 个内存工具
|
|
206
233
|
|
|
207
|
-
| 工具 |
|
|
208
|
-
|
|
209
|
-
| `remember` |
|
|
210
|
-
| `recall` |
|
|
211
|
-
| `forget` |
|
|
234
|
+
| 工具 | 它做什么 |
|
|
235
|
+
|------|--------|
|
|
236
|
+
| `remember` | 存储知识,附带观察、关系和标签 |
|
|
237
|
+
| `recall` | 智能搜索,多因素评分和 LLM 查询扩展 |
|
|
238
|
+
| `forget` | 软归档(永不删除)或移除特定观察 |
|
|
212
239
|
| `consolidate` | LLM 驱动的冗长记忆压缩 |
|
|
213
|
-
| `export` |
|
|
214
|
-
| `import` |
|
|
215
|
-
| `learn` |
|
|
216
|
-
| `user_patterns` |
|
|
240
|
+
| `export` | 在项目或团队成员间共享内存,格式为 JSON |
|
|
241
|
+
| `import` | 导入内存,支持合并策略(跳过 / 覆盖 / 追加) |
|
|
242
|
+
| `learn` | 从错误中记录结构化经验教训(错误、根本原因、修复、预防) |
|
|
243
|
+
| `user_patterns` | 分析你的工作模式——日程、工具、优势、学习领域 |
|
|
244
|
+
| `verify_agent_work` | 为后台代理工作保存验证报告;对照 `git diff` 验证声称的文件改动 |
|
|
217
245
|
|
|
218
246
|
---
|
|
219
247
|
|
|
@@ -234,7 +262,7 @@ memesh # 打开仪表板 → 设置标签页
|
|
|
234
262
|
(~/.memesh/knowledge-graph.db)
|
|
235
263
|
```
|
|
236
264
|
|
|
237
|
-
|
|
265
|
+
核心是框架无关的。相同逻辑从终端、HTTP 或 MCP 运行。
|
|
238
266
|
|
|
239
267
|
---
|
|
240
268
|
|
|
@@ -243,7 +271,8 @@ memesh # 打开仪表板 → 设置标签页
|
|
|
243
271
|
```bash
|
|
244
272
|
git clone https://github.com/PCIRCLE-AI/memesh-llm-memory
|
|
245
273
|
cd memesh-llm-memory && npm install && npm run build
|
|
246
|
-
npm test
|
|
274
|
+
npm test # 489 个测试
|
|
275
|
+
npm run test:e2e-dashboard
|
|
247
276
|
```
|
|
248
277
|
|
|
249
278
|
仪表板:`cd dashboard && npm install && npm run dev`
|