xiaozuoassistant 0.2.20 → 0.2.22
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 +119 -119
- package/bin/cli.js +896 -896
- package/config.json +41 -41
- package/dist/client/assets/{browser-ponyfill-hr4BsUsr.js → browser-ponyfill-Bcpejndl.js} +1 -1
- package/dist/client/assets/index-BfvHy-SS.js +201 -0
- package/dist/client/favicon.svg +4 -4
- package/dist/client/index.html +13 -13
- package/dist/client/locales/en/translation.json +110 -110
- package/dist/client/locales/zh/translation.json +112 -112
- package/dist/server/agents/office.js +5 -5
- package/dist/server/channels/feishu.js +18 -3
- package/dist/server/config/prompts.js +11 -11
- package/dist/server/core/brain.js +2 -2
- package/dist/server/core/memories/manager.js +9 -9
- package/dist/server/core/memories/short-term.js +3 -1
- package/dist/server/core/memories/structured.js +93 -93
- package/dist/server/core/task-queue.js +4 -4
- package/dist/server/index.js +18 -2
- package/package.json +116 -116
- package/public/favicon.svg +4 -4
- package/public/locales/en/translation.json +110 -110
- package/public/locales/zh/translation.json +112 -112
- package/scripts/init-app-home.cjs +43 -43
- package/dist/client/assets/index-Bn8oA3Sc.js +0 -201
package/README.md
CHANGED
|
@@ -1,119 +1,119 @@
|
|
|
1
|
-
# xiaozuoAssistant(小左助理)
|
|
2
|
-
|
|
3
|
-
xiaozuoAssistant 是一个**本地优先(Local-first)**的个人 AI 助手:提供 Web UI、可扩展的技能/插件体系、以及多通道接入能力,面向办公自动化场景。
|
|
4
|
-
|
|
5
|
-
## 亮点能力
|
|
6
|
-
|
|
7
|
-
- **Web UI + 实时通信**:浏览器访问 `http://localhost:3021`(生产环境)或 `http://localhost:3001`(开发环境),Socket.IO 实时收发消息。
|
|
8
|
-
- **多通道(Channels)**:内置 Web/Terminal,并可按配置启用 Telegram/飞书/钉钉/微信等。
|
|
9
|
-
- **技能(Skills)+ 工具调用**:模型可触发工具调用(OpenAI tools 兼容格式),技能注册表可扩展。
|
|
10
|
-
- **增强型记忆系统(Enhanced Memory)**:
|
|
11
|
-
- **短期记忆**:基于会话的上下文管理。
|
|
12
|
-
- **长期记忆(向量)**:基于 LanceDB 的语义检索,支持自动汇总和维护。
|
|
13
|
-
- **结构化记忆(SQLite)**:存储用户画像、项目信息和结构化事实。
|
|
14
|
-
- **自动归档**:每 3 分钟自动扫描活跃会话,提炼项目信息和通用知识;支持手动触发。
|
|
15
|
-
- **项目与笔记管理**:
|
|
16
|
-
- **项目空间**:管理项目元数据(描述、成员、目录等),为 AI 提供项目上下文(支持多项目关联)。
|
|
17
|
-
- **智能笔记本**:记录笔记和待办事项(Todo),支持关键字自动归档。
|
|
18
|
-
- **插件体系 (Plugins)**:
|
|
19
|
-
- **Plugins 管理中心**:可视化管理所有 AI 能力,支持动态启用/禁用。
|
|
20
|
-
- **第三方插件市场**:支持接入 WPS Office、飞书文档等第三方服务(基于 OAuth 2.0 授权)。
|
|
21
|
-
- **动态加载机制**:根据会话上下文和用户意图,动态加载所需的工具集。
|
|
22
|
-
- **定时任务 (Scheduler)**:
|
|
23
|
-
- **可视化调度**:在设置面板查看和管理系统定时任务(如记忆归档、数据维护)。
|
|
24
|
-
- **手动触发**:支持立即执行维护任务,无需等待定时周期。
|
|
25
|
-
- **更易接入新模型**:统一 LLM(OpenAI 兼容) client 工厂与 provider→baseURL 解析,便于新增 provider。
|
|
26
|
-
- **CLI 管理**:支持 `start/stop/doctor/export/import`,完美支持 Windows/macOS/Linux 跨平台运行。
|
|
27
|
-
|
|
28
|
-
## 系统要求
|
|
29
|
-
|
|
30
|
-
- **操作系统**: macOS, Linux, Windows (WSL 或 PowerShell/CMD)
|
|
31
|
-
- **Node.js**: v18.0.0 或更高版本 (参见 [Node.js 环境安装指南](docs/nodejs_install_guide.md))
|
|
32
|
-
- **Python**: v3.0+ (某些依赖可能需要)
|
|
33
|
-
|
|
34
|
-
## 快速开始(推荐:npm 全局安装)
|
|
35
|
-
|
|
36
|
-
```bash
|
|
37
|
-
npm install -g xiaozuoassistant --registry=https://registry.npmjs.org
|
|
38
|
-
xiaozuoAssistant start
|
|
39
|
-
```
|
|
40
|
-
|
|
41
|
-
然后浏览器打开:`http://localhost:3021`
|
|
42
|
-
|
|
43
|
-
停止服务:
|
|
44
|
-
|
|
45
|
-
```bash
|
|
46
|
-
xiaozuoAssistant stop
|
|
47
|
-
```
|
|
48
|
-
|
|
49
|
-
## 常用命令
|
|
50
|
-
|
|
51
|
-
- 启动服务(后台运行):`xiaozuoAssistant start`
|
|
52
|
-
- 停止服务:`xiaozuoAssistant stop`
|
|
53
|
-
- 环境自检:`xiaozuoAssistant doctor`
|
|
54
|
-
- 数据导出:`xiaozuoAssistant export`
|
|
55
|
-
- 数据导入:`xiaozuoAssistant import`
|
|
56
|
-
|
|
57
|
-
更完整的指令说明见:[指令集(CLI)](docs/commands.md)
|
|
58
|
-
|
|
59
|
-
## 运行模式
|
|
60
|
-
|
|
61
|
-
### 开发模式(前后端联调)
|
|
62
|
-
|
|
63
|
-
端口默认为 `3001`。
|
|
64
|
-
|
|
65
|
-
```bash
|
|
66
|
-
npm install
|
|
67
|
-
npm run dev
|
|
68
|
-
```
|
|
69
|
-
|
|
70
|
-
### 生产模式(构建后运行)
|
|
71
|
-
|
|
72
|
-
端口默认为 `3021`。
|
|
73
|
-
|
|
74
|
-
```bash
|
|
75
|
-
npm install
|
|
76
|
-
npm run build
|
|
77
|
-
node dist/server/index.js
|
|
78
|
-
```
|
|
79
|
-
|
|
80
|
-
> `xiaozuoAssistant start` 本质上也是启动 `dist/server/index.js`,并将日志写入你执行命令的当前目录(CWD)下的 `logs/`。
|
|
81
|
-
|
|
82
|
-
## 工作目录(非常重要)
|
|
83
|
-
|
|
84
|
-
xiaozuoAssistant 将**以你执行命令时所在目录(CWD)**作为工作目录,并在此目录读写:
|
|
85
|
-
|
|
86
|
-
- `config.json`:配置文件
|
|
87
|
-
- `data/sqlite/`:结构化数据(项目、笔记本、用户画像)
|
|
88
|
-
- `data/lancedb/`:向量记忆数据
|
|
89
|
-
- `logs/`:运行日志(包含 `server.pid`)
|
|
90
|
-
|
|
91
|
-
建议为每套数据创建独立目录,例如:
|
|
92
|
-
|
|
93
|
-
```bash
|
|
94
|
-
mkdir -p ~/xiaozuo && cd ~/xiaozuo
|
|
95
|
-
xiaozuoAssistant start
|
|
96
|
-
```
|
|
97
|
-
|
|
98
|
-
## 配置与模型
|
|
99
|
-
|
|
100
|
-
- 你可以通过 `config.json` 或 API (`/api/config`) 更新 LLM 配置。
|
|
101
|
-
- 支持 OpenAI 兼容的多 provider(示例:`openai/deepseek/minimax/doubao/qwen/custom`),并会自动映射 baseURL。
|
|
102
|
-
- **配置项增强**:
|
|
103
|
-
- `maxHistoryMessages`: 控制发送给 LLM 的历史消息数量(默认 20),防止 Context Window 溢出。
|
|
104
|
-
- `maxToolIterations`: 限制工具调用的最大迭代次数(默认 15),防止死循环。
|
|
105
|
-
- 可用环境变量:`XIAOZUO_LLM_API_KEY`(覆盖 `config.json` 中的 key)。
|
|
106
|
-
|
|
107
|
-
## 文档
|
|
108
|
-
|
|
109
|
-
- [Node.js 环境安装指南](docs/nodejs_install_guide.md)
|
|
110
|
-
- [功能特性详解](docs/features.md)
|
|
111
|
-
- [技术架构](docs/technical_architecture.md)
|
|
112
|
-
- [数据库设计](docs/database_schema.md)
|
|
113
|
-
- [API 参考](docs/api_reference.md)
|
|
114
|
-
- [指令集(CLI)](docs/commands.md)
|
|
115
|
-
- [数据迁移指南](docs/migration_guide.md)
|
|
116
|
-
|
|
117
|
-
## 许可证
|
|
118
|
-
|
|
119
|
-
MIT
|
|
1
|
+
# xiaozuoAssistant(小左助理)
|
|
2
|
+
|
|
3
|
+
xiaozuoAssistant 是一个**本地优先(Local-first)**的个人 AI 助手:提供 Web UI、可扩展的技能/插件体系、以及多通道接入能力,面向办公自动化场景。
|
|
4
|
+
|
|
5
|
+
## 亮点能力
|
|
6
|
+
|
|
7
|
+
- **Web UI + 实时通信**:浏览器访问 `http://localhost:3021`(生产环境)或 `http://localhost:3001`(开发环境),Socket.IO 实时收发消息。
|
|
8
|
+
- **多通道(Channels)**:内置 Web/Terminal,并可按配置启用 Telegram/飞书/钉钉/微信等。
|
|
9
|
+
- **技能(Skills)+ 工具调用**:模型可触发工具调用(OpenAI tools 兼容格式),技能注册表可扩展。
|
|
10
|
+
- **增强型记忆系统(Enhanced Memory)**:
|
|
11
|
+
- **短期记忆**:基于会话的上下文管理。
|
|
12
|
+
- **长期记忆(向量)**:基于 LanceDB 的语义检索,支持自动汇总和维护。
|
|
13
|
+
- **结构化记忆(SQLite)**:存储用户画像、项目信息和结构化事实。
|
|
14
|
+
- **自动归档**:每 3 分钟自动扫描活跃会话,提炼项目信息和通用知识;支持手动触发。
|
|
15
|
+
- **项目与笔记管理**:
|
|
16
|
+
- **项目空间**:管理项目元数据(描述、成员、目录等),为 AI 提供项目上下文(支持多项目关联)。
|
|
17
|
+
- **智能笔记本**:记录笔记和待办事项(Todo),支持关键字自动归档。
|
|
18
|
+
- **插件体系 (Plugins)**:
|
|
19
|
+
- **Plugins 管理中心**:可视化管理所有 AI 能力,支持动态启用/禁用。
|
|
20
|
+
- **第三方插件市场**:支持接入 WPS Office、飞书文档等第三方服务(基于 OAuth 2.0 授权)。
|
|
21
|
+
- **动态加载机制**:根据会话上下文和用户意图,动态加载所需的工具集。
|
|
22
|
+
- **定时任务 (Scheduler)**:
|
|
23
|
+
- **可视化调度**:在设置面板查看和管理系统定时任务(如记忆归档、数据维护)。
|
|
24
|
+
- **手动触发**:支持立即执行维护任务,无需等待定时周期。
|
|
25
|
+
- **更易接入新模型**:统一 LLM(OpenAI 兼容) client 工厂与 provider→baseURL 解析,便于新增 provider。
|
|
26
|
+
- **CLI 管理**:支持 `start/stop/doctor/export/import`,完美支持 Windows/macOS/Linux 跨平台运行。
|
|
27
|
+
|
|
28
|
+
## 系统要求
|
|
29
|
+
|
|
30
|
+
- **操作系统**: macOS, Linux, Windows (WSL 或 PowerShell/CMD)
|
|
31
|
+
- **Node.js**: v18.0.0 或更高版本 (参见 [Node.js 环境安装指南](docs/nodejs_install_guide.md))
|
|
32
|
+
- **Python**: v3.0+ (某些依赖可能需要)
|
|
33
|
+
|
|
34
|
+
## 快速开始(推荐:npm 全局安装)
|
|
35
|
+
|
|
36
|
+
```bash
|
|
37
|
+
npm install -g xiaozuoassistant --registry=https://registry.npmjs.org
|
|
38
|
+
xiaozuoAssistant start
|
|
39
|
+
```
|
|
40
|
+
|
|
41
|
+
然后浏览器打开:`http://localhost:3021`
|
|
42
|
+
|
|
43
|
+
停止服务:
|
|
44
|
+
|
|
45
|
+
```bash
|
|
46
|
+
xiaozuoAssistant stop
|
|
47
|
+
```
|
|
48
|
+
|
|
49
|
+
## 常用命令
|
|
50
|
+
|
|
51
|
+
- 启动服务(后台运行):`xiaozuoAssistant start`
|
|
52
|
+
- 停止服务:`xiaozuoAssistant stop`
|
|
53
|
+
- 环境自检:`xiaozuoAssistant doctor`
|
|
54
|
+
- 数据导出:`xiaozuoAssistant export`
|
|
55
|
+
- 数据导入:`xiaozuoAssistant import`
|
|
56
|
+
|
|
57
|
+
更完整的指令说明见:[指令集(CLI)](docs/commands.md)
|
|
58
|
+
|
|
59
|
+
## 运行模式
|
|
60
|
+
|
|
61
|
+
### 开发模式(前后端联调)
|
|
62
|
+
|
|
63
|
+
端口默认为 `3001`。
|
|
64
|
+
|
|
65
|
+
```bash
|
|
66
|
+
npm install
|
|
67
|
+
npm run dev
|
|
68
|
+
```
|
|
69
|
+
|
|
70
|
+
### 生产模式(构建后运行)
|
|
71
|
+
|
|
72
|
+
端口默认为 `3021`。
|
|
73
|
+
|
|
74
|
+
```bash
|
|
75
|
+
npm install
|
|
76
|
+
npm run build
|
|
77
|
+
node dist/server/index.js
|
|
78
|
+
```
|
|
79
|
+
|
|
80
|
+
> `xiaozuoAssistant start` 本质上也是启动 `dist/server/index.js`,并将日志写入你执行命令的当前目录(CWD)下的 `logs/`。
|
|
81
|
+
|
|
82
|
+
## 工作目录(非常重要)
|
|
83
|
+
|
|
84
|
+
xiaozuoAssistant 将**以你执行命令时所在目录(CWD)**作为工作目录,并在此目录读写:
|
|
85
|
+
|
|
86
|
+
- `config.json`:配置文件
|
|
87
|
+
- `data/sqlite/`:结构化数据(项目、笔记本、用户画像)
|
|
88
|
+
- `data/lancedb/`:向量记忆数据
|
|
89
|
+
- `logs/`:运行日志(包含 `server.pid`)
|
|
90
|
+
|
|
91
|
+
建议为每套数据创建独立目录,例如:
|
|
92
|
+
|
|
93
|
+
```bash
|
|
94
|
+
mkdir -p ~/xiaozuo && cd ~/xiaozuo
|
|
95
|
+
xiaozuoAssistant start
|
|
96
|
+
```
|
|
97
|
+
|
|
98
|
+
## 配置与模型
|
|
99
|
+
|
|
100
|
+
- 你可以通过 `config.json` 或 API (`/api/config`) 更新 LLM 配置。
|
|
101
|
+
- 支持 OpenAI 兼容的多 provider(示例:`openai/deepseek/minimax/doubao/qwen/custom`),并会自动映射 baseURL。
|
|
102
|
+
- **配置项增强**:
|
|
103
|
+
- `maxHistoryMessages`: 控制发送给 LLM 的历史消息数量(默认 20),防止 Context Window 溢出。
|
|
104
|
+
- `maxToolIterations`: 限制工具调用的最大迭代次数(默认 15),防止死循环。
|
|
105
|
+
- 可用环境变量:`XIAOZUO_LLM_API_KEY`(覆盖 `config.json` 中的 key)。
|
|
106
|
+
|
|
107
|
+
## 文档
|
|
108
|
+
|
|
109
|
+
- [Node.js 环境安装指南](docs/nodejs_install_guide.md)
|
|
110
|
+
- [功能特性详解](docs/features.md)
|
|
111
|
+
- [技术架构](docs/technical_architecture.md)
|
|
112
|
+
- [数据库设计](docs/database_schema.md)
|
|
113
|
+
- [API 参考](docs/api_reference.md)
|
|
114
|
+
- [指令集(CLI)](docs/commands.md)
|
|
115
|
+
- [数据迁移指南](docs/migration_guide.md)
|
|
116
|
+
|
|
117
|
+
## 许可证
|
|
118
|
+
|
|
119
|
+
MIT
|