跳转至

会话目录

目录列表会并发地为每个提供方最多等待一秒。在该时间预算内完成的提供方会正常返回。慢速提供方返回 catalog.error.code: "catalog_pending";如果可用,会包含同一调用方和查询的最近一次成功页面,其中主机标记为 pending: true,并附带过期结果消息。刷新失败同样可以返回最近一次页面,并带有 catalog.error.code: "catalog_stale",其消息中包含底层错误。其他提供方仍可使用。延迟结果会为下一次列表刷新页面;现有主机进度更新仍受支持。

这些回退页面的内存占用有限,并会因配置或提供方注册变更以及目录归档操作而失效。每次交付都会重新检查当前可见性和本地会话身份。一秒时间预算涵盖提供方发现和排队,不包括会话投影准备或等待 Gateway 事件循环所花费的时间。

Codex 会话与转录

官方 codex 插件可以在无头节点主机或原生 macOS 节点上暴露未归档的 Codex 会话。目录注册不再依赖 supervision.enabled;该选项控制面向代理的监督工具。在 Codex 插件配置中设置 sessionCatalog.enabled: false,可禁用操作员目录和配对节点目录命令,而不会禁用提供方或框架。 插件仍必须在两台计算机上处于活动状态,并且节点设置仍属于本地同意:仅启用 Gateway 无法读取另一台计算机的 Codex 状态。

节点会通告版本化的只读命令 codex.appServer.threads.list.v1 和 codex.appServer.thread.turns.list.v1。具备 Codex CLI 的原生节点主机还会通告 codex.terminal.resume.v1。当这些命令首次出现时,批准节点配对升级。Gateway 通过常规插件节点策略调用它们,并按主机隔离故障。

配对节点行会作为 Codex 组显示在常规会话侧边栏中。在每个主机内,行默认按项目文件夹分组;位于 .claude/worktrees/<name> 下的工作目录会折叠到其源仓库中,项目组会像其他侧边栏部分一样折叠。使用目录标题中的文件夹图标可展平或恢复项目分组。相同的分组也适用于 Claude 会话目录。 默认情况下,选择某一行会打开常规 Chat 窗格,并通过有界、基于游标分页的 thread/turns/list 调用读取其持久化转录,且使用完整项投影。使用行菜单、查看器标题或 Open Codex/Claude sessions in 首选项,可在拥有该会话的计算机上的操作员终端中启动 codex resume <thread-id>。配对节点终端路径是由 Codex 插件拥有的白名单 PTY 中继,而不是任意节点命令执行。

终端中继独立于配对节点 Chat 续接。已连接的节点如果通告并允许两个目录命令以及 codex.cli.session.resume,就可以为具有 operator.admin 权限的操作员继续一个已存储或空闲的交互式线程。Chat 会镜像有界的可见历史;后续消息会在该节点上针对确切线程运行原生 Codex CLI 恢复,并返回最终文本,而不使用流式 App Server 框架桥接。缺少所需命令的节点仍可读,但不支持 Chat 续接。配对节点的 Archive 不可用。

在 Gateway 计算机上,已存储和空闲的行可以启动一个独立的模型锁定 Chat 分支。两者只有在操作员确认没有其他 Codex 客户端正在使用它之后才能归档;已存储行的实时活动状态仍未知。活动行不能分支或归档。

有关设置、分页、本地和配对节点续接以及元数据安全边界,请参阅 监督 Codex 会话。

Claude 会话与转录

捆绑的 anthropic 插件默认会在 Gateway 和配对节点上发现未归档的 Claude CLI 和 Claude Desktop 会话。设置 plugins.entries.anthropic.config.sessionCatalog.enabled: false 可禁用操作员目录和配对节点目录命令,而不会禁用 Anthropic 模型或 Claude CLI 后端。 当 Anthropic 插件已启用且 ~/.claude/projects/ 存在时,远程 macOS 应用节点会通告 anthropic.claude.sessions.list.v1 和 anthropic.claude.sessions.read.v1。当这些命令首次出现时,批准节点配对升级。

具备 Claude CLI 的原生节点主机还会通告 anthropic.claude.terminal.resume.v1。符合条件的 CLI 和 Desktop 行可以在其所属主机上的操作员终端中打开 claude --resume <session-id>。这是对原生会话的接管;与 OpenClaw 采用不同,它不会先分叉 Claude 会话。

目录会将有效的 Claude CLI 项目索引记录与针对未索引 JSONL 转录的有界元数据回退相结合。该回退会识别并发的非侧链交互式(cli)和无头 Agent SDK CLI(sdk-cli)会话。Claude Desktop 的本地元数据提供 Desktop 标题和归档状态。当两个来源都指向同一个 Claude Code 会话 ID 时,Desktop 元数据优先;仅 CLI 的转录仍可见,因为 CLI 没有归档标志。转录读取使用不透明的字节偏移游标和有界的向后文件读取,因此选择大型会话或加载较早页面时,不会将整个 JSONL 历史读入一个 Gateway 响应中。

目录 RPC 保持其常规方法作用域:sessions.catalog.list 和 sessions.catalog.read 需要 operator.read;sessions.catalog.continue 和 sessions.catalog.archive 需要 operator.write。

目录可见性也遵循已认证的调用方。operator.admin 连接可以看到所有已发现的行。当 Gateway 中持久化配置文件少于两个人时,目录可见性保持不变,行保持未过滤状态。在多用户 Gateway 上,非管理员连接只能看到、读取、续接或归档其记录的 createdActor.id 与调用方 Gateway 配置文件匹配的行。未归属的主机 CLI 或桌面会话对这些调用方隐藏。这是在一个受信任 Gateway 域内的隐私和协调边界,而不是恶意用户隔离;当人员之间不得共享对文件、凭据或工具的访问权限时,请使用独立的代理或 Gateway/主机信任边界。请参阅 多用户模式。

Gateway 本地的 Claude CLI 行可以从普通 Chat 输入框中采用: OpenClaw 会导入有界的可见历史,在首轮使用 --fork-session 恢复,并保持源转录不变。

无头节点主机可以选择加入相同的继续流程:

{
  nodeHost: {
    agentRuns: {
      claude: { enabled: true },
    },
  },
}

只有当此节点本地设置已启用,并且 claude 可执行文件在该节点上可解析时,节点才会通告 agent.cli.claude.run.v1。Gateway 无法远程启用它。该命令还会经过节点现有的 exec 审批策略。当所有三个 Claude 命令都被通告,并且被 Gateway 的节点命令策略允许时,该节点上的 Claude CLI 行即可继续:OpenClaw 会导入有界历史,将采用的会话绑定到该节点及其目录报告的工作目录,并在那里运行每个一次性 claude -p 回合。首轮仍使用 --fork-session,以保留源转录。

节点放置的回合使用节点的 Claude 默认设置。在 v1 中,它们不会接收 Gateway 回环 MCP 配置或 Gateway 技能插件,不能从 Gateway 转录重新填充,并会拒绝附件和图片。Claude Desktop 行以及未通告运行命令的节点仍保持只读。macOS 应用节点尚未通告此命令,因此其行仍保持只读。

OpenCode 和 Pi 会话

捆绑的 OpenCode 和 ACPX 插件还会在 Gateway 和配对节点上发现只读的原生会话目录。当安装了 opencode CLI 时,节点会通告 opencode.sessions.list.v1 / opencode.sessions.read.v1;当 Pi 的会话目录存在时,会通告 acpx.pi.sessions.list.v1 / acpx.pi.sessions.read.v1。当新命令首次出现时,批准节点配对升级。当匹配的 CLI 也可用时,节点会添加 opencode.terminal.resume.v1 或 acpx.pi.terminal.resume.v1;现有的行菜单和查看器头部随后可以使用 opencode --session <id> 或 pi --session <id> 在其所属终端中重新打开所选会话。

OpenCode 通过其官方 CLI JSON/导出接口读取。Pi 读取其文档化的 JSONL 会话存储,包括项目和全局 settings.json 会话目录,以及 PI_CODING_AGENT_DIR 和 PI_CODING_AGENT_SESSION_DIR 覆盖。两个目录默认启用;请在 Web UI 的 配置 > 插件 下关闭它们。

终端恢复使用已存储的会话工作目录,以及与 Codex 和 Claude 相同的允许列表双工 PTY 中继。它不会暴露任意节点命令执行。

OpenClaw 会话和转录

捆绑的 Session Share 插件 将选定的原生 OpenClaw 会话从源 Gateway 发布到配对的接收端 Gateway。源节点主机以相同用户身份运行,并使用源 Gateway 的状态目录。在两侧启用插件,选择源会话组,并仅在 --commands 中包含 openclaw.sessions.list.v1 和 openclaw.sessions.read.v1 进行连接。

接收端在 OpenClaw 会话 下的源节点中显示只读行。在角色受限的 Gateway 上,查看者需要查看他人会话的权限。这不允许在源上进行继续、终端访问或 worker 执行。它与在节点上托管新会话是分开的,参见 会话托管。

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