跳转至

菜单栏

Open Dashboard 和网关窗口操作默认使用 Web 体验。若要使用原生聊天窗口,请在 Dashboard → Settings → This Mac → App 下启用 Native experience (Experimental)。该偏好适用于菜单栏、Dock、主 Gateways 菜单以及 File → New Gateway Window…(Cmd-N)。Settings 始终打开 Web 版 Dashboard 设置页面。有关切换行为和原生聊天功能,请参阅 WebChat。

显示内容

  • 菜单栏图标和菜单的第一行状态显示当前代理工作状态。
  • 工作进行中时隐藏健康状态;当所有会话都进入空闲状态后,健康状态会恢复显示。
  • 根菜单中的 Context 项打开一个包含最近会话的子菜单,而不是在根菜单中展开它们。
  • 根菜单中的 Devices 块仅列出已配对的设备(来自 node.list),不包含 client/presence 条目。
  • 当提供方用量快照可用时,根菜单中的 Usage 部分会出现在 Context 下方;若费用数据也可用,其后还会显示费用详情。Today 的费用总额和每日图表使用 Mac 的本地时区。
  • 当有两个或更多 Gateway 可用时,第一行状态会包含主 Gateway 的名称。随后根菜单中的 Gateways 部分会列出每个 Gateway 及其健康状态和主标记。选择某一行可在所选体验中打开或聚焦该 Gateway。按住 Option 可为符合条件的已保存 Gateway 显示 Set as Primary…。
  • Quick Chat 打开浮动主会话输入框。其当前的全局快捷键显示在该项旁边。
  • Settings…(Cmd-,)打开 Dashboard 设置。应用和设备偏好设置位于 This Mac 下,语音控制位于 Talk 下,应用更新偏好设置位于 Updates 下。
  • Connection… 打开原生 Connection 窗口。这是一个标准的 macOS 设置窗口,带有 Connection 和 Gateways 工具栏标签页。启用开发者开关时还会显示 Debug。即使 Gateway 不可达,该窗口也始终可用。
  • About OpenClaw 会选择原生 Connection 窗口中的 About,其中包含应用版本、构建信息、资源链接和 Copy Build Info。它无需 Gateway 连接即可使用。

应用的主 Gateways 菜单始终存在。它列出主 Gateway(如果已配置),其后是 This Mac(如果同时托管本地 Gateway),然后是已保存的 Gateway;Command-1 至 Command-9 按此顺序分配。每张卡片显示健康状态、版本和缩短的构建 ID、端点、延迟,以及在所选体验中打开的窗口数(如果可用)。浏览器认证的配置文件还会显示 Access 及其会话过期时间。Primary 徽标用于标识主 Gateway。前台窗口标记跟随所选体验的最前 Gateway 窗口。选择卡片会在所选体验中打开该 Gateway,或将其现有窗口带到前台。按住 Option 可显示 New … Window,或按 Option-Command 加相同数字。两者都会为该 Gateway 打开另一个独立窗口。Manage Gateways… 打开 Connection → Gateways;即使未配置任何 Gateway,它也始终可用。

右键点击 OpenClaw 的 Dock 图标可访问 Open Dashboard 和 Settings…。当配置了多个 Gateway 时,Dock 菜单还会列出同一目录中的每个 Gateway,包括主 Gateway、This Mac(如果可用)和已保存的配置文件。选择其中一个会在所选体验中打开或聚焦它;对勾标记该体验中最前的 Gateway 窗口。

Gateway 状态点跟随每个打开的 Dashboard 的实时连接,包括非主 Gateway 的已保存 Gateway。绿色表示已连接,红色表示连接错误,灰色表示当前没有连接结果。如果多个窗口显示同一个 Gateway,只要其中任意一个已连接,状态点就保持绿色。对勾标识所选窗口的 Gateway;Primary 是单独的设置。

Gateway 健康探测仅在主 Gateways 菜单打开时运行。刷新期间,卡片显示缓存的信息;在首次结果之前显示 checking…。失败后,它们显示 unreachable 及最后一次成功联系的时间。关闭菜单会取消探测,并断开没有打开 Web 或 Native 窗口的已探测保存 Gateway。主连接保持连接状态,缓存的信息在应用退出前一直可用。

Devices 和 Automations 摘要会在菜单打开时刷新。关闭菜单会停止这些由菜单持有的轮询。重新打开同一个主 Gateway 时,缓存的摘要仍然可用。更换主 Gateway 后,会从新选择的 Gateway 刷新 Devices、Automations、Usage 和费用详情。可在 Dashboard 的 Cron Jobs 页面管理任务。

