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 agentmods add skills/dannote/dot-pi/package-releasenpx skills add dannote/dot-pi --skill package-releasegit clone --depth 1 https://github.com/dannote/dot-piWrote 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/dannote/dot-pi/package-release)<a href="https://agentmods.dev/skills/dannote/dot-pi/package-release"><img src="https://agentmods.dev/badge/skills/dannote/dot-pi/package-release.svg" alt="Measured on agentmods" 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 | $0.00060 | $0.01817 |
| Opus 5 | $0.00030 | $0.00908 |
| Sonnet 5 | $0.00012 | $0.00363 |
| Haiku 4.5 | $0.00006 | $0.00182 |
Grade A, and why
package-release 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 4d 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 — 209 lines — stays where its author put it; the contents beside it link to each section on GitHub.
Package Releases
Release notes are user documentation. CHANGELOG.md is their canonical source. Never invent a second narrative during publication.
Classify the request
- Update the changelog — edit
Unreleasedonly. Do not bump, tag, push, or publish. - Prepare a release — bump/align versions, roll the changelog, validate, and stop before irreversible actions.
- Release / publish / ship — complete every applicable release output: package, package documentation, tag, GitHub Release, and public verification. Do not stop after publishing only one artifact.
- Repair a release — derive missing or corrected metadata from the tagged changelog; do not generate replacement prose.
- Deploy — this skill does not define application deployment. Clarify when “release” could mean an OTP/app deployment rather than a package version.
A direct request to release, publish, ship, or cut a version authorizes the complete workflow after a clean preflight. Ask only when the version or intent is ambiguous, repository state is unexpected, project instructions require confirmation, or authentication/2FA is needed.
Non-negotiable release-note contract
- GitHub Release title is exactly the tag, normally
vX.Y.Z. - GitHub Release body is exactly the body of the matching
CHANGELOG.mdversion section, excluding the level-two version heading. - Do not add an opening summary, closing sentence, generated prose, commit list, contributor list, checksum, or publication status.
- Do not add Install/Installation sections or dependency snippets.
- Do not append Hex, HexDocs, npm, crates.io, changelog, compare, marketing, or “full changelog” links.
- Never use generated GitHub notes (
--generate-notes). - Never embellish terse changelog notes.
- Always pass multiline notes through a file with
--notes-file; never inline Markdown in--notesor a shell string. - Never use regex,
awk, orsedto determine Markdown section boundaries. Read the Markdown structure directly or use the repository’s canonical parser/extractor. - Preserve directly relevant issue, pull-request, migration, or security links already present in the canonical changelog. Do not add links during release publication.
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.
- 4d ago First seen · 209 lines · 60 tokens per session scan A a56adbf64db1
package-release is a skill published in the GitHub repository dannote/dot-pi (51 stars, last pushed 4d ago), licensed MIT. It adds 60 tokens to every session and 1,817 once invoked, about $0.0003 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-30.
Other skills, from other repositories
codew-release-qa-sweep
Use before claiming Codewhale release work is done: run the full gate sweep and list the manual QA targets.
gh-credit-harvest
Harvest one community PR into a release branch with authorship and credit preserved, verified green, and a warm thank-you.
release
Prepare a named version: preflight, version consistency, build/package, smoke test, checksums/notes, and release readiness. Publishing/tagging/deploy need separate authorization. Explicit-only.
prepare-release
Prepare a new release by collecting commits, generating bilingual release notes, updating version files, and creating a release branch. Use when asked to prepare/create a release, bump version, or run /prepare-release.
release-notes
Use when asked to generate release notes, or when the /release-notes command runs — derive user-facing release notes from the change history since the last release.
codex-issue-coordinator
Coordinates a large batch of GitHub issues through separate Codex worker threads, tested pull requests, review loops, and gated merges. Use when the user asks one Codex thread to manage several coding sessions or complete a parent issue, milestone, or issue batch.