/ship - Build, Commit, Push & Version Bump
Automates the complete ship workflow for ccboard:
Workflow Steps
Build Verification
- Run
cargo build --allto ensure compilation succeeds - Run
cargo clippy --all-targetsto catch warnings - Run
cargo test --allto verify tests pass - If any step fails, stop and report errors
- Run
Stage Changes
- Run
git statusto show current state - Stage all changes with
git add -A - Show what will be committed with
git diff --cached --stat
- Run
Commit
- Write a conventional commit message based on the changes:
feat:for new featuresfix:for bug fixesrefactor:for refactoringdocs:for documentationchore:for maintenance
- Commit format:
<type>: <description> - Add Co-Authored-By: Claude Sonnet 4.5 noreply@anthropic.com
- Write a conventional commit message based on the changes:
Version Bump (optional)
- Check if Cargo.toml version needs bumping
- If user confirms, update version in all workspace crates
- Amend the commit with version bump
Push
- Push to current branch with
git push - If branch has no upstream, use
git push -u origin <branch>
- Push to current branch with
Summary
- Report what was shipped:
- Commit hash
- Branch name
- Files changed
- Version (if bumped)
- Report what was shipped:
Usage
# Basic usage - ship current changes
/ship
# With version bump
/ship bump
# Dry run - show what would be done
/ship --dry-run
Safeguards
- Always run full build + test suite before committing
- Never force push
- Never skip hooks (no --no-verify)
- Show clear summary of what will be committed before proceeding
- Fail fast on any build/test error
Expected Outcome
All changes committed, tested, and pushed to remote with proper conventional commit message.