بنقرة واحدة
release
Create a PHOTON Action Memory release branch, version bump, changelog update, tag, and GitHub Release.
التثبيت باستخدام Codex أو Claude انسخ هذا Prompt والصقه في Codex أو Claude أو مساعد آخر ليراجع صفحة Skill ويثبّتها لك.
القائمة
Create a PHOTON Action Memory release branch, version bump, changelog update, tag, and GitHub Release.
التثبيت باستخدام Codex أو Claude انسخ هذا Prompt والصقه في Codex أو Claude أو مساعد آخر ليراجع صفحة Skill ويثبّتها لك.
Plan and run Codex issue orchestration through CommandMate and git worktrees.
Safely remove merged or obsolete git worktrees for this repository
Create a develop-targeted pull request for the current issue worktree.
Implement one assigned issue in a dedicated git worktree.
Generate and record UAT checks, including manual GUI or real-device steps.
استنادا إلى تصنيف SOC المهني
| name | release |
| description | Create a PHOTON Action Memory release branch, version bump, changelog update, tag, and GitHub Release. |
Use this skill when the user invokes:
/release patch/release minor/release major/release <version>This repository releases from main. Normal feature work may flow through
develop, but release tags must point at code already merged to main or at a
release PR merged into main.
main..env, local databases, workspace run artifacts, and raw logs out of release commits.Run from the main integration worktree or a clean release worktree:
git branch --show-current
git status --short
git fetch origin main --tags
If the current branch is not main, verify that a main worktree exists:
git worktree list
Use main as the release branch base.
Read the current version from both places and confirm they match:
python - <<'PY'
import re
from pathlib import Path
pyproject = Path("pyproject.toml").read_text()
init = Path("photon_action_memory/__init__.py").read_text()
print(re.search(r'^version = "([^"]+)"', pyproject, re.M).group(1))
print(re.search(r'__version__ = "([^"]+)"', init).group(1))
PY
Calculate the next version:
patch: increment PATCH.minor: increment MINOR and reset PATCH to 0.major: increment MAJOR and reset MINOR/PATCH to 0.X.Y.Z.Reject non-SemVer versions.
git rev-parse "v$new_version"
git ls-remote --tags origin "v$new_version"
If either command finds an existing tag, stop and report the collision.
WORKTREE_DIR="../photon-action-memory-release-v$new_version"
git worktree add -b "release/v$new_version" "$WORKTREE_DIR" origin/main
In the release worktree:
pyproject.toml project version.photon_action_memory/__init__.py __version__.CHANGELOG.md:
[Unreleased] entries under [X.Y.Z] - YYYY-MM-DD;[Unreleased] section;Run:
ruff format --check .
ruff check .
mypy photon_action_memory tests
pytest -q
python -m build
If a check fails, fix it in the release worktree or stop with the failure.
git add pyproject.toml photon_action_memory/__init__.py CHANGELOG.md README.md
git commit -m "chore: release v$new_version"
git push -u origin "release/v$new_version"
Create a PR to main with:
chore: release v$new_versionPrefer the GitHub connector for PR creation. Use gh pr create only when the
connector cannot create the PR and gh is authenticated.
After the user confirms the release PR was merged:
git fetch origin main --tags
git checkout main
git pull --ff-only origin main
git tag "v$new_version"
git push origin "v$new_version"
The tag push triggers .github/workflows/release.yml, which builds Python
distributions with python -m build and attaches dist/* to a GitHub Release.
Only after tag push and release workflow success:
git worktree remove "../photon-action-memory-release-v$new_version"
git branch -d "release/v$new_version"
git push origin --delete "release/v$new_version"
Use only non-forced deletion by default.
Confirm:
git tag -l "v$new_version"
gh release view "v$new_version"
gh run list --limit 3
If gh is unavailable or unauthenticated, use the GitHub connector or report
that local release verification could not be completed.