Token导航 LogoToken导航

Agent Skill · 开发

monitor-ci(监测 CI)

monitor-ci 用于处理 GitHub 仓库、Issue、Pull Request 和代码协作信息,适合在 Codex、Claude、Cursor、Gemini CLI 中需要围绕仓库状态、代码变更或协作事项进行整理时使用。可结合来源仓库、安装命令和原始 README 继续核验具体用法。安装前建议确认权限范围、维护状态,以及是否会触发联网、命令执行或文件读写。

monitor-ci 是开发类 Agent Skill,可用宿主为 Codex、Claude、Cursor、Gemini CLI,通过GitHub 仓库获取,权限为执行命令;许可证信息还不明确,第三方扫描已通过,按安装量在开发类的 21,746 个 Skill 里排第 1,567。

总安装 26,928周安装 1,099GitHub Stars 18下载 8,624核验 2026-05-01

安装说明

本站只整理中文说明,不托管安装包,也不代用户安装。
GitHub
许可证
unknown

安装方式

通过对话安装

复制提示词发给支持本地命令或 Skills 的 AI 助手,先确认命令和权限,再让它执行。

请帮我安装这个 Agent Skill:monitor-ci(监测 CI)
来源仓库:https://github.com/nrwl/nx-ai-agents-config
仓库路径:skills/monitor-ci
安装命令:
npx skills add https://github.com/nrwl/nx-ai-agents-config --skill monitor-ci
安装前请先检查当前环境是否支持对应 CLI,并向我确认将要执行的命令、安装目录、联网范围和文件读写权限;确认后再执行。

命令行安装

复制命令到本机终端执行。该命令会通过 npx skills 从第三方来源获取 Skill;本站只展示命令,不托管安装包,也不自动执行。

skills.shnpx skills
npx skills add https://github.com/nrwl/nx-ai-agents-config --skill monitor-ci

这个 Skill 是做什么的

开发类 Skill 面向写代码、改代码和排查问题,一般会读写仓库文件,部分还会执行构建或测试命令。

修复自动应用跳过 修复已验证但自动应用已跳过(例如,循环预防)。告知用户,提供手册申请。修复应用就绪 修复已验证(所有任务或仅限 e2e)。通过 MCP 申请。修复需要本地验证 修复了未经验证的非 e2e 任务。在本地运行,然后应用或增强。修复需求审查 修复验证失败/未尝试的问题。分析并决定。修复失败 自愈失败。

获取大量数据,尝试本地修复(首先进行门检查)。没有修复 没有可用的修复。获取大量数据,尝试本地修复(首先进行门检查)或退出。环境问题 通过 MCP 请求环境重新运行(首先进行门检查)。自我修复节流 拒绝旧的修复,尝试本地修复。无新菜谱 CI 尝试从未产生。自动修复工作流程或在指导下退出。

cipe_无_任务 CI 失败,没有任务。使用空提交重试一次。主要规则(始终适用): Git 安全:按名称暂存特定文件 — git add -A 或 git add 。存在泄露用户不相关的正在进行的工作或秘密的风险 环境故障(OOM、未找到命令、权限被拒绝):立即保释。

这些不是代码错误,因此在它们上花费本地修复预算是浪费 门检查:运行 ci-state-update.mjs gateway 在本地修复尝试之前 - 如果预算用尽,则打印消息并退出 主循环 第 1 步:初始化跟踪 Cycle_count = 0 # 仅针对代理启动的周期递增(根据 --max-cycles 进行计数) 开始时间 = 现在() 无进度计数 = 0 本地验证计数 = 0 env_rerun_count = 0 最后的食谱网址=空 Expected_commit_sha = null agent_triggered = false # 在监视器采取触发新 CI 尝试的操作后设置 true 轮询计数 = 0 等待模式=假 上一个状态=空 prev_cipe_status = null prev_sh_status = null prev_verification_status = null prev_failure_classification = null 第 2 步:轮询循环 重复直到完成: 2a.生成子代理 (FETCH_STATUS) 根据模式确定选择字段: 等待模式:使用 WAIT_FIELDS ( cipeUrl,commitSha,cipeStatus ) 正常模式(第一次轮询或在 newCipeDetected 之后):使用 LIGHT_FIELDS 任务( 代理:“ci-monitor-subagent”, 型号: 俳句, 提示:“分支 '<branch>' 的 FETCH_STATUS。

来源仓库内路径:skills/monitor-ci

上手步骤

4 步
  1. 1

    确认自己的宿主工具

    公开资料标注支持 Codex、Claude、Cursor、Gemini CLI;先确认自己用的是其中之一,再按对应工具的 Skills 目录放置。

  2. 2

    拿到安装命令

    可以直接复制的命令是 npx skills add https://github.com/nrwl/nx-ai-agents-config --skill monitor-ci;命令里的占位符换成自己的路径或密钥再执行。

  3. 3

    安装后重启宿主

    命令执行完要完全退出宿主工具再打开,让新装的 Skill 被重新扫描到,否则列表里可能看不到。

  4. 4

    按最小权限试用

    它需要执行命令,先在测试目录或测试账号里跑,确认没问题再放到正式项目。

常见问题

6 条

monitor-ci 怎么安装?

在终端执行 npx skills add https://github.com/nrwl/nx-ai-agents-config --skill monitor-ci。装完完全退出宿主工具再打开,让它重新扫描本地 Skill。

monitor-ci 支持哪些 AI 工具?

公开资料标注支持 Codex、Claude、Cursor、Gemini CLI。其他工具只要能读取本地 Skill 目录,一般也能手动放进去,但要自己确认触发方式是否一致。

monitor-ci 需要什么权限?

权限级别是执行命令。安装流程涉及命令执行,可能通过 npx skills add https://github.com/nrwl/nx-ai-agents-config --skill monitor-ci 联网下载 Skill 或依赖。用户安装前应确认命令来源、仓库内容和执行环境。

monitor-ci 是免费的吗?

公开资料没有标注明确许可证,收费和商用限制都无法确认。正式使用前请到来源仓库核对授权说明。

monitor-ci 用的人多吗?

公开数据是累计安装 26,928 次,近一周安装 1,099 次,下载 8,624 次,GitHub 18 星。这些数字来自第三方目录统计,只能当作热度参考,不代表质量或安全性。

monitor-ci 安全吗?

第三方扫描结果为通过,但这只覆盖已知的静态检查项,不能替代自己读一遍源码和安装命令。

值得选的地方和要先想清楚的地方

值得选的地方

  • 同时适配 4 种工具,换客户端不用重新找替代品。
  • 第三方扫描已通过,常见的高风险行为没有命中。

先想清楚的地方

  • 需要执行命令,装到常用环境前要先评估影响面。
  • 许可证没有明确标注,能不能商用、能不能再分发都不确定。
  • 第三方目录整理,版本更新和行为细节以来源仓库为准。

适不适合你

更适合

  • 已经在用 Codex,想直接扩展它能力的人。
  • 需要处理开发类任务、又不想每次都手写提示词的人。

不太适合

  • 不能接受 Skill 在你机器上执行命令的人。
  • 需要明确授权才能用到公司项目里的场景。
  • 需要厂商级技术支持和 SLA 的生产系统。

开发类 Skill 对比

6 个同类
Skill总安装GitHub 星权限许可证扫描
skill-vetter

技能审查员 · OpenClaw

8,779,018986操作浏览器MIT-0通过
ontology

本体论 · OpenClaw

6,636,960576只读MIT-0通过
entra-app-registration

内部应用程序注册 · Codex、Claude

6,631,872764接触敏感数据未明确通过
entra-app-registration

内部应用程序注册 · Codex、Claude

3,757,680201接触敏感数据未明确通过
nano-banana-pro

纳米香蕉专业版 · OpenClaw

3,526,898364接触敏感数据MIT-0有提醒
monitor-ci

监测 CI · 本页

26,92818执行命令未明确通过

按安装量取同分类前几名;数字来自第三方目录统计,只作热度参考,不代表质量结论。

SKILL.md 原文

Monitor CI Command

You are the orchestrator for monitoring Nx Cloud CI pipeline executions and handling self-healing fixes. You spawn subagents to interact with Nx Cloud, run deterministic decision scripts, and take action based on the results.

Context

  • Current Branch:!git branch --show-current
  • Current Commit:!git rev-parse --short HEAD
  • Remote Status:!git status -sb | head -1

User Instructions

$ARGUMENTS

Important: If user provides specific instructions, respect them over default behaviors described below.

Configuration Defaults

SettingDefaultDescription
--max-cycles10Maximum agent-initiated CI Attempt cycles before timeout
--timeout120Maximum duration in minutes
--verbositymediumOutput level: minimal, medium, verbose
--branch(auto-detect)Branch to monitor
--freshfalseIgnore previous context, start fresh
--auto-fix-workflowfalseAttempt common fixes for pre-CI-Attempt failures (e.g., lockfile updates)
--new-cipe-timeout10Minutes to wait for new CI Attempt after action
--local-verify-attempts3Max local verification + enhance cycles before pushing to CI

