simplify-and-harden-ci — Claude Code skill: PR review in CI
A skill that reviews pull requests inside CI: it scans changed files, posts findings, and can stop a merge.
npx skills add pskoett/pskoett-ai-skills --skill simplify-and-harden-ci -a claude-codeWhat simplify-and-harden-ci does
This skill runs a CI-only flavor of Simplify & Harden with no interactive approvals. It looks at the files a pull request touches and leaves the code alone — the output is a report, not a patch. Three passes run: simplify, harden, document. The first flags dead code, unclear names and needless abstraction; the second looks for missing input validation, injection paths, auth problems, exposed secrets and concurrency hazards; the third suggests comments for logic that is hard to follow.
Findings land in a PR comment, a check run summary and a YAML artifact keyed simplify_and_harden. Gate policy is yours to set: critical harden findings fail the check, and advisory classes can be made blocking too. A CI agent lacks the context of whoever wrote the change, so ambiguous findings belong in human review rather than an automatic rewrite.
You need GitHub Actions turned on, an authenticated GitHub CLI (gh auth status) and the gh-aw extension, added with gh extension install github/gh-aw. Inside jobs the CLI comes from the github/gh-aw/actions/setup-cli@main step at version v0.2.0-beta. The template sits in references/workflow-example.md and stays out of .github/workflows until you want automation live: a gh-aw workflow is markdown that gh aw compile turns into the .lock.yml GitHub Actions runs. Skip gh aw compile --validate --strict and there is nothing for Actions to execute.
What it helps with
- review only the files a PR changed, with no code edits
- fail the check when critical security findings appear
- catch dead code and over-abstraction before a human reviewer
- produce a machine-readable findings artifact for automation
- route ambiguous findings to interactive review
Example prompts for the agent
- Run simplify-and-harden-ci on this pull request in headless mode
- Review only the files changed in this PR and emit the
simplify_and_hardenreport - Compile the workflow with
gh aw compile --validate --strict
How to install simplify-and-harden-ci
1Skills CLI (Vercel)
npx skills add pskoett/pskoett-ai-skills --skill simplify-and-harden-ci -a claude-code2Manually: put the files in place
~/.claude/skills/simplify-and-harden-ci/SKILL.mdCopy the whole skill folder; for one project use .claude/skills/simplify-and-harden-ci/
1Skills CLI (Vercel)
npx skills add pskoett/pskoett-ai-skills --skill simplify-and-harden-ci -a codex2Manually: put the files in place
.agents/skills/simplify-and-harden-ci/SKILL.mdFor all projects use ~/.agents/skills/
1Skills CLI (Vercel)
npx skills add pskoett/pskoett-ai-skills --skill simplify-and-harden-ci -a cursor2Manually: put the files in place
.cursor/skills/simplify-and-harden-ci/SKILL.mdCursor also reads .agents/skills/ and .claude/skills/
1GitHub CLI
gh skill install pskoett/pskoett-ai-skills simplify-and-harden-ci2Manually: put the files in place
.github/skills/simplify-and-harden-ci/SKILL.md1Skills CLI (Vercel)
npx skills add pskoett/pskoett-ai-skills --skill simplify-and-harden-ci -a gemini-cli2Platform CLI
gemini skills install https://github.com/pskoett/pskoett-ai-skills --path skills/simplify-and-harden-ciManually: put the files in place
.devin/skills/simplify-and-harden-ci/SKILL.mdThe legacy .windsurf/skills/ path still works
Skills CLI (Vercel)
npx skills add pskoett/pskoett-ai-skills --skill simplify-and-harden-ci -a opencodeClaude.ai
Zip the folder and upload it in Settings → Capabilities → Skills
Step by step, with commands for each platform: How to install skills in Claude Code: five ways
Questions about simplify-and-harden-ci
How do I install simplify-and-harden-ci in Claude Code?
Run npx skills add pskoett/pskoett-ai-skills --skill simplify-and-harden-ci -a claude-code. The skill lands in ~/.claude/skills/simplify-and-harden-ci/SKILL.md.
What does simplify-and-harden-ci do?
It runs simplify, harden and document passes in CI over the files a pull request changed. Findings are posted to the PR and can fail the check under your gate policy.
How is it different from simplify-and-harden?
This variant is CI-only: no code mutation, findings as a report. Use simplify-and-harden for interactive sessions in your editor.