机群骨干

中继内建于二进制文件之中

cmdop server 就是你的机群所连接的中继 — 它与智能体和网页 UI 一起,装在同一个已签名的二进制文件里。运行 `cmdop server`,把你的机器指向它:智能体向外拨出(没有入站端口,对 NAT 友好),客户端通过 HTTP 和 WebSocket 触达它们。

架构

一个二进制文件就是骨干

没有集群需要搭建。中继、网页控制台和智能体是同一个已签名的二进制文件 — 启动它,整个平面就随之而起。智能体讲 gRPC;客户端讲 HTTP 和 WebSocket;一切都按机群作用域划分并被审计。

HTTP
:63141

面向客户端的表面 — 认证、在线状态、机器与机群的读取,外加内置的网页控制台,全部由这一个二进制文件提供服务。

gRPC
:63142

智能体传输。机器向外拨出并保持一个双向流 — 终端、执行和文件操作在此流动,即便是在环回地址上。

WebSocket
live push

基于 HTTP 的推送频道。向已连接的客户端流式传输实时输出、在线状态和事件 — 桌面端以及任意浏览器。

tunnels
outbound

无需向互联网开放端口即可触达一台机器背后的服务 — 机器向外拨出,中继再把它路由回来。

scheduler
in-process

持久化的调度、延迟任务和清理工作都运行在二进制文件内部 — 没有单独的 worker 进程,也没有需要运维的队列。

orchestrator
goroutine

机群协调者(Jarvis)作为一个进程内 goroutine 运行,作为虚拟机器加入中继并协调机群。

gRPC 契约存于 proto/agentv1(cmdop.agent.v1),是唯一的真理来源 — Go 智能体的桩代码由它生成。

操作员控制台

从内部看见 relay

下面的每一张截图都是真实的 cmdop server 管理控制台——当你自托管 relay 时所获得的操作员界面。

一个控制台掌管整个平面

系统健康状况、机器、活动会话、LLM 支出和错误 — 整个中继一眼纵览,由二进制文件本身提供服务。

cmdop server overview — system health (six processes), machines, sessions, LLM spend, errors and recent activity
cmdop server overview — system health (six processes), machines, sessions, LLM spend, errors and recent activity

你的机群,呈为一张表

每台已连接机器及其在线状态、操作系统和最后在线时间——包括作为常时在线服务端代理的 Jarvis。

cmdop server machines — the fleet as a table with Jarvis as an always-on server agent, presence and OS
cmdop server machines — the fleet as a table with Jarvis as an always-on server agent, presence and OS

实时 gRPC 指标

活动流、RPC 总数、延迟百分位以及成功/错误率——通过 WebSocket 实时流式传输。

cmdop server gRPC monitoring — live streams, RPC totals, latency percentiles and success/error charts
cmdop server gRPC monitoring — live streams, RPC totals, latency percentiles and success/error charts

LLM 网关

OpenAI 兼容的 /v1 网关:提供方、密钥、模型以及按机群划分的支出,全部在一处统管。

cmdop server model routing — the OpenAI-compatible LLM gateway: providers, keys, models and per-fleet spend
cmdop server model routing — the OpenAI-compatible LLM gateway: providers, keys, models and per-fleet spend

一个服务端机群代理

Jarvis 作为虚拟机器加入 relay 并协调机群——可让它在每台机器上运行命令或检查日志。

cmdop server Jarvis — the server-side fleet coordinator agent that joins the relay as a virtual machine
cmdop server Jarvis — the server-side fleet coordinator agent that joins the relay as a virtual machine

签发与吊销访问

铸造机器用以连接的 relay CLI 令牌,并在某台机器应当离网的那一刻将其吊销。

cmdop server agent tokens — issue and revoke the relay CLI tokens machines connect with
cmdop server agent tokens — issue and revoke the relay CLI tokens machines connect with
连接性

代理向外拨出。没有入站端口。

每台机器都向 relay 打开一个出站 gRPC 流,并通过它保持可触达——没有需要暴露的监听端口、没有防火墙开洞、没有需要照看的 NAT 穿透。relay 在代理与客户端之间路由消息;机器从不接受入站连接。

多租户

隔离按客户划分

每个账户都会获得自己的中继域名,专为你的机群配置 — TLS 终止与路由不与任何其他客户共享。在线状态、审计和历史都留在你的机群内;没有任何东西会跨越租户边界路由。

Jarvis

一位协调者活在 relay 之中

Jarvis 是一个服务端 AI 代理,作为虚拟机器对等体加入 relay。它按机群作用域划分且常时在线,能够触达其他代理——向一个发问、向多个广播——并在整个机群范围内协调工作,而无需在你自己的机器上运行任何东西。

LLM 网关

一个 OpenAI 兼容的网关,位于 /v1

relay 在 /v1 暴露推理——chat completions、embeddings 和 models——讲 OpenAI 的线路格式。服务器持有提供方密钥并按机群路由,带有支出与配额,因此代理得到的是一个 bearer 认证的端点,而非一堆厂商凭证。

Loading code...
运行中继

自己运行中继

中继不是一个需要单独部署的服务 — 它就是你到处安装的那个同一个已签名的二进制文件。安装 cmdop,运行 `cmdop server`,把你的机器指向它。一条命令就把中继、网页控制台和协调者一同启动。

Loading code...

没有集群、没有 compose 文件:`cmdop server` 是单个进程,它提供 HTTP (:63141) 和 gRPC (:63142),并把协调者作为进程内 goroutine 运行。当你需要 TLS 和一个稳定地址时,用你自己的反向代理把它放在前面。

自己运行机群骨干

启动 relay,把你的代理指向它,端到端地拥有整个平面。