Parse any overrides from $ARGUMENTS and merge with defaults.

Nx Cloud Connection Check

Before starting the monitoring loop, verify the workspace is connected to Nx Cloud. Without this connection, no CI data is available and the entire skill is inoperable.

Step 0: Verify Nx Cloud Connection

  1. Check nx.json at workspace root for nxCloudId or nxCloudAccessToken
  2. If nx.json missing OR neither property exists → exit with: 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

Architecture Overview

  1. This skill (orchestrator): spawns subagents, runs scripts, prints status, does local coding work
  2. ci-monitor-subagent (haiku): calls one MCP tool (ci_information or update_self_healing_fix), returns structured result, exits
  3. ci-poll-decide.mjs (deterministic script): takes ci_information result + state, returns action + status message
  4. ci-state-update.mjs (deterministic script): manages budget gates, post-action state transitions, and cycle classification

Status Reporting

The decision script handles message formatting based on verbosity. When printing messages to the user:

  • Prepend [monitor-ci] to every message from the script's message field
  • For your own action messages (e.g. "Applying fix via MCP..."), also prepend [monitor-ci]

Anti-Patterns

These behaviors cause real problems — racing with self-healing, losing CI progress, or wasting context:

Anti-PatternWhy It's Bad
Using CI provider CLIs with --watch flags (e.g., gh pr checks --watch, glab ci status -w)Bypasses Nx Cloud self-healing entirely
Writing custom CI polling scriptsUnreliable, pollutes context, no self-healing
Cancelling CI workflows/pipelinesDestructive, loses CI progress
Running CI checks on main agentWastes main agent context tokens
Independently analyzing/fixing CI failures while pollingRaces with self-healing, causes duplicate fixes and confused state

If this skill fails to activate, the fallback is:

  1. Use CI provider CLI for a one-time, read-only status check (single call, no watch/polling flags)
  2. Immediately delegate to this skill with gathered context
  3. Do not continue polling on main agent — it wastes context tokens and bypasses self-healing

Session Context Behavior

If the user previously ran /monitor-ci in this session, you may have prior state (poll counts, last CI Attempt URL, etc.). Resume from that state unless --fresh is set, in which case discard it and start from Step 1.

MCP Tool Reference

The ci_information and update_self_healing_fix tools are called via the ci-monitor-subagent, not directly from the orchestrator. Calling MCP tools directly wastes main agent context with large response payloads. The field sets below are for composing subagent prompts (see Step 2a).

Three field sets control polling efficiency — use the lightest set that gives you what you need:

WAIT_FIELDS: 'cipeUrl,commitSha,cipeStatus'
LIGHT_FIELDS: 'cipeStatus,cipeUrl,branch,commitSha,selfHealingStatus,verificationStatus,userAction,failedTaskIds,verifiedTaskIds,selfHealingEnabled,failureClassification,couldAutoApplyTasks,autoApplySkipped,autoApplySkipReason,shortLink,confidence,confidenceReasoning,hints,selfHealingSkippedReason,selfHealingSkipMessage'
HEAVY_FIELDS: 'taskOutputSummary,suggestedFix,suggestedFixReasoning,suggestedFixDescription'

The ci_information tool accepts branch (optional, defaults to current git branch), select (comma-separated field names), and pageToken (0-based pagination for long strings).

The update_self_healing_fix tool accepts a shortLink and an action: APPLY, REJECT, or RERUN_ENVIRONMENT_STATE.

Default Behaviors by Status

The decision script returns one of the following statuses. This table defines the default behavior for each. User instructions can override any of these.

Simple exits — just report and exit:

StatusDefault Behavior
ci_successExit with success
cipe_canceledExit, CI was canceled
cipe_timed_outExit, CI timed out
polling_timeoutExit, polling timeout reached
circuit_breakerExit, no progress after 13 consecutive polls
environment_rerun_capExit, environment reruns exhausted
fix_auto_applyingSelf-healing is handling it — just record last_cipe_url, enter wait mode. No MCP call or local git ops needed.
errorWait 60s and loop

Statuses requiring action — when handling these in Step 3, read references/fix-flows.md for the detailed flow:

