scraps: Skill for Claude Code

.agents/skills/release/SKILL.md

release is a skill for Claude Code, Codex from boykush/scraps. It costs 137 tokens per session (2,441 once invoked), scanned A, original, MIT.

A release workflow for Scraps that prepares a version, merges its release pull request, publishes a GitHub Release, and ships its software packages and binaries. A GitHub Release is a versioned publication of source and build artifacts for users.

In plain words
What is it for?
Use it to cut, ship, or publish a Scraps release. It handles version selection, release notes, checks, pull requests, GitHub Releases, package publishing, Homebrew updates, and version tags.
Why use it?
It coordinates the many steps of publishing a version and can resume after an interruption. It also requires confirmation before irreversible actions such as merging and publishing.

Skill for Claude CodeCodex

Written for no agent in particular: nothing here depends on one. Also seen: mentions Claude Code; installed under .agents/ (shared by several agents).

This is boykush/scraps's own configuration. It tells Claude Code and Codex how to work on scraps itself, so it is not a mod to install elsewhere. Copy it as a starting point and replace the rules that are about this project. Everything scraps configures →

Reuse

Borrowing it

Nothing to install: this file belongs to boykush/scraps. Take a copy, put it at the same path in your own repository, and replace the rules that are about this project with yours.

Copy the file
curl -O https://raw.githubusercontent.com/boykush/scraps/main/.agents/skills/release/SKILL.md
Clone the repo
git clone --depth 1 https://github.com/boykush/scraps

Made for: Claude Code, Codex.

Wrote 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.

agentmods badge for release

README.md
[![agentmods](https://agentmods.dev/badge/skills/boykush/scraps/release/github.svg)](https://agentmods.dev/skills/boykush/scraps/release)
Your own site
<a href="https://agentmods.dev/skills/boykush/scraps/release"><img src="https://agentmods.dev/badge/skills/boykush/scraps/release/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.

agentmods 80×15 button for release

Your own site · 80×15
<a href="https://agentmods.dev/skills/boykush/scraps/release"><img src="https://agentmods.dev/badge/skills/boykush/scraps/release.svg" alt="Reviewed on agentmods" width="80" height="20"></a>
Per session 137 Skills are progressive disclosure: only the name and description are preloaded; the body loads when the skill is used.
When invoked 2,441 The whole file, excluding the scripts and references it only reads on demand.
Security scan A 0 findings. A grade says what 26 rules found in the file — not that it is safe.
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.1 $0.00137 $0.02441
Opus 5.5 $0.00055 $0.00976
Sonnet 5.5 $0.00027 $0.00488
Haiku 4.5 $0.00014 $0.00244

Measured 14d ago against content hash dabb5baf0d67, method: parsed. Prices are Anthropic first-party input rates as of 2026-10-07, from the pricing page.

Security

Grade A, and why

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 14d 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.

.agents/skills/release/SKILL.md · 144 lines

How it starts

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

Release

Takes a version such as 3.1.0 (semver, no v); the tag is v3.1.0. If the user gave none, propose one from what is shipping (step 1): a breaking change means major, a feature means minor, anything else patch. Confirm it before going on.

Three constraints shape the flow:

  • main takes changes only through a PR that passes the checks and has the approval its rulesets require, so the version bump travels as a release PR.
  • Publishing the GitHub Release runs .github/workflows/release.yml. It uploads the binaries, publishes both crates to crates.io and updates boykush/homebrew-tap. None of that can be taken back.
  • The floating v{major} / v{major}.{minor} tags are moved from this checkout with the user's credentials. GITHUB_TOKEN can't move them: GitHub refuses a tag whose commit has different .github/workflows/ from the default branch, and any workflow change merged after the release commit makes them differ.

Get the user's go-ahead before merging, before publishing and before moving the floating tags. In between, keep going without stopping. Draft the release notes yourself: the user reviews them as a whole before publishing.

A release can stop halfway, for example when a PR is waiting on checks or a session ends. Check what already exists before starting, and resume from the first step that hasn't happened:

git fetch origin main --tags --force
gh pr list --head release/v<version> --state all --json number,state,mergeCommit
gh release view v<version>
git ls-remote origin refs/tags/v<version> refs/tags/v<major> refs/tags/v<major>.<minor>

Without --force, git refuses to update a tag it already has, so the fetch fails once the floating tags have moved. The floating tags are done when they point where v<version> does.

1. See what is shipping

prev=$(git tag --list 'v[0-9]*.[0-9]*.[0-9]*' --merged origin/main --sort=-v:refname | grep -v -e - | grep -vx 'v<version>' | head -1)
gh api repos/boykush/scraps/releases/generate-notes -f tag_name=v<version> -f target_commitish=main -f previous_tag_name="${prev:?no previous tag found}" --jq .body

Read the full file on GitHub · 144 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. 14d ago Changed · +2 lines dabb5baf0d67
  2. 22d ago Changed · +32 lines · +20 tokens per session 63dade74759d
  3. 23d ago First seen · 110 lines · 117 tokens per session scan A a20897a726fb

Subscribe to this mod's changes

release is a skill published in the GitHub repository boykush/scraps (45 stars, last pushed today), licensed MIT. It adds 137 tokens to every session and 2,441 once invoked, about $0.0005 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-25.