TA

takopi-release

Automates package versioning, changelog updates, and GitHub release tagging for Takopi.

Install

mkdir -p .claude/skills/takopi-release && curl -L -o skill.zip "https://agentskills.codes/api/skills/download/4947" && unzip -o skill.zip -d .claude/skills/takopi-release && rm skill.zip

Installs to .claude/skills/takopi-release

Activation

This is the description your AI agent reads to decide when to run this skill — the better it matches your request, the more reliably it fires.

Prepare and ship a Takopi release. Use when asked to cut a release, bump release versions, update changelog/spec/readme, tag v<major.minor.patch>, or trigger the GitHub release workflow.
186 chars✓ has a “when” trigger
Intermediate

Key capabilities

  • Bump project version numbers
  • Update changelog.md with release details
  • Tag releases in Git
  • Refresh lock files
  • Update specification documentation

How it works

It updates version strings across project files, generates changelog entries, and triggers the release tagging process to initiate CI/CD workflows.

Inputs & outputs

You give it
Target version and release date
You get back
Tagged release and updated project files

When to use takopi-release

  • Bump project version
  • Update changelog for release
  • Tag new Takopi version

About this skill

Takopi Release

Overview

Prepare a tagged release that matches the GitHub Actions release workflow. The workflow requires the tag version to match pyproject.toml. If src/takopi/__init__.py contains a literal __version__ = "...", that literal must also match; current Takopi reads __version__ from package metadata instead.

Workflow

1) Choose version + date

Pick the release version (major.minor.patch) and the release date (YYYY-MM-DD) for changelog/spec headers. If the current version has a .dev suffix, assume the target release version is the same version without the suffix, as long as that tag does not already exist.

2) Update changelog

Update changelog.md by adding a new top section. Before writing it, study the diff between the previous tag and the new release to rank changes; put user-facing changes first.

  • ## v<major.minor.patch> (YYYY-MM-DD)
  • Include subsections like changes, fixes, breaking, docs as needed.
  • Keep entries short and include PR links when available (match existing style).

3) Bump versions

Update version strings to match the release tag:

  • pyproject.toml: project.version = "<major.minor.patch>"
  • src/takopi/__init__.py: only update this if it contains a literal __version__ = "<major.minor.patch>"; no change is needed when it uses importlib.metadata.version("takopi")
  • uv.lock: refresh so the root package version matches (run uv lock or uv sync).

4) Update spec + docs

Update docs/specification.md to match the release:

  • Header: # Takopi Specification v<major.minor.patch> [YYYY-MM-DD]
  • Replace Takopi v<old> and Out of scope for v<old> lines with the new version.
  • Add a changelog entry like - No normative changes; align spec version with the v<major.minor.patch> release. unless the spec itself changed.

If the release highlights new features, update readme.md accordingly (see v0.9.0 release).

5) Run checks

Run the standard checks before committing:

  • just check (ruff/ty/pytest)

6) Commit + tag

Commit the release using conventional commits:

  • Commit message: chore(release): v<major.minor.patch>
  • Tag: git tag v<major.minor.patch>

Push the tag to trigger .github/workflows/release.yml (build, PyPI publish, GitHub release).

7) Optional post-release bump

If you keep a dev version between releases, bump the minor version (reset patch to 0) and commit (chore: bump version to ...).

Notes

  • The release workflow checks that the tag matches pyproject.toml, and also checks src/takopi/__init__.py only when it contains a literal __version__ string.
  • Keep dates consistent across changelog.md and docs/specification.md.

When not to use it

  • Non-Takopi projects
  • Manual release tagging without version updates

Prerequisites

Gituv

Limitations

  • Requires version format compliance
  • Depends on specific file structure

How it compares

It enforces consistency between project metadata and release tags, reducing manual errors in versioning.

Compared to similar skills

takopi-release side by side with the closest alternatives in the catalog.

SkillInstallsUpdatedSafetyDifficulty
takopi-release (this skill)13moNo flagsIntermediate
dev26moReviewAdvanced
release-skills23moReviewIntermediate
http-client-python-bump-and-release16moReviewIntermediate

Try saying

Example prompts that trigger this skill in your AI assistant.

Search skills

Search the agent skills registry