Files
goodbuddy/docs/features/application-tool-navigation/README.md
T
mesalogo 935a8f56bf feat: add persistent document handling and protect note drafts
Add HTTP PaddleOCR-VL settings and shared document previews for chat and knowledge imports. Preserve attachment originals and parsed assets across drafts, messages and queues; support explicit image OCR, selecting document images into a conversation draft, and restoring queued input for editing.

Protect unsaved note bodies and titles during navigation and asynchronous updates. Match canvas analysis to source revisions, invalidate affected comments, preserve annotations during pagination, and provide a resizable record index with saved width preferences.

Existing OCR settings retain local behavior. Historical attachments without saved originals are not reconstructed. Advanced OCR options depend on the configured service; image sending depends on the effective model and Runtime.

Validation: full typecheck and lint passed; 477 focused tests passed across 12 files; staged whitespace checks passed. The full repository suite was not rerun for this commit.

Release note: Keep note drafts safe while switching workspaces, resize the record index, and revisit saved document attachments with OCR previews and selected images in chat.
2026-09-19 16:51:10 +08:00

12 KiB
Raw Blame History

应用导航与系统工具入口

本功能整理 GoodBuddy 主侧栏的入口层级:系统入口保持固定,四个内置应用共用可调整的保存顺序,知识库和智能心跳始终启用并常驻; 魔法笔记和本机推理监控可通过应用管理控制启用和常驻。底部应用中心向上展开轻量锚定菜单,列出已启用应用;底部“管理应用”打开既有管理 Modal。系统工具由右侧工作栏 Tab 承载。应用商店是后续功能,首期不提供 商店入口、推荐位或安装流程。

当前分期见 PRD 第 8 节,实施步骤见技术设计第 11 节。 本轮 A–D 已接入生产源码:应用菜单、应用管理 Modal、共享应用设置、持久化偏好及本机推理监控。菜单不按打开历史或常驻状态筛选,无模态遮罩;点击应用行关闭菜单,知识库、智能心跳和魔法笔记打开主内容区页面。本机推理监控从菜单、常驻入口或管理 Modal 打开时均使用独立 Modal,保留底层工作区。管理列表、菜单和侧栏按同一保存顺序排列,侧栏按启用和常驻过滤。知识库和智能心跳在管理 Modal 中提供“打开”和排序,不提供启用、常驻开关或通用空设置;原工作区配置及心跳单条计划 enabled 保持原义。验证范围及集成缺口见实施进度。

新增计划包括 私有化市场与 YAML 交换: 通过市场 URL 获取应用,支持 .yml 导入导出,未来由 ShareServer 提供私有目录与分发。 本机模型管理入口已独立于商店接入,作为 可常驻左侧的“本机推理监控”(英文 Local Inference Monitor)内置应用,直接查看语音、OCR、向量等本机服务状态与可用资源指标,不显示任务历史。向量服务显示独立进程的 CPU 和工作集内存;ASR、OCR 与宿主共享进程,逐行说明无法独立统计的原因。 本轮已接入 local-inference 管理 Modal、类型化 IPC、真实请求登记及引擎管理;实际支持清单见 技术设计,市场仍为后续需求。 相关验收见 User Stories。

项目活动汇总独立于上述应用中心计划,范围见 FR-14。 计数规则由活动逻辑定义,入口与级联菜单见 活动界面,数据加载与会话跳转见 技术设计。此处“活动”包括当前运行、待处理及本次客户端 会话内已完成但未查看的会话;完成提示在实际进入聊天后清除,不累计历史完成总数。

文档导航

2026-09-16 后续应用组织决策:计划将现有“智能心跳”入口整合、升级为“监督者”,内部包含工作回顾和故事线图谱。未来市场复用同一应用身份,不增加平级重复入口。该更名与整合尚未实施;当前智能心跳始终显示、可排序,不提供应用级启用或常驻开关。目标定义见监督者产品设计。

文档 权威职责
PRD 用户问题、产品边界、功能要求与产品验收
User Stories 用户场景及 Given/When/Then 验收
功能逻辑设计 分类规则、入口状态、优先级与失败结果
UI 设计 侧栏信息架构、控件、文案、键盘和响应式行为
技术设计 现有模块映射、状态契约、持久化和实施顺序
实施进度 应用中心、设置及项目活动级联的实现与验证记录
应用中心交互 Demo 对比六个候选方案;配套 CSS 和 JS 仅服务原型

Demo 可直接在支持原生 dialog、popover 的现代浏览器中打开,无需依赖或构建。 六个方案共用本次页面会话内的配置,刷新后全部恢复默认,不持久化或修改真实设置。 A–E 仅展示内置应用,没有商店入口、推荐或安装操作;F 单独演示未来私有市场。 模型服务、资源指标和工具内容均为演示数据,不执行真实安装、模型加载或进程操作。 窄屏上下排列侧栏与主内容,应用页面隐藏输入区,对话页面显示输入区。 Demo 的模型管理和 F 方案均使用模拟数据;正式本机推理监控 Modal 的交付范围以技术清单和实施进度为准,旧页面原型不作为 Modal 验收依据。 底部输入区共用一个简化候选布局:附件、语音、Runtime、模式和发送位于主操作行,专家、 知识范围及 Runtime 专属选项通过“选项”展开,非默认选择显示为可移除标签。可体验文件名 附件、模拟语音、模板填入、原生命令选择、8 秒模拟回复、发送排队、立即插入、删除、停止, 以及上下文详情和模拟压缩。文件只读取名称,语音使用固定示例文本,不录音、不上传、不调用 AI。 这是输入区设计讨论用的原型,尚未改变正式产品或替代现有 UI 规范。 左上角项目选择器下方仅在有运行中或待处理会话时显示活动摘要,全部空闲时隐藏。点击摘要打开项目 列表,悬停或点击项目向右展开会话子菜单,点击会话才切换项目与对话。子菜单与项目列表 相接,项目行保留子菜单箭头,会话行只显示名称与状态。支持上下方向键选择、右键进入、左键或 Esc 返回,顶层 Esc 关闭;窄屏在同一浮层内 进入会话层,并提供返回按钮。页面上方可切换“有待处理、仅运行中、仅当前项目运行、全部 空闲”四种场景。项目与会话均为演示数据;该级联交互已接入正式产品活动入口,范围与 验证记录见实施进度。 Demo 已移除左侧系统工具快捷区:文件、终端、浏览器和资源监控只在右侧 工作栏 Tab 中演示,不列入应用中心。旧原型仍直接打开整窗 Modal,其中使用可搜索应用列表。

