create-pr — independently scanned and version-tracked by SaferSkills.
SaferSkills independently audited create-pr (Agent Skill) and scored it 100/100 (green). The audit ran 55 deterministic rules across Security, Supply Chain, Maintenance, Transparency, and Community; it found 0 high-severity and 0 lower-severity findings. The full rule-by-rule trace and per-finding evidence are below. Free, methodology-open.
Findings & checks · 0 flagged
Every scanned point with the score it earned and what moved between them.
First recorded scan — no prior version to compare against.
The primary manifest — the file an agent reads to learn what this artifact does.
Create a well-structured, product-focused pull request.
_Read ~/.claude/skills/create-pr/preferences.md using the Read tool. If not found, no preferences are set._
_On startup, use Bash to detect: current branch (git branch --show-current), upstream branch, commits ahead of upstream, and repo name (gh repo view --json nameWithOwner -q .nameWithOwner). Skip any that fail._
Check $ARGUMENTS:
~/.claude/skills/create-pr/preferences.md, confirm, stopParse from $ARGUMENTS:
AIS-810)PR — Create a well-structured pull request
Usage:
/create-pr Create PR from current branch
/create-pr <issue-id> Create PR and link Linear issue
/create-pr --base develop Override base branch
/create-pr --draft Create as draft
/create-pr --no-linear Skip Linear linking
/create-pr config Set PR preferences
/create-pr reset Clear preferences
/create-pr help This help
Examples:
/pr
/create-pr AIS-810
/create-pr --base develop --draft
/create-pr AIS-810 --base main
What it does:
1. Detects base branch (or uses preference/flag)
2. Reads commits, diff, and Linear issue
3. Builds product-focused PR description
4. Pushes branch if needed
5. Creates PR and links to Linear
Current preferences:
(shown above under Preferences)Use `AskUserQuestion`:
Q1 — "Default base branch?" (auto-detect (default), main, develop, custom)
Q2 — "Link Linear issues?" (Yes — from branch name (default), No)
Q3 — "PR template?" (standard (default), minimal, detailed)
Q4 — "Auto-push before creating?" (Yes (default), No — just create locally)
Q5 — "Default PR type?" (Ready for review (default), Draft)
Save to ~/.claude/skills/create-pr/preferences.md.
If no preferences file exists, show: "First time using /pr? Run /create-prconfig to set defaults (base branch, template, Linear linking), or continue — I'll auto-detect."
Then proceed.
From git:
git log <base>..HEAD --onelinegit diff <base>...HEAD --statgit diff <base>...HEAD (for understanding changes)Base branch detection (in order):
--base flag if providedgh repo view --json defaultBranchRef -q .defaultBranchRef.nameLinear issue (unless --no-linear):
user/ais-NNN-* or ais-NNN-*)get_issue for title, description, projectRemote check:
If a Linear issue was found, check if branch name matches issue.gitBranchName. If mismatch, rename the branch to match (team convention):
git branch -m {old} {new}
git push origin --delete {old} # if old was pushed
git push -u origin {new}If branch isn't pushed (or was renamed):
git push -u origin {branch}Skip if --no-push or preference says no.
Title format: Under 70 chars, conventional prefix.
feat: Description for new featuresfix: Description for bug fixesrefactor: Description for refactoringchore: Description for maintenanceBody template (standard):
## Summary
{1-2 sentences: what this does and why. Product value first.}
**Linear:** [{issue-id}]({url}) (if available)
## What's New
- **{Feature/Change}** — {one sentence, user perspective}
- **{Feature/Change}** — {one sentence}
## How to Test
1. {Step}
2. {Step}
3. {Step}Body template (minimal):
{1-2 sentences: what and why}
Linear: [{issue-id}]({url})Body template (detailed):
## Summary
{1-2 sentences}
**Linear:** [{issue-id}]({url})
## What's New
- **{Feature}** — {description}
## Architecture
- {How it's structured}
- {What was reused}
- {Data flow}
## How to Test
1. {Step}
2. {Step}gh pr create --base {base} --title "{title}" --body "$(cat <<'EOF'
{body}
EOF
)"Add --draft if flag set or preference is draft.
If Linear issue found, attach PR via update_issue with link:
url: https://github.com/{org}/{repo}/pull/{number}
title: PR #{number} — {title}PR created: {url}
Base: {base}
Head: {branch}
Title: {title}
Linear: {issue-id} (linked ✓) or "none"
Type: Ready / Draft
Commits: {count}
Files: {count}~30 seconds. Free. No account. Every finding cites a rule and a line of evidence.