Automations 摘要显示完整已启用任务数,并预览最多八个任务,按下次运行时间排序。

手动 Cron 刷新和成功的任务变更会取代较早的读取结果。因此,进行中的响应无法将已删除的任务恢复到列表中。

状态模型

  • 来源:WorkActivityStore(apps/macos/Sources/OpenClaw/WorkActivityStore.swift)。
  • 事件以带 runId 的 ControlAgentEvent 形式到达。处理程序(ControlChannel.routeWorkActivity)从事件负载中读取 sessionKey;如果不存在,则默认为 "main"。
  • 优先级:主会话(默认 sessionKey == "main")始终优先。如果主会话处于活动状态,其状态会立即显示。如果主会话空闲,则显示最近活动的非主会话。该 store 不会在活动进行中切换状态。它仅在当前会话进入空闲状态或主会话变为活动状态时切换。
  • 活动类型:
  • job:高层级命令执行(state: started|streaming|done|error|...)。
  • tool:phase: start|result,带 name、可选的 meta/args。

IconState 枚举(Swift)

  • idle
  • workingMain(ActivityKind)
  • workingOther(ActivityKind)
  • overridden(ActivityKind)(调试覆盖)

ActivityKind -> 徽标符号

ActivityKind 包装一个 ToolKind(bash、read、write、edit、attach、other)或一个裸 job。每个都会映射到一个绘制在小动物图标上方的 SF Symbol 徽标(IconState.badgeSymbolName):

类型 符号
bash chevron.left.slash.chevron.right
read doc
write pencil
edit pencil.tip
attach paperclip
other / job gearshape.fill

视觉映射

  • idle:普通小生物,无徽章。
  • workingMain:带符号的徽章,完整着色(.primary 突出度),腿部“working”动画。
  • workingOther:带符号的徽章,柔和着色(.secondary 突出度),无 scurry 动画。
  • overridden:无论实际活动如何,均使用所选符号/着色。

上下文子菜单

  • 根菜单显示一行“Context”,包含会话计数/状态。该行打开子菜单(MenuSessionsInjector)。
  • 子菜单头部显示最近 24 小时内的活跃会话数。
  • 每个会话行保留其 Token 栏、时长、预览、思考/详细切换、重置、压缩和删除操作。
  • 加载、断开连接和会话加载错误消息在上下文子菜单内渲染。
  • 用量和成本部分保持在根级别,位于 Context 下方,无需打开子菜单即可快速查看。

状态行文本(菜单)

  • 当存在两个或更多 Gateway 时,连接标签会追加主 Gateway 的目录显示名称,例如 OpenClaw Active — Mac Studio。
  • 当工作处于活动状态时:<Session role> · <activity label>(在 MenuContentView 中为 "\(roleLabel) · \(activity.label)"),其中角色标签为 Main 或 Other。
  • 空闲时:回退到健康摘要。

事件摄取

  • 来源:控制通道 agent 事件,由 ControlChannel.routeWorkActivity(from:) 路由。
  • 解析字段:
  • stream: "job" 以及用于开始/停止的 data.state。
  • stream: "tool" 以及 data.phase、data.name、可选的 data.meta/data.args。
  • 工具标签来自 ToolDisplayRegistry.resolve(name:args:meta:)。未解析的名称回退到原始工具名称。

调试覆盖

  • 在 仪表盘 → 设置 → 此 Mac → 开发者 中启用开发者切换。然后打开 连接… → 调试 → 图标覆盖:
  • System (auto)(默认)
  • Working: main / Working: other(按工具类型:bash、read、write、edit、other)
  • Idle
  • 存储在 UserDefaults 键 openclaw.iconOverride 下,并映射到 IconState.overridden。

测试清单

  • 触发主会话任务:图标立即切换,状态行显示主标签。
  • 在主会话空闲时触发非主会话任务:图标/状态显示非主会话,并在其完成前保持稳定。
  • 在另一个会话处于活动状态时启动主会话:图标立即切换为主会话。
  • 快速工具突发:徽章不会闪烁(在清除已完成工具前有 2 秒宽限窗口,WorkActivityStore.toolResultGrace)。
  • 所有会话空闲后,健康行重新出现。

本页原文 Markdown:在 AtomGit 查看·内容源自开源项目 cl/openclaw