Getting it into your agent
This one installs as part of its plugin. Adding the marketplace and installing the plugin brings it with everything else the plugin ships.
/plugin marketplace add rjmurillo/ai-agents/plugin install project-toolkitWrote this? Show the measurements
A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.
[](https://agentmods.dev/skills/rjmurillo/ai-agents/push-pr)<a href="https://agentmods.dev/skills/rjmurillo/ai-agents/push-pr"><img src="https://agentmods.dev/badge/skills/rjmurillo/ai-agents/push-pr/github.svg" alt="Measured on agentmods" height="20"></a>Or the 80×15 button, for a site that already has a row of RSS and ATOM ones. Only the verdict fits; the numbers stay here.
<a href="https://agentmods.dev/skills/rjmurillo/ai-agents/push-pr"><img src="https://agentmods.dev/badge/skills/rjmurillo/ai-agents/push-pr.svg" alt="Reviewed on agentmods" width="80" height="20"></a>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.
| Model | Per session | Once invoked |
|---|---|---|
| Fable 5.1 | $0.00081 | $0.03305 |
| Opus 5.5 | $0.00032 | $0.01322 |
| Sonnet 5.5 | $0.00016 | $0.00661 |
| Haiku 4.5 | $0.00008 | $0.00331 |
Grade A, and why
push-pr scanned grade A with 0 findings 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 3d 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.
Nothing flagged
None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.
How it starts
The opening of the file, as written. The whole thing — 214 lines — stays where its author put it; the contents beside it link to each section on GitHub.
Push PR
Commit, push, and open a pull request whose body is adapted from the real diff rather than copied from the template.
Migrated from .claude/commands/push-pr.md under ADR-064, which makes skills the
single user-invocable surface. The scoped allowed-tools grant, the
identity-hardened python3 -I form, and both vendor-portability declarations
carry over unchanged: they are the security contract, not formatting.
Triggers
push and open a PR, open a pull request, push this branch,
commit and push
Context
- Current git status: !
git status - Current git diff (staged and unstaged changes): !
git diff HEAD - Current branch: !
git branch --show-current
Process
Based on the above changes:
-
Create a new branch if on main.
- Determine the type of change that maps to a conventional commit type
followed by a 3-5 word description (for example,
fix/parser-log-enrichment).
- Determine the type of change that maps to a conventional commit type
followed by a 3-5 word description (for example,
-
Read @.github/PULL_REQUEST_TEMPLATE.md. Step 3 seeds it into the body file; use this copy only when the seeded file holds the marker alone.
-
Run the secure path allocator:
python3 -I "${COPILOT_PLUGIN_ROOT:-${CLAUDE_PLUGIN_ROOT:-.claude}}/skills/github/scripts/pr/new_pr.py" --prepare-body-file- On Windows the allocator refuses to run. Follow the Windows PR Body Fallback section below for steps 3, 4, 5, and 7.
- Copy the returned path exactly. Do not store it in a shell variable because each tool call runs in a fresh shell.
- The file starts with the line
<!-- replace with PR body -->, followed by the repository PR template. Use the Edit tool to fill the template sections in that exact file, then delete the marker line. A body that still contains the marker text anywhere is rejected. - If the file holds only the marker, the repository has no usable template. Replace it with the template you read in step 2, adapted to the change.
- Fill in all sections with actual change information from git diff
- Replace placeholder comments with substantive content
- Check appropriate Type of Change boxes based on actual changes
- List specific files changed, test coverage added, security impacts
- Do NOT leave template comments like
<!-- Brief description -->unfilled - Do NOT copy the template verbatim - adapt every section to your changes
- Include an
## Acceptance criteriaheading with- [ ]or* [ ]bullets. The Validate Spec Coverage job reads these from the PR body, not the linked issue. When the PR links a spec or an issue, an unchecked box or a missing section makes the deterministic check report FAIL, and that FAIL does not block the merge, so check a box only once the criterion is actually met. Numbered criteria are not recognized.
-
Check the title and body file before the push, which can take minutes:
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.
- 3d ago Changed · +78 lines de42b7c97362
- 4d ago Changed · +13 lines c2cf351e6e67
- 5d ago Changed · +2 lines 65ad8fdde8fa
- 6d ago Changed b27189e0cd83
- 22d ago Changed · +6 lines 0cc8bb4c1164
- 24d ago Changed f9c67b825ac8
- 1mo ago Changed · +49 lines · +70 tokens per session 5ca2fe0f1f9f
- 1mo ago First seen · 66 lines · 11 tokens per session scan A b9708c2a8962
push-pr is a skill published in the GitHub repository rjmurillo/ai-agents (48 stars, last pushed today), licensed MIT. It adds 81 tokens to every session and 3,305 once invoked, about $0.0003 per session on Opus 5.5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-09-05.
Other skills, from other repositories
github-automation
GitHub workflow automation, PR management, issue tracking, and code review coordination. Integrates with GitHub Actions and repository management. Use when: PR creation, code review, issue management, release automation, workflow setup. Skip when: local-only changes, non-GitHub repositories.
git-workflow
Use this skill for anything related to Git and version control workflows. Trigger when the developer asks for help with commit messages, PR descriptions, pull request reviews, branching strategies, changelog generation, release notes, code review etiquette, or Git conventions. Keywords: commit, PR, pull request…
github-pr-workflow
Prepare a GitHub pull request from a feature branch — branch hygiene, commit shape, title/body, verification notes, screenshots for UI work, and replies to review comments.
agent-github-modes
Agent skill for github-modes - invoke with $agent-github-modes.
git-workflow
Use when naming or scoping a branch, writing or fixing a commit message, picking the gitmoji for a commit, untangling history (rebase versus merge versus squash), or cutting a versioned release — the portable git-convention layer for any repo. Covers gitmoji + Conventional Commits, SemVer tags, branch hygiene…
document
Run /document pr | changelog | release-note | postmortem (or let it ask) to write the human facing prose about a change. Drafts from the real commits and diff, writing to the right place. Does not write code, tests, or specs.