检测过期的排队或进行中的 GitHub Actions 运行,防止其悄无声息地阻塞交付流程。
GitHub Actions Stuck 运行审计是一项面向实际任务的技能,主要用于使用此技能来抓取被拖住/ 进行中状态太久的工作流程;此技能的作用是什么;
使用时应结合输入条件选择合适的执行方式,核对必要参数、依赖环境与输出内容,并按原始要求处理异常情况。该技能适合需要稳定复用相关能力的场景,可作为自动化工作流的一部分,也便于后续检查、调整和扩展。从功能定位来看,该技能强调把分散的操作要求整理成清晰、可复用的处理流程,使用户能够围绕既定目标快速准备输入、选择执行方式并获得结构化结果。
实际使用前应先确认任务范围、数据来源、运行环境、必要权限和关键参数,再依据技能说明逐步执行;若输入条件不完整,应先补齐信息或采用保守配置,避免因错误假设导致结果偏离需求。执行过程中需要关注工具调用是否成功、接口或依赖是否可用、输出格式是否符合预期,并对异常提示、缺失字段和边界情况进行处理;涉及批量任务时,还应保存进度,避免中断后重复操作。
使用此技能识别长时间处于 queued(排队中)或 in_progress(进行中)等非终态的 workflow 运行。
queued、in_progress 等)的陈旧运行(stale runs)ok / warn / critical 状态,并可在 CI 门禁(CI gates)中触发失败可选:
RUN_GLOB(默认值:artifacts/github-actions/*.json)TOP_N(默认值:20)OUTPUT_FORMAT(可选值:text 或 json,默认值:text)GROUP_BY(可选值:repo、repo-workflow、repo-workflow-branch;默认值:repo-workflow)NOW_ISO(可选 ISO 时间戳,用于确定性重放)STUCK_STATUSES(逗号分隔列表,默认值:queued,in_progress,pending,waiting,requested)WARN_STUCK_MINUTES(默认值:45)CRITICAL_STUCK_MINUTES(默认值:120)WARN_STUCK_RUNS(默认值:2)CRITICAL_STUCK_RUNS(默认值:4)WARN_STUCK_RATE(取值范围:0..1,默认值:0.2)CRITICAL_STUCK_RATE(取值范围:0..1,默认值:0.45)MIN_RUNS(默认值:1)WORKFLOW_MATCH / WORKFLOW_EXCLUDE(正则表达式,可选)BRANCH_MATCH / BRANCH_EXCLUDE(正则表达式,可选)EVENT_MATCH / EVENT_EXCLUDE(正则表达式,可选)REPO_MATCH / REPO_EXCLUDE(正则表达式,可选)STATUS_MATCH / STATUS_EXCLUDE(正则表达式,可选)FAIL_ON_CRITICAL(可选值:0 或 1,默认值:0)gh run view--json databaseId,workflowName,event,headBranch,status,conclusion,createdAt,runStartedAt,updatedAt,url,repository > artifacts/github-actions/run- .json
文本格式报告:
RUN_GLOB='artifacts/github-actions/*.json' bash skills/github-actions-stuck-run-audit/scripts/stuck-run-audit.sh
JSON 格式输出 + 触发门禁失败:
RUN_GLOB='artifacts/github-actions/*.json' OUTPUT_FORMAT=json FAIL_ON_CRITICAL=1 bash skills/github-actions-stuck-run-audit/scripts/stuck-run-audit.sh
基于内置测试用例(fixtures)运行:
NOW_ISO='2026-03-08T00:00:00Z' RUN_GLOB='skills/github-actions-stuck-run-audit/fixtures/*.json' bash skills/github-actions-stuck-run-audit/scripts/stuck-run-audit.sh
0FAIL_ON_CRITICAL=1 且存在一个或多个 critical 级别分组时,退出码为 1critical 分组详情