watch-ci

Watch GitHub Actions CI status for the current commit until completion. Use after pushing changes to monitor build results.

224 stars

Best use case

watch-ci is best used when you need a repeatable AI agent workflow instead of a one-off prompt.

Watch GitHub Actions CI status for the current commit until completion. Use after pushing changes to monitor build results.

Teams using watch-ci should expect a more consistent output, faster repeated execution, less prompt rewriting.

When to use this skill

  • You want a reusable workflow that can be run more than once with consistent structure.

When not to use this skill

  • You only need a quick one-off answer and do not need a reusable workflow.
  • You cannot install or maintain the underlying files, dependencies, or repository context.

Installation

Claude Code / Cursor / Codex

$curl -o ~/.claude/skills/watch-ci/SKILL.md --create-dirs "https://raw.githubusercontent.com/codervisor/lean-spec/main/.claude/skills/watch-ci/SKILL.md"

Manual Installation

  1. Download SKILL.md from GitHub
  2. Place it in .claude/skills/watch-ci/SKILL.md inside your project
  3. Restart your AI agent — it will auto-discover the skill

How watch-ci Compares

Feature / Agentwatch-ciStandard Approach
Platform SupportNot specifiedLimited / Varies
Context Awareness High Baseline
Installation ComplexityUnknownN/A

Frequently Asked Questions

What does this skill do?

Watch GitHub Actions CI status for the current commit until completion. Use after pushing changes to monitor build results.

Where can I find the source code?

You can find the source code on GitHub using the link provided at the top of the page.

Related Guides

SKILL.md Source

# Watch CI

Poll the GitHub Actions CI pipeline for the **current HEAD commit** until all jobs finish.

## Environment

The `gh` CLI is **not available** in the Claude VM. Use the GitHub REST API via `curl`.
The repo is `codervisor/lean-spec`.

## Steps

1. Get the current commit SHA and branch:
   ```bash
   SHA=$(git rev-parse HEAD)
   BRANCH=$(git branch --show-current)
   echo "Watching CI for commit $SHA on branch $BRANCH"
   ```

2. Find the workflow run **matching our exact commit**. The API returns runs newest-first; filter by `head_sha`. If the run hasn't appeared yet (GitHub can take a few seconds), retry up to 5 times with 10s waits:
   ```bash
   curl -sH "Accept: application/vnd.github+json" \
     "https://api.github.com/repos/codervisor/lean-spec/actions/runs?branch=$BRANCH&head_sha=$SHA&per_page=1" \
     | python3 -c "
   import json, sys
   data = json.load(sys.stdin)
   runs = data.get('workflow_runs', [])
   if not runs:
       print('NO_RUNS'); sys.exit()
   r = runs[0]
   print(f'RUN_ID={r[\"id\"]}')
   print(f'Status: {r[\"status\"]}  Conclusion: {r.get(\"conclusion\") or \"pending\"}  Commit: {r[\"head_sha\"][:8]}')"
   ```

3. Poll jobs until all complete (every 60s for Rust builds which take ~8-10 min):
   ```bash
   curl -sH "Accept: application/vnd.github+json" \
     "https://api.github.com/repos/codervisor/lean-spec/actions/runs/$RUN_ID/jobs" \
     | python3 -c "
   import json, sys
   data = json.load(sys.stdin)
   for j in data.get('jobs', []):
       steps = [s for s in j.get('steps', []) if s['status'] == 'in_progress']
       step_info = f' -> {steps[0][\"name\"]}' if steps else ''
       print(f'{j[\"name\"]:40}  {j[\"status\"]:12}  {j.get(\"conclusion\") or \"\"}{step_info}')"
   ```

4. On failure, fetch the failed job logs to diagnose:
   ```bash
   curl -sH "Accept: application/vnd.github+json" \
     "https://api.github.com/repos/codervisor/lean-spec/actions/runs/$RUN_ID/jobs" \
     | python3 -c "
   import json, sys
   data = json.load(sys.stdin)
   for j in data.get('jobs', []):
       if j.get('conclusion') == 'failure':
           print(f'FAILED: {j[\"name\"]} (id: {j[\"id\"]})')
           for s in j.get('steps', []):
               if s.get('conclusion') == 'failure':
                   print(f'  Step: {s[\"name\"]}')"
   ```

## CI Structure

- **node** (~2 min): pnpm install, build, typecheck, test
- **rust** (~8-10 min, depends on node): cargo fmt, clippy, build, test, TS binding export

## Reporting

Give the user a brief status update each poll cycle. On completion, summarize:
- Overall result (success/failure)
- Per-job results
- If failed: which step failed and relevant error output

