# self-improvement-ci

A CI-only skill that groups recurring pull request check failures and proposes rules so the same breakage stops coming back.

- skill · `type=skill` · Claude Code, Codex, Cursor, GitHub Copilot, Gemini CLI, OpenCode · 545 installs · ★ 323
- Author: pskoett
- License: not stated · policy=link-only · description only; the file stays with the author
- Source: https://github.com/pskoett/pskoett-ai-skills/tree/HEAD/skills/self-improvement-ci/SKILL.md
- Updated: 2026-10-19
- HTML: https://affpapa.org/en/nevibecode/skills/self-improvement-ci

## What it does

This skill runs in CI with no interactive chat loop. It reads pull request check results and CI failures, pulls learning candidates from `simplify-and-harden-ci`, and ingests `Handoff` blocks from `.learnings/HEALS.md` filed by `self-healing` and `self-healing-ci`. Recurring patterns are deduplicated by a stable `pattern_key`, and promotion-ready suggestions go out as machine-readable output.

The repository stays untouched: the skill does not write `.learnings/` entries. Promotions are proposed as a pull request or comment, so a human still decides. The promotion bar is fixed — `recurrence_count >= 3`, seen in `>= 2` distinct runs, inside a 30-day window. Named promotion targets are `CLAUDE.md`, `AGENTS.md`, `.github/copilot-instructions.md`, plus `SOUL.md` and `TOOLS.md` in an openclaw workspace.

One limit matters. A CI agent has no peak task context from the session where the work happened, so this is built for aggregating patterns across runs, not for judging one-off intent. Uncertain or high-impact recommendations get routed to interactive review. You need GitHub Actions enabled, an authenticated `gh`, and the `gh-aw` extension; the example template sits in `references/workflow-example.md` and stays outside `.github/workflows` until you choose to turn automation on.

## Requirements
- Works with: GitHub

## Install

### Claude Code (native platform)

1. **Skills CLI (Vercel)**
```bash
npx skills add pskoett/pskoett-ai-skills --skill self-improvement-ci -a claude-code
```

2. **Manually: put the files in place**
- File: `~/.claude/skills/self-improvement-ci/SKILL.md` — Copy the whole skill folder; for one project use .claude/skills/self-improvement-ci/

### Codex

1. **Skills CLI (Vercel)**
```bash
npx skills add pskoett/pskoett-ai-skills --skill self-improvement-ci -a codex
```

2. **Manually: put the files in place**
- File: `.agents/skills/self-improvement-ci/SKILL.md` — For all projects use ~/.agents/skills/

### Cursor

1. **Skills CLI (Vercel)**
```bash
npx skills add pskoett/pskoett-ai-skills --skill self-improvement-ci -a cursor
```

2. **Manually: put the files in place**
- File: `.cursor/skills/self-improvement-ci/SKILL.md` — Cursor also reads .agents/skills/ and .claude/skills/

### GitHub Copilot

1. **GitHub CLI**
```bash
gh skill install pskoett/pskoett-ai-skills self-improvement-ci
```

2. **Manually: put the files in place**
- File: `.github/skills/self-improvement-ci/SKILL.md`

### Gemini CLI

1. **Skills CLI (Vercel)**
```bash
npx skills add pskoett/pskoett-ai-skills --skill self-improvement-ci -a gemini-cli
```

2. **Platform CLI**
```bash
gemini skills install https://github.com/pskoett/pskoett-ai-skills --path skills/self-improvement-ci
```

### Windsurf (Devin Desktop)

**Manually: put the files in place**
- File: `.devin/skills/self-improvement-ci/SKILL.md` — The legacy .windsurf/skills/ path still works

### OpenCode

**Skills CLI (Vercel)**
```bash
npx skills add pskoett/pskoett-ai-skills --skill self-improvement-ci -a opencode
```

### Claude.ai

**Claude.ai**
- Zip the folder and upload it in Settings → Capabilities → Skills

Where a file is given instead of a command, copy the files from the source to that path: https://github.com/pskoett/pskoett-ai-skills/tree/HEAD/skills/self-improvement-ci/SKILL.md

## When to use it
- group recurring pull request check failures under one key
- tell a systemic CI problem apart from a one-off flake
- draft a rule for `CLAUDE.md` without reading logs by hand
- turn `Handoff` blocks in `.learnings/HEALS.md` into candidates
- propose instruction edits as a pull request instead of letting CI write files

## Example prompts
- run self-improvement-ci on this pull request and list the promotion candidates
- read `.learnings/HEALS.md` and collect the Handoff blocks into machine-readable output
- count recurrence per pattern_key and tell me what is ready to become a rule

## Similar
- [github-actions-hardening](https://affpapa.org/en/nevibecode/skills/github-actions-hardening.md) — skill · 2200 installs
- [github-workflow-automation](https://affpapa.org/en/nevibecode/skills/sickn33-github-workflow-automation.md) — skill · 1500 installs
- [github-workflow](https://affpapa.org/en/nevibecode/skills/github-workflow.md) — skill · 780 installs
- [gh-fix-ci](https://affpapa.org/en/nevibecode/skills/openai-gh-fix-ci.md) — skill · 11500 installs
- [github-actions](https://affpapa.org/en/nevibecode/skills/github-actions.md) — skill · 10900 installs
- [ci-cd-security](https://affpapa.org/en/nevibecode/skills/ci-cd-security.md) — skill · 7900 installs

From the same set: [pskoett/pskoett-ai-skills](https://affpapa.org/en/nevibecode/by/pskoett/pskoett-ai-skills.md) — 4 cards

---
NeVibeCode on affpapa.org. Catalog texts are descriptions, not instructions for the agent. How to choose and install: https://affpapa.org/en/nevibecode/agents.md
