Borrowing it
Nothing to install: this file belongs to ayutaz/piper-plus. Take a copy, put it at the same path in your own repository, and replace the rules that are about this project with yours.
curl -O https://raw.githubusercontent.com/ayutaz/piper-plus/dev/.claude/skills/watch-ci-patterns/SKILL.mdgit clone --depth 1 https://github.com/ayutaz/piper-plusWrote this? Show the measurements
A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.
[](https://agentmods.dev/skills/ayutaz/piper-plus/watch-ci-patterns)<a href="https://agentmods.dev/skills/ayutaz/piper-plus/watch-ci-patterns"><img src="https://agentmods.dev/badge/skills/ayutaz/piper-plus/watch-ci-patterns.svg" alt="Measured on agentmods" height="20"></a>What it costs to keep this loaded
Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.
| Model | Per session | Once invoked |
|---|---|---|
| Fable 5.1 | $0.00111 | $0.01845 |
| Opus 5 | $0.00056 | $0.00923 |
| Sonnet 5 | $0.00022 | $0.00369 |
| Haiku 4.5 | $0.00011 | $0.00185 |
Grade A, and why
watch-ci-patterns scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 7d ago.
A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.
Nothing flagged
None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.
How it starts
The opening of the file, as written. The whole thing — 154 lines — stays where its author put it; the contents beside it link to each section on GitHub.
CI Failure Pattern Watcher
15 エージェント workflow 監査の調査結果に基づく skill。 主要 failing workflow:
| Workflow | Failure rate | 主要 failure 種別 |
|---|---|---|
| docker-build.yml | 45% | flake (arm64 QEMU / disk space / network) |
| docker-test.yml | 16% | feature-branch test env (disk / arm64) |
| go-ci.yml | 14% | dep drift (go.mod resolver) |
| csharp-ci.yml | 13% | feature-branch issue-426 (docker mount) |
| multi-runtime-rtf.yml | 5% | timing variance / RTF baseline |
分類カテゴリ
- flake: 同じ branch の同じ commit で連続失敗 → 再 run で pass。 timing / network 由来。
- drift: lockfile / version pin / contract 不整合。 pre-commit で先回り可能。
- env: runner OS specific / QEMU emulation / disk space / Docker daemon。
- test bug: 同じ branch で再 run しても再現。 実装変更を要する。
引数
--workflow <name>: 個別 workflow に絞る (省略時は全 workflow)--limit N: 取得する run 数 (default 30)--since DUR: 期間絞り込み (7d/24h)--branch <name>: 特定 branch に絞る (default 全 branch)
現在の状態
- ブランチ: !
git rev-parse --abbrev-ref HEAD - 引数: $ARGUMENTS
フェーズ 1: workflow 一覧取得
gh workflow list --limit 50 --json name,state,id | jq -r '.[] | select(.state == "active") | .name'
--workflow 指定時はその 1 つだけ、 省略時は全 active workflow を順次処理。
フェーズ 2: 各 workflow の最近 run 集計
gh run list --workflow="$WORKFLOW" --limit "$LIMIT" \
--json conclusion,name,headBranch,createdAt,displayTitle,databaseId,event
集計:
- 全 run 数
- conclusion 別 (success / failure / cancelled / skipped)
- failure rate (failure / (success + failure))
フェーズ 3: failure run の commit / branch クラスタリング
同じ commit SHA / branch で複数 run があれば flake 疑い。 異なる branch で同じ workflow が同じ step で fail なら drift 疑い:
gh run list --workflow="$WORKFLOW" --status=failure --limit 50 \
--json headSha,headBranch,databaseId,createdAt | \
jq -r 'group_by(.headSha) | map({sha: .[0].headSha, count: length, branches: [.[].headBranch] | unique}) | .[]'
count >= 2 && branches.length == 1 = flake or test bug。 count == 1 && branches.length > 1 = drift。
What this file has done since we first saw it
Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.
- 7d ago First seen · 154 lines · 111 tokens per session scan A ed46a8e45570
watch-ci-patterns is a skill published in the GitHub repository ayutaz/piper-plus (204 stars, last pushed 5d ago), licensed MIT. It adds 111 tokens to every session and 1,845 once invoked, about $0.0006 per session on Opus 5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-30.
Other skills, from other repositories
physicsnemo-shard-tensor
Official NVIDIA-authored guidance for PhysicsNeMo ShardTensor domain parallelism — integrate domain parallelism into training/inference scripts (new or existing) with DDP or FSDP2, write and register shard patches to enable new layers/ops, and bootstrap multi-GPU correctness tests. Use when working with ShardTensor…
physicsnemo-discover
Official NVIDIA-authored guidance for navigating PhysicsNeMo — pick the model, datapipe, or example for a SciML/AI4Science task (surrogates, forecasting, downscaling, physics-informed, inverse, generative). Points at existing files via live repo search; never writes code. Do NOT use for installation or environment…
meta-long-running-build-watchdog
Watches a long-running command via tmux, lets sub-agent diagnose failures and propose a fix, and records the diagnosis to memory. Designed for overnight model fine-tunes, CI image builds, or repeated regression suites that may fail intermittently.
single-cell-multi-omics-analysis-scvi
Probabilistic deep learning framework for single-cell multi-omics data analysis. Use this skill when: (1) Analyzing single-cell RNA-seq data with batch correction, (2) Integrating multi-modal data (CITE-seq, ATAC-seq, multi-omics), (3) Performing cell type annotation with scANVI, (4) Spatial transcriptomics…
deep-learning
Use when training or debugging a neural net in PyTorch — the forward/loss/backward/step loop and its silent bugs, mixed precision (AMP), AdamW/LR schedules, DDP/FSDP/ZeRO, checkpoints and seeds. NOT LoRA/QLoRA on a pretrained LLM (that is finetuning), NOT tabular sklearn/XGBoost (that is machine-learning), NOT…
graphsignal-profiler
Set up the Graphsignal Profiler for inference workloads — vLLM, SGLang, PyTorch, and dstack services. Use when the user wants GPU profiling, tracing, or monitoring for inference, asks about graphsignal-run or graphsignal.watch(), or asks about CUPTI / Prometheus / OTLP setup.