Skip to content

Commit ef61571

Browse files
authored
Merge pull request #1694 from Mai-with-u/dev
Dev
2 parents 4b47984 + ed90c13 commit ef61571

138 files changed

Lines changed: 9271 additions & 1868 deletions

File tree

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

AGENTS.md

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -30,6 +30,9 @@
3030
2. 在重构代码时,如果遇到getattr和setattr,应该尝试检查这个类实例是否有这个属性,如果有,则直接替换为类属性访问写法。
3131
- 举例:`v = getattr(instance, "value", "")` 在检查到`instance``value`属性后应该改为`v = instance.value`
3232

33+
## debug规范
34+
1. 不要总是想找兜底,一定要精准的找到问题的核心,然后提出建议,兜底是不合适,难以维护的。
35+
3336
# 运行/调试/构建/测试/依赖
3437
优先使用uv
3538
依赖项以 pyproject.toml 为准,要同步更新requirements.txt

changelogs/changelog.md

Lines changed: 205 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,210 @@
11
# [Unreleased]
22

3+
## 0.12.2 以来 tag 功能变更梳理
4+
5+
### 0.12.3
6+
- WebUI 静态资源访问新增路径穿越防护,异常路径会返回 404 而不是读取站点目录外文件。
7+
- WebUI 端口检测对 TIME_WAIT 状态更宽容,重启后更少误判端口被占用。
8+
- 新增 Crowdin 目标语言初始化流程,需要手动确认后才会把现有翻译上传到 Crowdin。
9+
- 升级 quick-algo 依赖到 0.1.4 及以上。
10+
11+
### 1.0.0-pre.1
12+
- 新增长期记忆系统 A_memorix,支持段落、实体、关系、来源、向量和图谱的统一存储。
13+
- 长期记忆检索改为向量、图关系、BM25、PageRank 和阈值过滤融合,查询结果更丰富。
14+
- 新增聊天总结导入长期记忆能力,可把历史聊天总结成知识段落、实体和关系。
15+
- 新增 Maisaka 主回复链路,回复会经历规划、工具调用、回复生成和多轮内部思考。
16+
- 回复生成被拆成可追踪的 reply 动作,能单独记录回复 prompt、思考和输出。
17+
- 工具变为延迟发现模式,模型可先搜索工具再展开使用,减少一次性塞入过多工具说明。
18+
- 新增复杂消息查看能力,合并转发、图片等复杂内容可按需展开,而不是全部直接塞入 prompt。
19+
- 多模态上下文会按模型视觉能力决定是否传入图片本体,非视觉模型只看到文本占位。
20+
- 新增 prompt 控制台和 HTML 预览,调试时可以查看文本、图片和混合消息的真实请求内容。
21+
- 插件系统重做为独立运行时,插件可以独立启动、停止、重载并被追踪运行状态。
22+
- 插件 manifest 会在加载前校验入口、依赖、组件、权限和运行时配置,错误更早暴露。
23+
- 插件新增数据能力接口,可查询消息、聊天流、配置和运行时数据。
24+
- 消息平台层统一旧适配器和插件驱动,入站消息、出站消息、去重和回执更新走同一套链路。
25+
- 发送消息支持临时消息 ID 回填为平台真实消息 ID,后续引用和查询更可靠。
26+
- MCP 能力主线化,支持加载 MCP 工具、Prompt、Resource 并统一返回工具结果。
27+
- MCP 工具可以反向调用主程序 LLM 能力,方便工具内部做模型辅助处理。
28+
- 新增统一消息服务,可按消息 ID、聊天流和时间范围读取历史消息。
29+
- 新增统一 LLM 服务层,模型任务选择、请求、缓存和返回结构更一致。
30+
- WebUI 新增统一 WebSocket 推送,聊天、日志、状态和系统事件共用连接管理。
31+
- 新增 Dashboard 前端,聊天、配置、插件、记忆、知识库、统计、监控和设置进入新界面体系。
32+
33+
### 1.0.0-pre.2
34+
- 启动时遇到旧配置升级会要求确认,避免静默改写用户配置。
35+
- 配置升级未确认或失败时会提前退出,避免带着半升级配置继续运行。
36+
- 回复效果追踪能识别回复引用了哪条消息,评分记录会保存引用关系。
37+
- 清理旧 LPMM/旧记忆运维脚本,迁移入口收敛到新的长期记忆体系。
38+
- Maisaka 相关测试迁移到统一 pytests 体系。
39+
40+
### 1.0.0-pre.3
41+
- 此 tag 与 `1.0.0-pre.2` 指向相同提交,代码无变化。
42+
43+
### 1.0.0-pre.4
44+
- 长期记忆新增后验图检索,可根据命中的段落和实体继续反查关联关系。
45+
- 稀疏检索打分与候选合并优化,关键词式召回正式参与长期记忆检索。
46+
- 检索运行时统一初始化多种召回器和阈值过滤组件,启动链路更稳定。
47+
- Maisaka 新增内置 @ 动作,模型可以显式选择 @ 某个用户。
48+
- 图片描述提示词拆成中英日三份模板,后续多语言 prompt 更容易维护。
49+
- 工具说明格式统一,模型看到的工具声明更简洁一致。
50+
- 插件组件查询增强,插件注册的组件更容易被主程序检索和使用。
51+
- MCP 工具会被映射到统一工具声明格式,和内置工具走同一套调用方式。
52+
- 移除旧黑话解释实现,只保留新的黑话学习和解释链路。
53+
54+
### 1.0.0-pre.5
55+
- Dashboard 聊天页拆成输入区、消息列表和工作区侧栏,聊天页面结构更清晰。
56+
- planner 收到的用户消息前缀改为标签化格式,消息 ID、时间、用户名更不容易被模型误读。
57+
- 图片消息在文本 fallback 中显示为“图片,识别中.....”,避免空白图片消息被忽略。
58+
- prompt 预览支持落盘和索引,控制台可跳转查看完整请求内容。
59+
- 无工具模型请求兼容性修复,不提供工具时不会发送部分模型不支持的工具字段。
60+
- 工具调用和 prompt 调试新增请求快照,排查模型请求时能看到原始请求结构。
61+
- 插件读取消息时可拿到更完整的消息组件字段。
62+
- 按聊天流和消息 ID 查询消息的兼容性增强,插件和 WebUI 查消息更稳定。
63+
- 表情 API 扩展状态字段,前端能展示更多表情状态。
64+
- replyer 提示词中英日同步更新。
65+
66+
### 1.0.0-pre.6
67+
- 移除仓库内实验 agent 子项目,减少安装和维护噪音。
68+
- 插件可以作为 LLM provider 接入主程序模型服务。
69+
- 新增 LLM 缓存统计,便于查看缓存命中、未命中和容量情况。
70+
- 包式插件导入更安全,插件加载时临时路径不会长期污染主进程导入环境。
71+
- 插件 manifest 校验更严格,字段错误会给出更清楚的加载失败原因。
72+
- 启动时配置缺项会自动补齐,旧配置升级路径更完整。
73+
- Maisaka 历史压缩和后处理优化,planner 收到的上下文更精简。
74+
- timing gate 失败和非法工具调用处理更稳,不容易打断整轮回复。
75+
76+
### 1.0.0-pre.7
77+
- 长期记忆任务新增进度展示,导入和维护过程可以看到实时进度。
78+
- 长期记忆页面新增迷你标签,主要功能和管理入口分层展示。
79+
- 聊天页滚动行为优化,消息列表滚动状态不再和页面其他状态互相干扰。
80+
- 记忆导入和维护进度新增后端接口,前端可订阅或轮询任务状态。
81+
- WebUI 动态配置表单能识别更多字段类型。
82+
- Docker 镜像构建和发布流程调整。
83+
84+
### 1.0.0-pre.8
85+
- 表情发送工具的返回和暂停行为修复,工具执行后流程状态更稳定。
86+
- 表情选择遇到空候选或异常候选时不会中断主流程。
87+
- timing gate 的工具注册和可用性判断修复。
88+
- Dashboard 引导流程渲染更稳,空步骤不会导致页面报错。
89+
- 增加 timing gate 回归测试覆盖。
90+
91+
### 1.0.0-pre.9
92+
- Dashboard 新增插件市场和已安装插件分栏。
93+
- WebUI 插件管理支持安装、启停、配置读取和状态查询。
94+
- 旧 bot/model/provider 配置字段迁移更完整。
95+
- 长期记忆导入和检索统一走 host 服务入口,WebUI 和运行时行为更一致。
96+
- 初始化向导支持写入模型和插件配置。
97+
- 新增 WebUI TLS/SSL 与 Caddy 反代部署文档。
98+
99+
### 1.0.0-pre.10
100+
- 配置页支持更复杂的字段编辑,包括列表、JSON、extra params 等专用编辑器。
101+
- 模型配置页的表格和卡片展示优化。
102+
- Maisaka 阶段状态面板展示 prompt token、阶段耗时和工具执行摘要。
103+
- HTML prompt 预览可以展示图片内容,混合消息调试更直观。
104+
- 新增/补齐 replyer、visual、工具筛选、日志颜色等配置项。
105+
- 已安装插件列表会显示插件是否启用、是否加载成功和加载状态。
106+
- WebUI URL 校验默认支持 http/https,未填写 scheme 时会补 `http://`
107+
- 图片读取和路径兼容性修复。
108+
- 表达学习触发和模型调用链路调整。
109+
110+
### 1.0.0-pre.11
111+
- prompt 文件加载支持覆盖和 fallback,缺失语言模板时会回退到默认模板。
112+
- prompt locale 校验增强,多语言模板缺失更容易发现。
113+
- Maisaka chat、reply、timing、learn style 模板继续按中英日拆分同步。
114+
- 表达、黑话和记忆相关数据库结构继续迁移升级。
115+
- 插件新增核心能力接口,可查询 host 状态和基础上下文。
116+
- 插件可通过 msg_id 获取上下文消息。
117+
- 聊天 API 的消息格式化和会话数据返回更统一。
118+
- prompt fallback 增加测试覆盖。
119+
120+
### 1.0.0-pre.12
121+
- 长期记忆检索融合、排序和阈值过滤继续优化。
122+
- 长期记忆向量库和图存储的加载、保存和维度兼容修复。
123+
- 长期记忆启动自检和初始化顺序更明确。
124+
- MCP 工具、Prompt、Resource 分页读取更稳定。
125+
- WebUI 新增反爬中间件,可按配置拦截异常请求。
126+
- 记忆查询工具返回结构调整,便于后续反馈纠错。
127+
- 记忆流任务调度和状态查询增强。
128+
129+
### 1.0.0-pre.13
130+
- 新增统计服务,集中统计消息、聊天、插件、表情和记忆数据。
131+
- 统计 API 改为调用统一统计服务,结果来源更一致。
132+
- WebUI 支持 Dashboard 更新检查和更新执行。
133+
- 系统接口增加运行状态、更新和运行环境信息。
134+
- 长期记忆导入来源可被记录、查询和展示。
135+
- Web 导入长期记忆的 payload 解析和来源记录增强。
136+
- 系统、聊天和任务事件统一走 WebSocket 连接推送。
137+
- 前端新增系统更新和 prompt 管理请求封装。
138+
139+
### 1.0.0-pre.14
140+
- 新增推理过程页面,可查看 Maisaka 轮次、阶段、工具和 prompt 记录。
141+
- 新增本地缓存设置页和更多系统状态字段。
142+
- 配置升级支持 hook 化处理,字段迁移可以做定向修复。
143+
- wait 工具在该版本暂时退出内置工具注册。
144+
- continue、no_reply、send_emoji 等内置工具声明和可用性调整。
145+
- Maisaka 阶段显示逻辑收敛,旧阶段 viewer 被移除。
146+
- 人物画像生成和查询能力增强。
147+
- 新增按聊天流分析工具使用情况的脚本。
148+
149+
### 1.0.0-pre.15
150+
- wait 工具恢复并重写,重新作为 timing gate 可调用动作。
151+
- timing gate 能正确识别 wait 的可用性和暂停执行逻辑。
152+
- wait 工具结果不再像普通工具一样追加可见工具结果,减少历史噪音。
153+
- timing gate 提示词补齐中英日模板。
154+
- 新增 memory 模型任务,记忆总结可使用独立模型配置。
155+
- 记忆总结模型选择优先级改为 `memory > utils > planner`,不再落到 replyer。
156+
- 模型配置解析支持新的 memory task。
157+
158+
### 1.0.0-pre.16
159+
- 插件市场字段扩展,插件详情页可展示更多市场信息。
160+
- 插件卡片、市场列表和已安装列表的状态展示优化。
161+
- 插件详情页可展示市场信息、manifest 信息和运行状态。
162+
- 插件支持接口增强,前端可读取 README、manifest 和配置入口。
163+
- 容器启动路径和 WebUI 静态资源处理调整。
164+
- prompt 多语言读取修复并增加测试。
165+
- 人物画像和总结写入的来源记录修复。
166+
167+
### 1.0.0-pre.17
168+
- 长期记忆 metadata 规范化,检索和人物画像共用事件时间、来源和置信度字段。
169+
- 复杂消息查看优化,图片和转发内容在历史保留中更不容易丢失。
170+
- 上下文工具输出调整,记忆保留测试覆盖复杂消息和历史消息。
171+
- 插件 manifest 中模型和插件字段校验修复,加载前即可暴露错误。
172+
- 模型 API 修复并增加 WebUI 回归测试。
173+
- 数据库服务初始化和迁移调用调整。
174+
- Docker 构建依赖和运行命令简化。
175+
176+
### 1.0.0-pre.18
177+
- 新增人物画像查询工具,支持按人物 ID 或人物名称查询稳定画像、特征、来源和缓存状态。
178+
- 新增人物画像自动注入,Maisaka 会根据当前发言人、@ 对象、引用消息发送者和待处理消息选择画像上下文。
179+
- 人物画像注入支持配置人数、长度和启用场景。
180+
- 旧人物信息查询工具切换为人物画像查询。
181+
- “不回复”动作改名为“不采取动作”,表达更贴近实际行为。
182+
- 聊天会话新增 account_id 和 scope 归属字段,群聊会话不再把 user_id 当作资源归属。
183+
- 数据库迁移会清空群聊会话里没有归属语义的历史 user_id。
184+
- 数据库迁移会为聊天会话添加 account_id、scope 字段和索引。
185+
- 工具返回图片或二进制媒体时,会把媒体拆成紧随其后的上下文消息,模型后续轮次能继续看到媒体。
186+
- 工具返回媒体支持 base64 和 data URL 图片解析。
187+
- 工具搜索说明更简洁,工具声明统一为 description 口径。
188+
- 长期记忆可按任务选择模型,记忆模型路由更明确。
189+
- MCP 工具调用主模型时走统一 LLM 服务。
190+
- 内置插件管理增强,插件启停和统计可由内置插件暴露。
191+
192+
### 1.0.0-pre.19
193+
- MCP stdio 连接新增容错,第三方 MCP 服务把日志误输出到 stdout 时会丢弃非 JSON 行而不是握手失败。
194+
- MCP 服务未实现 resource templates 列表接口时会按空列表处理,不再导致整个连接失败。
195+
- WebUI 出站 URL 校验新增“是否强制公网”开关,可按配置决定是否允许访问内网地址。
196+
- 表达学习记录支持更多 schema 字段。
197+
- 表达相关数据库结构和索引继续迁移升级。
198+
- MaiBot 记忆迁移脚本兼容旧版和新版 chat_history 字段。
199+
- 记忆迁移时间过滤同时支持 ISO 时间字符串和数值时间戳。
200+
- 记忆迁移报告会统计被修正的列表字段和坏行数量。
201+
- 增加向量重建运行时测试,覆盖段落和关系向量回填。
202+
- WebUI URL 安全校验增加测试,覆盖本地地址、认证信息、非法端口和关闭公网限制。
203+
- 配置页动态表单样式统一,字段间距和标题显示更一致。
204+
- 高级字段标题增加测试,避免嵌套配置标题显示错误。
205+
- 知识图谱节点、边渲染和视图切换优化。
206+
- 知识库和记忆导入补齐 DOCX/PDF 文档解析依赖。
207+
3208
- 设置页将“视觉”栏目纳入默认基础栏目,进入页面后不再折叠到“更多”。
4209
- 设置页可视化模式首屏不再同步加载 TOML 源码,降低进入设置页等待时间。
5210
- 长期记忆页标题统一为“长期记忆”并移入正文滚动流,说明文案调整为“管理麦麦的长期记忆和知识库”。

dashboard/package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
{
22
"name": "maibot-dashboard",
33
"private": true,
4-
"version": "1.1.1",
4+
"version": "1.1.3",
55
"type": "module",
66
"main": "./out/main/index.js",
77
"scripts": {

0 commit comments

Comments
 (0)