Skip to content
Back to skills

Pr

ASecurity

Create a feature branch, commit changes, push, and open a PR against iopsystems/rezolus

  • 275 stars
  • 0 votes
  • 0 copies
  • 1 view
  • Added September 12, 2026
devopsgobashtestinggit

Works with

  • claude code
  • cli

Security analysis

A100/100

Scanned September 12, 2026

npx -y skills add iopsystems/rezolus --skill pr --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of Pr?

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

Security grade badge for Pr
[![Security: A β€” Skills Directory](https://www.skillsdirectory.com/api/skills/iopsystems-rezolus/badge)](https://www.skillsdirectory.com/skills/iopsystems-rezolus)

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
---
name: pr
description: Create a feature branch, commit changes, push, and open a PR against iopsystems/rezolus
---

Create a PR from the current uncommitted changes. Handles branching, committing, pushing, and opening the PR against the upstream repo.

## Arguments

The skill accepts an optional branch name argument:
- If provided, use it as the branch name (e.g., `/pr fix-socket-perms`)
- If not provided, generate a descriptive kebab-case branch name from the changes

## Steps

1. **Verify prerequisites**:
   - Working directory must have uncommitted changes (staged or unstaged)
   - Must not already be on a feature branch with unpushed commits for a different change

   ```bash
   git status
   git diff
   git diff --staged
   ```

   If there are no changes, stop and tell the user.

2. **Analyze the changes**:
   - Read the diff to understand what changed
   - Check recent commit messages for style conventions:
     ```bash
     git log --oneline -10
     ```

3. **Create feature branch**:
   - If currently on `main`, create a new branch:
     ```bash
     git checkout -b <branch-name>
     ```
   - If already on a feature branch, use the current branch

4. **Sync docs version label** (idempotent β€” runs every PR):

   ```bash
   ./scripts/sync-docs-version.sh
   ```

   Updates `site/docs/*.html`'s sidebar version label to the latest stable release tag. If it modifies any file, include the change in the same commit. If nothing changes, no-op.

5. **Stage and commit**:
   - Stage the relevant changed files by name (avoid `git add -A`)
   - Write a commit message following the repo's conventional commit style (`type(scope): description`)
   - Common types: `feat`, `fix`, `refactor`, `chore`, `docs`, `test`
   - Include `Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>` trailer
   - Use a HEREDOC for the commit message

6. **Push to origin**:
   ```bash
   git push -u origin <branch-name>
   ```

7. **Open PR against upstream**:
   - The upstream repo is `iopsystems/rezolus`
   - The fork remote is `origin` (determine the owner from `git remote -v`)
   - Use `gh pr create` with `--repo iopsystems/rezolus` and `--head <fork-owner>:<branch-name>`

   ```bash
   gh pr create \
     --repo iopsystems/rezolus \
     --head <fork-owner>:<branch-name> \
     --draft \
     --title "<conventional commit style title>" \
     --body "$(cat <<'EOF'
   ## Summary
   <1-3 bullet points describing the changes>

   ## Test plan
   <bulleted checklist of testing done or needed>

   πŸ€– Generated with [Claude Code](https://claude.com/claude-code)
   EOF
   )"
   ```

8. **Report the PR URL** to the user.

## Version bumps

Non-release PRs must **never** bump the major, minor, or patch version. Instead, bump only the pre-release revision number in `Cargo.toml`:

- Format: `<major>.<minor>.<patch>-alpha.<revision>`
- Example: `5.8.3-alpha.0` β†’ `5.8.3-alpha.1` β†’ `5.8.3-alpha.2`
- Increment the revision (`-alpha.N`) by 1 from the current `main` branch version
- Check the current main branch version before committing:
  ```bash
  git show main:Cargo.toml | grep '^version'
  ```

## Notes

- Keep PR titles under 70 characters
- PR title should follow the same conventional commit format as the commit message
- If `cargo clippy`, `cargo test`, or `cargo fmt --check` haven't been run yet during this session, run them before committing
- Never force push or amend existing commits
- The fork owner can be determined from the origin remote URL (e.g., `git@github.com:brayniac/rezolus` β†’ `brayniac`)
- PRs are created as drafts by default. Mark ready via GitHub UI or `gh pr ready`

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…