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.
npx skills add hams-ollo/zen-agent-skills --skill pr-describegit clone --depth 1 https://github.com/hams-ollo/zen-agent-skillsWrote 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/hams-ollo/zen-agent-skills/pr-describe)<a href="https://agentmods.dev/skills/hams-ollo/zen-agent-skills/pr-describe"><img src="https://agentmods.dev/badge/skills/hams-ollo/zen-agent-skills/pr-describe/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/hams-ollo/zen-agent-skills/pr-describe"><img src="https://agentmods.dev/badge/skills/hams-ollo/zen-agent-skills/pr-describe.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.00173 | $0.02857 |
| Opus 5 | $0.00086 | $0.01429 |
| Sonnet 5 | $0.00035 | $0.00571 |
| Haiku 4.5 | $0.00017 | $0.00286 |
Grade A, and why
pr-describe 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 7d 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 — 188 lines — stays where its author put it; the contents beside it link to each section on GitHub.
pr-describe
The back half of the work spine: after a branch is built, turn its diff into a pull
request description and a matching changelog entry, both in the target repo's own style.
It is the closing bookend of the kit spine, running immediately after doc-sync has
reconciled the documentation with what the branch changed.
It drafts text; it does not touch GitHub. It reads the diff and writes two artifacts
for the user to place: a PR body and a changelog entry. Creating or editing the actual PR
stays the user's action, surfaced as a gh command they run themselves.
What it produces
- A PR body: a structured description grounded only in what the diff supports, ready to
paste into GitHub or apply with
gh. - A changelog entry: one line (or block) matching the repo's existing
CHANGELOG.mdconventions, referencing the work item id when a.tasks/system is present.
Design choices
Settled decisions (resolved with the author); these four are not up for re-litigation:
- Produces both a PR body and a changelog entry from a single pass over the diff.
- Draft text only, never touches GitHub. It prints both artifacts and surfaces
gh pr create/gh pr edit --body-filefor the user to run. It works with or withoutghinstalled. This mirrorsproject-bootstrap's configs-only, no-surprise-side-effects rule. - Changelog format by inspection. It reads the repo's
CHANGELOG.mdand matches its heading, date, and id-reference style, rather than imposing one format. With no changelog present, it falls back to the Keep a Changelog convention. - Default range is the branch vs its merge-base with the default branch (the PR's actual commit range), with an explicit base/range override. When the branch is not ahead of base (still on the default branch, or the work is uncommitted), it falls back to describing the working-tree changes rather than dead-ending.
Procedure
Step 1: identify the changeset and survey it
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.
- 7d ago Changed · +5 lines 9e8be584eabd
- 10d ago First seen · 183 lines · 173 tokens per session scan A cf2a7f528843
pr-describe is a skill published in the GitHub repository hams-ollo/zen-agent-skills (2 stars, last pushed 9d ago), licensed MIT. It adds 173 tokens to every session and 2,857 once invoked, about $0.0009 per session on Opus 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-08-31.
Other skills, from other repositories
archive
Use when explicitly invoked to close out a change whose branch has already merged: confirm the merge from git alone, then move the change folder under changes/archive/ with its ship date. Trigger on '/sw:archive', '$sw:archive', 'archive this change', or a request to close out a merged change.
Closure
Git closure — push the branch and open a PR. The ONLY step that performs git operations. Never auto-merges.
github-release-briefing-skill
Create a source-linked briefing for the latest published GitHub release of a public repository. Use for engineering teams tracking a dependency release; do not use it to publish releases or change repositories.
taiyi-integration
A project workflow skill for closing a TaiyiForge change and recording it in a CHANGELOG.md file. It checks review results, tests, and the state of the working tree before archiving the change.
changelog-gen
A changelog generator that turns Git history into a version-by-version record of project changes. A changelog is a readable summary of new features, fixes, breaking changes, documentation, and other updates.
release-archivist
Close out a spec-superflow change with verification, summary, and archive readiness. Invoke when implementation is complete, verification is underway, or the user asks for a final wrap-up.