Borrowing it
Nothing to install: this file belongs to pacphi/agentic-kit. 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/pacphi/agentic-kit/main/.agents/skills/ak-release/SKILL.mdgit clone --depth 1 https://github.com/pacphi/agentic-kitWrote 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/pacphi/agentic-kit/ak-release)<a href="https://agentmods.dev/skills/pacphi/agentic-kit/ak-release"><img src="https://agentmods.dev/badge/skills/pacphi/agentic-kit/ak-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.
<a href="https://agentmods.dev/skills/pacphi/agentic-kit/ak-release"><img src="https://agentmods.dev/badge/skills/pacphi/agentic-kit/ak-release.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.00085 | $0.01674 |
| Opus 5.5 | $0.00034 | $0.00670 |
| Sonnet 5.5 | $0.00017 | $0.00335 |
| Haiku 4.5 | $0.00009 | $0.00167 |
Grade A, and why
ak-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 23d 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 — 94 lines — stays where its author put it; the contents beside it link to each section on GitHub.
Release a version
A tag push publishes to npm and cannot be undone, so each outward step below needs its own yes.
When to use
The maintainer wants a new @pacphi/agentic-kit version published. The contents must already be
merged to main. This skill does not merge feature PRs (use ak-ship).
Preflight
- Work in a checkout you own with
git branch --show-current,git status --porcelainandgit worktree list. Never switch branches in a checkout another session uses; ifmainis held elsewhere, use a worktree you create. Stop and report if the tree is dirty. git fetch originand confirm the release base equalsorigin/main. Stop if it is behind, or if the contents the maintainer expects are not merged.- Read the current version:
node -p "require('./package.json').version". Readdocs/maintainer.mdsections 6 and 7 again if unsure. Section 7's checklist pushesmaindirectly; the pull request path in step 4 is current practice. gh run list --workflow=release.yml --limit 3andnpm view @pacphi/agentic-kit dist-tagsto see what shipped last.
Steps
- Choose the version with the maintainer, by SemVer and the bump rules in
docs/maintainer.mdsection 6. Ask whether the next step is an alpha, a beta or an rc (-alpha.Nand-rc.Ngo tonext,-beta.Nto the project-scopedbetaline, a stable version tolatest); never infer it. Confirm withnode scripts/release-dist-tag.mjs <version>and show the result. - Run the suite:
node scripts/run-tests.mjs unit(thepnpm testscript; neverpnpmin a worktree). Stop if red. - Bump
versioninpackage.json, the only place it lives. Checknode bin/agentic-kit.mjs --versionprints it. - Release commit
release: v<version>. Recent releases landed through a pull request becausemainrequires one: push a release branch and open the PR only after a yes, then hand the merge toak-ship(a release PR needs a fresh yes there). Pushingmaindirectly needs its own yes that names this commit and this branch; a general "direct pushes are allowed" is not that yes. A rejected push is reported, never worked around.ak-ship's cleanup may remove the release branch's worktree: run step 5 onward from a checkoutak-shipis not removing. - Verify the commit before tagging, and again right before the tag-push approval:
git fetch origin, thengit rev-parse HEADmust equalgit rev-parse origin/main(or tagorigin/mainexplicitly, as on the pull request path, where HEAD is the release branch). Read the version from the commit being tagged, not the working tree:git show origin/main:package.json | node -p "JSON.parse(require('fs').readFileSync(0, 'utf8')).version"must print<version>, andgit log -1 --format=%s origin/mainmust berelease: v<version>orrelease: v<version> (#<N>), where<N>is the release PR a squash merge appends. If any differs, stop and report. Nevergit checkout mainin a worktree where it is held elsewhere. - Create the annotated tag on the verified commit, matching exactly:
git tag -a v<version> -m "v<version>" origin/main. Showgit show v<version> --statand the dist-tag. - Tag push, separate approval: name the tag, the commit and the dist-tag, repeat the step 5
checks, then run
git push origin v<version>only after that yes. This starts the publish (release.ymlrunspnpm publish; you never publish). - Watch the publish, separate approval (cheap to give, it only reads):
gh run list --workflow=release.yml --limit 5 --json databaseId,headBranch,event,status. Pick the run whoseheadBranchisv<version>andeventispush, not an earlier run or aworkflow_dispatchdry run; if none appears yet, wait and list again. Thengh run watch <run-id> --exit-status. A failure on the tag-version guard or tests published nothing; report it and the fix options indocs/maintainer.mdsection 7, and do not move or delete the tag without a yes for that exact action. - npm check, separate approval (also read-only and cheap):
npm view @pacphi/agentic-kit dist-tagsandnpm view @pacphi/agentic-kit@<version> version dist.tarball. Allow about eight minutes after the workflow reports success; a 404 on the tarball inside that window is registry lag, not a failed publish, so wait and re-check. gh release view v<version> --json tagName,isPrerelease(the workflow creates it; do not rungh release create). Prereleases must showisPrereleasetrue.- Close the release epic and its items in the GitHub Project after a yes per target, with
gh issue close <N> --comment "Released in v<version>"; list the numbers first. - Remind the maintainer that the global
akis the published npm copy, not the repo: runnpm i -g @pacphi/agentic-kit@<dist-tag>, thenak sync. Do not run it unasked.
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.
- 23d ago First seen · 94 lines · 85 tokens per session scan A 680cb30b3401
ak-release is a skill published in the GitHub repository pacphi/agentic-kit (61 stars, last pushed yesterday), licensed MIT. It adds 85 tokens to every session and 1,674 once invoked, about $0.0003 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-10-05.
Other skills, from other repositories
draft-release-notes
Author the committed release-notes file for a Prisma 8 release (stable or 8.0.0-rc.N) by enumerating the merged PRs since the previous release v tag (stable or -rc.N), resolving opaque TML-NNNN: titles via Linear context (never copied verbatim), triaging public-worthiness, and writing categorized notes — breaking…
publish-npm-version
Cuts the next release of Prisma 8: bumps the root package.json version (on the v8 RC line: 8.0.0-rc.N → rc.N+1), propagates it to every workspace package, and opens a PR titled "chore(release): bump to ". When the maintainer merges the PR, the Publish to npm workflow runs automatically and ships the new version to npm…
version-bump
Automated semantic versioning and release workflow for Claude Code plugins. Handles version increments across package.json, marketplace.json, plugin.json manifests, build verification, git tagging, GitHub releases, and changelog generation. npm publishing is done by the tag-triggered GitHub Actions workflow through…
batch
Research and plan a large-scale change, then execute it in parallel across 5–30 isolated worktree agents that each open a PR.
github
GitHub via gh CLI: PRs, issues, reviews, repos, auth.
changelog
Auto-generate a changelog from git commits and sprint data. Internal and player-facing versions.