指导使用Wander监控GitHub Actions,无需轮询。用于用户推送代码并希望获得CI通知、询问如何监控工作流、避免...
漫游- CI 工作流程监视器
功能概述
漫游- CI 工作流程监视器是一项面向实际任务的技能,主要用于Wander.。它将相关步骤、工具调用和结果整理方式集中到统一流程中,帮助使用者更快完成目标并减少重复操作。
核心要点
- 使用时应结合输入条件选择合适的执行方式,核对必要参数、依赖环境与输出内容,并按原始要求处理异常情况。
- 该技能适合需要稳定复用相关能力的场景,可作为自动化工作流的一部分,也便于后续检查、调整和扩展。
- 执行完成后建议检查结果是否符合预期,并保留必要记录。
使用与执行
从功能定位来看,该技能强调把分散的操作要求整理成清晰、可复用的处理流程,使用户能够围绕既定目标快速准备输入、选择执行方式并获得结构化结果。实际使用前应先确认任务范围、数据来源、运行环境、必要权限和关键参数,再依据技能说明逐步执行;
结果检查与注意事项
若输入条件不完整,应先补齐信息或采用保守配置,避免因错误假设导致结果偏离需求。执行过程中需要关注工具调用是否成功、接口或依赖是否可用、输出格式是否符合预期,并对异常提示、缺失字段和边界情况进行处理;涉及批量任务时,还应保存进度,避免中断后重复操作。
Wander — CI 工作流监控器
无需守候,只需漫游(Wander)。 一款用于监控 GitHub Actions 的命令行工具。不依赖轮询;可选在工作流运行完成时向 macOS 通知中心发送通知。
代理自动触发(强制启用)
每次执行 git push 并触发 GitHub Actions 后,均应在后台模式下自动启动 Wander,除非用户明确选择禁用该行为。
- 若仓库根目录存在
.workflows.yml:优先使用项目级封装脚本(如scripts/watch-*.sh),若其存在则调用之。 - 否则:执行
"$WANDER_HOME/watch-workflow-bg.sh"(或传入项目实际使用的 workflow 文件)。 - 以后台方式运行,确保终端会话保持响应性。
- 约 8 秒后检查终端输出,并报告初始状态。
若仓库中不存在 .workflows.yml,但存在 .github/workflows/ 目录,则可提供监控功能,但**不会未经确认自动启动**。
适用场景
- 用户希望在
git push后监控某工作流 - 用户要求在 CI 完成时收到通知
- 用户希望避免手动刷新 Actions 页面
- 运行时间较长的端到端(E2E)或发布(publish)流水线(耗时数分钟)
- 项目已集成 CI 监控能力(例如 ClawHub publish)
前提条件
- 已安装并完成身份验证的
ghCLI jq(脚本依赖)- 本地已克隆 Wander 仓库;通过环境变量
WANDER_HOME指定路径,或默认使用~/code/wander - macOS 系统(用于通知中心集成)
安装(工具)
git clone https://github.com/ERerGB/wander.git ~/code/wander cd ~/code/wander chmod +x *.sh
将以下内容添加至 ~/.zshrc 或 ~/.bashrc:
export WANDER_HOME="${WANDER_HOME:-$HOME/code/wander}"
export PATH="$WANDER_HOME:$PATH"
alias wf='watch-workflow.sh'
alias wfbg='watch-workflow-bg.sh'
alias wfdt='watch-workflow-detached.sh'
或直接在 Wander 仓库中运行 ./scripts/install-personal.sh(详见主 README)。
使用模式
智能推送(适用于 Wander 仓库或类似结构)
cd /path/to/wander ./smart-push.sh
根据变更文件自动建议 smoke / e2e / skip 等操作,随后执行推送并启动监控。
手动控制(任意仓库)
git push cd /path/to/target-repo "$WANDER_HOME/watch-workflow-bg.sh" publish.yml
运行模式
| 模式 | 脚本 | 适用场景 |
|---|---|---|
| 前台模式 | watch-workflow.sh |
阻塞当前终端,直至工作流完成 |
| 后台模式 | watch-workflow-bg.sh |
继续其他工作;完成后发出通知 |
| 分离模式 | watch-workflow-detached.sh |
可关闭终端;日志保存于 ~/.wander_logs/ 目录下 |
项目级封装脚本(推荐)
#!/bin/bash
# scripts/watch-publish.sh
REPO_ROOT="$(cd "$(dirname "${BASH_SOURCE[0]}")/.." && pwd)"
WANDER_DIR="${WANDER_DIR:-$(dirname "$REPO_ROOT")/wander}"
cd "$REPO_ROOT"
exec "$WANDER_DIR/watch-workflow-bg.sh" publish.yml "$@"
然后执行:git push && ./scripts/watch-publish.sh
其他示例:项目 openclaw-uninstall 在存在时即使用 ./scripts/watch-publish.sh 和 watch-publish-detached.sh。
工作流注册表
为支持 check_window / expected_duration 配置,请在项目根目录添加 .workflows.yml,或设置环境变量 WORKFLOW_REGISTRY_FILE:
workflows:
- name: "publish.yml"
description: "Publish to ClawHub"
check_window: 120
expected_duration: 30
category: "publish"
若某工作流未在注册表中显式声明,则默认 check_window 值为 300 秒。
边界情况
| 场景 | 行为 | 提示 |
|---|---|---|
| 工作流在约 30 秒内完成 | 可能显示 “already completed” 并快速发出通知 | watch-workflow-bg.sh 可检测近期已完成的运行 |
| 推送后立即启动监控 | 工作流运行记录可能需等待 5–10 秒才出现 | 脚本最多等待约 30 秒以等待运行记录出现 |
| 推送至错误分支 | 等待窗口期结束后仍无工作流启动 | 请确认 workflow 中 on: 所定义的分支过滤规则与当前分支匹配 |
| 仓库中无 lockfile(如 package-lock.json / yarn.lock) | setup-node 步骤中启用 cache: npm 可能失败 |
若无 package lockfile,请移除 cache: npm 配置 |
当 CI 失败时
- 从终端输出或通知中记录运行 ID(RUN_ID)。
- 查看失败日志:
gh run view--log-failed - 修复问题后重新
git push,或直接重跑失败作业:gh run rerun--failed
WANDER_HOME 解析顺序
- 优先使用环境变量
WANDER_HOME(若已设置) - 其次尝试同级路径:
$(dirname "$REPO_ROOT")/wander(常见于封装脚本中) - 最后回退至默认路径:
~/code/wander
参考文档
- Wander README
- EDGE_CASES.md
- COFFEE_BREAK.md
热门AI工具
相关专题
本专题介绍Gradle插件开发的基本流程,涵盖插件类编写、自定义任务注册、扩展参数设计和插件应用方法,帮助你理解插件如何组织构建逻辑,减少多个项目之间的重复配置。
0
2026.10.22
本专题介绍Gradle Wrapper的基本作用,涵盖文件组成、生成方法、版本配置和任务调用,帮助你理解项目如何使用指定的Gradle版本,减少不同开发环境带来的构建差异。
0
2026.10.22
本专题整理Golangci-lint常用Linters的用途与配置方法,覆盖错误处理、无效代码、安全、复杂度、命名和依赖检查,帮助项目合理选规则。
0
2026.10.22
本专题介绍Gradle Java项目构建方法,涵盖Java插件配置、依赖声明、源码编译、测试执行和打包检查,帮助你理解各阶段的任务关系,逐步完成项目构建。
0
2026.10.22
本专题汇总PHP常见时间戳漏洞,包括2038年溢出、时区漂移、时间戳伪造、重放攻击、时间盲注与日志审计失效等,并给出升级64位环境、使用 DateTimeImmutable、统一UTC、严格超时校验、预处理绑定、hash_equals 比对等修复方案,帮助开发者快速排查和加固时间相关代码。
0
2026.10.22
本专题聚焦Golangci-lint YAML配置文件,讲清运行参数、规则启停、目录排除、问题过滤及严重级别设置,便于团队统一检查标准。
0
2026.10.22
本专题讲解Golangci-lint的安装、初始化、基础命令和首次代码检查,覆盖本地环境、Docker及多平台用法,帮助Go开发者快速上手。
0
2026.10.22
PHP2Shell漏洞是什么,哪些PHP版本和运行环境会受到影响,服务器应该如何检测与修复?本专题提供版本自查脚本、Linux与Docker升级命令、PHP-FPM和Apache排查步骤,以及修复验证、临时缓解和应急响应方案。
0
2026.10.22
热门下载
相关下载
精品课程
共6课时 | 12.1万人学习
共79课时 | 161.5万人学习
共6课时 | 54.7万人学习
