Releases: cccatbug/mailuo
Release list
脉络 v0.29.0
0.29.0
这一版带来自动检查更新,并修复侧栏拖拽方向相反的 bug。
自动检查更新
- 启动后自动查询 GitHub 最新 Release,发现新版即以弹窗提示版本号与更新说明。
- 弹窗可「去下载页」或「下载安装包」——后者由应用直接下载到系统下载目录,下载完成一键打开,无需再去 GitHub 手动找。
- 检查逻辑在主进程完成:语义版本比较 + 按当前平台 / 架构挑选对应安装包(macOS
.dmg/ Windows.exe/ Linux.AppImage),并校验只允许从 GitHub Release 下载。 - 设置 → 关于 增加「检查更新」区:显示当前版本、可手动检查,并可开关「启动时自动检查更新」(默认开启,持久化)。
修复
- 侧栏拖拽方向相反:左侧边栏往右拖反而变窄、右侧边栏同样反了。已修正为符合直觉的方向(左栏 handle 在其右缘,往右拖加宽;右栏 handle 在其左缘,往右拖收窄),并把宽度上限放宽到 600px,避免拖到上限"拖不动"。
Full Changelog: v0.28.0...v0.29.0
脉络 v0.28.0
0.28.0
这一版把窗口外壳重构为 Obsidian 式布局:沉浸式标题栏、侧栏成为可停靠多 tab 容器、功能图标可拖拽停靠、侧栏自由拉伸。
沉浸式标题栏
- 标题栏压窄并左移标题,不再是「一整条只放标题 + 窗口控件」。
- 全局工具上移到标题栏右侧:搜索、小枢、主题切换、设置;macOS 红绿灯悬浮让位、Windows/Linux 自绘窗口控件保留。
侧栏可停靠多 tab(Obsidian 式)
- 左 / 右栏统一为可停靠多 tab 容器,承载 项目 / 详情 / 小枢 / 浏览器 / 资产 / 定时 / 数据库。
- 页签保活渲染(切换不丢内部状态:浏览器 webview / 对话 / 滚动位置)、可关闭(项目页签常驻)、可激活。
- Ribbon 功能图标(浏览器 / 资产 / 定时 / 数据库)可拖拽——拖到左 / 右侧栏即在该侧成为 tab 并激活。
- 侧栏 tab 结构与宽度持久化,刷新还原。
侧栏自由拉伸
- 左 / 右栏各有一条拖拽边界(handle),pointer 拖动改宽度(最小 / 最大夹取),宽度持久化。
- 收放:点页签栏折叠按钮 → 左栏收 0、右栏收 44px 图标竖条(点图标展开并激活);
⌘B/⌘⇧B及项目栏开关驱动。
其它
- 移除 react-resizable-panels 命令式依赖(该库的折叠在此环境不可靠),改为自实现拖拽边界。
- 侧栏 store:
sidePanes(left / right)+addSideTab / removeSideTab / setSideActiveTab;选中任务 / 唤起小枢自动展开对应页签。
Full Changelog: v0.27.0...v0.28.0
脉络 v0.27.0
0.27.0
这一版围绕「脉络图更顺手、右侧更稳」:任务详情与小枢 AI 收敛为右侧常驻栏,脉络图拖拽不再误弹详情,节点编辑改成悬浮面板一次列全可改字段。
右侧常驻栏
- 任务详情与小枢 AI 合入右侧常驻展开/收纳栏(类比左侧项目栏):展开时顶部有小枢图标与任务详情图标两个页签;折叠成窄条,仍可一键点开。
- 在列表或图中选中任务即自动展开并切到详情页签;唤起小枢(
⌘J/ 状态栏)自动展开到小枢页签。小枢的权限模式 / 会话历史 / 新对话工具条保留在栏头。 - 移除旧的任务详情、小枢「停靠 ⇄ 悬浮」模式。
脉络图交互
- 拖拽不再误弹详情:只有真正点击(非拖拽)才打开右侧详情;拖拽节点、框选、点空白均不再突兀触发。
- 节点编辑悬浮面板:双击节点 / 右键「重命名」/ 按
E弹出仿日历的编辑面板——标题、状态(待办 / 进行 / 完成,或打卡 / 进度专属动作)、优先级(急 / 常 / 缓)、日期(今天 / 明天 / 本周末 / 下周 / 日历选择 / 清除)一次改齐,底部可删除或跳详情。
Full Changelog: v0.26.0...v0.27.0
脉络 v0.26.0
0.26.0
这一版以「可维护性与质感」为主题:备注编辑器升级为 CodeMirror 6 原生的沉浸式编辑(Obsidian Live Preview 同款原理)、新增日历视图、脉络图的卡片外观体系,并把项目文件管理的文件夹树打磨完整。
沉浸式备注编辑器
- Live Preview 同款机制:Markdown 是唯一真相,CodeMirror 只会变换视图——非光标元素的行内语法(加粗、斜体、
删除线、代码、链接)光标离开即成型成视觉效果,语法标记隐藏;光标移回即显示源码可编辑。撤销 / 选区 / IME / 粘贴全部原生。 - 块级渲染:标题分级、引用竖线、列表圆点、
等宽代码块;**Markdown 表格光标离开即渲染为 HTML 表格**(表头斑马纹);mermaid 代码块渲染为流程 / 时序 / ER 图(深色自动切换主题,惰性加载)。 - 点击表格 / 图即回到源码编辑;悬浮工具栏(加粗 / 斜体 / 删除线 / 代码 / 链接 / 列表 / 引用 / 标题 / 分隔线)作用于光标。
日历视图(⌘6)
- 按月把任务聚合到「生效截止日」,周末与逾期自动标注,今天高亮。
- 双击空白 / 悬停 + 新建任务并直接重命名;把列表行拖到日期格即改期;底部「未安排」区把无期限任务拖入任意日期。
脉络图外观体系
- 卡片风格:纸签墨印(默认)/ 水墨线性 / 玻璃拟态 / 紧凑数据;信息密度(完整 / 精简大图);连线样式(曲线 / 阶梯 / 直线)。
- 设置 → 外观 → 脉络图 与图工具栏调色板菜单均可切换,即时生效;布局高度按风格自适应重排。
- 性能:稳定布局 / 选中叠加分层缓存、TaskNode 自定义 memo、批量原子 actions(完成 / 优先级 / 期限 / 标签 / 依赖一次提交)。
详情面板与提醒
- 详情面板可 dock / 悬浮 切换;空状态操作引导。
- 四象限四角实时计数;打卡任务新增最近 28 天 / 10 个月的打卡记录条。
- 启动时对逾期任务每日提示一次,一键跳转列表。
文件管理
- 文件夹树逐级展开 / 收起,行内顺滑箭头;右键 → 打开 / 新建子文件夹 / 展开收起;一键展开 / 收起全部;子项计数徽章(修复根目录直属文件不计数)。
- 左侧栏可整体收起为图标栏(全部 / 最近 / 收藏 / 回收站快速切换)。
其他
- i18n:新增 nav 命名空间(面板 / 视图 / 工具栏文案,中英双语)。
- 移除过时 json-render 计划文档;vite.config 清理 Tauri 遗留(应用已完全 Electron 化)。
- 测试:+47 项(deps / layout / graph-construction / batch / live-preview / asset-tree),共 269 项全绿。
脉络 v0.25.0
这一版把小枢的界面能力全面升级为 json-render 可交互卡片:彻底移除旧的重型 recharts 图表渲染,图表与界面统一收敛到轻量的 JSON 组件体系,卡片上的按钮可以直接操作任务(经权限审批),并修复了定时任务历史与对话滚动条的两个 bug。
小枢交互卡片(json-render)
- 移除 recharts 图表渲染:删除旧的
mailuo-chart协议与 600 多行图表代码;小枢输出图表改为纯 CSS/SVG 的轻量组件(条形图、环图、趋势线、仪表、堆叠条、散点),固定高度、无异步布局,滚动更稳定。 - 卡片可交互:小枢生成的界面不再只是"看",按钮/勾选/开关可直接触发真实操作——创建任务、修改状态、删除任务、切换项目、应用操作组等,全部复用现有权限审批(confirm-sensitive 弹窗 / yolo 直通 / read-only 拒绝)。
- 统一组件目录:Card / Row / Stat / Text / Badge / List / Table / Progress / Callout / Divider + 图表组件 + Button / TextInput / Checkbox / Switch / Tag / Empty,由
catalog.prompt()自动生成给模型的协议说明。 - 动作白名单:AI 输出的动作绑定经过白名单过滤,未知动作自动剔除,防止模型调用未注册能力。
- 文本与卡片混排:小枢可以在一段回复中穿插多个界面块(最多 3 个)。
问题修复
- 定时任务运行历史重复行:
runNow的 IPC 返回值与主进程事件推送双通道竞态导致同一条运行记录重复展示,统一改为按 id 去重合并(upsert)。 - 小枢对话滚动条与内容脱节:图表/图片等异步高度变化后滚动条长度与实际内容不匹配、"回到最新"滚不到位——用 ResizeObserver 跟随内容与面板尺寸变化,回到最新先瞬移再平滑校准。
Full Changelog: v0.24.0...v0.25.0
脉络 v0.24.0
这一版带来了「项目数据库」——每个项目拥有一个专属 SQLite 数据库,小枢带着全量 db_* 工具(建表、查询、编辑、事务),可以直接操作结构化数据。应用数据(任务、项目、定时任务、执行历史、资产、记忆)自动镜像为只读表,一条 SQL 即可跨表 JOIN 分析。
项目数据库
- 每个项目一个 SQLite 数据库:文件位于项目工作目录
mailuo.db,使用 Node 内置node:sqlite(零 native 依赖,无需额外编译)。 - 小枢全量工具:12 个
db_*工具——db_overview/db_describe/db_query/db_execute/db_batch/db_create_table/db_alter_table/db_drop_table/db_insert/db_update/db_delete/db_sync_app_data,覆盖从探索到建表到写入的完整工作流。 - 应用数据镜像:
app_projects/app_tasks/app_scheduled_jobs/app_scheduled_runs/app_assets/app_memories六张只读系统表,自动保持新鲜(15 秒 TTL),小枢可以直接 JOIN 分析。 - 定时任务也能读写:数据库引擎运行在主进程,不依赖渲染窗口——定时任务 headless 执行首次获得数据写入能力(把周报归档、指标累计写入数据库)。
- 安全设计:标识符正则校验、值参数绑定防注入、系统表写保护、db_query 只允许 SELECT / WITH / PRAGMA / EXPLAIN、update/delete 强制要求 WHERE。
- 审批集成:变更类 db 工具纳入小枢权限模式——confirm-sensitive 弹窗确认,yolo 直通。
数据库面板
- Dock 面板「项目数据库」:项目选择器、表侧栏(用户数据表 / 应用数据镜像分组、行数)、数据网格(分页浏览、按 rowid 删除行、按列插入行)。
- SQL 控制台:⌘/Ctrl+Enter 执行,自动识别读/写路由到 db_query/db_execute,结果表格展示 + 耗时 + 变更数。
- 建表对话框:列名、类型(text/integer/real/blob)、主键/非空/唯一,单列 integer 主键自动成为自增 rowid。
- 插入行对话框:根据表结构自动生成表单,主键可留空自增。
入口
- 左侧 Ribbon 新增「项目数据库」按钮;
- ⌘K 命令面板新增「打开项目数据库」;
- 项目右键菜单新增「项目数据库」;
- 删除项目时自动清理对应的数据库文件。
小修
- 定时任务 prompt 编辑栏限制最大高度,避免长 prompt 撑破对话框。
Full Changelog: v0.23.1...v0.24.0
脉络 v0.23.1
脉络 v0.23.0
这一版带来了全新的「定时任务」:像 Codex 的 Scheduled Tasks 一样,为每个项目配置"时间 + 提示词",小枢会按时自动执行并交付报告。另外修复了 PDF 预览滚动条抖动的问题。
定时任务(Scheduled Tasks)
- 项目维度的自动化:为任意项目创建定时任务,设定提示词(例如"汇总本周进展写成周报"),小枢会在指定时间自动执行一轮完整对话,产出 Markdown 报告。
- 灵活的排期:支持每天 / 每周(可多选星期几)+ 具体时刻,本地时区;面板里实时显示"X 小时后"倒计时。
- 独立后台执行:定时任务在独立会话中运行,自动注入该项目的任务快照与长期记忆,只带文件读写工具,不依赖窗口——macOS 关闭窗口后依然按时运行;不占用你和小枢的对话,也不会互相打断。
- 运行历史:每次运行(定时 / 手动)都有完整记录:状态、耗时、触发方式,点开即看 Markdown 结果;失败的运行会给出可读的错误原因。
- 完全可控:支持立即运行、运行中随时停止、启用/停用开关、编辑与删除;应用没开而错过的触发会记为"已错过",不会悄悄补跑。
- 专属模型路由:AI 设置里新增「定时任务」用途,可以为它单独指定模型(比如用更便宜的模型跑日报),也可以在单个任务上直接覆盖。
- 完成提醒:任务跑完会发系统通知;应用开着时面板实时刷新状态。
入口
- 左侧 Ribbon 新增「定时任务」按钮;
- 项目右键菜单新增「定时任务」,直接进入该项目的任务视图。
问题修复
- PDF 预览滚动条抖动:改为按总页数构建全页占位的虚拟滚动条——滚动总高度由页数决定,不再随页面渲染/回收变化;拖动滚动条可直接跳到文档任意位置,缩放时以当前页为锚点保持位置稳定。
Full Changelog: v0.22.0...v0.23.0
脉络 v0.22.0
这一版彻底重写了 PDF 预览,支持文本选择复制、突破 50 MB 文件上限、并针对大文档做了窗口化渲染优化。
PDF 预览重构
- 支持选中和复制文本:每页在 canvas 上方叠加透明文本层(pdf.js TextLayer),鼠标可选中跨页文本并按 Ctrl+C 复制。
- 大文件流式加载:PDF 不再 base64 整文件读入内存,改为本地 HTTP 流式服务(Range/206 分块),pdf.js 按需拉取所需页数据;57 MB / 4000 页文档 1.6 秒打开,跳页实时渲染,原有的 50 MB 硬上限已移除。
- 窗口化渲染:只渲染视口附近页面(中心页 ±2/+5),远处页面自动回收 DOM 和显存;4000 页文档不再一次性全渲染,内存和性能均可控。
- 键盘导航:PgUp / PgDn / Space / Home / End / 方向键翻页;页码输入改为按回车生效,不再逐个字符跳页。
- 智能滚动:滚动到未渲染空白区时按平均页高估算目标页,渲染窗口自动跟随。
- 修复若干当前版本的 bug:切换文件时旧页面残留、跳转到未渲染页无法定位、超大页在 HiDPI 下超 GPU 纹理上限、渲染失败重试循环等。
Full Changelog: v0.21.0...v0.22.0
脉络 v0.21.0
这一版把 PDF 预览从浏览器自带的 iframe 升级为基于 mozilla pdf.js 的原生渲染查看器,左侧带可折叠目录、右侧是带工具栏的文档主区,阅读体验和交互完整度都上了一个台阶。
PDF 预览
- 内嵌 PDF 预览改用 pdf.js(pdfjs-dist 5.4)逐页渲染为 canvas,按设备像素比绘制,高分屏下文字与线条依然清晰。
- 新增左侧目录侧栏:解析 PDF 大纲(书签),递归解析每个条目的目标页码,支持可折叠嵌套层级,点击即跳转到对应页并高亮当前项;无目录的 PDF 给出明确提示。
- 顶部工具栏支持显隐目录、缩小 / 放大、适应宽度、重置缩放、当前页码输入与总页数显示,并展示文件名。
- 适应宽度以首页宽度为基准自动计算缩放,侧边栏开关或窗口缩放后通过 ResizeObserver 自动重排。
- 缩放切换会取消上一轮渲染任务,避免同一 canvas 重叠渲染竞争。
- pdf.js worker 以独立资源加载,Vite 与 electron-vite 打包均正常输出。
Full Changelog: v0.20.0...v0.21.0