运行时概览
运行时是你在机器上安装的 Provider CLI(如 ClaudeCode、KimiCode)被 Mopheus 发现后在平台上的映射。
运行时概览
运行时就是你在机器上安装的 Provider CLI(如 ClaudeCode、KimiCode)被 Mopheus 发现后在平台上的映射。说得更直白一点:一个运行时 ≈ 一个 Provider CLI 实例。
举个例子:
- 你的笔记本上安装了
claude(ClaudeCode CLI)和kimi-code(KimiCode CLI) - 启动
mopheus daemon start后,Mopheus 在界面上会显示 两个运行时 - 一个叫 "claude"(对应你的 ClaudeCode),一个叫 "kimi-code"(对应你的 KimiCode)
运行时本身不是执行任务的实体——真正执行的是 Provider CLI(如 ClaudeCode)。Provider CLI 在工作目录中读写文件、执行命令、查询数据库,完成智能体的具体工作。运行时只是 Provider CLI 在 Mopheus 平台上的"身份标识",用来让服务器知道"某台机器上有一个可以执行任务的 claude/kimi-code"。
守护进程(Daemon)负责把任务从服务器搬运到 Provider CLI,再把结果搬运回来。关于守护进程的详细说明,参见什么是守护进程。
状态
每个运行时在侧边栏的 运行时 下显示一条记录,带有以下状态:
| 状态 | 含义 |
|---|---|
| 在线 | 背后的守护进程已连接,该 Provider CLI 可用,可以承接任务。 |
| 忙碌 | 该 Provider CLI 上当前有智能体任务正在执行。 |
| 离线 | 背后的守护进程未连接或已停止,该 Provider CLI 不可用。 |
| 错误 | 最近一次任务执行出错。 |
运行时若约 90 秒内未收到守护进程的心跳,状态会变为 离线。
激活与访问
每个工作区中,激活和访问是两套独立的控制:
- 激活状态决定 Runtime 能否接收任务。只有 Runtime Owner 可以启用或禁用它。
- 可见性决定谁可以绑定 Runtime。工作区可见的 Runtime 可供工作区成员使用;私有 Runtime 仅可供 owner 以及被直接或通过自定义角色授权的成员使用。
- 成员仍可查看已启用私有 Runtime 的元数据。界面使用
viewerCanUse决定选择器是否允许绑定,未授权 Runtime 不会作为新的智能体绑定候选项出现。 - Runtime Owner 和满足运行时管理所有权规则的管理者可在 访问控制 Tab 中切换可见性,并向成员或自定义角色授予私有 Runtime 使用权。
- 禁用 Runtime 会保留在 owner 的 我的 列表中,但不能用于新的绑定。
- 如果仍有智能体直接绑定到某个 Runtime,则不能禁用它。需要先把这些智能体迁移到其他 Runtime,或移除绑定。
- 同一 Owner、Daemon 和 Provider 重新注册时会保留 Runtime ID、激活状态与可见性;其他 Owner 即使使用相同 Daemon ID,也会获得独立记录。
在 运行时 页面使用激活开关决定 Runtime 是否可用,并在 访问控制 中决定谁可以绑定它。
运行时能力与元数据分层
每个 Runtime 向 Mopheus 服务端注册时,都会上报三层清晰解耦的结构化元数据:
- 守护进程执行配置(Daemon Execution Config):
- 宿主机级全局并发上限(
maxConcurrentAgentTasks)、任务超时时间; - 空闲看门狗(
agentIdleWatchdog)与运行时资源守护策略(runtime_guard内存、进程数限制等); - 此类配置属于宿主机与工作区的管控策略,不属于具体 CLI 的协议能力。
- 宿主机级全局并发上限(
- 守护进程构建与环境元数据(Daemon Build Metadata):
- 守护进程二进制构建版本(
gitCommit)、操作系统(os)与主机标识。
- 守护进程二进制构建版本(
- Provider CLI 声明能力(Provider Declared Capabilities):
- 每个 Provider CLI 自身声明的能力矩阵(如
sandbox文件沙箱支持、interaction运行中交互支持、MCP 支持等); - 声明能力表示 CLI 协议具备该特性,实际生效仍取决于当前宿主机环境配置。
- 每个 Provider CLI 自身声明的能力矩阵(如
运行时与智能体的关系
每个智能体创建时都会被绑定到一个具体的运行时。这意味着:
- 智能体的 Provider CLI 字段决定了它只能运行在对应 Provider CLI 的运行时上
- 选择 "claude" 的智能体 → 只能在 "claude" 运行时上运行
- 选择 "kimi-code" 的智能体 → 只能在 "kimi-code" 运行时上运行
- 运行时列表中可以看到每个运行时下挂的智能体
- 如果某智能体绑定的运行时离线或被禁用,该智能体就无法在该 Runtime 上执行新任务
你可以在智能体设置页面更换它绑定的运行时。
任务动态引导与干预(Agent Steering)
声明 interaction 交互能力的 Provider(如 ClaudeCode)允许运行中的 AgentTask 通过工单详情页或 Chat 会话接收动态引导。这是 Runtime 暴露的能力;Daemon 将消息投递给既有的 Provider 进程和会话。
- 运行中航向修正:无需重启任务即可投递补充指导。
- 投递状态:消息依次经过
accepted(已接收)->queued(排队中)->delivering(投递中)->delivered(已送达)或rejected(已拒绝)。 - 安全撤回:消息处于
accepted或queued时可以撤回,撤回后不会投递。 - 实时同步:队列和投递状态通过 WebSocket 事件同步。
工作区注册与可见性
守护进程通过 mopheus login 获取的用户身份注册运行时。注册时每条 Runtime 记录会关联该用户的身份作为 Owner。
运行时对工作区成员的可见性遵循以下规则:
| 条件 | 可见范围 |
|---|---|
| Daemon 登录者是工作区的 Owner | 工作区所有已启用并可见的 Runtime 均可看到 |
| Daemon 登录者是工作区普通成员 | 只能看到自己(该用户)注册的 Runtime |
通过 ?scope=mine 参数过滤 | 只返回当前用户的 Runtime(前端"我的"视图) |
这意味着:
- 工作区 Owner 启动守护进程后,工作区中所有成员都可以看到这台机器上的所有 Runtime
- 普通成员启动守护进程后,只有该成员自己能看到自己的 Runtime,其他成员不可见
- 每个成员仍可在自己的"运行时"页面查看、管理自己的 Runtime
- 工作区 Owner 可以通过"启用/禁用"开关控制工作区级的 Runtime 是否可用
这种设计确保:Owner 的机器作为共享资源,所有成员可见;成员的机器作为私有资源,仅自己可见。
连接流程
让一台机器上的 Provider CLI 成为 Mopheus 的运行时,只需要三步:
- 安装 CLI 并登录。 下载
mopheus二进制文件,运行mopheus login完成认证(参见 安装 Daemon)。 - 安装 Provider CLI。 在机器上安装
claude、kimi-code或其他支持的 CLI,并确保它们在$PATH中可执行(参见 Provider CLI)。 - 启动守护进程。 运行
mopheus daemon start。守护进程会自动扫描本机已安装的 Provider CLI,向 Mopheus 注册,你的运行时随即出现在侧边栏中。
几秒钟后,你机器上的每个 Provider CLI 就会对应一行运行时记录。
一台机器可以对应多个运行时
一台物理机器可以同时拥有多个运行时——只要它安装了多个 Provider CLI。
| 机器上的 Provider CLI | Mopheus 上显示的运行时 |
|---|---|
只装了 claude | 1 个运行时(claude) |
装了 claude + kimi-code | 2 个运行时(claude, kimi-code) |
这些运行时的背后是同一个守护进程。侧边栏按 Runtime Owner 与 Daemon ID 共同分组,避免不同 Owner 的记录被合并到同一个管理组。
多工作区与多机器
多工作区: 单个守护进程可以同时连接多个工作区。它在每个工作区中都会为每个 Provider CLI 注册一个 Runtime;各工作区的激活状态彼此独立且默认禁用,由你明确决定机器在哪些工作区承接任务。比如一台机器有 2 个 Provider CLI、连接 2 个工作区,你名下会有 4 条 Runtime 记录——但后台仍然是 1 个守护进程。
多机器: 你可以在任意数量的机器上启动守护进程——笔记本、值班工作站、虚拟机、Kubernetes Pod。每台机器独立发现自己的 Provider CLI 并注册运行时。智能体的任务会被分发给绑定的运行时所在的机器执行。
并发控制
并发任务上限由守护进程控制,通过 --max-concurrent-tasks 设置(默认 20)。这意味着:一台机器上所有运行时的并发任务总数不能超过这个上限。例如,你的机器有 claude 和 kimi-code 两个运行时,它们同时执行的任务加起来最多 20 个。
运行时资源守卫
资源限制、配置优先级和守卫诊断请见运行时资源守卫。
命令行参考
与运行时查询、用量统计及资源守卫相关的 CLI 命令参考:
# === 运行时列表与状态 ===
mopheus runtime list # 列出当前工作区的所有运行时、绑定状态与在线情况
# === 用量与活动分析 ===
mopheus runtime usage <runtime-id> # 查看指定运行时的任务用量统计(支持 --days 过滤)
mopheus runtime activity <runtime-id> # 查看指定运行时的每小时任务活动趋势