Skip to content
Back to skills

Done

ASecurity

The PR skill (`/pr`) commits and pushes code without running linters first. This means code frequently gets pushed to the remote with lint and formatting errors, causing CI failures. The fix is to add a linting step between committing and pushing, using the existing `lint-and-fix` skill. This follows the same pattern already established by the `resolve-copilot-pr-feedback` skill (lines 247-262 of its SKILL.md).

  • 2 stars
  • 0 votes
  • 0 copies
  • 0 views
  • Added October 2, 2026
ai-agents

Security analysis

A100/100

Pro scans all 21 files and shows the line behind each finding

Scanned October 2, 2026

npx -y skills add cboone/agent-harness-plugins --skill done --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of Done?

Add the live security badge to your README. It updates with every re-scan.

Security grade badge for Done
[![Security: A — Skills Directory](https://www.skillsdirectory.com/api/skills/cboone-done-c52298c3/badge)](https://www.skillsdirectory.com/skills/cboone-done-c52298c3)

More formats (shields.io, HTML) on the badges page. Keep it an A: scan every change in CI with Pro.

Download with Pro
SKILL.md
# Add Linting Step to PR Skill

## Context

The PR skill (`/pr`) commits and pushes code without running linters first. This means code frequently gets pushed to the remote with lint and formatting errors, causing CI failures. The fix is to add a linting step between committing and pushing, using the existing `lint-and-fix` skill. This follows the same pattern already established by the `resolve-copilot-pr-feedback` skill (lines 247-262 of its SKILL.md).

## Changes

### 1. `plugins/pr/skills/pr/SKILL.md` (primary change)

**Insert new step 5 "Lint and Fix" between current step 4 (Commit Changes) and step 5 (Push to Remote).**

Insert after line 189 (end of current step 4):

````markdown
### 5. Lint and Fix

Run the `lint-and-fix` skill to catch lint and formatting errors before pushing. This prevents CI failures from code that does not pass project linters.

1. **Invoke the `lint-and-fix` skill** using the Skill tool with `--no-push`:

   ```text
   lint-and-fix --no-push
   ```

   This runs all detected project linters and formatters, auto-fixes what it can, manually resolves remaining issues, and commits the fixes without pushing.

1. **If no linters are detected**: Proceed to step 6. The absence of linters is not an error.
1. **If all linters pass** (with or without auto-fixes): Proceed to step 6. Any fix commits created by `lint-and-fix` will be included in the push.
1. **If linting issues remain after auto-fix and manual fix attempts**: Stop and report the unresolved lint errors. Do not push or create the PR. The user must resolve the remaining issues before retrying.
````

**Renumber subsequent steps:**

| Old | New | Title                   |
| --- | --- | ----------------------- |
| 5   | 6   | Push to Remote          |
| 6   | 7   | Create the Pull Request |
| 7   | 8   | Report Results          |

No internal cross-references use step numbers, so only the headings need updating.

**Add error handling entry** in the Error Handling section, after "Pre-commit hook failure" and before "Push rejected":

```markdown
- **Lint issues unresolved**: If the `lint-and-fix` skill reports unresolved issues after auto-fix and manual fix, stop before pushing. Report the remaining lint errors and suggest the user fix them manually before retrying `/pr`.
```

### 2. `plugins/pr/.claude-plugin/plugin.json`

Bump version from `1.4.3` to `1.5.0` (minor: new capability).

### 3. `.claude-plugin/marketplace.json`

Update the `pr` entry version from `1.4.3` to `1.5.0` to match. Do not bump `metadata.version` (no plugin added or removed).

### 4. `plugins/pr/README.md`

Update the "What It Does" description (line 21) to mention linting:

> Stages everything, generates a conventional commit message from the diff, runs project linters to catch issues before pushing, pushes the branch, and opens a PR with an auto-generated title and summary.

## Verification

1. Install the updated PR plugin locally
1. Run `/pr` on a project with linters configured: confirm linting runs between commit and push
1. Introduce a deliberate lint error and run `/pr`: confirm it stops before pushing and reports the error
1. Run `/pr` on a project with no linters: confirm it proceeds normally
1. Run `/check-versions` to verify version consistency

Files in this skill

  • 2026-02-15-add-create-worktree-skill-with-prompt-injection.md3.6 KB
  • 2026-02-16-mention-issues-in-prs.md4.2 KB
  • 2026-02-17-add-goreleaser-homebrew-skill.md9.1 KB
  • 2026-02-17-add-issue-status-management.md5.3 KB
  • 2026-02-17-add-lint-and-fix-skill.md3.6 KB
  • 2026-02-17-add-setup-gitleaks-skill.md4.5 KB
  • 2026-02-17-copilot-instructions-defaults.md3.5 KB
  • 2026-02-17-expand-repo-bootstrap-coverage.md6.2 KB
  • 2026-02-17-readme-restructuring.md5.4 KB
  • 2026-02-18-improve-readmes.md6.6 KB
  • 2026-02-18-setup-ci.md3.8 KB
  • 2026-02-20-create-create-plugin-skill.md5.4 KB
  • 2026-02-20-extract-copilot-graphql-into-script.md6.9 KB
  • 2026-02-20-restructure-readmes-per-plugin.md5.4 KB
  • 2026-02-21-add-govulncheck-to-go-scaffolding.md6.3 KB
  • 2026-02-21-consolidate-ci-workflows.md1000 B
  • 2026-03-01-add-changelog-to-scaffolding.md2.9 KB
  • 2026-03-01-add-done-plans-handling-to-new-repo-setup.md3 KB
  • 2026-03-01-add-recommended-permissions-to-readmes.md6.3 KB
  • 2026-03-01-create-bootstrap-project-skill.md7 KB

Attribution

Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.

Comments

Loading comments…