Skip to content

【功能建议】支持多个可命名工作台,一键恢复会话、页面和分屏布局 #460

Description

@isCopyman

背景

CodeG 当前已经能够保存已打开标签,并在本地持久化 split-group 布局,因此重启后可以恢复“上一次工作状态”。但目前只有一套全局工作台,无法保存多组不同的工作上下文并快速切换。

例如同一个 CodeG 实例中,用户可能有几组互不相关的长期工作,每组都需要固定的会话、文件页和分屏排列。每次手动关闭、重新打开和重新分屏比较麻烦。

建议

在现有 Workspace/Tab 系统上增加可命名的 Workbench / Layout:

  1. 将当前工作状态“保存为工作台”;
  2. 工作台记录打开的会话标签、可恢复的文件/差异等页面、分屏树、尺寸、各分组活动标签和面板开关;
  3. 在左侧或快速切换器中一键切换工作台;
  4. 切换前自动保存当前工作台的最新状态;
  5. 支持复制、重命名、归档和删除工作台;
  6. 启动时恢复上次使用的工作台。

建议语义

  • Folder/Project:文件和运行路径;
  • Session:持久对话;
  • Workbench/Layout:用户此刻希望同时打开的 Session 与页面组合。

一个工作台可以混合不同 Folder、Agent 和 Session,不要求它们位于同一仓库。它更接近浏览器标签组或 IDE Workspace,而不是 Git worktree。

恢复边界

  • 会话应恢复到原 session id,而不是新建会话;
  • 文件不存在时显示失效标签并允许移除,不应导致整个工作台恢复失败;
  • 终端进程等不可安全恢复的状态,只恢复面板入口,不自动重新执行命令;
  • 工作台布局可默认按设备保存,因为窗口尺寸和本地路径具有设备差异。

MVP

第一阶段可只支持:命名、保存/切换、恢复会话标签和现有 split-group 布局。文件页、侧栏状态和跨设备同步可以后续扩展。

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions