用途
fleet-control 用于集中运维一组受管的 Aeon 实例。它从 memory/instances.json 注册表发现舰队成员(包括当前仓库自身以及所有未归档条目),不硬编码实例列表。该技能提供四种操作模式:健康检查、状态快照、技能派发和舰队评分卡。
主要能力
健康检查(默认模式)
对每个注册实例并行执行三类 GitHub API 调用:仓库元数据、近 24 小时工作流运行记录、子实例的 cron-state.json。随后按阈值将实例分类为:
- unreachable:仓库元数据调用失败
- archived:仓库标记为已归档
- pending_secrets:24 小时内无运行且仓库推送时间在 7 天内
- stale:24 小时内无运行且推送时间超过 7 天
- degraded:存在连续失败 ≥3 次的 cron 技能,或 24 小时失败率 ≥0.5 且总数 ≥2
- warning:24 小时有失败但比例低于 0.5
- healthy:24 小时内有运行且全部成功或进行中
每个实例会计算一个 next_action 建议,并与上次状态对比输出 NEW、DEGRADED、RECOVERED、DROPPED 变化。
派发模式
解析 dispatch <instance|*> <skill> [var=<value>] 命令。当实例为 * 时,目标为所有健康、警告或降级状态的实例。对每个目标验证技能是否存在、检查是否在 aeon.yml 中启用,然后通过 gh workflow run 触发。收集 dispatched、missing_skill、api_failed 等结果。
状态模式
生成可扫描的 Markdown 快照,写入 output/articles/fleet-status-${today}.md,包含裁决、首要问题、舰队健康表格、自上次状态以来的变化、逐实例详情、计数和来源。
评分卡模式
运行 node scripts/fleet-scorecard.mjs 收集数据,输出到 /tmp/fleet-scorecard/。读取 metrics.json 计算日环比变化,生成告警块,写入 memory/scorecard.md 并追加趋势行到 memory/scorecard-history.csv。评分卡涵盖运行次数、失败次数、生成次数、token 用量、估算成本和缓存折扣。
使用方式
通过命令选择器 ${var} 触发不同模式:空或无法识别时执行健康检查;status 执行状态模式;dispatch <instance|*> <skill> [var=<value>] 执行派发模式;scorecard 执行评分卡模式。健康检查、状态和派发模式会进行实时 gh 调用,需先验证 gh auth 状态并检查速率限制(剩余低于 50 时停止)。评分卡模式跳过控制视图预检,直接运行收集脚本。
适用场景
适用于需要同时监控和运维多个 Aeon 实例的场景,例如定期健康巡检、批量触发技能、生成舰队状态报告和成本可靠性评分卡。
限制
- 依赖 GitHub API 和 gh CLI 认证
- 速率限制剩余低于 50 时停止控制视图操作
- 评分卡模式依赖 node scripts/fleet-scorecard.mjs 脚本
- 若 scorecard-body.md 缺失或为空,评分卡模式会停止且不覆盖现有评分卡
- 具体收费、价格、平台支持等信息暂未提供