Skip to content

体验建议:支持持久化多工作区,并限制对话底部空白滚动 #312

Description

@xinzhihong-ship-it

希望改进以下两个高频使用体验:

1. 支持定义和切换多个工作区

当前可以根据已有会话切换项目,但希望工作区能够独立管理,不依赖历史会话:

  • 添加任意目录为工作区
  • 重启 Pi Web 后仍然保留
  • 快速切换、排序和移除工作区
  • 移除工作区只删除列表记录,不删除目录或会话
  • 切换后,会话列表、Explorer 和新会话 cwd 同步更新

2. 限制对话底部的空白滚动区域

目前 Agent 运行期间,对话区域可以向下滚动超过最后一条实际内容,出现大量空白。

期望:

  • 最远只能滚动到最后一条可见内容的底部
  • 可以保留少量底部间距,但不应出现一整屏空白
  • 用户停留在底部时,流式输出自动跟随
  • 用户主动向上滚动后,不强制拉回底部

可能与 components/ChatWindow.tsx 中 Agent 运行时插入的整屏高度占位元素有关:

{agentRunning && (
  <div style={{
    height: scrollContainerRef.current
      ? scrollContainerRef.current.clientHeight
      : "80vh"
  }} />
)}

建议改用滚动锚点,或者仅保留较小的底部 padding。

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