<!-- title: 部署之后：红灯面值守五件横评 -->

# 部署之后：红灯面值守五件横评

## 概述

工作流自动化这条线，本刊已拆过两段：部署四件管「把代码送出去」（9 月 11 日《部署四件首拆》），编排层新面孔管「多 Agent 分工」（9 月 10 日《工作流横评》）。但整条自动化链上还剩一截没人单独盘过——**送出去之后坏了怎么办**。本期聚焦这个「红灯面」：CI 红了谁去修（gh-fix-ci）、规则本身谁写（github-actions-skill）、线上错误谁看见（sentry）、长任务谁扛（long-running-agent），以及让以上全部从「一次性动作」变成「无人值守」的官方值守原语 `loop`。核心发现：红灯面的 Skill 化增量不在能力层（CLI 和 MCP 早已覆盖能力），而在**主动性与时间**——把「人看见红灯才反应」改写成「会话自己拥有红灯状态直到变绿」，并把这条回路的出事半径乘以时间。

需要声明：本会话外部搜索通道未获授权，外部数据来自系统预抓取的 GitHub API 快照（2026-09-11）与本刊历史拆解记录；四个装机件仅作命名层与既有真机体验分析，`loop` 的描述原文取自本会话命令清单。

## 生态定位图：绿灯面已满，红灯面刚开工

```mermaid
flowchart TD
    subgraph L4["值守层：谁盯着的时钟"]
        LO["loop：周期心跳原语"]
        LR["long-running-agent：单次长跑容器"]
    end
    subgraph L1["感知层：坏了谁知道"]
        S["sentry：线上错误流"]
    end
    subgraph L2["修复层：坏了谁去修"]
        F["gh-fix-ci：拉日志定位修复"]
    end
    subgraph L3["闸门层：规则写在哪"]
        A["github-actions-skill：workflow 编写维护"]
    end
    S -->|错误进会话| F
    A -->|YAML 规则| CI["CI 闸门"]
    CI -->|红| F
    F -->|修不动| HU["转人工"]
    LO -->|到点触发| CI
    LO -->|到点巡检| S
    LR -->|承载长任务| F
```

## 评测对比表

| 维度（权重） | loop | gh-fix-ci | sentry | long-running-agent | github-actions-skill |
|---|---|---|---|---|---|
| 功能完整度（25%） | ★★★★☆ | ★★★☆☆ | ★★★★☆ | ★★★☆☆ | ★★★☆☆ |
| 设计质量（25%） | ★★★★★ | ★★★★☆ | ★★★☆☆ | ★★★★☆ | ★★★☆☆ |
| 实战效果（20%） | ★★★★☆ | ★★★★☆ | ★★★☆☆ | ★★★☆☆ | ★★★☆☆ |
| 上手难度（15%） | ★★★★★ | ★★★★☆ | ★★★☆☆ | ★★★★☆ | ★★★★☆ |
| 社区活跃度（15%） | ★★★★☆ | ★★★☆☆ | ★★★★☆ | ★★★☆☆ | ★★★☆☆ |
| **加权总分** | **4.40** | **3.60** | **3.40** | **3.40** | **3.15** |

评分说明：`loop` 为内构件，随宿主发布，无独立社区维度，按可得性折算；四个装机件本机副本未暴露描述，命名层从严折算；sentry 的功能分参考本刊 6 月 1 日对社区件 sentry-automation 的实测记录；不引用无法核实的下载量数字。

## 主拆一：loop——一行描述里的值守原语

**定位**：Claude Code 内构件，描述原文只有一句：

> Run a prompt or slash command on a recurring interval (e.g. /loop 5m /foo, defaults to 10m /foo), passing the prompt or slash command as arguments.

红灯面五件里，唯独它有描述原文可逐行读——因为这句描述本身就是本期最重要的一件展品。

**动词是 Run，宾语是「一个 prompt 或一个斜杠命令」。** 这意味着它自己不干活：它把「运行某物」变成了可调度的对象。斜杠命令是技能生态的统一入口，于是这条描述实际宣布了一个组合性承诺——**任何 Skill 都可以被周期化**。gh-fix-ci 是一次动作，`/loop 30m /gh-fix-ci` 才是值夜班；监控件给出错误流，`/loop 1h` 巡检错误流才是巡逻。这一行是整张红灯面地图的坐标系原点。

**频率即第一个参数。** 示例 `/loop 5m /foo` 把时间量 `5m` 放在命令首位——不是 `--every 5m` 这种 flag 语法，而是位置语法。写描述的人赌的是：值守任务里频率是最高频的修改动作，值得为它省掉一个 flag 名。这是把「什么参数最常改」的判断直接铸进语法的做法，比功能本身更能看出作者对使用场景的把握。

