Skip to content

子代理条与 footer 状态信息重复、glyph 不一致;dashboard overlay 紧贴正文 #41

Description

@tt-a1i

截图里同屏出现的两条:

 ○ ■ user-input-fold · seal/glm-5.3        0/1 agents · 3m04s · 2%/1.0M · ↓ to manage
~            seal/glm-5.3 · 24%/1.0m · $0.00 · subagents: ■ 1 running · /subagents to view

问题 1:编辑框下方的 strip 与 footer 状态互相重复

extensions/subagents/navigation.tsSubagentStripWidget.renderextensions/shared/activity-status.tsformatActivityStatus 各自独立组装,导致:

  • 两个 glyph 叠在开头marker/)+ statusSquare)。焦点指示和状态指示挤在一起,读起来像乱码。
  • 与 dashboard 已经不一致子代理 UI 打磨:列表贴合内容、详情页去掉横线带、命令执行成块 #36 之后 dashboard / takeover 用 spinner + /,strip 和 footer 状态还在用静态 。同一个运行中的子代理,在三个地方长得不一样。
  • model 重复:strip 显示 seal/glm-5.3,footer 也显示 seal/glm-5.3
  • context 重复且看起来矛盾:strip 是子代理的 2%/1.0M,footer 是父会话的 24%/1.0m。同屏两个 context 百分比、单位大小写还不同(1.0M vs 1.0m),用户无法判断哪个是哪个。
  • 同一件事两个提示:strip 说 ↓ to manage,footer 说 /subagents to view
  • 0/1 agents 措辞别扭:只有一个子代理时说 0/1 agents,读者要想一下这是「0 个完成 / 共 1 个」。

提议

一处信息只由一个地方负责。 strip 是可聚焦、紧贴编辑框的富展示,它赢;footer 状态退化成纯计数。

  • strip 开头只保留一个 glyph 列:聚焦时 (accent),未聚焦时显示状态 glyph(running 用 子代理 UI 打磨:列表贴合内容、详情页去掉横线带、命令执行成块 #36transcript.ts 导出的共享 spinner,settled 用 /)。
  • strip 删掉 model 与 context(footer 已有父会话 context;子代理的 context 在 dashboard/takeover 里看)。
  • 0/1 agents → 总数为 1 时不显示计数(标题已经点名了它);多个时用 1/3 done 这类明确措辞。
  • footer 状态里 换成同一个共享 spinner;当 strip 可见时去掉 /subagents to view 尾巴(strip 的 ↓ to manage 已经说了怎么进),避免同屏两个入口提示。

问题 2:dashboard overlay 紧贴背后正文

overlay 直接压在 transcript 上,盒子上边紧接上一条命令输出、hints 行紧接下一段正文,没有任何呼吸空间,看起来像是嵌进正文而不是浮在上面。

提议

给 dashboard overlay 上下留白(overlayOptions.margin,或在组件 render() 首尾各加一空行),并在盒子与 hints 行之间留一行。

takeover 视图不动——它本来就占满全屏、没有"挤"的问题,而且它的高度预算是精确的 rows - 1#36),加 margin 会破坏该不变量。

验收

  • 同屏不再出现两个 context 百分比、两个 model、两个"怎么打开"的提示
  • 运行中的子代理在 strip / footer / dashboard 三处 glyph 一致(同一个共享 spinner)
  • strip 开头只有一个 glyph 列
  • 只有一个子代理时不再出现 0/1 agents
  • dashboard overlay 与正文之间有可见留白;takeover 高度仍为 rows - 1

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions