Dashboards·terminal·MIT
ci-watch
A progress bar for each GitHub Actions run Claude starts, then pass or fail.

ci-watch follows the GitHub Actions runs that Claude sets off, so you see CI finish without leaving Claude Code. When Claude pushes a branch, opens a pull request or pushes a tag, a band above the prompt gives each workflow run a progress bar, then a green or red result.
What it does
- While a run is going: one row per workflow, with the time so far against the duration of that workflow’s last successful run, as in
1m10s / ~2m45s. The bar stays short of full until the run really ends. - When it ends: a green line with the workflows that passed, or a red one naming those that failed and how. The result also arrives as a toast and stays in the band until you send your next message.
- When nothing starts: after 90 seconds without a run, the row says no workflow was triggered.
A push and the PR opened from that branch share one row, which waits for both sets of runs. A push to a branch that already has an open PR also waits for its pull_request runs. A tag push waits only for the runs on the tag, not for the branch CI that already ran on that commit.
Failed scheduled workflows
Turn on Flag failed scheduled workflows in /config and, at each session start, every workflow whose latest scheduled run in the last 14 days failed, timed out or could not start gets a red row with a link to the run. Dismiss hides those runs for this repo; a newer failure shows up again. The option is off by default because it makes a few gh calls at every start.
Install
Needs Claude Code 2.1.287 or later, plus the GitHub CLI (gh) logged in to the repo’s GitHub account.
claude plugin marketplace add arasovic/claude-code-mods
claude plugin install ci-watch@claude-code-mods
Restart Claude Code. The band appears on its own the next time Claude pushes from the repo.
The marketplace holds fourteen mods by the same author, each installed on its own, among them session-meter and change-ledger. Its name, claude-code-mods, is also used by hamzafer/claude-code-mods and karanb192/claude-code-mods: if claude plugin marketplace list already shows a claude-code-mods, the add clashes with it, so remove that one first with claude plugin marketplace remove claude-code-mods.
How it works
ci-watch hooks Claude’s Bash tool calls. After each command it reads the command line, what Claude Code reports about it (a branch pushed, a pull request created) and git’s output, where a new tag shows up.
The rest goes through git and gh in the repo. git rev-parse finds the pushed commit on origin. Every 10 seconds gh run list asks GitHub for that commit’s runs, with one extra call per workflow for the duration of its last successful run. For a new PR it also runs gh repo view and gh pr view to confirm the PR belongs to this repo and get its head commit. All network traffic is gh talking to GitHub, and nothing is sent to the model, so it costs no tokens.
Unfinished watches live in the mod’s state and pick up again when the mod reloads. Dismissed scheduled runs are stored per repo, up to the last 50.
Limitations
- Only the repo Claude Code was started in is watched, and only if that folder has
.github/workflows. A session opened in a subfolder of the repo is not watched, and a push made withcd <other repo> && git pushorgit -C <other repo>is ignored. - It sees only pushes that Claude runs through its Bash tool, not pushes from another terminal.
- It reads the pushed commit from
origin; a push to another remote falls back to the local branch. - It gives up after 60 minutes and marks the run as still running.
- The scheduled check looks back 14 days, so a monthly workflow whose last run failed can be missed.
- The author documents it only in the terminal.
Similar Claude Mods
Agent Standup band
A line above the prompt when another Claude Code session waits for you, plus toasts.
cc-pr-tracker
Merge state, review and checks of your PRs on one line above the prompt, with alerts.
vercel-deploy-status
Your Vercel deploy queue above the prompt: phase, branch and elapsed time, zero tokens.
plan-progress
Claude's plan as live progress bars above the prompt, with subagents under each task.
Popular Claude Mods
The whole directory →shared-session
Share a session by link: teammates join from their Claude Code and prompt it live.
storybloq
A board of the tickets and issues kept in .story/, in a pane beside the transcript.
mission-control
Main agent, subagents and every tool call in a pane, plus a map of the files they touch.
paste-view
Previews of pasted text and thumbnails of pasted images, drawn above the prompt.





