跳转至

WebChat (macOS)

macOS 应用默认使用 Web 体验,在应用窗口中嵌入 Gateway 的 Control UI。要使用原生窗口和会话侧边栏,请打开 Dashboard → 设置 → 此 Mac → 应用,然后启用 原生体验(实验性)。关闭它即可返回 Web。

此偏好设置适用于 打开 Dashboard、新建 Gateway 窗口…、Gateway 菜单、完整聊天打开以及 Dashboard 启动链接。切换体验会隐藏之前体验的窗口,保留其已加载的草稿,并取消待打开的窗口。如果某个窗口当时可见,则同一 Gateway 会在所选体验中打开。设置… 始终打开 Web Dashboard 设置;连接… 和 关于 OpenClaw 会打开原生连接窗口;“关于 OpenClaw”会选中其 关于 标签页。

Gateway 和账户变更仍会刷新隐藏的 Dashboard 窗口。已保存的 Web 草稿会在相同的 Gateway 地址和已认证账户内恢复;它们不会被复制到其他 Gateway、账户或重新创建的 SSH 隧道地址。

以下原生聊天功能连接到 Gateway,并默认使用所选智能体的主会话(main;当 session.scope 为 global 时则为 global)。Quick Chat 在任一体验中都仍然是原生浮动输入框。

原生窗口中的对话

完整的原生聊天窗口会渲染所连接 Gateway 的 Control UI 聊天面板,包括其标题、对话记录、输入框、消息操作、卡片和侧面板。其标题与原生侧边栏控件共享一条标题栏行;对话没有第二个原生工具栏。侧边栏、智能体和会话名册、Cmd-K 命令面板、菜单、窗口管理以及 Gateway 选择仍保持原生。在侧边栏或命令面板中选择一条对话会导航到现有 Web 面板,而不会重新加载它。新建对话仍位于侧边栏和 Shift-Cmd-N 上:它通过原生所有者创建会话,然后在该面板中打开。

Web 面板负责发送、草稿、队列、历史记录、已读回执、查找和导出。Cmd-F、Return、Shift-Return 和 Escape 等面板内按键会发送到 Web 视图。指向设置和其他页面的链接会为同一 Gateway 打开 Dashboard,而对话保持不变。

应用仅在当前文档报告支持后才显示 Web 面板。旧版 Gateway UI、就绪超时或加载失败会选择现有的 Swift 聊天视图。认证、TLS 和网络故障仍保持为可见错误。待处理的原生发件箱工作会保留其 Swift 所有者,直到清空;项目永远不会被复制到 Web 存储。Quick Chat 和 iOS 仍使用 Swift 聊天 UI。

作为对比,可在仅限开发者的 调试 选项卡中启用 使用原生对话视图,然后打开新的聊天窗口。下面的 Swift 渲染细节适用于该模式、回退模式和 Quick Chat。Web 对话遵循 Gateway 的 Control UI 呈现方式。

完整的原生聊天窗口是一个分栏视图:

  • 智能体与对话侧边栏:已命名的智能体出现在可搜索对话列表上方,带有其配置的表情符号、解析后的文本头像或名称首字母、低调的选中高亮,以及来自已加载会话的活动和未读摘要。选择某个智能体会打开其主对话,并将该智能体的对话分区命名;切换回来会恢复该对话的文本草稿。置顶对话、Gateway 支持的分组和最近对话保留其现有分区。对话行显示时间戳;下方的视图选项控制消息预览和后台会话。生成的子会话嵌套在各自分区内的父会话之下;折叠的父会话会汇总运行中、失败和未读的后代会话。上下文菜单支持会话信息、重命名、置顶、分叉、已读/未读、归档/恢复、复制会话密钥和删除。新建对话(Shift-Cmd-N)会通过 sessions.create 为所选智能体立即创建;其旁边的选项弹出框以所选智能体为起始,并提供 独立工作副本 来创建受管理的 Git 工作树,可选择基础分支或提交。
  • 窗口工具栏:包含纯对话标题和当前智能体、已知时带标签的工作中/排队/注意状态、在对话中查找,以及会话操作菜单。待处理问题和当前模型的认证失败也会显示注意状态;已回答或已过期的问题则不会。该菜单可重命名或分叉当前会话,并更新其置顶、已读或归档状态。对话…(Shift-Cmd-S)打开活动/已归档管理器,用于 Gateway 搜索、分组管理、会话检查、重命名、置顶、归档和恢复。选择模式可对多个活动会话应用置顶、取消置顶、归档或删除,同时保持各个失败可见。菜单中的独立勾选项可显示或隐藏助手推理和工具活动;两者默认开启,并在启动之间保留。
  • 对话记录与输入框:在宽窗口中,居中的阅读栏使消息和输入框保持对齐。助手消息以纯文本呈现,不重复头像;用户消息以柔和的强调色气泡呈现。深色模式在炭黑背景上使用更柔和的灰色文本,同时保留增强的文本对比度;增强对比度会进一步提高文本对比度。圆角输入框显示所选智能体名称,初始为紧凑的单行高度,随多行草稿增长,并将附件、模型、语音和发送控件对齐在文本下方。+ 菜单包含附件、分支和工具调用详细程度。选择 + → 添加附件…、将文件拖放到输入框,或粘贴在 Finder 中复制的文件以暂存附件。选择器包含图片、视频、音频、PDF、文本/代码、CSV、JSON、Markdown、ZIP 压缩包和 Office 文档。文件标签显示文件名和大小,可在发送前移除。上下文环显示 Token 用量和会话成本,并提供 压缩对话。模型菜单按提供商对模型分组,将置顶和最近使用的模型保持在顶部,并可置顶或取消置顶所选模型。模型登录位于此菜单中,并在没有列出模型时仍可用。当所选模型因凭据缺失或无效而无法发送时,输入框旁的内联提示会提供 模型登录 和 重试。临时冷却不会显示此认证提示。努力程度包含思考和快速响应设置。控件会适应狭窄窗口,同时保持语音和发送操作可见。Return 发送;Shift-Return 插入换行。复制、回复、朗读和消息操作菜单会在悬停或键盘聚焦时出现在消息下方;右键操作仍然可用。工具活动使用紧凑卡片,带有明确的工作中、已完成、失败或无结果标签;展开卡片可阅读其结果或差异。可从父对话中使用 /subagents list、/subagents info <id|#> 和 /subagents log <id|#> 检查原生子智能体运行。待处理的智能体问题以原生卡片形式呈现,包含单选或多选选项、自由文本 其他 答案、过期倒计时和共享终端状态。空聊天提供桌面启动提示。输入 / 会打开由 commands.list 支持的斜杠命令自动补全,并支持方向键/Tab/Return/Escape 键盘导航。右键单击消息可复制其可见的 Markdown,而不包含隐藏推理。被截断的助手消息还提供 打开完整消息,它会加载一个可选择文本的 Markdown 阅读器。使用 朗读 进行 Gateway TTS,并带有本地语音回退。
  • 命令面板:在完整的原生聊天窗口中按 Cmd-K 或选择 导航 → 命令面板…。面板打开时,其搜索字段处于聚焦状态,其后依次显示智能体、按侧边栏顺序排列的对话,以及现有窗口操作:新建对话、对话…、在对话中查找、导出对话记录…。输入会立即筛选已加载的标题、智能体名称和可用的缓存预览,然后通过与 对话… 相同的 Gateway 搜索来搜索所选智能体的较旧活动对话。完全匹配排在前缀和子字符串匹配之前。对话行使用侧边栏的时间戳和次要文本:先显示当前活动或注意状态,然后显示可用的缓存预览。智能体名称仅出现在属于不同智能体的对话旁。上/下箭头键选择结果,Return 或单击可打开,Escape 关闭面板并将焦点返回输入框。该命令仅使用主原生聊天窗口及其 Gateway;当另一个界面成为主界面时,该命令被禁用。Web 导航不变。

  • 在对话中查找:按 Cmd-F 可在已加载的对话中搜索用户和助手文本。Return 或 Cmd-G 移动到下一条匹配消息;Shift-Cmd-G 向前移动。选中的消息会显示轮廓并展开,而不会因新回复而把你带离。Escape 关闭查找。搜索不会获取更早的历史记录,也不会搜索隐藏的推理和工具负载。

  • 语音控制:输入框可以启动或停止现有的 macOS Talk Mode,而不会替换其菜单栏覆盖层。当 Talk Mode 处于活动状态时,输入框会显示其聆听/思考/说话状态、实时音频活动以及可展开的滚动转录。右键单击 Talk 按钮可选择 系统默认 或已连接的麦克风;这与 Voice Wake 和按住说话使用的麦克风选择相同。如果所选麦克风断开连接,当前 Talk 会话会回退到系统默认,并在下次启动 Talk Mode 时再次尝试该选择。当 Talk Mode 未拥有音频捕获时,单独的麦克风操作会录制语音笔记。

侧边栏和新建线程选择器会立即显示代理列表,使用已配置的名称或代理 ID。已解析的身份会在每个代理到达时更新,包括工具栏副标题和输入框,而不会延迟选择。已配置的名称保持优先;Gateway 的默认身份是 助手。文本和表情头像会在重新连接或身份更改后使用同一目录刷新。徽章最多显示两个完整字符,并保留表情序列。完整原生窗口中不显示图像头像;相反会显示文本头像或姓名首字母。

文件附件在持久发件箱中保留其原始文件名、MIME 类型和字节。准入使用 Gateway 通告的图像和文件大小限制。文件限制还会限制一条消息中所有附件的总字节数,图像在调整大小后计入。超出剩余预算的文件不会进入草稿;发送准入会重新检查总数,并保持超大草稿完整。对于未通告限制的旧版 Gateway,原生聊天将非图像文件和附件总预算限制为 19,464,192 字节(25 MiB 帧的解码预算),并将处理后的图像限制为调整大小后的 5 MB。图像源读取有单独的 64 MiB 上限,以限制调整大小输入内存;在该上限内的较大源照片,如果其调整大小后的 JPEG 符合图像和批量预算,则可以发送。空文件或不可读文件显示 无法附加;超大文件显示 文件过大,无法发送,并显示受影响的文件名。录制的语音笔记保留其单独的录制流程。发送的上传在历史刷新后仍可见;目前尚不支持从原生历史下载传入的上传。助手生成的托管文件保留其 下载文件 操作。

从菜单栏打开的锚定紧凑聊天面板保持紧凑的单列布局,并内联显示相同的模型、思考、详细程度和 Fast 控件,以及起始提示、Talk Mode、语音笔记和 Listen。助手推理和工具活动在此紧凑界面中保持隐藏。

原生聊天会保留 Markdown 段落换行,包括列表之前以及响应流式传输期间。

在完整的 macOS 聊天窗口中,已完成的评论、推理和工具工作会折叠为答案上方的 已处理… 披露。展开它可以检查这些工作;最终文本、图像和其他附件保持可见。活动轮次、没有最终答案的工作,以及答案之后未解决或失败的工作保持展开。工作会保留在转发消息、新输入和历史分隔符的同一侧。在对话中查找会在搜索时展开转录。此展示方式适用于主要代理对话和新线程,不会更改存储的历史记录或转录导出。

子代理活动在其整个生命周期中使用同一种爪形:排队时静音且静止,运行时动画,完成后短暂变绿,取消后变暗。失败任务会添加一个小警告徽章;超时任务会添加一个琥珀色时钟。悬停可查看确切状态,VoiceOver 也可访问该状态。名称不包含状态后缀,未命名任务显示为 子代理。减少动态效果会保持运行中的爪形静止。现有的详情展开和已完成任务保留方式保持不变。

消息时间和模型

已完成的消息组会在消息用量旁边显示一个低调的时间标签。最近的消息使用相对时间;至少一周前的消息显示紧凑的本地日期,必要时包含年份。悬停时间可查看完整日期、时间和时区;VoiceOver 也会读取这些确切细节。助手回复还会显示转录中记录的来源模型(如果已知)。更改输入框的模型不会重新标记较早的回复。实时流式传输、评论和工具活动不会添加时间戳页脚。

线程视图选项

打开原生侧边栏 线程 标题右侧的 视图选项。默认是 排序 → 创建时间,最新线程在前;没有创建日期的线程排在有日期的线程之后。选择 最后更新 可按最近活动排序。固定线程保持其固定顺序。

显示消息预览、显示自动化会话 和 显示系统会话 默认关闭。自动化会话是 cron 对话;系统会话根据其记录的创建来源识别。人工创建和命名的内部对话保持可见。即使其自动化或系统类别被隐藏,所选对话仍保持可见。关闭预览会隐藏环境消息和活动文本,同时保留提醒、未读失败和排队状态可见。这些选择会为应用配置文件保存在本地。

