@wemind/cli 0.0.0-stage → 1.0.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.md +86 -2
- package/dist/cli.js +4382 -0
- package/dist/cli.js.map +1 -0
- package/package.json +53 -4
package/README.md
CHANGED
|
@@ -1,3 +1,87 @@
|
|
|
1
|
-
#
|
|
1
|
+
# @wemind/cli — 命令 `wemind`
|
|
2
2
|
|
|
3
|
-
|
|
3
|
+
> **你的 AI 大脑,挂在微信上。** 常驻微信 Bot 守护进程:自己长轮询 iLink 收消息 → 调常驻 **ACP 大脑**生成回复 → 自动回发。支持**远程任务(worker)**、**多账号**、收发图/文件。
|
|
4
|
+
|
|
5
|
+
[WeMind](https://github.com/imwangpan/WeMind) monorepo 的完整应用包;只依赖内核 `@wemind/wechat-ilink-core`(构建时已内联进单文件产物),不碰 MCP 层,可独立运行。
|
|
6
|
+
|
|
7
|
+
> **包名 `@wemind/cli` ≠ 命令名 `wemind`。** 与 `@modelcontextprotocol/*`、`@angular/cli`、`@openai/codex` 的惯例一致:包收在 scope 下,命令保持短名。因为包名与 bin 名不同,**`npx` 不会自动挑 bin,必须写全包名**。
|
|
8
|
+
|
|
9
|
+
## 安装
|
|
10
|
+
|
|
11
|
+
```bash
|
|
12
|
+
npm i -g @wemind/cli # 安装后得到 wemind 命令
|
|
13
|
+
wemind version # → wemind 1.0.0 (@wemind/cli, node 24.x, win32-x64)
|
|
14
|
+
|
|
15
|
+
# 不安装、一次性运行(注意是包名 @wemind/cli,不是 wemind)
|
|
16
|
+
npx -y @wemind/cli list
|
|
17
|
+
```
|
|
18
|
+
|
|
19
|
+
要求:**Node.js >= 20**;想让它真的会「思考」,需要 PATH 上有一个支持 **ACP** 的 agent CLI(`kiro-cli` / `opencode` / 桌面端 `dsh` 等;未配置时自动探测 `kiro → opencode → gemini → deepseek`)。
|
|
20
|
+
|
|
21
|
+
## 三步上手
|
|
22
|
+
|
|
23
|
+
```bash
|
|
24
|
+
wemind login --label 主号 --start # ① 终端里出二维码,微信扫码 → 自动归档 + 启动常驻
|
|
25
|
+
wemind list # ② 看账号与运行状态
|
|
26
|
+
wemind brain check # ③ 验证大脑能说 ACP(initialize + session/new 握手)
|
|
27
|
+
```
|
|
28
|
+
|
|
29
|
+
之后在微信里随便发一句话,就该收到回复。日志在 `~/.wemind/<账号>/daemon.log`。
|
|
30
|
+
|
|
31
|
+
## 常用命令
|
|
32
|
+
|
|
33
|
+
| 命令 | 作用 |
|
|
34
|
+
| --- | --- |
|
|
35
|
+
| `wemind login [--label 名] [--start] [--runner builtin\|pm2]` | 扫码登录;`--start` 顺带拉起常驻 |
|
|
36
|
+
| `wemind list` | 账号、别名、运行状态、当前大脑 |
|
|
37
|
+
| `wemind start / stop <key\|label>` | 启停某账号的常驻 |
|
|
38
|
+
| `wemind brain [show\|set\|unset\|check]` | 查看/切换/清除/自检大脑(`brain set deepseek --bin "<绝对路径>" --restart`) |
|
|
39
|
+
| `wemind task "<描述>" [--cwd 目录]` | 本地派发远程任务给 worker |
|
|
40
|
+
| `wemind task-status / task-reply / task-stop` | 任务状态、注入续跑(`task-reply 继续`)、结束 |
|
|
41
|
+
| `wemind allow / revoke / allowlist` | 授权管理(谁能驱动这个 bot) |
|
|
42
|
+
| `wemind logout / delete / label / set-default` | 账号运维 |
|
|
43
|
+
| `wemind version` / `wemind help` | 版本、完整帮助 |
|
|
44
|
+
|
|
45
|
+
`key` = 由微信 botId 派生的目录名;`label` = 人类可读别名,多数命令两者都能用。
|
|
46
|
+
|
|
47
|
+
## 常驻怎么跑
|
|
48
|
+
|
|
49
|
+
`wemind start` 默认用**自带的跨平台看门狗**(builtin):detached 拉起 `wemind _watchdog`,它循环执行 `wemind daemon`,进程退出 5 秒后自动重拉;单实例靠 `wrapper.pid` + 进程身份校验。也可以用 `--runner pm2`(或 `WEMIND_RUNNER=pm2`)交给 pm2。
|
|
50
|
+
|
|
51
|
+
开机自启:让系统在登录时执行一次 `wemind start <账号>` 即可(Windows 计划任务/启动文件夹、Linux systemd user service、macOS launchd)。**同一账号只用一套常驻方案**——两种 runner 同时跑会抢同一个 bot token。
|
|
52
|
+
|
|
53
|
+
## 数据与安全
|
|
54
|
+
|
|
55
|
+
- 所有状态在 `~/.wemind/<账号>/`(可用 `WEMIND_HOME` 改根目录):`account.json` 登录凭证、`state.json` 游标、`allowFrom.json` 授权清单、`brain-home/` 大脑沙箱、`daemon.log` 日志。
|
|
56
|
+
- ⚠️ **daemon 用 `--trust-all-tools`**:能给这个 bot 发消息的人,即可让大脑在本机执行任意工具(shell / 写文件)。唯一安全闸是**发件人授权(allowFrom)**:扫码登录者自动授权,**勿清空**。
|
|
57
|
+
- `account.json` 里 bot token 是明文(POSIX 上 chmod 600;Windows 请用目录权限或磁盘加密)。
|
|
58
|
+
- 同一个 bot token **只能有一个消费者**:`wemind` daemon 与 `@wemind/wechat-mcp` 二选一,否则互相抢消息。
|
|
59
|
+
|
|
60
|
+
## 环境变量(常用)
|
|
61
|
+
|
|
62
|
+
| 变量 | 含义 |
|
|
63
|
+
| --- | --- |
|
|
64
|
+
| `WEMIND_HOME` | 数据根目录,默认 `~/.wemind` |
|
|
65
|
+
| `WECHAT_ACCOUNT` / `WECHAT_DATA_DIR` | 指定账号 / 指定完整数据目录(多账号隔离) |
|
|
66
|
+
| `WEMIND_RUNNER` | `builtin`(默认)或 `pm2` |
|
|
67
|
+
| `WEMIND_BRAIN` / `WEMIND_BRAIN_BIN` / `WEMIND_BRAIN_ARGS` | 一次性覆盖大脑选择(持久化请用 `wemind brain set`) |
|
|
68
|
+
| `WEMIND_ACP_AUTO_ALLOW=1` | 放行 ACP agent 的一次性权限请求(默认为拒绝) |
|
|
69
|
+
|
|
70
|
+
## 与 MCP 形态的区别
|
|
71
|
+
|
|
72
|
+
| | `@wemind/cli`(命令 `wemind`) | `@wemind/wechat-mcp` |
|
|
73
|
+
| --- | --- | --- |
|
|
74
|
+
| 驱动 | 自己常驻、自己调大脑 | 随 MCP 客户端生命周期,被动调工具 |
|
|
75
|
+
| 大脑 | 独立 ACP agent 进程 | 就是 MCP 客户端背后的模型 |
|
|
76
|
+
| 能力 | 收发图/文件、远程任务、多账号、7×24 | 文本收发为主 |
|
|
77
|
+
|
|
78
|
+
## 文档
|
|
79
|
+
|
|
80
|
+
- 完整文档:<https://github.com/imwangpan/WeMind>
|
|
81
|
+
- AI 协作者入口:[AGENTS.md](https://github.com/imwangpan/WeMind/blob/main/AGENTS.md)
|
|
82
|
+
- 接入其它 ACP agent:[docs/接入其它-ACP-Agent.md](https://github.com/imwangpan/WeMind/blob/main/docs/接入其它-ACP-Agent.md)
|
|
83
|
+
- Daemon 常驻原理:[docs/repowiki/10-部署与运维.md](https://github.com/imwangpan/WeMind/blob/main/docs/repowiki/10-部署与运维.md)
|
|
84
|
+
|
|
85
|
+
## License
|
|
86
|
+
|
|
87
|
+
MIT
|