adversarial-reviewer
Review code through three hostile personas - the Saboteur, the New Hire, and the Security Auditor - each required to find at least one issue. Use when a…
Cut a release by determining the SemVer bump from history, updating version files across any stack, refreshing the changelog, creating an annotated (optionally signed) Git tag, and pushing the release safely after pre-flight checks. Use when tagging a version, bumping the
$ npx -y skills add KhaledSaeed18/dotclaude --skill release-tag --agent claude-codeHow it fires
How this skill gets triggered: by you, by Claude, or both.
/release-tagContext preview
The summary Claude sees to decide when to auto-load this skill.
Cut a release by determining the SemVer bump from history, updating version files across any stack, refreshing the changelog, creating an annotated (optionally signed) Git tag, and pushing the release safely after pre-flight checks. Use when tagging a version, bumping the
name: release-tag description: Cut a release by determining the SemVer bump from history, updating version files across any stack, refreshing the changelog, creating an annotated (optionally signed) Git tag, and pushing the release safely after pre-flight checks. Use when tagging a version, bumping the version, or preparing a release. argument-hint: "(optional) explicit version (e.g. 1.4.0) or bump level (major|minor|patch)"
Take the repo from "ready" to a clean, tagged, pushed release. Releases are outward-facing and effectively irreversible once published, so every step is gated by pre-flight checks and explicit confirmation.
Derive the SemVer bump from the commits since the last tag:
Update wherever the canonical version lives; detect by the manifests present:
| Stack | Where / how | | ---------------- | ------------------------------------------------------------------------- | | Node / npm | `package.json` (+ workspace pkgs); `npm version <v> --no-git-tag-version`.| | Rust | `Cargo.toml` `[package] version` (+ `Cargo.lock`) | | Python | `pyproject.toml`, `setup.py`/`setup.cfg`, or `__version__`/`_version.py` | | Go | usually tag-driven (no file); else a `version` const / `VERSION` | | Java | `pom.xml` `<version>`, or `gradle.properties`/`build.gradle` | | .NET | `*.csproj` `<Version>`, `Directory.Build.props` | | PHP | `composer.json` `version` (often omitted in favor of tags) | | Ruby | `*.gemspec` / `lib/<gem>/version.rb` | | Generic | a top-level `VERSION` file |
Keep lockfiles consistent. **Monorepos:** prefer the configured tool (changesets, Lerna, Nx release, Turborepo) and per-package versioning over hand edits. Use the native bump command when one exists, but suppress its auto-tag/commit so the steps below stay explicit and controlled.
Refresh `CHANGELOG.md`/release notes for this version (delegate to the **changelog** skill if available): move `[Unreleased]` items under the new `## [X.Y.Z] - <date>` heading, call out breaking changes and migration steps.
1. Stage only the version + changelog files (explicit paths, never `git add -A`), and confirm. 2. Release commit: `chore(release): vX.Y.Z` (or the repo's convention). 3. Annotated, optionally signed tag, never lightweight:
4. Sanity-check: `git show vX.Y.Z` points at the release commit and the message is right.
1. Confirm branch + tag + remote. 2. Push the commit and the tag: `git push origin <branch>` then `git push origin vX.Y.Z` (or `--follow-tags`). Avoid `git push --tags` (it pushes *all* tags). 3. If CI builds/publishes/creates the release from the tag, say so and let it run; don't duplicate the publish manually.
Report the released version, the tag, the commit it points to, and what (if anything) downstream automation will now do.
Reusable Claude Code extension registry. skills, subagents, slash commands, and hooks for engineering, git, testing, and security workflows. Distributed as a shadcn GitHub registry and as installable plugins.
Repo: KhaledSaeed18/dotclaude
Review code through three hostile personas - the Saboteur, the New Hire, and the Security Auditor - each required to find at least one issue. Use when a…
Review an API contract (REST or GraphQL) before or while it is implemented, checking resource naming, HTTP semantics, status codes, error shape, pagination,…
Process code-review feedback with technical rigour — understand each point, check it against the actual codebase, and respond with reasoning or implementation…
Author a new subagent for this repository end to end by scaffolding it with pnpm new, curating its tool allowlist, setting model, color, and memory in…
Author a new slash command for this repository end to end by scaffolding it with pnpm new, writing the frontmatter and argument handling, drafting the prompt…
Author a new Claude Code hook for this repository end to end by scaffolding it with pnpm new, writing the hook script and its settings.json wiring, documenting…