# 应用导航与系统工具入口 User Stories ## 文档信息 | 项目 | 内容 | | --- | --- | | 状态 | 设计中 | | 版本 | 0.2 | | 日期 | 2026-09-08 | | 关联 PRD | [应用导航与系统工具入口 PRD](./prd.md) | | 关联逻辑 | [功能逻辑设计](./logic-design.md) | ## 1. 角色 ### 1.1 普通用户 使用对话、笔记和知识功能,希望常用入口稳定,不需要理解工作栏实例模型。 ### 1.2 本地工作用户 经常查看项目文件、打开终端、使用受控浏览器或检查电脑负载,希望从任意一级页面快速进入 这些工具。 ## 2. Epic A:固定系统入口 ### US-A1 始终访问运行记录 作为用户,我希望运行记录保持在固定位置,以便应用入口变化后仍能检查 Agent 和工具活动。 验收: - Given 用户隐藏任意内置应用 - When 用户查看主导航 - Then “运行记录”仍显示在应用区之后 - And 设置中没有隐藏、卸载或固定运行记录的选项 ### US-A2 从固定入口进入设置 作为用户,我希望设置入口始终位于侧栏底部,以便快捷工具状态变化时仍能进入配置。 验收: - Given 任意主页面和任意侧栏宽度 - When 用户查看侧栏底部 - Then 设置按钮保持可见且点击区域不与工具按钮重叠 - And 点击后继续遵守未保存内容的离开确认 ## 3. Epic B:管理应用入口 ### US-B1 识别完整应用 作为用户,我希望魔法笔记、知识库和智能心跳显示在主导航,以便知道它们会打开完整页面。 验收: - Given 对应功能已启用且应用设置为显示 - When 用户打开主侧栏 - Then 应用位于“当前对话”和“运行记录”之间 - And 点击应用在主内容区打开对应一级页面 - And 原有待办或建议徽标继续显示 ### US-B2 隐藏低频应用 作为用户,我希望隐藏不常用的内置应用,以便缩短主导航,但保留已有数据。 验收: - Given 应用已有内容 - When 用户关闭该应用的“显示在侧边栏”Switch - Then 主导航不再显示该应用 - And 应用数据、计划和业务启停状态不变 - And 用户可从同一设置位置恢复显示 ### US-B4 保留功能启停语义 作为魔法笔记用户,我希望导航显隐与功能启停相互独立,以免整理导航时关闭功能。 验收: - Given 魔法笔记功能已启用 - When 用户只隐藏其侧栏入口 - Then 笔记及待办处理能力继续按原设置工作 - And 再次显示时恢复原页面和数据 ### US-B5 恢复显隐保存失败 作为用户,我希望入口设置保存失败时继续使用原导航,以免界面状态与实际设置不一致。 验收: - Given 应用显隐更新尚未完成 - When 用户切换“显示在侧边栏”Switch - Then 三个应用显隐 Switch 在请求期间暂时不可操作 - And 更新成功后主导航立即变化 - And 更新失败时 Switch 和主导航恢复原状态并显示可重试错误 ## 4. Epic C:使用系统工具 ### US-C1 一键查看文件 作为本地工作用户,我希望点击左下角文件按钮后直接查看当前工作区文件。 验收: - Given 当前项目有有效根目录 - When 用户点击文件按钮 - Then 助手工作栏展开 - And 聚焦默认存在且不可关闭的工作区单实例 - And 文件按钮通过选中状态表明该面板正在显示 ### US-C2 处理无效工作区 作为用户,我希望目录不可用时看到修复方法,并收到明确反馈。 验收: - Given 工作区面板处于跟随模式 - And 当前项目和默认工作区均不可用 - When 用户点击文件按钮 - Then 工作区面板仍打开 - And 面板说明目录不可用并提供选择或修复目录的入口 - And 应用不静默改用其他目录 ### US-C3 快速进入终端 作为本地工作用户,我希望点击终端按钮后进入当前执行空间的终端。 验收: - Given 当前执行空间已有正在启动或运行中的终端 - When 用户点击终端按钮 - Then 工作栏聚焦最近使用的匹配终端,不创建重复实例 - Given 当前执行空间没有终端 - When 用户点击终端按钮 - Then 创建一个绑定该执行空间的新终端 - Given 当前没有项目 - When 用户点击终端按钮 - Then 创建或聚焦使用本机 Home 的终端 - Given 当前执行空间只有已退出、已中断或失败的终端 - When 用户点击终端按钮 - Then 创建新终端并保留原终端的历史状态 ### US-C4 使用远程项目终端 作为远程项目用户,我希望同一个终端按钮进入远程项目目录,以免误在本机执行命令。 验收: - Given 当前项目绑定托管 SSH 执行空间 - When 用户点击终端按钮 - Then 创建或聚焦绑定该远程项目及其权威目录的终端 - And 面板持续显示远程主机和工作目录 - And 连接失败时保留重连与诊断信息 ### US-C5 打开受控浏览器 作为用户,我希望浏览器按钮打开 GoodBuddy 受控浏览器,以便查看与 Agent 相同的会话。 验收: - Given 浏览器面板跟随当前上下文且当前会话已有浏览器会话 - When 用户点击浏览器按钮 - Then 工作栏聚焦绑定当前 Conversation 的最近使用浏览器实例 - And 不打开系统默认浏览器或无意创建重复实例 - Given 现有浏览器实例都绑定到其他 Conversation - When 用户点击浏览器按钮 - Then 工作栏创建并聚焦绑定当前 Conversation 的新浏览器实例 - Given 当前没有活动 Conversation - And 已存在浏览器实例 - When 用户点击浏览器按钮 - Then 工作栏聚焦最近使用的浏览器实例并保持其目标 - Given 当前没有活动 Conversation - And 不存在浏览器实例 - When 用户点击浏览器按钮 - Then 创建待选择目标的空实例 - Given 用户需要同一 Conversation 的另一个独立页面 - When 用户从工作栏“+”选择浏览器 - Then 每次创建拥有独立页面和导航状态的新实例 - And 同一 Conversation 内共享隔离登录上下文 ### US-C6 查看本机资源 作为本地工作用户,我希望快速查看 CPU、内存和磁盘 IO,以便判断任务变慢是否与本机负载 有关。 验收: - Given 资源监控面板尚未打开 - When 用户点击左下角资源监控按钮 - Then 助手工作栏创建并激活单实例资源监控面板 - And 页面显示整机 CPU、内存、磁盘读写及 GoodBuddy 桌面进程摘要 - And 页面每 2 秒更新一次,并用图表保留最近 5 分钟 - When 用户切换到其他工作栏 Tab、收起工作栏、隐藏窗口或最小化窗口 - Then 资源监控停止请求新样本 - When 用户再次显示窗口并返回资源监控 - Then 首次采样建立区间指标基线,下一次采样开始显示 CPU 和磁盘 IO 速率 - Given 某项指标在当前平台不可用 - When 页面收到部分结果 - Then 该指标显示“不可用”及原因,其他指标继续更新 ### US-C7 从任意应用打开工具 作为用户,我希望在魔法笔记、知识库、智能心跳和运行记录页面也能打开系统工具。 验收: - Given 用户位于任意一级页面 - When 用户点击文件、终端、浏览器或资源监控 - Then 主页面保持不变 - And 右侧工作栏打开对应面板 - And 工具不会覆盖主内容或伪装成一级页面 ## 5. Epic D:可访问性和布局 ### US-D1 使用键盘打开系统工具 作为键盘用户,我希望按顺序聚焦并打开左下角工具,以便不依赖鼠标。 验收: - 每个系统工具和设置都是独立按钮 - Tab 顺序与视觉顺序一致 - Enter 和 Space 均可激活按钮 - 每个纯图标按钮都有可访问名称和工具提示 - 焦点样式不被侧栏边界裁切 ### US-D2 在窄窗口使用快捷栏 作为小屏用户,我希望侧栏抽屉中的工具按钮保持可操作。 验收: - 工具按钮保持单行且不重叠 - 不因宽度不足隐藏文件、终端、浏览器、资源监控或设置 - 触控点击区域符合统一界面规范 - 关闭侧栏抽屉后焦点返回原触发按钮