Skip to content
cccskills
FreePublished on GitHub

watching-ci-runs

Watch a CI run's jobs to completion without idling or hand-writing a poll loop. Use when a dispatched or pushed build takes minutes to finish and its per-job results decide the next step.

The English summary is being prepared. Showing the original description.

Run score Not tested

See how to install

Files included (2)

  • SKILL.md2.5 KB
  • scripts/watch-run.sh2.2 KB

SKILL.md (original)

Review the instructions the agent will receive before you install.

Watch CI Runs Without Waiting

Native builds routinely take 10-20 minutes. Blocking on them wastes that time, and hand-rolled poll loops repeatedly get the same details wrong: emitting a line per poll, staying silent on failure, or being launched twice for one run.

Arm one watcher, then keep working.

Arm the watcher

Use the harness's event-stream monitor with the bundled script, which emits one line per job as it reaches a terminal state and exits when the run completes:

scripts/watch-run.sh <run-id> [--interval SECONDS] [--repo OWNER/REPO]

Each job result arrives as its own notification, so a failure surfaces the moment that job lands rather than when the whole run finishes. Set the monitor timeout above the expected run duration; a matrix build needs far more than the default.

Keep working while it runs

The point of an event stream is that waiting costs nothing. After arming it, start the next piece of work immediately. Never sleep, poll, or re-read the output file to pass the time — a notification will arrive.

Good use of the interval: the next bead, a review of the diff just pushed, documentation the change implies, or preparing the follow-up commit. Prefer work that does not conflict with the commit under test, so a red result does not invalidate it.

One watcher per run

Before arming, check whether a watcher for that run already exists, and stop it rather than adding a second. Two watchers on one run duplicate API calls and split the results across output files, which is how a green job goes unnoticed.

If a result arrives from elsewhere before the watcher reports, that is not a reason to start another watcher.

Report every terminal state

Emit each job's actual conclusion, whatever it is. A watcher that matches only success stays silent through a failure, and silence is indistinguishable from still-running. Ask before arming: if this run failed right now, would anything be emitted?

Tolerate transient API errors rather than dying or, worse, treating an empty response as "nothing has finished" and re-announcing every job on recovery.

Act on the result

Diagnose a failure from the logs already produced before dispatching anything new; CI time is a finite paid budget. A single failed job does not justify cancelling its siblings, whose independent results are often the faster diagnosis.

Reviews

No reviews yet. Tell others what you thought.

Comments

No login needed. Share how it worked for you, ask a question, or note where it did not run.

No comments yet. Be the first to write one.

Comments are published right away. Do not include personal information such as email addresses or phone numbers. Up to 2 URLs.

0 / 1,000 characters

This form is protected by reCAPTCHA, and the Google Privacy Policy and Terms of Service apply.

More skills from this repository

Applies local reliability, viewport, tab-safety, stale-ref, widget, and browser-boundary lessons to every agent-browser automation. Use alongside the upstream agent-browser skill whenever navigating, clicking, filling, testing, extracting, taking screenshots, or debugging any website with agent-browser.

The English summary is being prepared. Showing the original description.

aspiers/ai-config15Updated Oct 9, 2026

Size the agent-browser Chromium window to fill its current screen, leaving a configurable bottom margin for the desktop panel. Use before any agent-browser automation that needs the full screen visible without elements overlapping or scrolling off (e.g. Xero, dense web apps).

The English summary is being prepared. Showing the original description.

aspiers/ai-config15Updated Oct 9, 2026

Create Claude Code slash commands, OpenCode command files, Pi prompt templates, and Codex custom prompts that delegate to the right subagent or skill. Use when creating new commands, porting commands across agent platforms, or refactoring existing commands to follow platform conventions.

The English summary is being prepared. Showing the original description.

aspiers/ai-config15Updated Oct 9, 2026

Adds or changes allowed commands in AI agent permission configs for OpenCode and Claude Code. Use when a command needs adding to an agent's allow list, when permission settings for existing commands need changing, when setting up a new AI tool that requires command permissions, or when the user asks to stop being prompted for a particular command.

The English summary is being prepared. Showing the original description.

aspiers/ai-config15Updated Oct 9, 2026

bc

Free

Creates a Beads issue for a described problem or piece of work without doing the work itself. Use when the user invokes `/bc` or `$bc`, or asks to file, log, or record a bead for something. To also carry out the work, use the `bx` skill instead.

The English summary is being prepared. Showing the original description.

aspiers/ai-config15Updated Oct 9, 2026

bdr

Free

Stores a persistent memory or learning with `bd remember` so it survives across sessions. Use when the user invokes `/bdr` or `$bdr`, or asks to remember, note, or persist an insight in a Beads workspace.

The English summary is being prepared. Showing the original description.

aspiers/ai-config15Updated Oct 9, 2026

See all skills by aspiers

Report a problem with this skill