Agent skill

Push and PyPI Release

by liaohch3 in liaohch3/claude-tap

Pushes the current work to GitHub and, when pending commits change code, bumps the version in pyproject.toml so CI publishes a new PyPI release.

MITAuto-check passedDevelopment

Install Push and PyPI Release

skills CLI
$ npx skills add liaohch3/claude-tap --skill push-release -a claude-code

Project install by default; add -g for ~/.claude/skills/.

GitHub CLI
$ gh skill install liaohch3/claude-tap push-release --agent claude-code

Project scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).

Manual copy
$ git clone --depth 1 https://github.com/liaohch3/claude-tap.git skills-src && mkdir -p .claude/skills && cp -r skills-src/.agents/skills/push-release .claude/skills/push-release && rm -rf skills-src

Use ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.

Claude Code skills documentation · loads skills from .claude/skills/

Facts

Skill name
push-release
GitHub stars
3.3k
Token cost
~509 tokens
SKILL.md length
255 words
Files
1
Skills in repo
11
Repo updated
First seen
Licence
MIT

At a glance

Pushes the current work to GitHub and, when pending commits change code, bumps the version in pyproject.toml so CI publishes a new PyPI release.

  • Works in 5 steps: Check working tree: Ensure no… → Determine whether a version bump is needed → If bump is needed → …
  • Pushing finished commits when a new PyPI release may be needed
  • SKILL.md covers Workflow and Important: Version Bump = PyPI…
  • Calls git

What it does

The skill first checks that the working tree is clean and asks you to commit if it is not. It then reads the current version from `pyproject.toml` and lists the commits that are ahead of `origin/main`. Feature, fix and refactor commits call for a version bump; commits that only touch docs, tests or CI do not.

When a bump is needed, it picks patch, minor or major from the type of change, edits the version in `pyproject.toml` and `__version__` in `claude_tap/__init__.py`, folds the change into the last commit with an amend, and pushes to `origin/main`. The skill stresses that a version bump is the only trigger for a PyPI release in this repository's pipeline: lint, test, auto-tag and publish run after a push, but tagging is skipped when the version is unchanged. It then points you to the GitHub Actions page.

When your agent uses it

  • Pushing finished commits when a new PyPI release may be needed
  • Deciding whether a set of commits warrants a version bump
  • Keeping version numbers in sync across pyproject.toml and the package

Example prompts

  • “Push my commits and bump the version if they include a fix.”
  • “Check whether these pending commits need a release, then push to main.”
  • “Release the new feature to PyPI.”

Requirements

  • A Python package with version fields in pyproject.toml and claude_tap/__init__.py
  • Push access to origin/main with CI that tags and publishes to PyPI

Workflow steps

5 steps, taken from the first numbered list in SKILL.md.

  1. Check working tree: Ensure no uncommitted changes (prompt user to commit first if dirty).
  2. Determine whether a version bump is needed
  3. If bump is needed
  4. Push
  5. Confirm CI status

What it can do on your machine

Read from SKILL.md and the folder at commit 4cc867d. It shows what the files ask for, not the result of running them.

  • Tool permissions

    Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.

    From allowed-tools in the SKILL.md frontmatter.

  • Runs code

    Shell commands in SKILL.md call:

    • git

    From the folder's file list and the shell code blocks in SKILL.md.

  • Network

    No URLs in SKILL.md. Its commands use git, which can reach the network depending on how they are called.

    From URLs in SKILL.md, links to its own repository left out.

  • Credentials

    Names no API keys, tokens, secrets or passwords.

    From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.

Context cost

Push and PyPI Release loads about 509 tokens when it runs. Until then it costs about 20 tokens; SKILL.md has 255 words of instructions outside code blocks.

Always · name and description, kept in context so the agent knows when to use it
~20
When it runs · the whole SKILL.md, loaded when a task matches
~509

Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.

Safety

Auto-check passed

The automated check found no risky patterns in SKILL.md.

Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.

SKILL.md

The full file from liaohch3/claude-tap at commit 4cc867d, republished under its MIT licence (© liaohch3). 255 words, ~509 tokens.

Download SKILL.mdSave it as .claude/skills/push-release/SKILL.md (or your agent's skills folder).
name
push-release
description
Push to GitHub and optionally bump version to trigger PyPI release
user_invocable
true

Push & Release

Push code to GitHub. If the pending commits contain feature changes, bump the version number so CI auto-publishes to PyPI.

Workflow

  1. Check working tree: Ensure no uncommitted changes (prompt user to commit first if dirty).

  2. Determine whether a version bump is needed:

    • Read current version from pyproject.toml
    • Run git log origin/main..HEAD --oneline to inspect pending commits
    • If commits include feature changes (feat/fix/refactor, not purely docs/chore/test), a bump is needed
    • If only docs, tests, or CI changes, skip the bump
  3. If bump is needed:

    • Choose bump level based on change type:
      • patch (0.1.4 → 0.1.5): bug fixes, minor improvements
      • minor (0.1.4 → 0.2.0): new features
      • major (0.1.4 → 1.0.0): breaking changes
    • Update the version field in pyproject.toml
    • Update __version__ in claude_tap/__init__.py
    • git commit --amend to fold the version bump into the last commit (avoids extra commits)
  4. Push:

    bash
    git push origin main
  5. Confirm CI status:

Important: Version Bump = PyPI Release

The CI pipeline works as follows: push to main → auto-tag (only if version changed) → PyPI publish (triggered by new tag).

A version bump is the ONLY way to trigger a new PyPI release. If you push without bumping the version, CI will skip tagging and nothing gets published. So whenever commits include meaningful code changes (features, fixes, improvements), you MUST bump the version before pushing.

  • Version numbers in pyproject.toml and claude_tap/__init__.py must stay in sync
  • Only skip the bump for pure docs/test/CI changes that don't affect the published package

© liaohch3, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file

Files

Just SKILL.md in .agents/skills/push-release of liaohch3/claude-tap.

Open the folder on GitHubat commit 4cc867d

Compare with similar skills

Push and PyPI Release next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.

Push and PyPI Release compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
Push and PyPI Release this skillliaohch3/claude-tap3.3k—~509Automated safety check: PassMIT
npm Package Publisherklaudworks/universal-skills181—~923Automated safety check: PassMIT
CI Automationjeremylongshore/tons-of-skills-marketplace2.8k—~1.4kAutomated safety check: NotesMIT
PR Createposit-dev/skills531—~4.3kAutomated safety check: WarnMIT
Worktrunk Release Workflowmax-sixty/worktrunk9k—~6.9kAutomated safety check: PassCustom licence
ZCF Release AutomationUfoMiao/zcf6.1k—~3.4kAutomated safety check: PassMIT

Similar skills

  • npm Package Publisher

    klaudworks/universal-skills

    Releases an npm package by committing changes, bumping the version with npm version, pushing the tag and checking the GitHub Actions publish.

    181 GitHub stars~923 tokensUpdated 8 mo ago
    DevelopmentAuto-check passed
  • CI Automation

    jeremylongshore/tons-of-skills-marketplace

    A skill your agent uses when running GitHub Actions locally, creating task runner recipes, generating changelogs from git history, managing GitHub PRs/issues/releases programmatically, or creating…

    2.8k GitHub stars~1.4k tokensUpdated today
    DevelopmentAuto-check: notes
  • PR Create

    posit-dev/skills

    Creates a pull request from current changes, monitors GitHub CI, and debugs any failures until CI passes.

    531 GitHub stars~4.3k tokensUpdated today
    DevelopmentAuto-check: warnings
  • Worktrunk Release Workflow

    max-sixty/worktrunk

    Walks a maintainer through cutting a Worktrunk release: sync the release branch, pass two test gates, review the changes, then publish.

    9k GitHub stars~6.9k tokensUpdated today
    DevelopmentAuto-check passed
  • Automates a version release with changesets: analyzes code changes, writes a bilingual CHANGELOG, bumps the version and commits through a release branch and pull request.

    6.1k GitHub stars~3.4k tokensUpdated 1 mo ago
    DevelopmentAuto-check passed
  • Pypi Release

    alchemiststudiosDOTai/tunacode

    This skill should be used when releasing tunacode-cli to PyPI.

    125 GitHub stars~2.2k tokensUpdated 2 days ago
    DevelopmentAuto-check passed

More from liaohch3/claude-tap

All 11 skills in this repo
  • Codex E2E Trace Validation

    liaohch3/claude-tap

    Runs a real Codex CLI session through claude-tap and produces trace evidence and viewer screenshots for pull requests that touch capture, proxying or the viewer.

    3.3k GitHub stars~3k tokensUpdated 16 days ago
    Auto-check passed
  • Terminal Demo Video Recorder

    liaohch3/claude-tap

    Records a real tmux end-to-end run with asciinema, converts it to a GIF and MP4, and captures trace viewer screenshots with Playwright.

    3.3k GitHub stars~545 tokensUpdated 16 days ago
    Auto-check passed
  • JS-in-HTML Testing

    liaohch3/claude-tap

    Tests JavaScript embedded in an HTML file in two layers: pytest checks of the logic ported to Python, and Playwright runs in a real browser for the DOM.

    3.3k GitHub stars~924 tokensUpdated 16 days ago
    Auto-check passed
  • Runs local checks on maintainer docs for stale review dates, missing manifest paths and plan state drift, matching what the CI workflow enforces.

    3.3k GitHub stars~561 tokensUpdated 16 days ago
    Auto-check passed
  • Playwright Screen Recording

    liaohch3/claude-tap

    Records headless Playwright sessions as .webm videos to show a bug fix working or to give pull request reviewers visual evidence.

    3.3k GitHub stars~714 tokensUpdated 16 days ago
    Auto-check passed
  • PR Preflight Check

    liaohch3/claude-tap

    Runs a single merge-readiness check on a pull request: metadata, GitHub Actions status, local lint, format and test gates, and PR body rules, ending in READY or NOT_READY.

    3.3k GitHub stars~615 tokensUpdated 16 days ago
    Auto-check passed

Questions about Push and PyPI Release

What does Push and PyPI Release do?

Pushes the current work to GitHub and, when pending commits change code, bumps the version in pyproject.toml so CI publishes a new PyPI release. The skill first checks that the working tree is clean and asks you to commit if it is not.toml` and lists the commits that are ahead of `origin/main`.

When should I use Push and PyPI Release?

Push and PyPI Release fits situations like: pushing finished commits when a new PyPI release may be needed; deciding whether a set of commits warrants a version bump; keeping version numbers in sync across pyproject.toml and the package.

How do I install Push and PyPI Release in Claude Code?

Run `npx skills add liaohch3/claude-tap --skill push-release -a claude-code`. Or copy the skill folder (.agents/skills/push-release in liaohch3/claude-tap) into .claude/skills/push-release in your project. Claude Code loads it when a task matches its description.

How do I install Push and PyPI Release in Codex?

Run `npx skills add liaohch3/claude-tap --skill push-release -a codex`. Or copy the skill folder (.agents/skills/push-release in liaohch3/claude-tap) into .agents/skills/push-release in your project. Codex loads it when a task matches its description.

Can I use Push and PyPI Release in Cursor, Gemini CLI or GitHub Copilot?

Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add liaohch3/claude-tap --skill push-release -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/push-release, .gemini/skills/push-release, .github/skills/push-release and .opencode/skills/push-release in your project.

What does Push and PyPI Release need to run?

Going by SKILL.md and its folder, Push and PyPI Release needs the command-line tools its instructions call (git). Our summary lists: A Python package with version fields in pyproject.toml and claude_tap/__init__.py; Push access to origin/main with CI that tags and publishes to PyPI.

Does Push and PyPI Release access the network?

SKILL.md contains no URLs. Its commands use git, which can reach the network depending on how they are called. This is read from the text; nothing was executed.

Is Push and PyPI Release safe to install?

Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. Review the folder before installing.

What licence does Push and PyPI Release use?

Push and PyPI Release is published under the MIT licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.

How many tokens does Push and PyPI Release use?

About 509 tokens (SKILL.md is roughly 2k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.

What are the alternatives to Push and PyPI Release?

Skills that share tags, products or a category with Push and PyPI Release: npm Package Publisher (klaudworks/universal-skills, 181 stars), CI Automation (jeremylongshore/tons-of-skills-marketplace, 2.8k stars), PR Create (posit-dev/skills, 531 stars) and Worktrunk Release Workflow (max-sixty/worktrunk, 9k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains Push and PyPI Release?

liaohch3 (a GitHub user) maintains it in liaohch3/claude-tap, which has 3,268 GitHub stars. The repository holds 11 skills in this directory. The repository was last updated on September 22, 2026.

Source: liaohch3/claude-tap on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.