memi-agent 1.0.0 → 1.0.1
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.md +212 -90
- package/memi-agent.js +1 -1
- package/package.json +23 -4
package/README.md
CHANGED
|
@@ -1,90 +1,212 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
memi
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
`
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
1
|
+
|
|
2
|
+
<p align="center">
|
|
3
|
+
<pre style="font-size: 12px; line-height: 1.2;">
|
|
4
|
+
__ __ ___ __ __ ___
|
|
5
|
+
| \/ || __|| \/ ||_ _|
|
|
6
|
+
| |\/| || _| | |\/| | | |
|
|
7
|
+
|_| |_||___||_| |_||___|
|
|
8
|
+
</pre>
|
|
9
|
+
</p>
|
|
10
|
+
|
|
11
|
+
<p align="center">
|
|
12
|
+
<strong>你的本地 AI 助手 — 终端、网页、聊天软件,无处不在。</strong>
|
|
13
|
+
</p>
|
|
14
|
+
|
|
15
|
+
<p align="center">
|
|
16
|
+
<a href="https://www.npmjs.com/package/memi-agent"><img src="https://img.shields.io/npm/v/memi-agent?style=for-the-badge&color=6366f1" alt="npm version"></a>
|
|
17
|
+
<a href="https://github.com/memi-ai/memi/blob/main/LICENSE"><img src="https://img.shields.io/badge/License-MIT-blue.svg?style=for-the-badge" alt="MIT License"></a>
|
|
18
|
+
<a href="https://nodejs.org"><img src="https://img.shields.io/badge/Node-18+-green.svg?style=for-the-badge" alt="Node.js 18+"></a>
|
|
19
|
+
</p>
|
|
20
|
+
|
|
21
|
+
**Memi** 是一个运行在你本机的个人 AI 助手。它在终端里跟你聊天,在网页上给你看板,还打通了 Telegram / 飞书 / 企业微信 / QQ —— 所有渠道共享同一个会话和记忆。
|
|
22
|
+
|
|
23
|
+
支持 80+ AI 模型商(DeepSeek / OpenAI / Anthropic / 通义千问 / Moonshot / 智谱 …),自带 60+ 工具,兼容 ClawHub 技能生态。
|
|
24
|
+
|
|
25
|
+
---
|
|
26
|
+
|
|
27
|
+
## 快速开始
|
|
28
|
+
|
|
29
|
+
```bash
|
|
30
|
+
npm install -g memi-agent
|
|
31
|
+
memi onboard
|
|
32
|
+
```
|
|
33
|
+
或
|
|
34
|
+
```bash
|
|
35
|
+
npm i -g memi-agent
|
|
36
|
+
```
|
|
37
|
+
|
|
38
|
+
`memi onboard` 会引导你完成模型配置、工作区初始化、渠道接入,**macOS / Linux / Windows** 都支持。
|
|
39
|
+
|
|
40
|
+
启动后:
|
|
41
|
+
|
|
42
|
+
```bash
|
|
43
|
+
memi chat # 终端对话
|
|
44
|
+
memi dashboard # 打开网页控制台 → http://localhost:3001/dashboard
|
|
45
|
+
memi status # 查看当前状态
|
|
46
|
+
```
|
|
47
|
+
|
|
48
|
+
---
|
|
49
|
+
|
|
50
|
+
## 亮点
|
|
51
|
+
|
|
52
|
+
- **双界面** — 终端 CLI + 网页 Dashboard,同一个后端,无缝切换。
|
|
53
|
+
- **多渠道收件箱** — Telegram、飞书/Lark、企业微信、QQ,消息统一路由到 Agent 处理。
|
|
54
|
+
- **60+ 工具** — 文件读写、命令执行、网络搜索、图片生成、HTTP 请求、系统信息、RAG 搜索、网页抓取、定时提醒……
|
|
55
|
+
- **ClawHub 兼容** — 直接安装 OpenClaw 社区的 Skill,`clawhub install` 即装即用。
|
|
56
|
+
- **多 Agent 协作** — `@agent` 语法切换/协作,每个 Agent 可以有独立的 system prompt 和模型。
|
|
57
|
+
- **12 步新手引导** — 交互式 onboard,配模型、装守护进程、接渠道,一条龙。
|
|
58
|
+
- **系统守护进程** — schtasks (Windows) / launchd (macOS) / systemd (Linux) 一键安装,开机自启。
|
|
59
|
+
- **网关安全** — `MEMI_GATEWAY_TOKEN` 鉴权,DM 白名单,避免未授权访问。
|
|
60
|
+
- **工作区文档** — SOUL.md / MEMORY.md / USER.md / IDENTITY.md / TOOLS.md 每日注入 system prompt,保持记忆连续性。
|
|
61
|
+
- **图片管道** — 文生图 → 视觉审查 → 自动重试,直到满意。
|
|
62
|
+
- **会话管理** — 保存/加载/重命名会话,支持 `/stats` 统计 Token 用量和费用。
|
|
63
|
+
- **80+ 模型商** — 兼容 OpenAI API 格式的所有提供商,一键切换。
|
|
64
|
+
|
|
65
|
+
---
|
|
66
|
+
|
|
67
|
+
## 渠道支持
|
|
68
|
+
|
|
69
|
+
| 渠道 | 接入方式 | 配置命令 |
|
|
70
|
+
|---|---|---|
|
|
71
|
+
| Telegram | Webhook | `memi telegram <token>` |
|
|
72
|
+
| 飞书 / Lark | Webhook + WebSocket 长连接 | `memi feishu <token>` |
|
|
73
|
+
| 企业微信 | Webhook | `memi wecom <key>` |
|
|
74
|
+
| QQ | Webhook (go-cqhttp) | `memi qq <token>` |
|
|
75
|
+
|
|
76
|
+
所有渠道共享同一个 Agent 会话,在 Dashboard 里可以实时看到每条消息和工具调用。
|
|
77
|
+
|
|
78
|
+
> **安全提示**:对外暴露前务必设置 `MEMI_GATEWAY_TOKEN` 环境变量,并配置渠道白名单。
|
|
79
|
+
|
|
80
|
+
---
|
|
81
|
+
|
|
82
|
+
## 命令参考
|
|
83
|
+
|
|
84
|
+
### CLI 命令
|
|
85
|
+
|
|
86
|
+
| 命令 | 说明 |
|
|
87
|
+
|---|---|
|
|
88
|
+
| `memi chat` | 进入交互对话 |
|
|
89
|
+
| `memi onboard` | 12 步新手引导(模型/守护/渠道) |
|
|
90
|
+
| `memi dashboard` | 打开网页控制台 |
|
|
91
|
+
| `memi status` | 查看模型、端点、会话数、技能数 |
|
|
92
|
+
| `memi skills` | 列出已安装技能 |
|
|
93
|
+
| `memi sessions` | 列出所有会话 |
|
|
94
|
+
| `memi doctor` | 系统诊断(Node 版本、API 连通性、服务状态) |
|
|
95
|
+
| `memi agent` | 显示当前 Agent 信息 |
|
|
96
|
+
| `memi config` | 查看配置;`memi config edit` 重新配置 |
|
|
97
|
+
| `memi update` | 检查 GitHub Release 更新 |
|
|
98
|
+
| `memi server start` | 启动后端服务 |
|
|
99
|
+
| `memi daemon install` | 安装系统守护进程(开机自启) |
|
|
100
|
+
| `memi version` | 显示版本号 |
|
|
101
|
+
|
|
102
|
+
### 对话内斜杠命令
|
|
103
|
+
|
|
104
|
+
| 命令 | 说明 |
|
|
105
|
+
|---|---|
|
|
106
|
+
| `/help` | 帮助信息 |
|
|
107
|
+
| `/history` | 查看对话历史 |
|
|
108
|
+
| `/sessions` | 会话列表 |
|
|
109
|
+
| `/new` | 新建会话 |
|
|
110
|
+
| `/load <name>` | 加载会话 |
|
|
111
|
+
| `/save` | 保存当前会话 |
|
|
112
|
+
| `/rename <name>` | 重命名会话 |
|
|
113
|
+
| `/tools` | 工具调用记录 |
|
|
114
|
+
| `/stats` | Token 用量与费用估算 |
|
|
115
|
+
| `/balance` | API 余额查询 |
|
|
116
|
+
| `/think off\|low\|medium\|high\|max` | 思考强度 |
|
|
117
|
+
| `/currency` | 切换币种 (¥/$) |
|
|
118
|
+
| `/clear` | 清空当前会话 |
|
|
119
|
+
| `/agent list\|use\|add` | 多 Agent 管理 |
|
|
120
|
+
| `/exit` | 退出对话 |
|
|
121
|
+
|
|
122
|
+
---
|
|
123
|
+
|
|
124
|
+
## 配置
|
|
125
|
+
|
|
126
|
+
最小配置(`memi-config/config.json`):
|
|
127
|
+
|
|
128
|
+
```json5
|
|
129
|
+
{
|
|
130
|
+
endpoint: "https://api.deepseek.com/v1",
|
|
131
|
+
apiKey: "sk-...",
|
|
132
|
+
model: "deepseek-chat",
|
|
133
|
+
port: 3001
|
|
134
|
+
}
|
|
135
|
+
```
|
|
136
|
+
|
|
137
|
+
`memi onboard` 会交互式生成完整配置,包括渠道 Token、技能目录、工作区路径等。
|
|
138
|
+
|
|
139
|
+
---
|
|
140
|
+
|
|
141
|
+
## ClawHub 技能
|
|
142
|
+
|
|
143
|
+
Memi 兼容 [ClawHub](https://clawhub.ai) 技能生态:
|
|
144
|
+
|
|
145
|
+
```bash
|
|
146
|
+
npm install -g clawhub
|
|
147
|
+
clawhub install weather # 安装天气技能
|
|
148
|
+
memi skills # 自动识别并加载
|
|
149
|
+
```
|
|
150
|
+
|
|
151
|
+
也可以在对话中用 `/import_skill <url>` 从 GitHub 直接导入。
|
|
152
|
+
|
|
153
|
+
---
|
|
154
|
+
|
|
155
|
+
## 工作区文档
|
|
156
|
+
|
|
157
|
+
这些文件放在 `memi-config/workspace/`,每天自动注入 Agent 的 system prompt:
|
|
158
|
+
|
|
159
|
+
| 文件 | 作用 |
|
|
160
|
+
|---|---|
|
|
161
|
+
| `SOUL.md` | Agent 人格定义 |
|
|
162
|
+
| `MEMORY.md` | 长期记忆 |
|
|
163
|
+
| `USER.md` | 用户偏好 |
|
|
164
|
+
| `IDENTITY.md` | 身份设定 |
|
|
165
|
+
| `TOOLS.md` | 工具使用说明 |
|
|
166
|
+
|
|
167
|
+
---
|
|
168
|
+
|
|
169
|
+
## 从源码运行
|
|
170
|
+
|
|
171
|
+
```bash
|
|
172
|
+
git clone https://github.com/memi-ai/memi.git
|
|
173
|
+
cd memi
|
|
174
|
+
|
|
175
|
+
npm install --prefix memi-server
|
|
176
|
+
|
|
177
|
+
# 启动后端
|
|
178
|
+
npm start --prefix memi-server
|
|
179
|
+
|
|
180
|
+
# 新开终端,启动 CLI
|
|
181
|
+
node memi-agent.js chat
|
|
182
|
+
```
|
|
183
|
+
|
|
184
|
+
---
|
|
185
|
+
|
|
186
|
+
## 技术栈
|
|
187
|
+
|
|
188
|
+
| 层 | 技术 |
|
|
189
|
+
|---|---|
|
|
190
|
+
| CLI | Node.js (CommonJS) |
|
|
191
|
+
| 后端 | Express + WebSocket |
|
|
192
|
+
| 前端 | React (memi-client) + 原生 HTML Dashboard |
|
|
193
|
+
| AI 协议 | OpenAI-compatible `/v1/chat/completions` |
|
|
194
|
+
| 图片 | pollinations.ai + 视觉审查循环 |
|
|
195
|
+
| 平台 | Windows / macOS / Linux |
|
|
196
|
+
|
|
197
|
+
---
|
|
198
|
+
|
|
199
|
+
## Star History
|
|
200
|
+
|
|
201
|
+
[](https://www.star-history.com/#memi-ai/memi&type=date&legend=top-left)
|
|
202
|
+
|
|
203
|
+
---
|
|
204
|
+
|
|
205
|
+
## 社区
|
|
206
|
+
|
|
207
|
+
- Issues & PR: [github.com/memi-ai/memi](https://github.com/memi-ai/memi)
|
|
208
|
+
- AI/vibe-coded PRs welcome! 🤖
|
|
209
|
+
|
|
210
|
+
---
|
|
211
|
+
|
|
212
|
+
MIT © 2025 Memi
|
package/memi-agent.js
CHANGED
|
@@ -1079,7 +1079,7 @@ const cmd = process.argv[2] || "chat";
|
|
|
1079
1079
|
case "update":
|
|
1080
1080
|
out(A.g + " 检查更新... ");
|
|
1081
1081
|
try {
|
|
1082
|
-
const r = await fetch("https://api.github.com/repos/
|
|
1082
|
+
const r = await fetch("https://api.github.com/repos/memi-ai/memi/releases/latest", { signal: AbortSignal.timeout(8000) });
|
|
1083
1083
|
if (!r.ok) throw new Error("HTTP " + r.status);
|
|
1084
1084
|
const d = await r.json();
|
|
1085
1085
|
const latest = (d.tag_name || "").replace(/^v/, "");
|
package/package.json
CHANGED
|
@@ -1,8 +1,10 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "memi-agent",
|
|
3
|
-
"version": "1.0.
|
|
3
|
+
"version": "1.0.1",
|
|
4
4
|
"description": "本地 AI 助手 — 终端 + 网页双模式,63 个工具,80+ 提供商,4 个消息渠道",
|
|
5
|
-
"bin": {
|
|
5
|
+
"bin": {
|
|
6
|
+
"memi": "memi-agent.js"
|
|
7
|
+
},
|
|
6
8
|
"files": [
|
|
7
9
|
"memi-agent.js",
|
|
8
10
|
"README.md",
|
|
@@ -21,7 +23,24 @@
|
|
|
21
23
|
"scripts": {
|
|
22
24
|
"postinstall": "cd memi-server && npm install --omit=dev"
|
|
23
25
|
},
|
|
24
|
-
"keywords": [
|
|
26
|
+
"keywords": [
|
|
27
|
+
"ai",
|
|
28
|
+
"agent",
|
|
29
|
+
"cli",
|
|
30
|
+
"llm",
|
|
31
|
+
"deepseek",
|
|
32
|
+
"openai"
|
|
33
|
+
],
|
|
25
34
|
"license": "MIT",
|
|
26
|
-
"
|
|
35
|
+
"repository": {
|
|
36
|
+
"type": "git",
|
|
37
|
+
"url": "https://github.com/memi-ai/memi.git"
|
|
38
|
+
},
|
|
39
|
+
"bugs": {
|
|
40
|
+
"url": "https://github.com/memi-ai/memi/issues"
|
|
41
|
+
},
|
|
42
|
+
"homepage": "https://github.com/memi-ai/memi#readme",
|
|
43
|
+
"engines": {
|
|
44
|
+
"node": ">=18"
|
|
45
|
+
}
|
|
27
46
|
}
|