pr — independently scanned and version-tracked by SaferSkills.
SaferSkills independently audited pr (Agent Skill) and scored it 92/100 (green). The audit ran 55 deterministic rules across Security, Supply Chain, Maintenance, Transparency, and Community; it found 0 high-severity and 2 lower-severity findings. The full rule-by-rule trace and per-finding evidence are below. Free, methodology-open.
Findings & checks · 2 flagged
The text {match} tells the agent to skip the normal "ask the user first" gate. Used adversarially it removes the human-in-the-loop check before destructive or sensitive actions, turning a normally-gated agent into a fire-and-forget executor.
The text {match} tells the agent to skip the normal "ask the user first" gate. Used adversarially it removes the human-in-the-loop check before destructive or sensitive actions, turning a normally-gated agent into a fire-and-forget executor.
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.
Wraps bin/pr.sh. Two modes:
--context-only). Collects branch + commit range+ suggested title without any network calls. The gh auth check is skipped entirely in this mode (the script exits with the JSON summary before reaching the gh guard), so context-only also works when gh isn't installed or authenticated. Use this when the user wants you to synthesize a PR title and body from the commits before shipping.
-u trackingand invokes gh pr create with your title + body. Returns the PR URL.
Run bash bin/session-check.sh --flow=pr. If it produces output, surface the line to the user verbatim. Do not block the flow.
gh is installed and authenticated. bin/pr.sh does thisand emits {skipped, reason} with reason gh-not-installed or gh-not-authenticated. If you see a skip, relay it cleanly; don't try to install gh for the user.
main/master. If it is, refuseand suggest /nyann:branch to create a feature branch first.
ahead == 0, tellthe user there's nothing to PR and suggest they commit first.
bash bin/pre-action-guard.sh --flow pr --target <cwd> [--profile <resolved-profile.json>]| Exit | Meaning | Action |
|---|---|---|
| 0 | Pass (or advisory warnings) | Surface advisory message lines, continue |
| 3 | Critical guard failed | Refuse to open the PR unless the user passes --skip-guards. Re-ask via AskUserQuestion. |
| 4 | Confirm-severity guard failed | AskUserQuestion: "Proceed despite the warnings?" — explicit confirm required. |
Built-in PR guards include branch-pushed (advisory if upstream missing or ahead/behind) and wip-commits (advisory if the commit range still contains WIP/fixup commits). Profiles can promote either to confirm or critical via guards.pr in the profile.
bin/pr.sh resolves base in this order: --base arg > upstream tracking ref > origin/HEAD > main. Normally don't pass --base; trust the resolution. Override only when the user explicitly names a different target (e.g. "PR into develop").
Run bin/pr.sh --target <cwd> --context-only first. Read the commit list from the JSON. Then synthesize:
commit, use that commit's subject verbatim. If many commits, pick the dominant type/scope and write a summary line. Keep it under ~70 chars for GitHub's UI.
## Summary
<2-4 bullets on what changed and why; derived from the commit list
and any user intent they've shared>
## Test plan
<bullets on what was verified; include lint / tests / manual checks
the user has done in the session>When the user has shared context in the session (e.g. "I verified X locally"), fold it into the Test plan. Don't invent tests that weren't run.
Show the user the proposed title and body. Ask "Ship it?" before calling the create path. Exceptions: if the user's original phrasing was "just open the PR" / "ship it now" / "don't ask, just PR it", skip the confirmation.
bin/pr.sh \
--target <cwd> \
--title "<conventional-title>" \
--body "<markdown-body>" \
[--base <branch>] \
[--draft]--draft when the user says "draft PR" / "WIP PR" / "not ready for review yet". Relay the URL from {url} in the output back to the user.
gh pr create can fail if a PR already exists for this branch. Inthat case, suggest the user switch to gh pr edit or /nyann:commit to add more commits — don't retry the create.
git push can fail if the remote is ahead. Surface the errorverbatim and suggest /nyann:sync or a manual pull+rebase.
do merge/approve.
sync skill.commit skill.~30 seconds. Free. No account. Every finding cites a rule and a line of evidence.