Borrowing it
Nothing to install: this file belongs to backblaze-labs/genblaze. Take a copy, put it at the same path in your own repository, and replace the rules that are about this project with yours.
curl -O https://raw.githubusercontent.com/backblaze-labs/genblaze/main/.claude/skills/prepare-release/SKILL.mdgit clone --depth 1 https://github.com/backblaze-labs/genblazeWrote 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/backblaze-labs/genblaze/prepare-release)<a href="https://agentmods.dev/skills/backblaze-labs/genblaze/prepare-release"><img src="https://agentmods.dev/badge/skills/backblaze-labs/genblaze/prepare-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.1 | $0.00071 | $0.01886 |
| Opus 5 | $0.00036 | $0.00943 |
| Sonnet 5 | $0.00014 | $0.00377 |
| Haiku 4.5 | $0.00007 | $0.00189 |
Grade A, and why
prepare-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 6d 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 — 147 lines — stays where its author put it; the contents beside it link to each section on GitHub.
Prepare a release wave — $ARGUMENTS
Safety boundary: the allowed-tools list above deliberately has no git tag,
gh release, twine upload, or make post-release. This skill cannot tag or publish
anything — without a git tag step there is no tag to push, and without gh release
or twine there is nothing to trigger .github/workflows/release.yml. It goes as far
as a merge-ready release PR and stops. Tagging, releasing, and post-release
verification are human commands, emitted (not run) at the end.
This is a thin driver over tools/prepare_release.py,
which does the actual bookkeeping (dynamic package discovery, version bumps, dependency
floor sync, reserved-core-version guard — see its module docstring). For what a wave
release actually IS (versioning policy, the publish pipeline graph, tag-naming
convention) see RELEASING.md — this skill does not restate
it. For gating one already-decided package version one at a time, use /release-check
instead; this skill operates at the wave level across every package at once.
Step 1 — Scope
python3 tools/prepare_release.py --check
Read the report: which packages changed since the last tag, what version bumps and
dependency-floor updates it computes, and any warnings (e.g. a connector with no
entry in libs/meta/pyproject.toml). Exit 0 means nothing to prepare — stop here.
Exit 1 means proceed to Step 2. Exit 2 is a hard error (bad --set/--bump, a git
failure, or the reserved-core-version guard tripping) — resolve it before continuing.
Before doing anything else, confirm:
- You're on
main(git status), up to date withorigin/main, and the working tree is clean. git logshows the commit you're about to release from is the one you intend.
Step 2 — Apply, then cut the CHANGELOG
python3 tools/prepare_release.py --apply
This writes every version bump and dependency-floor update computed in Step 1. Pass
--set <pkg>=<version> or --bump <pkg>=minor|major to override the default patch
bump for any package (e.g. --set core=0.4.0 for a deliberate minor/major, or to
route around the reserved-version guard intentionally).
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.
- 6d ago First seen · 147 lines · 71 tokens per session scan A aff04b5313d3
prepare-release is a skill published in the GitHub repository backblaze-labs/genblaze (558 stars, last pushed yesterday), licensed MIT. It adds 71 tokens to every session and 1,886 once invoked, about $0.0004 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
Release Notes Generator
Generate professional software release notes from a commit log: classify changes, write user-facing summaries, draft a publishable announcement, and assess release readiness. Use for release, changelog, version, and deploy requests.
pinned-release-checklist
Minimal guidance-only Skill used by release-pinned compatibility examples.
Release Checklist
Check release readiness and record a release note. Use for release and rollback requests.
Release Readiness Reviewer
Reviews a release candidate and produces a go/no-go readiness decision.
maf-release-watcher
Detects new MAF releases, extracts breaking changes, and keeps the toolkit's registry/matrix/guide current. Pipeline: (1) deterministic data extraction via GitHub Actions + Python helpers + dotnet-inspect, opens a PR with raw data and TODOs on a per-version branch (never commits direct to main), (2) optionally, a…
plainx-release
Releases plainx packages with version suggestions, changelog generation, and git tagging. Use when releasing a package to PyPI.