**默认 10 分钟。** 默认值是态度：比人工刷新快得多（人盯 CI 的自然节奏是几分钟一次），又慢到不会把会话变成空转的风扇。10 分钟恰好卡在「半自动」的甜点位——它没有假装自己是毫秒级监控系统，也没懒到一小时才看一眼。

**描述没回答的两个问题。** 值守原语必须回答：任务挂在谁身上（会话还是磁盘）、宿主死了值守还在不在。这句描述对此沉默，属设计推断范畴，本刊不做断言——但读者在把真正的生产值守压上去之前，应先亲手验证这两点，这是唯一负责任的用法建议。

## 主拆二：gh-fix-ci——从「能力」到「主动性」的一步

**定位**：装机目录中的 CI 修复件，围绕 gh CLI 工作。本刊 9 月 10 日验证层横评已确认其基本盘：CI 挂了之后拉取失败日志、定位失败用例、尝试修复并重新触发——整条验证链里「唯一打通远端回路的件」。

本期不再重复结论，补一层当时没展开的观察：**它的真正增量不是能力，是主动性归属的转移**。`gh run view --log` 一直都在，工程师手敲这条命令的能力二十年前就有——Skill 层没有新增任何 CLI 不具备的能力。它改写的是这句话的主语：原来是「人看见红叉，人去反应」；装上之后是「会话拥有这个红灯状态，直到它变绿或者宣布放弃」。诊断顺序（先看哪个日志、先怀疑哪类失败）和止损判断（重试几次后停止烧 CI 分钟数、转人工）才是它的护城河——这也解释了上期那句判断「CI 与监控的 Skill 化程度天然浅于部署」：能力早被 CLI 覆盖，方法论封装的护城河天然浅一截。

与 `verify` 内构件的分工也因此更清楚：verify 在合并前「把项目跑起来观察行为」，gh-fix-ci 在推送后「读远端日志修红灯」——一个看行为，一个看日志，中间隔着一次 push。

## 主拆三：github-actions-skill——闸门的源代码层

**定位**：装机件，仅命名层分析（本机副本未暴露描述）。本刊编排层横评给它的一句话定位是「管工作流的编写与维护（YAML 生成、改触发规则）」，本期把它放进红灯面地图，是因为一个常被忽略的因果：**相当一部分红灯的根源不是代码，是闸门自己的源代码**——触发条件写错、缓存键失效、矩阵漏了半个配置、权限段少了一行。这些失败发生在 `.github/workflows/` 里，gh-fix-ci 的日志循环再快，也只是在给一个写错的 YAML 反复买单。

所以这件的位置不是「CI 工具」，而是 gh-fix-ci 的**上游同面邻居**：两者共享同一个失败面，一个在源头把规则写对，一个在下游把红灯修绿。命名层分析做不了功能断言，但位置断言可以下：如果五件里只装一件，装它而不是装 gh-fix-ci——把红灯发生率压下去，永远比把修复速度提上来便宜。

## 主拆四：sentry 与它的同名混沌——监控位的命名拥挤现象

**定位**：装机件（本机清单中 Sentry 位仅一个名字 `sentry`）。本刊 6 月 1 日行情记录过社区件 `sentry-automation`（作者 julianobarbosa，仓库 julianobarbosa/sentry-skill，多市场分发），覆盖 SDK 配置、告警规则创建、Release 管理、采样策略与 OpenTelemetry 集成，核心场景正是「部署后监控」——与部署四件串联，部署完成即配好项目、传 Source Map、建告警规则。Sentry 官方同期发布了 Claude Code 集成指南（cookbook 站点）。

把三个事实并排放，就看到监控位独有的生态结构：**平台官方下场写指南、社区件多市场分发、装机目录里还有一个来源待考的同名位**——三方并存，装机者面对的是三个来源不明的同名空位。对比部署位的秩序（四件按平台各占其名，上期称「一个抽象四种方言」），监控位是「一个名字三种血统」。这不是 sentry 一家的孤例，而是所有「平台已有成熟付费产品」的位的共同命运：产品方、社区、装机目录三方都会塞人进来，而 Skill 生态至今没有防撞车机制。上期总结的负面边界句式（「X only — use /Y for that」）是作者侧最便宜的解法，但监控位的问题是没人写它。

## 主拆五：long-running-agent——另一种时间维度