选择一个代理以打开其主要对话。当该代理条目可用时,该对话会从线程列表中省略,但其已加载的子级仍可达。如果代理目录不可用,主线程会保留在列表中以便恢复。

待处理问题和审批

线程行、agent 行和折叠的群组标题会为其最早待处理的请求显示问题或审批按钮。父线程包含来自其后代线程的待处理请求。悬停可查看预览和同类额外请求的数量,或激活按钮以在不切换对话的情况下阅读完整预览。VoiceOver 会公开相同的详细信息。

审批预览包含来自该窗口 Gateway 的命令、插件和系统代理请求。重新连接后会刷新,并在已解决或过期时清除。同一 Gateway 的多个窗口共享该队列;不同的 Gateway 连接则各自保留其请求。预览请求并不会批准它,也不会扩展现有审批界面中可用的操作。

来源

在原生聊天和 Quick Chat 中,已完成的回答会显示最多八张紧凑的 来源 卡片,对应回答运行期间由网页搜索或网页抓取返回的引用页面。点击卡片可在弹出窗口中查看记录的 搜索摘要 或 页面摘录,然后选择 打开来源 访问该页面。没有记录摘录的卡片会明确说明;打开来源预览不会再次获取该页面。

来源图标遵循 Gateway 的自动 favicon 偏好,并使用其经过身份验证的 favicon 服务;当该服务被禁用或不可用时,会显示地球图标。会话链接以及 GitHub issue 或 pull request 链接保留其原有卡片。

图表

在原生聊天(包括 Quick Chat)中,已完成的标记为 mermaid 的围栏代码块会渲染为图表。渲染使用内置资源在本地运行。当围栏的结束定界符到达或响应结束时,该围栏才算完成;不完整的流式围栏仍保持为代码。

使用右上角的小型选项按钮可查看或复制源代码并展开图表。复制按钮也会在悬停或键盘聚焦时出现。点击图表可打开其矢量预览,您可以在其中缩放和平移。按关闭按钮或 Escape 键关闭预览。在 Quick Chat 中,关闭预览会返回到回复;点击输入栏及其预览之外的区域会关闭 Quick Chat。

无效或过大图表的源代码仍保持可读。临时渲染失败时,选项菜单中提供 重试图表。

会话颜色

在侧边栏中右键点击会话,或打开其菜单栏的会话子菜单,然后选择 颜色。选择红色、蓝色、绿色、黄色、紫色、橙色、粉色或青色。默认 会清除颜色。

有颜色的会话在侧边栏和菜单栏行中显示一条窄的左侧条纹。打开的聊天标题使用带标签的活动状态,而不是颜色圆点。未设置颜色的会话不显示条纹。Gateway 存储的是颜色名称,而不是十六进制值;应用会针对浅色和深色外观调整其色调。

多个 Gateway 窗口

打开 连接… → Gateways 可添加或移除可复用的 Gateway 配置。每个配置都包含一个私有网络的 ws:// 或安全的 wss:// 端点,支持浏览器登录或可选的令牌/密码;凭据存储在 macOS Keychain 中。在 添加 Gateway 中输入主机名时,默认使用 HTTPS。对于 Cloudflare Access,连接 会打开默认浏览器以建立您的个人会话。请参阅浏览器登录和网站启动链接。

安全的令牌/密码配置维护各自的首次使用证书固定(受系统信任门控),并且不会从主 Gateway 继承 gateway.remote.tlsFingerprint。Dashboard 窗口强制执行相同的已保存配置固定策略。浏览器会话使用正常的 HTTPS 信任,并保持绑定到其经过身份验证的 Gateway 来源,包括其端口。每个浏览器身份验证配置拥有自己的 dashboard 浏览器数据,这些数据按命名应用配置相互隔离。手动令牌/密码配置保留其现有的浏览器存储和偏好设置。使用浏览器登录会启动一个个人存储,而不会从共享浏览器存储中复制凭据。浏览器身份验证的 dashboard 中的 Mac 标签页使用独立的临时浏览器会话,由该窗口的 Mac 标签页共享。移除配置会关闭其原生聊天和 dashboard 窗口,并关闭其辅助连接。更新已保存配置的凭据会刷新其已打开的 dashboard 窗口。使用 重新连接 可续期已过期的浏览器会话。重新连接同一账户会保留其浏览器偏好设置。切换账户或移除浏览器身份验证的配置会清除其隔离的 dashboard 浏览器数据;移除任何配置也会删除其已保存的凭据。