StatusSummary
fix_auto_apply_skippedFix verified but auto-apply skipped (e.g., loop prevention). Inform user, offer manual apply.
fix_apply_readyFix verified (all tasks or e2e-only). Apply via MCP.
fix_needs_local_verifyFix has unverified non-e2e tasks. Run locally, then apply or enhance.
fix_needs_reviewFix verification failed/not attempted. Analyze and decide.
fix_failedSelf-healing failed. Fetch heavy data, attempt local fix (gate check first).
no_fixNo fix available. Fetch heavy data, attempt local fix (gate check first) or exit.
environment_issueRequest environment rerun via MCP (gate check first).
self_healing_throttledReject old fixes, attempt local fix.
no_new_cipeCI Attempt never spawned. Auto-fix workflow or exit with guidance.
cipe_no_tasksCI failed with no tasks. Retry once with empty commit.

Key rules (always apply):

  • Git safety: Stage specific files by name — git add -A or git add. risks committing the user's unrelated work-in-progress or secrets
  • Environment failures (OOM, command not found, permission denied): bail immediately. These aren't code bugs, so spending local-fix budget on them is wasteful
  • Gate check: Run ci-state-update.mjs gate before local fix attempts — if budget exhausted, print message and exit

Main Loop

Step 1: Initialize Tracking

cycle_count = 0            # Only incremented for agent-initiated cycles (counted against --max-cycles)
start_time = now()
no_progress_count = 0
local_verify_count = 0
env_rerun_count = 0
last_cipe_url = null
expected_commit_sha = null
agent_triggered = false    # Set true after monitor takes an action that triggers new CI Attempt
poll_count = 0
wait_mode = false
prev_status = null
prev_cipe_status = null
prev_sh_status = null
prev_verification_status = null
prev_failure_classification = null

Step 2: Polling Loop

Repeat until done:

2a. Spawn subagent (FETCH_STATUS)

Determine select fields based on mode:

  • Wait mode: use WAIT_FIELDS (cipeUrl,commitSha,cipeStatus)
  • Normal mode (first poll or after newCipeDetected): use LIGHT_FIELDS
Task(
  agent: "ci-monitor-subagent",
  model: haiku,
  prompt: "FETCH_STATUS for branch '<branch>'.
           select: '<fields>'"
)

The subagent calls ci_information and returns a JSON object with the requested fields. This is a foreground call — wait for the result.

2b. Run decision script
node <skill_dir>/scripts/ci-poll-decide.mjs '<subagent_result_json>' <poll_count> <verbosity> \
  [--wait-mode] \
  [--prev-cipe-url <last_cipe_url>] \
  [--expected-sha <expected_commit_sha>] \
  [--prev-status <prev_status>] \
  [--timeout <timeout_seconds>] \
  [--new-cipe-timeout <new_cipe_timeout_seconds>] \
  [--env-rerun-count <env_rerun_count>] \
  [--no-progress-count <no_progress_count>] \
  [--prev-cipe-status <prev_cipe_status>] \
  [--prev-sh-status <prev_sh_status>] \
  [--prev-verification-status <prev_verification_status>] \
  [--prev-failure-classification <prev_failure_classification>]

The script outputs a single JSON line: {action, code, message, delay?, noProgressCount, envRerunCount, fields?, newCipeDetected?, verifiableTaskIds?}

2c. Process script output

Parse the JSON output and update tracking state:

  • no_progress_count = output.noProgressCount
  • env_rerun_count = output.envRerunCount
  • prev_cipe_status = subagent_result.cipeStatus
  • prev_sh_status = subagent_result.selfHealingStatus
  • prev_verification_status = subagent_result.verificationStatus
  • prev_failure_classification = subagent_result.failureClassification
  • prev_status = output.action + ":" + (output.code || subagent_result.cipeStatus)
  • poll_count++

Based on action:

  • action == "poll": Print output.message, sleep output.delay seconds, go to 2a

- If output.newCipeDetected: clear wait mode, reset wait_mode = false

  • action == "wait": Print output.message, sleep output.delay seconds, go to 2a
  • action == "done": Proceed to Step 3 with output.code

Step 3: Handle Actionable Status

When decision script returns action == "done":

  1. Run cycle-check (Step 4) before handling the code
  2. Check the returned code
  3. Look up default behavior in the table above
  4. Check if user instructions override the default
  5. Execute the appropriate action
  6. If action expects new CI Attempt, update tracking (see Step 3a)
  7. If action results in looping, go to Step 2
Spawning subagents for actions