**定位**：装机件，仅命名层分析。编排层横评给过它八个字：「长时任务代理」「无人值守的执行容器」。本期把它和 `loop` 并排放进值守层，是因为两者代表自动化必需的两种时间：

| | loop | long-running-agent |
|---|---|---|
| 时间形状 | 短周期、高重复的心跳 | 单次、不限时的长跑 |
| 失败恢复 | 下一跳天然就是重试 | 跑挂了需要外部再拉起 |
| 适合压上去的任务 | 巡检、盯 CI、定时摘要 | 大规模迁移、全量回归、批量重建 |

心跳和长跑互补而非互替——这是值守层内部的分工线，命名层之外不做更多断言。

## 权限梯度：装红灯面之前先看清出事半径

绿灯面（部署件）的权限讨论上期已经做过，红灯面的权限面更陡，且有一条本期新增的放大规则：

| 件 | 权限面 | 出事半径 |
|---|---|---|
| sentry | 读错误流，写告警配置 | 配错告警，噪音或漏报 |
| github-actions-skill | 写 `.github/workflows/`，secrets 邻接 | 仓库级 |
| gh-fix-ci | gh 授权：读日志、push、重触发 | 打通远端回路 |
| long-running-agent | 长时持有上述全部 | 复合 |
| loop | 周期唤起任意件 | **把上面所有半径乘以时间** |

最后一句是本期的核心警示：值守原语本身无害，但它把每一个接上去的件的失误从「一次」变成「每十分钟一次」。给值守回路里的件配权限，标准要比一次性使用严一档。

## 组合示例：一条最小的无人值守夜班回路

```mermaid
flowchart LR
    LO["/loop 30m"] -->|到点| Q["检查 CI 与 Sentry 错误流"]
    Q -->|绿| E["本轮结束等下一跳"]
    Q -->|红| FX["调 gh-fix-ci 拉日志修复"]
    FX -->|能修| P["推送并重新触发"]
    P --> Q
    FX -->|修不动| UP["留言升级给人类"]
```

六跳之内构成一个完整的夜班：感知（Sentry/CI 状态）、诊断与修复（gh-fix-ci）、止损（修不动即升级，人不翻身）。`github-actions-skill` 不在回路边上而在回路下面——它保证这个回路要跑的 YAML 本身是对的。

**安装/启用**（按件分列，渠道如实标注）：

```bash
# loop：内构件，随 Claude Code 提供，无需安装
# 用法（描述原文语法）：
#   /loop 30m 检查 CI 状态，红了就调用 gh-fix-ci

# gh-fix-ci / github-actions-skill / sentry / long-running-agent：
# 本刊环境为预装；独立安装渠道未逐一核实，装前先确认前置
gh auth status          # gh-fix-ci 的前置：gh CLI 已认证

# sentry 社区分发件（渠道为本刊 6 月记录，非本次验证）：
claude install julianobarbosa/sentry-skill
```

## 推荐排行榜

- **设计最值得抄**：loop —— 一行描述把组合性、频率语法、默认值三件事全做完，想写调度类 Skill 先抄它。
- **团队立刻省时间**：gh-fix-ci —— CI 重的团队当周回本，唯一打通远端回路的修复件。
- **上线当天就该配**：sentry —— 部署件管绿灯它管红灯，「部署成功但用户那边炸了」只有它看得见。
- **最被低估**：github-actions-skill —— 把红灯发生率压在源头，比任何修复件都便宜。
- **观望**：long-running-agent —— 位置正确，描述未暴露，装机前先小任务试跑。

## 诚实条款

## 参考来源

> [!tip] 51学通信知识星球
> **星主：爱卫生**（微信：gprshome201101）——公众号「51学通信」创办者，19 年通信行业运维与讲师经验，著有《GPRS网络信令实例详解》《EPC原理与实践》《5G核心网原理与实践》三本纸质书（各大电商平台有售）。
> **星球定位**：深耕 5G 核心网、IMS、NFV/AI、云原生等 ICT 领域，主打运维岗位与信令分析。
> **当前规模**：5200 篇主题 / 990 个回答，198 元/年。
> **加入福利**：加入星球后请加爱卫生微信，拉您进知识星球年度陪伴与答疑群——不限量回复您的各种问题，另有群内分享。
> **AI 加持**：51学通信知识星球已作为 skill 接入 WorkBuddy，使用 deepseek-4-flash 在海量星球帖子中精准找贴、找视频、找 FAQ 和案例，做总结、找文档和 PPT 等场景全覆盖。

![51学通信知识星球海报-扫码加入](https://wiki.500nian.com/images/zhixingqiu_qrcode.png)
