SuperAPI AI 工具集

kill-switch-binding

部署与运维

查看项目

更新于 10-16 05:02

技能介绍

用途:在已有 TAO_SWARM_ENABLED=0 环境变量停机开关之外,新增两个可从任意位置停止群集的入口,并加入 Hermes-Swarm 建议 §5 要求的 2-of-N 审批门。

三个入口:一、Telegram /panic,由操作员聊天触发,CoS 轮询器捕获后写入 kill_switch_triggered 审计行,并通过创建 .harness/swarm/kill_switch.flag 文件标志停机;orchestrator 的 _check_kill_switch() 扩展为同时读取该文件标志。使用文件标志而非进程环境变量,是因为环境变量不会传播到运行中的进程,而文件标志每周期读取,廉价可靠。/panic 不需要 2FA,信任由既有 operator chat_id 白名单建立,停机可逆。二、仪表盘红色 Halt Swarm 按钮,需用户 TOTP 加第二位白名单审批人 TOTP,二者缺一返回 401;通过后 POST /api/swarm/kill 校验、设置文件标志并写审计行,同时向操作员聊天发送告警。三、Telegram /resume 由操作员触发,删除文件标志、写审计行,下一周期恢复;需操作员聊天验证但无需 2FA。

停机范围:既有群集周期、CoS 轮询器(/panic 与 /resume 仍在门检查前处理)、Dispatcher 在下一步边界暂停并保留状态、Scribe 发送经 draft_review 门控、Curator 只读继续运行、Webhook 继续 ACK 但跳过分发、日报 cron 暂停。Margot 桥接的在途 interaction_id 会持久化并在恢复后轮询,在途请求不取消,Gemini 仍计费。

审计与告警:每次停机与恢复写入 audit-emit,含类型、actor_role、trigger_source、approvers、reason;每次状态转换都发 Telegram 告警。循环防护:1 小时内 /panic 超过 5 次升级为 critical 告警,并阻止 /resume,直到手动删除 .harness/swarm/kill_switch.flag 并从操作员聊天发送 /resume-confirm <reason>。

验证步骤:设 TAO_SWARM_ENABLED=1 确认运行;发 /panic 后一个周期内确认文件标志存在、日志显示 Kill-switch fired、告警发出;发 /resume 确认标志消失并恢复;1 小时内发 6 次 /panic 确认升级与阻止;仪表盘无 TOTP 或仅一个 TOTP 返回 401,两个 TOTP 返回 200 并设置标志与告警。

范围外:按角色停机、限时停机、跨组织停机、硬件停机开关均未包含。