Related Skills

leanspec

224
from codervisor/lean-spec

The spec-coding methodology for AI-assisted development. Use when planning features, creating/refining/implementing/verifying specs, or organising a project. Works with whatever spec backend your team already uses — local markdown, GitHub Issues, Azure DevOps, Jira — by delegating platform-specific details to a LeanSpec adapter.

parallel-worktrees

224
from codervisor/lean-spec

Run multiple AI coding agent sessions in parallel using git worktrees — each agent isolated in its own worktree, working on a separate branch. Use this skill whenever the user wants to: run two or more AI agents simultaneously on different features or bugs, set up isolated agent workspaces in the same repo, push parallel branches to GitHub and open/update PRs, coordinate between concurrent agent sessions, or clean up after merging. Triggers on: "parallel agents", "multiple agent sessions", "git worktree", "run agents in parallel", "work on two things at once", "isolated agent workspace", "spin up another agent", or any request involving simultaneous AI-assisted development streams.

leanspec-development

224
from codervisor/lean-spec

Development workflows, commands, publishing, CI/CD, changelog management, and contribution guidelines for LeanSpec. Use when contributing code, fixing bugs, setting up dev environment, running tests or linting, working with the monorepo structure, looking up build/dev/test/publish/format/lint commands, preparing releases, publishing to npm, bumping versions, syncing package versions, testing dev builds, troubleshooting npm distribution, updating changelogs, triggering CI/CD workflows, monitoring build status, debugging failed runs, managing artifacts, checking CI before releases, or researching AI agent runners. Triggers include any development, scripting, publishing, CI/CD, changelog, or runner research task in this project.

github-integration

224
from codervisor/lean-spec

Enable the GitHub CLI (`gh`) in Claude Code cloud sessions and GitHub Copilot coding agent environments. Use this skill when: (1) setting up a project so cloud AI agents can use `gh` for PRs, issues, and releases, (2) configuring setup scripts or SessionStart hooks for `gh` installation, (3) adding `copilot-setup-steps.yml` for GitHub Copilot agents, (4) troubleshooting `gh` auth failures in cloud sessions, or (5) configuring `GH_TOKEN` for headless environments. Triggers on: "enable gh", "github integration", "Claude Code cloud setup", "copilot setup steps", "gh auth in cloud", "gh not working in cloud", "setup script", or any request involving GitHub CLI access from cloud-based AI coding agents.

agent-browser

224
from codervisor/lean-spec

Browser automation CLI for AI agents. Use when the user needs to interact with websites, including navigating pages, filling forms, clicking buttons, taking screenshots, extracting data, testing web apps, or automating any browser task. Triggers include requests to "open a website", "fill out a form", "click a button", "take a screenshot", "scrape data from a page", "test this web app", "login to a site", "automate browser actions", or any task requiring programmatic web interaction.

canary-watch

144923
from affaan-m/everything-claude-code

Use this skill to monitor a deployed URL for regressions after deploys, merges, or dependency upgrades.

DevelopmentClaude

crypto-watcher

3891
from openclaw/skills

Monitor crypto wallets and DeFi positions. Get alerts when things change.

Blockchain & Finance

letterboxd-watchlist

3891
from openclaw/skills

Scrape a public Letterboxd user's watchlist into a CSV/JSONL list of titles and film URLs without logging in. Use when a user asks to export, scrape, or mirror a Letterboxd watchlist, or to build watch-next queues.

Data & Research

stock-watchlist

3891
from openclaw/skills

Query real-time stock prices, basic quote fields, and manage a Markdown watchlist for A-share, Hong Kong, and US stocks. Use when users ask in Chinese or by ticker/code to search stocks, inspect current price and quote basics, or maintain a watchlist stored in a Markdown file.

Personal Finance

retraction-watcher

3891
from openclaw/skills

Automatically scan document reference lists and check against Retraction.

project-watcher

3891
from openclaw/skills

项目规划与进度追踪。维护 roadmap,git commit 通知,远程部署感知,与飞书集成。

imap-idle-watcher

3891
from openclaw/skills

Real-time email monitoring using IMAP IDLE — no OAuth, no token expiration. Sets up a persistent connection to any IMAP server (Gmail, Outlook, Yahoo, etc.) and triggers a user-defined command instantly when new email arrives. Runs as a systemd service with auto-reconnect. Use when: (1) setting up email-triggered automation, (2) watching an inbox for new messages in real-time, (3) replacing OAuth-based email polling that keeps breaking due to token expiry, (4) building email-to-webhook or email-to-script pipelines. NOT for: sending email, reading/parsing email bodies, or non-Linux systems without systemd.