跳到正文

Beacon让 AI Agent 来值班

服务出问题时,Beacon 叫醒你的 Agent,把证据交到它手上,让它不拿一把密钥就能上机器处理,整个过程有录像可以回放。人只需要看着,不用爬起来。

BeaconBeacon

为什么做它 ​

运维工具默认键盘前坐着一个人:有面板给人看,密钥放在人的电脑上,有按钮等人来批准。把 Agent 放到第一线,这三样每一样都是漏洞。Agent 不看面板,得有东西叫醒它、把需要的东西一并交给它。不能把密钥交给它,它读到什么就可能泄露什么。凌晨三点它也等不到谁来批准,审核只能事后做,前提是全程有记录。

Beacon 就是为此而做的那一环:把 Agent 当作操作者来设计的基础设施,人负责看着,随时能停。我们自己的服务器就跑在它上面。第一次真实演练,一个停掉的作业从告警触发到验证恢复用了不到四分钟,没有人碰键盘。

工作原理 ​

一个服务 linkos-beacon,站在上报的机器、值班的人和干活的 Agent 之间。指标和规则交给 VictoriaMetrics 和 vmalert;Beacon 不调用任何模型。

Beacon 的位置:检测点、CI 和 Flux 把数据报给 Beacon,指标和规则放在 VictoriaMetrics 与 vmalert 里;Beacon 把卡片和电话送到值班的人,唤醒 Agent,并让它们经 SSH 通道到达机器。检测点各地的 linkos-probeCI 与 Flux部署、同步VictoriaMetrics、vmalert指标与规则Beaconlinkos-beacon serve网关给机器用 · 17006 端口路由分组、抑制、静默告警桥卡片、升级、钩子API 与 MCP给人和 Agent 用 · 17001 端口SSH 通道每次会话都录制 · 17002 端口值班的人告警群里的卡片、手机AgentClaude Code、Codex……机器五分钟有效的证书,NAT 后面也行检测结果检测目标变更事件样本告警卡片、电话认领、静默钩子唤醒REST、MCP、sshssh

网关给每台机器各自的令牌,并给它写入的数据打标签,谁也冒充不了谁;检测目标也由网关下发。路由做 Alertmanager 做的事:分组、抑制、静默。桥把告警组变成群里的卡片,没人认领就升级到手机,并用签名的 hook 叫醒 Agent。Agent 经 REST 或 MCP 拿证据、留备注,经 SSH 通道上机器。各部分怎么拼见架构。

安装 ​

一台装了 Docker 的 Linux 机器,三条命令起中心:Beacon、VictoriaMetrics、vmalert 和 Caddy。

bash
git clone https://github.com/openlinkos/beacon.git
sudo cp -r beacon/deploy /opt/beacon && cd /opt/beacon
sudo ./install.sh

然后登记一个检测点、一台机器和你的 Agent。30 分钟装好一步步带你做完,最后演练一次故障从告警到恢复。

接入 Agent ​

一个令牌通用 API、MCP 和 SSH 通道,Agent 不需要读任何为 Beacon 写的东西:HTTP 上的 MCP、它自己的 ssh、shell。

bash
claude mcp add --transport http linkos-beacon https://status.example.com/mcp --header "Authorization: Bearer lbt_…"

list_machines 给它一段 ssh_config,之后它自己的 ssh edge-1、scp、rsync 都走通道。被告警叫醒后,它从 get_evidence 开始,在机器上处理,用 probe_now 验证,给值班的人留一条备注。见Agent 与告警和 MCP 工具。

Beacon 不是什么 ​

  • **不是 Agent。**不调用模型。它叫醒 Agent、回答它的问题、记录它做的事;拿主意的是 Agent。
  • **没有审批流程。**人看得见每次会话、能回放;暂停开关能立刻停下所有 Agent。
  • **不做日志平台,也不写自己的时序数据库。**Agent 用它最熟的方式经 SSH 读日志;VictoriaMetrics 负责存储和查询。

目标写了 Beacon 为什么而做、不做什么、目标冲突时怎么取舍。Beacon 以 Apache License 2.0 开源,在 GitHub。