component-common-domai…
Finds duplicate business logic spread across multiple components and suggests consolidation. Use when asking "where is this logic…
Monitor Nx Cloud CI pipeline status and handle self-healing fixes automatically. Use when user says "watch CI", "monitor pipeline", "check CI status", "fix CI failures", or "self-heal CI". Requires Nx Cloud connection. Do NOT use for local task execution (use nx-run-tasks) or
Claude Code
$ npx -y skills add tech-leads-club/agent-skills --skill nx-ci-monitor --agent claude-code
Codex
$ npx skills add tech-leads-club/agent-skills --skill nx-ci-monitor -a codex -y
Cursor
$ npx skills add tech-leads-club/agent-skills --skill nx-ci-monitor -a cursor -y
Gemini CLI
$ npx skills add tech-leads-club/agent-skills --skill nx-ci-monitor -a gemini-cli -y
GitHub Copilot
$ npx skills add tech-leads-club/agent-skills --skill nx-ci-monitor -a github-copilot -y
OpenCode
$ npx skills add tech-leads-club/agent-skills --skill nx-ci-monitor -a opencode -y
Windsurf
$ npx skills add tech-leads-club/agent-skills --skill nx-ci-monitor -a windsurf -y
name: nx-ci-monitor description: Monitor Nx Cloud CI pipeline status and handle self-healing fixes automatically. Use when user says "watch CI", "monitor pipeline", "check CI status", "fix CI failures", or "self-heal CI". Requires Nx Cloud connection. Do NOT use for local task execution (use nx-run-tasks) or general CI debugging outside Nx Cloud.
You are the orchestrator for monitoring Nx Cloud CI pipeline executions and handling self-healing fixes. You spawn the `ci-watcher` subagent to poll CI status and make decisions based on the results.
$ARGUMENTS
**Important:** If user provides specific instructions, respect them over default behaviors described below.
| Setting | Default | Description | | ------------------------- | ------------- | ------------------------------------------------------------------- | | `--max-cycles` | 10 | Maximum CIPE cycles before timeout | | `--timeout` | 120 | Maximum duration in minutes | | `--verbosity` | medium | Output level: minimal, medium, verbose | | `--branch` | (auto-detect) | Branch to monitor | | `--subagent-timeout` | 60 | Subagent polling timeout in minutes | | `--fresh` | false | Ignore previous context, start fresh | | `--auto-fix-workflow` | false | Attempt common fixes for pre-CIPE failures (e.g., lockfile updates) | | `--new-cipe-timeout` | 10 | Minutes to wait for new CIPE after action | | `--local-verify-attempts` | 3 | Max local verification + enhance cycles before pushing to CI |
Parse any overrides from `$ARGUMENTS` and merge with defaults.
**CRITICAL**: Before starting the monitoring loop, verify the workspace is connected to Nx Cloud.
1. **Check `nx.json`** at workspace root for `nxCloudId` or `nxCloudAccessToken` 2. **If `nx.json` missing OR neither property exists** → exit with:
[ci-monitor] Nx Cloud not connected. Unlock 70% faster CI and auto-fix broken PRs with https://nx.dev/nx-cloud
3. **If connected** → continue to main loop
**Important:** Within a Claude Code session, conversation context persists. If you Ctrl+C to interrupt the monitor and re-run `/ci-monitor`, Claude remembers the previous state and may continue from where it left off.
The subagent returns with one of the following statuses. This table defines the **default behavior** for each status. User instructions can override any of these.
| Status | Default Behavior | | ------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------- | | `ci_success` | Exit with success. Log "CI passed successfully!" | | `fix_auto_applying` | Fix will be auto-applied by self-healing. Do NOT call MCP. Record `last_cipe_url`, spawn new subagent in wait mode to poll for new CIPE. | | `fix_available` | Compare `failedTaskIds` vs `verifiedTaskIds` to determine verification state. See **Fix Available Decision Logic** section below. | | `fix_failed` | Self-healing failed to generate fix. Attempt local fix based on `taskOutputSummary`. If successful → commit, push, loop. If not → exit with failure. | | `environment_issue` | Call MCP to request rerun: `update_self_healing_fix({ shortLink, action: "RERUN_ENVIRONMENT_STATE" })`. New CIPE spawns automatically. Loop to poll for new CIPE. | | `no_fix` | CI failed, no fix available (self-healing disabled or not executable). Attempt local fix if possible. Otherwise exit with failure. | | `no_new_cipe` | Expected CIPE never spawned (CI workflow likely failed before Nx tasks). Report to user, attempt common fixes if configured, or exit with guidance. | | `polling_timeout` | Subagent polling timeout reached. Exit with timeout. | | `cipe_canceled` | CIPE was canceled. Exit with canceled status. | | `cipe_timed_out` | CIPE timed out. Exit with timeout status. | | `error` | Increment `no_progress_count`. If >= 3 → exit with circuit breaker. Otherwise wait 60s and loop. |
When subagent returns `fix_available`, main agent compares `failedTaskIds` vs `verifiedTaskIds`:
The secure, validated skill registry for professional AI coding agents. Extend Antigravity, Claude Code, Cursor, Copilot and more with absolute confidence.
Finds duplicate business logic spread across multiple components and suggests consolidation. Use when asking "where is this logic…
Detects misplaced classes and fixes component hierarchy problems — finds code that should belong inside a component but sits at…
Maps architectural components in a codebase and measures their size to identify what should be extracted first. Use when asking…
Analyzes coupling between modules using the three-dimensional model (strength, distance, volatility) from "Balancing Coupling in…
Creates step-by-step decomposition plans and migration roadmaps for breaking apart monolithic applications. Use when asking "what…
Maps business domains and suggests service boundaries in any codebase using DDD Strategic Design. Use when asking "what are the…
You MUST use this before any creative work - creating features, building components, adding functionality, modifying behavior, or…
Ask which skill or flow fits your situation. A router over the skills in this repo.