verisure-release
Bump version, publish to PyPI, create GitHub release, update HACS manifest
Instalar com Codex ou Claude Copie este prompt, cole no Codex, Claude ou outro assistente e deixe que ele revise a página da skill e instale para você.
Menu
Bump version, publish to PyPI, create GitHub release, update HACS manifest
Instalar com Codex ou Claude Copie este prompt, cole no Codex, Claude ou outro assistente e deixe que ele revise a página da skill e instale para você.
Baseado na classificação ocupacional SOC
Full deploy pipeline — test, typecheck, deploy to HAOS, smoke test
End-of-session protocol — push, checkpoint, CHANGELOG, docs, todo
Session start protocol — workflow gates, pending work, status report
Structured investigation — HA logs, API trace, code trace. No code changes until approved.
Dispatch 8 parallel agents for full codebase review (line-level + architecture)
| name | verisure-release |
| description | Bump version, publish to PyPI, create GitHub release, update HACS manifest |
Release a new version. Takes a version argument (e.g. /verisure-release 0.7.0).
Abort on any failure.
git status --porcelain must be empty. If not, abort — commit or stash first.pytest tests/ -x -q — abort on failure.pyright verisure_italy/ custom_components/ — abort on errors.ruff check verisure_italy/ tests/ custom_components/ — abort on errors.master branch. Abort otherwise.Three files to update — all three MUST match:
pyproject.toml — version = "X.Y.Z" (line 3)custom_components/verisure_italy/manifest.json — "version": "X.Y.Z"custom_components/verisure_italy/manifest.json — "requirements": ["verisure-italy>=X.Y.Z"]After editing, verify all three match:
grep '"version"' custom_components/verisure_italy/manifest.json
grep '^version' pyproject.toml
grep 'verisure-italy>=' custom_components/verisure_italy/manifest.json
git add pyproject.toml custom_components/verisure_italy/manifest.json CHANGELOG.md
git commit -m "chore: bump to X.Y.Z"
git tag -a vX.Y.Z -m "vX.Y.Z — <one-line summary from CHANGELOG>"
git push origin master --tags
Ask the user for confirmation before pushing.
rm -rf dist/
python3 -m build
source .env
TWINE_USERNAME=__token__ TWINE_PASSWORD="$PYPI_TOKEN" \
python3 -m twine upload dist/*
Verify the upload succeeded — check for the View at: URL in twine output.
gh release create vX.Y.Z \
--title "vX.Y.Z" \
--notes "$(sed -n '/^## X\.Y\.Z/,/^## [0-9]/p' CHANGELOG.md | head -n -1)" \
dist/*
If the sed extraction fails, ask the user for release notes.
gh release view vX.Y.ZRelease does NOT deploy. The user's own HA instance gets the update via HACS, not via this skill.