← ClaudeAtlas

ci-watcherlisted

Run the CI watcher script for the current or specified branch. Use `/ci-watcher stop` to kill the watcher for the current session.
YoniChechik/claude-code-config · ★ 0 · DevOps & Infrastructure · score 65
Install: claude install-skill YoniChechik/claude-code-config
CI watcher: always-on background process that monitors CI and notifies on both failure and pass via webhook channel. Launch once per feature — the watcher never exits, so no re-launch is needed. # **CRITICAL RULE: DO NOT KILL THE CI WATCHER AUTOMATICALLY** **THE CI WATCHER MUST NEVER BE KILLED BY CLAUDE ON ITS OWN.** This is an absolute rule with no exceptions: - **DO NOT** kill the watcher when CI passes. - **DO NOT** kill the watcher when CI fails. - **DO NOT** kill the watcher when a PR is merged. - **DO NOT** kill the watcher on merge to `main`. - **DO NOT** kill the watcher when the feature looks "done". - **DO NOT** kill the watcher on any other "natural completion" event. - **DO NOT** call `/ci-watcher stop`, `touch /tmp/ci_watch_kill_*`, `kill <pid>`, `pkill ci_watch`, or any equivalent on your own initiative. The watcher is intentionally always-on and stays alive across CI runs, PR merges, branch switches, and feature transitions. **THE ONLY WAY TO STOP THE WATCHER IS AN EXPLICIT USER REQUEST**, such as the user typing `/ci-watcher stop` or giving a clear natural-language instruction like "stop the ci watcher" / "kill the ci watcher". If the user has not explicitly asked, leave it running. # step 0: handle `stop` subcommand If the first argument is `stop`, drop a per-session kill flag and exit — do NOT launch the watcher: ```bash if [[ -z "${CLAUDE_CODE_SESSION_ID:-}" ]]; then echo "Error: CLAUDE_CODE_SESSION_ID is unset; cannot stop ci watcher." >&2 e