如果图片或文件提示您登录以继续加载内容,请在 Mac 应用中选择登录。应用会续期受影响的 Gateway 的会话并返回到打开的对话。仅登录普通浏览器标签页不会刷新 Mac 应用独立的浏览器会话。

选择文件 → 新建 Gateway 窗口…或按 Cmd-N,然后选择一个 Gateway。选择器包括主 Gateway、This Mac(如果它也托管本地 Gateway)以及已保存的配置。它会记住所选的 Gateway。每次选择都会在所选 Web 或 Native 体验中创建一个新的独立窗口,因此同一 Gateway 可以出现在多个窗口中,并具有不同的活动会话和导航状态。

主 Gateways 菜单始终存在。它先列出主 Gateway(如果已配置),然后列出 This Mac(如果可用)和已保存的 Gateway,顺序对应 Command-1 到 Command-9。选择某个项目会在所选体验中打开其窗口,或将其现有窗口置于最前。按住 Option 可选择新建 … 窗口,或使用同一数字键的 Option-Command 组合,以打开另一个独立窗口。卡片显示所选体验的运行状况、版本和缩短的构建 ID、端点、延迟以及已打开窗口数量。浏览器身份验证的配置显示访问权限和会话过期时间。Primary 徽章标识主 Gateway,前置窗口标记会跟随所选体验的最前窗口。管理 Gateway… 会打开连接 → Gateways,即使列表为空也是如此。对于通过 SSH 隧道连接的主 Gateway,主行使用 SSH 主机名而不是回环隧道端点,除非匹配的已保存 Gateway 提供了其名称。

右键点击 OpenClaw 的 Dock 图标,可打开 Open Dashboard 和 Settings…。 当配置了多个 Gateway 时,该菜单还会列出所有 Gateway;勾选标记会跟随所选体验中最前方的 Gateway 窗口。

菜单仅在打开时探测健康状态,并在两次打开之间保留缓存信息。 在首次结果出现前,卡片会显示 checking…;探测失败时显示 unreachable,并在已知时显示上次成功联系的时间。关闭菜单会取消进行中的探测,并关闭没有打开 Web 或 Native 窗口的已保存 Gateway 的空闲探测连接。它绝不会断开主 Gateway。

应用重启后,它还会在所选体验中重新打开你选择的 Gateway。 选择 Primary 会将启动对象切换回主 Gateway。后台连接刷新不会改变此选择。

同一已保存配置文件和浏览器账户的窗口共享一条 Gateway 连接、转录缓存、离线发件箱和路由租约,同时保持独立可导航。续期该账户的会话会保留其排队消息。切换账户会关闭旧账户的 Native 聊天窗口;其缓存的历史记录和排队消息仍保留在该账户中,并在你重新登录时可用。Token/密码配置文件保留其配置文件范围内的缓存和设备身份验证。不同配置文件的窗口保持连接,并可同时运行聊天。

菜单栏应用所配置的 Gateway 仍是 Mac 节点能力和 Talk Mode 的拥有者。额外的 Gateway 窗口仅限操作员使用,因此第二个 Gateway 无法静默重定向全局麦克风或设备控制。Listen/TTS 和普通聊天操作使用窗口自身的 Gateway 连接。内联小组件也从该窗口的 Gateway 加载。

Gateway 选择器

在 Web 体验中,侧边栏身份菜单会列出 Mac 应用已配置的 Gateway,并带有健康状态、主 Gateway 和当前选择标识。选中的 Gateway 会以勾选标记代替其快捷键提示。前九行中的其他行按原生 Gateway 菜单顺序显示 ⌘1–9 快捷键;后续行没有快捷键提示。选择一个 Gateway 可在同一窗口中替换当前 Dashboard,或者按住 Command 或 Control 点击它以打开单独的 Dashboard 窗口。Set as primary… 会在确认后,将正在查看的 Token 身份验证配置文件设为 Mac 应用的主 Gateway。该应用会替换主 Gateway 的凭据,并关闭其 Native 聊天窗口;独立的已保存配置文件窗口保持打开。显示 Primary 的 Dashboard 窗口会跟随新连接,包括单独打开的窗口。连接时,侧边栏底部还会显示当前 Gateway,并在其为主 Gateway 时加以标记。仅密码和浏览器登录配置文件可以查看,但不能设为主 Gateway。

