Skip to content

脉络 v0.24.0

Choose a tag to compare

@github-actions github-actions released this 11 Aug 08:05
· 14 commits to main since this release

这一版带来了「项目数据库」——每个项目拥有一个专属 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