Preview, then cut

export KOVANEX_ADDR=127.0.0.1:9090

# run from inside the repo checkout
DRY_RUN=1 bash cut.sh <project_id> v1.2.0 "Title"   # preview the changelog
bash cut.sh <project_id> v1.2.0 "Title" [since_ref]  # create the release

The changelog is git log <last_tag>..HEAD --no-merges (override the range with since_ref). After it creates the release it prints:

git tag -a v1.2.0 -m "Title" && git push <remote> v1.2.0

Why tagging stays manual

Creating the release record is safe and reversible; pushing a git tag is not. kovaship gives you the command so the tag is deliberate, and the release notes are already on the board when you push it.

Get it

Download kovaship.tar.gz

Unpack into your agent's skills folder: tar xzf kovaship.tar.gz -C ~/.claude/skills/ — needs git + kovanex-ctl on PATH.

Source →  skills/kovaship/ in the public mirror (SKILL.md · cut.sh · README.md)