ship
Ship
This skill takes finished work from the working tree to production. It commits in small pieces, pushes, merges, watches checks and confirms the result is live.
Push means push
When the user says push, ship or merge, do every step to the end. Handing a command back to the user is a finding unless it needs their credentials or their approval. A secret in a commit is always HIGH.
Checking the change itself runs in verify before this skill starts.
1. Check the tree
Run git status and read every changed file. Name any file you did not change in this task and ask before committing it. Committing a stray file is ship-flag-stray-files. Scan the diff for keys, tokens, passwords and .env files. A committed secret is ship-no-secrets.
2. Commit per change
Make one commit per logical change. One commit for a feature, a fix and a rename is ship-commit-per-change. Write every message as a Conventional Commit: type(scope): summary in the imperative, lowercase and with no full stop. Use feat, fix, docs, refactor, chore or another standard type, and mark a breaking change with ! after the type. A message like "Remove the archive." is ship-conventional-commits. In a package that publishes releases, add the changeset with the change. A release-bound change with no changeset is ship-changeset-for-packages.