بنقرة واحدة
release
Create a new release of the piezod package. Bumps version, creates GitHub release, and publishes to PyPI.
التثبيت باستخدام Codex أو Claude انسخ هذا Prompt والصقه في Codex أو Claude أو مساعد آخر ليراجع صفحة Skill ويثبّتها لك.
القائمة
Create a new release of the piezod package. Bumps version, creates GitHub release, and publishes to PyPI.
التثبيت باستخدام Codex أو Claude انسخ هذا Prompt والصقه في Codex أو Claude أو مساعد آخر ليراجع صفحة Skill ويثبّتها لك.
استنادا إلى تصنيف SOC المهني
| name | release |
| description | Create a new release of the piezod package. Bumps version, creates GitHub release, and publishes to PyPI. |
| allowed-tools | Read, Edit, Bash, AskUserQuestion |
Creates a new release of the piezod Python package.
/release
/release 0.2.0
If no version is provided, suggests a patch increment.
Read python/pyproject.toml to get current version
Get latest GitHub release version:
gh release list --limit 1 --json tagName --jq '.[0].tagName'
Check git status:
git status --porcelain
git branch --show-current
git fetch origin && git status -uno
Get changes since last release:
git log v{GITHUB_VERSION}..HEAD --oneline --no-merges
git diff v{GITHUB_VERSION}..HEAD --stat
Read the key changed files to understand what actually changed
Generate release notes by summarizing significant user-facing changes:
Ignore internal changes (CI, tooling, refactoring without behavior change). Write 2-5 bullets in plain language describing what users can now do or what's fixed.
Abort conditions:
Display this exact format and ask for confirmation:
## Release Plan: v{NEW_VERSION}
### Current State
- Local version: {LOCAL_VERSION}
- GitHub release: {GITHUB_VERSION}
- Git: clean, on master, up-to-date
### Release Notes
{2-5 BULLETS SUMMARIZING USER-FACING CHANGES}
### Steps to Execute
1. Update pyproject.toml version: {OLD} -> {NEW}
2. Run `uv sync` to update lockfile
3. Run `uv run pytest` to verify tests pass
4. Run `uvx ruff check` to verify lint passes
5. Commit: "Release v{NEW_VERSION}"
6. Push to origin/master
7. Trigger GitHub Action "Create Release"
8. Wait for release workflow to complete
9. Update GitHub release with release notes
10. Trigger publish workflow manually (GITHUB_TOKEN can't trigger other workflows)
11. Wait for publish workflow to complete (PyPI)
Proceed with release?
Use AskUserQuestion with options: "Yes, proceed" / "No, abort"
Execute each step, reporting progress. Stop immediately on any failure.
Use Edit tool to update version in pyproject.toml.
cd python && uv sync
cd python && uv run pytest
Abort if tests fail.
cd python && uvx ruff check src tests --extend-select I,B,SIM,C4,ISC,PIE
Abort if lint fails.
git add python/pyproject.toml python/uv.lock
git commit -m "Release v{VERSION}"
git push origin master
gh workflow run release.yml -f version={VERSION}
gh run list --workflow=release.yml --limit 1 --json status,conclusion,databaseId
Poll every 10 seconds until status is "completed". Abort if conclusion is not "success".
gh release edit v{VERSION} --notes "## What's Changed
{RELEASE_NOTES_BULLETS}"
Use the release notes generated in Phase 1.
The release workflow uses GITHUB_TOKEN which cannot trigger other workflows. Manually trigger:
gh workflow run publish.yml -f version={VERSION}
gh run list --workflow=publish.yml --limit 1 --json status,conclusion,databaseId
Poll every 10 seconds until status is "completed". Abort if conclusion is not "success".
Report success with:
gh release view v{VERSION} --json url --jq '.url'Provide clear, actionable error messages:
uvx ruff check src tests --fix to fix issues."