bobbit: Skill for Claude Code

.claude/skills/release/SKILL.md

release is a skill for Claude Code from G-Research/bobbit. It costs 52 tokens per session (5,020 once invoked), scanned A, original, MIT.

A release workflow for Bobbit that prepares a reviewed release pull request and lets CI publish the approved package to npm. CI is the automated system that checks and builds code after changes are submitted.

In plain words
What is it for?
Running release preflight checks, bumping versions, preparing release notes, and coordinating the pull request that triggers the npm and GitHub release.
Why use it?
It keeps version changes, release notes, tests, publishing, provenance, tags, and GitHub releases in one controlled process instead of relying on manual publishing.

Skill for Claude Code

Written for Claude Code: argument-hint in frontmatter. Also seen: positional $N argument.

This is G-Research/bobbit's own configuration. It tells Claude Code how to work on bobbit 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 bobbit configures →

Needs its repository: it runs a file that does not travel with it, so clone the repository first. The line is npm publish ./binaries/binaries-darwin-arm64.

Reuse

Borrowing it

Nothing to install: this file belongs to G-Research/bobbit. 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/G-Research/bobbit/main/.claude/skills/release/SKILL.md
Clone the repo
git clone --depth 1 https://github.com/G-Research/bobbit

Made for: Claude Code.

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/g-research/bobbit/release/github.svg)](https://agentmods.dev/skills/g-research/bobbit/release)
Your own site
<a href="https://agentmods.dev/skills/g-research/bobbit/release"><img src="https://agentmods.dev/badge/skills/g-research/bobbit/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/g-research/bobbit/release"><img src="https://agentmods.dev/badge/skills/g-research/bobbit/release.svg" alt="Reviewed on agentmods" width="80" height="20"></a>
Per session 52 Skills are progressive disclosure: only the name and description are preloaded; the body loads when the skill is used.
When invoked 5,020 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. Third-party audits
  • NVIDIA SkillSpector pass 7 Sept 2026
How audits are shown
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.00052 $0.05020
Opus 5.5 $0.00021 $0.02008
Sonnet 5.5 $0.00010 $0.01004
Haiku 4.5 $0.00005 $0.00502

Measured 1mo ago against content hash bc544a80bebd, 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 1mo 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.

.claude/skills/release/SKILL.md · 408 lines

How it starts

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

Drive an end-to-end release of Bobbit. The human's job is the release PR: version bump + release notes, reviewed and squash-merged. Merging it is what releases — the release PR's required GitHub checks run the test suites, then .github/workflows/release-publish.yml validates, builds, type-checks, and packs an immutable tarball without publish authority, publishes that exact tarball to npm (trusted publishing / OIDC, with provenance), creates the tag, and creates the GitHub release. Never create the release tag, run a root npm publish, or create the GitHub release by hand. npm login / OTP is needed only when republishing binary sub-packages — pause and ask when the flow needs it.

Single source of truth for release mechanics: docs/releasing.md. This skill orchestrates that doc + version bump + notes + GitHub release.

Where this runs — read this first. Never cut the release from the primary worktree: the dev server runs there, and npm ci / npm run build would wipe its node_modules / overwrite its dist/ and break the running server mid-release. Never cut it from a session worktree either — that's on a session branch, not main, and git won't let you check out main in a second worktree while the primary already has it. Instead, §1.5 creates a dedicated detached-HEAD worktree off origin/main (a sibling of the primary, not under *-wt/), and every mutating step runs there. The release commit is pushed to a release/v<version> branch and squash-merged through the repository's required PR flow (§6–§8); the resulting merge commit is what gets tagged.

0. Sanity check the environment

These are location-independent (the .git is shared across worktrees), so run them from wherever the skill was activated. Report results before doing anything mutating:

git fetch origin --tags
git rev-parse origin/main                # sha we'll release from
git tag --sort=-v:refname | head -5      # find previous tag
git log --oneline <prev-tag>..origin/main | head    # must be non-empty (something to release)
node -v                                  # must satisfy engines.node (>=22.19.0)
npm whoami                               # only needed if republishing binary sub-packages (§3); root ships via CI
gh auth status                           # must be authed for G-Research/bobbit

Note: do not gate on the current worktree's branch or cleanliness — the release is cut from a fresh detached worktree at origin/main's tip (§1.5), so the session/primary worktree state is irrelevant. What matters is that origin/main is the intended release point.

Stop and ask the user if any of:

  • origin/main has nothing new since the previous tag (nothing to release), or it isn't the commit they expect to ship.
  • npm whoami fails and step 3 will republish binary sub-packages — ask them to run npm login (and enable 2FA if not already; npm requires OTP for those sub-package publishes). The root @gresearch/bobbit publish needs no npm login — it goes through CI/OIDC.
  • gh auth status not logged in — ask them to run gh auth login.

Read the full file on GitHub · 408 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. 1mo ago Changed bc544a80bebd
  2. 2mo ago Changed 796bcfbc0096
  3. 2mo ago First seen · 408 lines · 52 tokens per session scan A bc46ae48b464

Subscribe to this mod's changes

release is a skill published in the GitHub repository G-Research/bobbit (18 stars, last pushed 1mo ago), licensed MIT. It adds 52 tokens to every session and 5,020 once invoked, about $0.0002 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-08-30.

Related

release compared with skills from other repositories

release next to 6 skills from other repositories
ModTypeStarsLast pushLicenceScanTokensWorks with
releaseG-Research/bobbitSkill181mo agoMITA52Claude Code
release-announcementpaperclipai/paperclipSkill111kyesterdayMITA42Claude Code, Codex
releasethedotmack/claude-memSkill114kyesterdayApache-2.0A13Claude Code
release-notesphuryn/pm-skillsSkill28k8d agoMITA57Claude Code
multi-agent-release-managerchromium/chromiumSkill25kyesterdayBSD-3-ClauseA27Claude Code, Codex
pack-submitaeonfun/aeonSkill788yesterdayMITA27Claude Code, Codex
updater_guidesiddsachar/row-botSkill1.7kyesterdayApache-2.0A22Claude Code, Codex