Demo 待同步更正:本节仅描述旧原型,不是生产行为或验收依据。原型直接打开 Modal,以及知识库和智能心跳的启停、常驻、通用设置,均已过时;原型的常驻排序也不代表生产中四个应用的共享顺序。生产规则见上述说明及 UI 设计。Demo 已同步“本机推理监控”名称及其默认不常驻状态。

六个方案共用“我的应用”区:通过 + 或“全部应用”选择常驻应用,编辑时可拖动或使用 上下箭头排序、移除入口。内置应用默认全部启用;魔法笔记、知识库、智能心跳默认常驻,计划预览“本机推理监控”默认不常驻。 取消常驻仅移除导航捷径,仍可从应用中心打开;关闭应用隐藏业务入口,应用中心保留设置与 重新开启入口,并记住常驻偏好。当前应用页关闭后显示不可用状态,重新启用从应用中心卡片设置进入。 知识库关闭时同步隐藏侧栏入口、会话选项中的知识范围和检索方式、已选知识标签;重新开启 恢复原来的选择。以上操作不删除数据,也不表示停止后台任务或模型服务。 “恢复默认应用”重置应用安装、启用、常驻和笔记设置,返回对话页;模型服务模拟状态保留至刷新。

通用应用设置统一从应用中心卡片进入,应用页面和全局设置不提供重复入口,分别控制 启用与常驻。魔法笔记面板另含显示未完成待办数量、AI 评论方式 (即时/保存后自动/保存后手动)、AI 评论形式(长评 + 要点/长评/要点)。现有“显示 魔法笔记入口”不在原型中重复提供。正式迁移保留其业务启用值,常驻使用独立配置。启用、常驻、待办数量显示默认开启; 评论方式默认即时,评论形式默认长评 + 要点。侧栏待办数为固定的 3 项演示数据。 修改即时生效于原型,不调用 AI 或写入真实应用设置。

此 Demo 中的任务、进度、使用方与服务内存为旧方案模拟内容;正式 Modal 已收窄为服务状态列表,见 FR-16。 引擎和管理方式收进详情;受管进程模拟启动、停止、重启,进程内模型模拟加载与释放。 服务停止或重启后任务标为中断,重新启动不自动恢复任务;任务级取消仍待实际引擎接入。 影响使用方的操作先显示就地确认,取消保留原状态;隐藏或关闭管理应用不改变服务状态。

F 提供私有市场 URL、模拟获取目录、模拟不可达与重试,不发起网络请求或切换公共来源。 目录包含项目管理和阅读空间示例,可模拟安装或安装并常驻。YAML 文本支持导入预览和导出 预览,明确标为 mock schema,仅识别示例中的七个扁平字段,尚非通用 YAML 解析器。 导入列出依赖、外部资源和同标识冲突:缺少依赖或资源时不允许安装;内置应用不允许覆盖; 已安装扩展须显式确认更新定义,保留启用与常驻偏好。导入新应用在目录中以标识显示,原始名称 保留在定义及导出预览中。修改输入会使旧预览失效,取消不修改安装状态。 导出仅显示定义文本,不写文件,不包含凭据、会话、笔记、知识数据、程序包或模型权重。

方案 讨论重点
A:紧凑入口 从底部向上展开应用列表
B:应用宫格 在展开面板中展示应用图标、名称和常驻操作
C:应用预览 用卡片说明应用用途
D:搜索启动台 搜索打开能力,支持 Ctrl / Command K、方向键与 Enter
E:常驻管理 已常驻应用优先排列,可取消常驻或打开
F:私有市场预览(未来) URL 模拟获取、YAML 导入导出与显式模拟安装,不纳入首期

D 参考 Raycast 的搜索启动与扩展发现方式。早期方案参考过 Notion 收藏和 VS Code Profiles,当前版本已移除场景工具包与快捷区。 原型支持 URL 的 #launcher、#favorites、 #scenes 等片段直接打开指定方案。

术语

术语 定义
系统入口 GoodBuddy 工作流程或审计所必需的固定入口,用户不能卸载、隐藏或改变类型
应用 可显示在主导航区的功能;知识库、智能心跳和魔法笔记打开一级页面,本机推理监控打开保留底层工作区的 Modal
系统工具 GoodBuddy 自带且不可卸载的辅助能力,包括文件、终端、浏览器和资源监控,由右侧助手工作栏 Tab 承载
插件应用 未来由插件提供的一级页面入口
插件工具 未来由插件提供的辅助面板或命令入口
快捷入口 只负责打开或聚焦能力,不复制该能力的界面和业务状态

相关文档