- /ship now commits and pushes with a branch guard and no longer tags; /release tags vMAJOR.MINOR.PATCH and confirms before pushing - operator-reviewer and go-operator-reviewer agents from egress-proxies-operator - committed permission allowlist; settings.local.json ignored Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
23 lines
1.1 KiB
Markdown
23 lines
1.1 KiB
Markdown
---
|
|
description: Commit current changes and push to the remote
|
|
---
|
|
|
|
Commit the current working-tree changes and push them.
|
|
|
|
1. Run `git status` and `git diff` to see what will be committed.
|
|
2. Check the current branch (`git branch --show-current`). If it's `main` and the
|
|
change looks feature-sized (not one of CLAUDE.md's "commit straight to main"
|
|
exceptions: small fixes, typos/formatting, or the user explicitly said `main`),
|
|
stop and tell the user to branch first — don't push a feature to `main`.
|
|
3. Stage the changed files (`git add -A` is fine here).
|
|
4. Create a commit with a short message describing the changes (infer it from the
|
|
diff), including a `Co-Authored-By:` trailer for Claude.
|
|
Pass the message via a HEREDOC.
|
|
5. Push with `git push`. If the current branch has no upstream, use `git push -u origin HEAD`.
|
|
6. If the branch isn't `main`, remind the user to open an MR with `tea pr create`
|
|
(see CLAUDE.md's Branching & Merge Requests section) rather than opening one
|
|
automatically.
|
|
7. Report the commit hash and push result.
|
|
|
|
If there are no changes, stop and say so — do not create an empty commit.
|