academic-writing
Write or revise thesis and paper prose section by section (abstract, introduction, related work, method, results, discussion,…
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
Claude Code
$ npx -y skills add KhaledSaeed18/dotclaude --skill release-tag --agent claude-code
Codex
$ npx skills add KhaledSaeed18/dotclaude --skill release-tag -a codex -y
Cursor
$ npx skills add KhaledSaeed18/dotclaude --skill release-tag -a cursor -y
Gemini CLI
$ npx skills add KhaledSaeed18/dotclaude --skill release-tag -a gemini-cli -y
GitHub Copilot
$ npx skills add KhaledSaeed18/dotclaude --skill release-tag -a github-copilot -y
OpenCode
$ npx skills add KhaledSaeed18/dotclaude --skill release-tag -a opencode -y
Windsurf
$ npx skills add KhaledSaeed18/dotclaude --skill release-tag -a windsurf -y
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.
Write or revise thesis and paper prose section by section (abstract, introduction, related work, method, results, discussion,…
Report computational benchmarks and experimental comparisons the way examiners and reviewers expect: fair baselines run under the…
Maintain the thesis .bib file as a single source of truth: fetch verified BibTeX from a DOI, arXiv id, or title via CrossRef and…
Expand a set of key papers into the literature around them by walking the citation graph with the Semantic Scholar and OpenAlex…
Audit every citation in a chapter, paper, or proposal against the .bib file and the real world: each cite key must exist, each…
Structure a thesis whose contribution is a built artifact (tool, system, method, model) using design science research: explicit…
You MUST use this before any creative work - creating features, building components, adding functionality, modifying behavior, or…
Ask which skill or flow fits your situation. A router over the skills in this repo.