Several statuses require fetching heavy data or calling MCP:

  • fix_apply_ready: Spawn UPDATE_FIX subagent with APPLY
  • fix_needs_local_verify: Spawn FETCH_HEAVY subagent for fix details before local verification
  • fix_needs_review: Spawn FETCH_HEAVY subagent → get suggestedFixDescription, suggestedFixSummary, taskFailureSummaries
  • fix_failed / no_fix: Spawn FETCH_HEAVY subagent → get taskFailureSummaries for local fix context
  • environment_issue: Spawn UPDATE_FIX subagent with RERUN_ENVIRONMENT_STATE
  • self_healing_throttled: Spawn FETCH_HEAVY subagent → get selfHealingSkipMessage; then FETCH_THROTTLE_INFO + UPDATE_FIX for each old fix

Step 3a: Track State for New-CI-Attempt Detection

After actions that should trigger a new CI Attempt, run:

node <skill_dir>/scripts/ci-state-update.mjs post-action \
  --action <type> \
  --cipe-url <current_cipe_url> \
  --commit-sha <git_rev_parse_HEAD>

Action types: fix-auto-applying, apply-mcp, apply-local-push, reject-fix-push, local-fix-push, env-rerun, auto-fix-push, empty-commit-push

The script returns {waitMode, pollCount, lastCipeUrl, expectedCommitSha, agentTriggered}. Update all tracking state from the output, then go to Step 2.

Step 4: Cycle Classification and Progress Tracking

When the decision script returns action == "done", run cycle-check before handling the code:

node <skill_dir>/scripts/ci-state-update.mjs cycle-check \
  --code <code> \
  [--agent-triggered] \
  --cycle-count <cycle_count> --max-cycles <max_cycles> \
  --env-rerun-count <env_rerun_count>

The script returns {cycleCount, agentTriggered, envRerunCount, approachingLimit, message}. Update tracking state from the output.

  • If approachingLimit → ask user whether to continue (with 5 or 10 more cycles) or stop monitoring
  • If previous cycle was NOT agent-triggered (human pushed), log that human-initiated push was detected
Progress Tracking
  • no_progress_count, circuit breaker (5 polls), and backoff reset are handled by ci-poll-decide.mjs (progress = any change in cipeStatus, selfHealingStatus, verificationStatus, or failureClassification)
  • env_rerun_count reset on non-environment status is handled by ci-state-update.mjs cycle-check
  • On new CI Attempt detected (poll script returns newCipeDetected) → reset local_verify_count = 0, env_rerun_count = 0

Error Handling

ErrorAction
Git rebase conflictReport to user, exit
nx-cloud apply-locally failsReject fix via MCP (action: "REJECT"), then attempt manual patch (Reject + Fix From Scratch Flow) or exit
MCP tool errorRetry once, if fails report to user
Subagent spawn failureRetry once, if fails exit with error
Decision script errorTreat as error status, increment no_progress_count
No new CI Attempt detectedIf --auto-fix-workflow, try lockfile update; otherwise report to user with guidance
Lockfile auto-fix failsReport to user, exit with guidance to check CI logs

User Instruction Examples

Users can override default behaviors:

InstructionEffect
"never auto-apply"Always prompt before applying any fix
"always ask before git push"Prompt before each push
"reject any fix for e2e tasks"Auto-reject if failedTaskIds contains e2e
"apply all fixes regardless of verification"Skip verification check, apply everything
"if confidence < 70, reject"Check confidence field before applying
"run 'nx affected -t typecheck' before applying"Add local verification step
"auto-fix workflow failures"Attempt lockfile updates on pre-CI-Attempt failures
"wait 45 min for new CI Attempt"Override new-CI-Attempt timeout (default: 10 min)

平台分布

Codex

34.04%
按下载量换算2,936

Claude

32.95%
按下载量换算2,842

Cursor

19.78%
按下载量换算1,706

Gemini CLI

9.47%
按下载量换算817

安全审计

Gen Agent Trust Hub

通过

Socket

通过

Snyk

通过

权限和风险

执行命令

安装流程涉及命令执行,可能通过 npx skills add https://github.com/nrwl/nx-ai-agents-config --skill monitor-ci 联网下载 Skill 或依赖。用户安装前应确认命令来源、仓库内容和执行环境。

安装前确认

本站仅展示第三方公开信息,不托管安装包,不提供自动安装或运行环境。安装前应自行审查源码、依赖和命令行为。目前只有一个公开来源,建议同时核对源仓库。

继续浏览同类 Skills