auto-pr

A command-line tool that prepares and opens pull requests (proposed code changes) for a GitHub repository. It studies the repository's contribution rules, finds work to do, tests each change, and gets a second automated review before opening it.

In plain words
What is it for?
It helps create verified contributions for open issues or discovered improvements in GitHub repositories. It can also preview the work without opening pull requests and report attempts that were skipped.
Why use it?
It reduces the manual work of finding suitable tasks, following an unfamiliar project's rules, testing changes, and checking them before asking maintainers to review them.

Skill for Claude CodeCodex

Install

Getting it into your agent

One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.

agentmods
npx agentmods add skills/vouchdev/vouch/auto-pr
Any agent
npx skills add vouchdev/vouch --skill auto-pr
Clone the repo
git clone --depth 1 https://github.com/vouchdev/vouch

Made for: Claude Code, Codex.

Per session 128 Skills are progressive disclosure: only the name and description are preloaded; the body loads when the skill is used.
When invoked 1,531 The whole file, excluding the scripts and references it only reads on demand.
Security scan B 1 finding. Scan, not verified.
Origin original No closer match found in the catalogue.
Token cost

What it costs to keep this loaded

Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.

ModelPer sessionOnce invoked
Fable 5 $0.00128 $0.01531
Opus 5 $0.00064 $0.00766
Sonnet 5 $0.00026 $0.00306
Haiku 4.5 $0.00013 $0.00153

Measured 2d ago against content hash 75caa2b5af59, method: parsed. Prices are Anthropic first-party input rates as of 2026-08-30, from the pricing page.

Security

Grade B, and why

auto-pr scanned grade B with 1 finding against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 2d ago.

A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.

Unrestricted tool accessmediumExcessive agency

A wildcard tool grant or "run any command" leaves no least-privilege boundary at all.

run arbitrary commands with no permission prompt). only use this for repos
skills/auto-pr/SKILL.md · 120 lines

How it starts

The opening of the file, as written. The whole thing — 120 lines — stays where its author put it; the contents beside it link to each section on GitHub.

auto-pr

Goal: point at any github repo and open N mergeable PRs — not N PRs. each one resolves a real issue (or a genuine discovered improvement), passes the repo's own test gate locally, and is signed off by a second engine before it ever reaches a maintainer.

this is a thin orchestration layer over the vouch auto-pr CLI. it is a sibling tool to the knowledge base: it never writes to storage / proposals / the audit log, and the review gate is untouched.

invocation

vouch auto-pr <repo-url> \
  --workspace <dir> --count <N> \
  --claude-effort <low|medium|high|max> \
  --codex-effort  <low|medium|high|max> \
  [--issue-label good-first-issue] \
  [--fork-owner <login>] \
  [--max-revise 2] [--autonomy edit|full] \
  [--dry-run] [--json]

<repo-url> may be https://github.com/<owner>/<name>, [email protected]:<owner>/<name>.git, or the <owner>/<name> shorthand.

output: the URLs of the PRs that were actually opened (one per line, or a JSON array under --json). attempts that fail verification are reported on stderr as skipped with a reason — they are never opened. M genuine PRs beats N shaky ones; partial success is the intended behaviour, not an error.

prerequisites

  • gh CLI authenticated for the target repo (gh auth status returns a session). used for fork/clone, issue listing, dedup search, and PR creation.
  • claude (Claude Code) and codex on PATH — both engines are used; one fixes while the other reviews, alternating per PR.
  • vouch CLI on PATH (pip install vouch-kb).

if claude or codex is missing, stop and tell the user — cross-verify is the whole point; don't silently fall back to a single engine.

how it works (the pipeline)

  1. resolve workspace — if --workspace is already a clone, use it; else gh repo fork --clone (or a plain clone when you have push access). sync the default branch.
  2. detect-or-bootstrap guidance — scan the repo for CONTRIBUTING.md, AGENTS.md, CLAUDE.md, .claude/skills/**/SKILL.md, .codex/, .github/PULL_REQUEST_TEMPLATE.md. if any exist, they become fixer/reviewer context. if none exist, fetch the repo's merged PRs and synthesize a contribution SKILL.md, written into the clone's .claude/skills/ (and a .codex/ mirror) so it's reused next run.
  3. source N work items — open unassigned issues first (filterable by --issue-label); if fewer than N survive dedup, let the engines discover genuine bugs/improvements to fill the remainder. every candidate is dedup-checked against the repo's existing PRs.
  4. per item (isolated auto-pr/<slug> branch): the fixer engine edits + commits; the repo's own gate runs (make check / pytest / npm test / cargo test / go test); the other engine reviews the diff. a red gate or a rejection feeds back to the fixer for up to --max-revise rounds. still failing ⇒ skip with a reason. passing ⇒ push to the fork and gh pr create.

Read the full file on GitHub · 120 lines

Changes

What this file has done since we first saw it

Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.

  1. 2d ago First seen · 120 lines · 0 tokens per session scan B 75caa2b5af59

Subscribe to this mod's changes

auto-pr is a skill published in the GitHub repository vouchdev/vouch (91 stars, last pushed 10d ago), licensed MIT. It adds 128 tokens to every session and 1,531 once invoked, about $0.0006 per session on Opus 5. A static security scan graded it B with 1 finding (unrestricted tool access). No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-30.