Dashboard 命令(如 New Session 和命令面板)会作用于最前方的 Gateway 窗口。

Native 审批卡片和对话框仅适用于请求它们的 Gateway 连接。更改主 Gateway 不会将待处理的审批转移到新的 Gateway。

在目标 Gateway 的 Dashboard 中管理频道、Gateway 配置、技能和 cron 作业。Settings…(Cmd-,)可在任一体验中打开 Web Dashboard 设置;Settings → This Mac 可从任何嵌入式 Dashboard 窗口控制这台 Mac 的本地功能。Connection… 仍保持原生,因此即使 Dashboard 无法正常工作,你也可以修复连接。

Quick Chat 栏

按 Option-Space(⌥Space)或从菜单栏菜单中选择 Quick Chat,即可打开主会话的浮动输入框。打开 Dashboard → Settings → This Mac → App,可在原生录制面板中更改全局快捷键,然后选择 Done。

Quick Chat 会显示目标智能体(头像或表情符号,并以智能体名称作为占位符),并将消息发送到该智能体的主会话。其两行输入框将草稿保留在附件、模型、思考、听写和发送控件上方,与 Web 聊天布局一致。按 Return 确认发送后,输入栏会保持打开,并在同一输入框上方显示流式 Markdown 回复和最近的聊天记录。V 形图标可展开或折叠对话,而不会清空草稿或中断回复。已完成任务的详细信息会随聊天记录滚动,而不是占据书写区域。按 Command-Return 可发送并在完整聊天窗口中打开同一目标,按 Shift-Return 可换行,按 Escape 可关闭整个输入栏和回复区域。点击输入栏外部也会将其关闭。连接消息仅在需要关注时出现。当相关 macOS 权限缺失时,附加的提示条会提供 Grant 和 Not now 操作。

使用麦克风按钮可在输入框中听写。部分语音结果会实时替换已听写的文本范围,同时保留输入框中已有的文本。再次按下按钮、按 Return 或 Escape 可停止;发送、隐藏 Quick Chat 或使其失焦也会释放麦克风。首次使用时,应用会请求 macOS 的麦克风和语音识别权限。Quick Chat 使用 Apple Speech,并可能使用其网络服务;只有被动 Voice Wake 需要设备端识别。

模型控件会显示目标会话当前使用的模型。独立的 Effort 控件会打开一个分级思考滑块,包含该模型标注的级别,并在受支持时提供 Fast mode。拖动滑块或使用其方向键可选择级别;Use session default 会恢复继承的设置。上下文环会显示对话的用量(如果可用),并提供 Compact Thread。选择模型会更新该会话,因此会在该会话中持久保留;而思考选择仅适用于从当前 Quick Chat 界面发送的每条消息。输入栏隐藏时,本地选择会重置。切换智能体或选择最近的会话会保留显式选择,但会重新加载新目标会话的底层模型状态。

点击历史记录按钮,可从最近更新的五个会话中选择,或返回到 New message to <agent>。选择最近的会话会发送到该确切会话,并将占位符改为 Reply in <session>。隐藏 Quick Chat 会将该临时目标重置为所选智能体的主会话;从头像菜单切换智能体也会清除该目标。

Command-Return 会打开接收到该发送的代理在所选 Web 或 Native 体验中的对话,即使会话范围为全局也是如此。

选择 + → 截取屏幕截图 以使用 截取窗口… 或 截取区域…。窗口截取会为每个可见窗口添加标签;区域截取在你拖拽区域时会调暗每个显示器,并显示其实时大小。所选截图会连同任何已输入文本作为其说明文字一起发送到所选代理。首次使用时会请求 macOS 屏幕录制访问权限。按 Escape、点击空白处,或在不进行有意义的区域拖拽的情况下点击即可取消。

选择 + → 附加来自 <app> 的文本 以附加来自当前聚焦应用的聚焦窗口的文本。Quick Chat 会将结果显示为可移除的上下文芯片,而不是将捕获的文本放入输入框;发送时会追加芯片中的文本到待发送消息,然后清除它。这需要 macOS 辅助功能权限。附加文本也会在 Quick Chat 关闭时清除,因此某次展示的上下文不会泄漏到后续发送中。

回复完成后,选择 粘贴到 <app> 可将其可见的助手文本(不包括隐藏推理)复制到通用粘贴板,并粘贴到之前处于最前面的应用中。这需要 macOS 辅助功能权限。该操作会替换当前粘贴板内容,然后隐藏 Quick Chat。

在 仪表盘 → 设置 → 此 Mac → 应用 下可完全禁用该功能;同一部分会打开快捷键录制器。

  • 本地模式:直接连接到本地 Gateway WebSocket。
  • 远程模式:使用已配置的直连 ws:///wss:// 路由或应用管理的 SSH 隧道作为数据平面。

启动与调试

在启动开发构建时设置 OPENCLAW_DEBUG_CONVERSATION_BRIDGE=1,以通过 NSLog 记录对话桥接消息类型、修订版本、文档 ID、命令请求 ID 和结果。此跟踪默认关闭,并且排除对话内容、会话名称和任意 Web 错误描述。

在 ./scripts/package-mac-app.sh 生成 dist/OpenClaw.app 之后,从仓库根目录在 zsh 或 bash 等 POSIX shell 中运行以下命令。

仪表盘启动链接也会使用所选体验。嵌入式仪表盘中的链接可以通过指针点击或键盘激活来打开应用。代理操作和 Gateway 设置链接保留其现有的运行和连接确认规则。

  • 手动:菜单栏 → 打开仪表盘,使用所选体验。
  • 测试时自动打开:
dist/OpenClaw.app/Contents/MacOS/OpenClaw --chat

(--webchat 作为旧版别名被接受。)

  • 日志:./scripts/clawlog.sh(子系统 ai.openclaw,类别 WebChatSwiftUI)。

连接方式

  • 数据平面:Gateway WS 方法 chat.history、chat.message.get、chat.send、chat.abort、chat.inject,以及 question.list 和 question.resolve,还有事件 chat、agent、presence、tick、health;问题卡片遵循 question.requested 和 question.resolved 事件,并在重连后从 question.list 刷新。
  • chat.history 返回显示规范化后的转录:可见文本中的内联指令标签会被移除,纯文本工具调用 XML 负载(<tool_call>、<function_call>、<tool_calls>、<function_calls>,包括截断块)以及泄漏的模型控制令牌会被移除,纯静默令牌助手行(例如精确的 NO_REPLY/no_reply)会被省略,超大行可以被替换为截断占位符。
  • 会话:如上所述,默认为主会话;UI 可以在会话之间切换。
  • 会话组:sessions.groups.list、sessions.groups.put、sessions.groups.rename 和 sessions.groups.delete 管理无路径组目录。写入范围的 sessions.groups.defaults 和 sessions.groups.update 管理可选的新会话文件夹/工作树默认值。成员关系是通过 sessions.patch 更新的会话 category,或在 sessions.create 期间分配的。
  • 未读状态:会话激活且其实时历史成功加载后,应用会清除其观察到的未读状态。在该会话已打开时创建的手动未读标记会在刷新和运行完成后保留;离开并重新打开该会话,或显式将其标记为已读,才能清除它。历史加载失败不会清除未读状态,瞬态补丁失败会在下次激活时重试。在分阶段升级期间,较旧的活跃应用仍可能发送一个裸读取确认,从而清除标记。因此,跨客户端保护要求每个活跃应用都支持确认契约;在依赖该提醒之前,请更新所有已连接客户端。
  • 入门引导使用专用会话,以将首次运行设置分开。
  • 离线存储:最近会话和转录按 Gateway 缓存在 ~/Library/Application Support/OpenClaw/databases/gateway-cache.sqlite 中。客户端拥有的待处理命令和路由状态单独保存在同一目录中的 client-state.sqlite 中。冷启动会在连接就绪前显示缓存转录,并在 Gateway 响应后刷新。

安全面

  • 远程模式仅通过 SSH 转发 Gateway WebSocket 控制端口。

已知限制

  • UI 针对聊天会话进行了优化,而不是完整的浏览器沙盒。

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