Handles staging, committing, and pushing changes with support for automated version bumping.

Install

mkdir -p .claude/skills/ship-tdmtrader && curl -L -o skill.zip "https://agentskills.codes/api/skills/download/12796" && unzip -o skill.zip -d .claude/skills/ship-tdmtrader && rm skill.zip

Installs to .claude/skills/ship-tdmtrader

Activation

This is the description your AI agent reads to decide when to run this skill — the better it matches your request, the more reliably it fires.

Commit all changes with git notes, push, and optionally bump versions. Use when user asks to "ship", "commit and push", "push everything", or "release a new version".
166 chars✓ has a “when” trigger
Intermediate

Key capabilities

  • Stage all changes in the git repository
  • Commit changes with a conventional message and git note
  • Push committed changes to the remote repository
  • Bump versions across multiple packages
  • Create a git tag for versioned releases
  • Push tags along with committed changes

How it works

This skill automates the process of staging, committing, and pushing git changes, and can optionally update package versions and create git tags.

Inputs & outputs

You give it
A commit message or a version bump type (patch, minor, major)
You get back
Committed and pushed changes, optionally with bumped versions and git tags

When to use ship

  • Ship current changes
  • Bump version
  • Commit and push

About this skill

Ship

Stage, commit, and push changes with proper git notes. Optionally bump versions across all packages.

Quick Reference

# Check what will be shipped
./.claude/skills/ship/scripts/check-status.sh

# Bump versions across all packages
./.claude/skills/ship/scripts/bump-version.sh [patch|minor|major]

Usage

Basic Ship (commit + push)

/ship "feat: add new feature"
/ship "fix: resolve authentication issue"

Version Bump Ship

/ship --version patch "chore: bump version for release"
/ship --version minor "feat: new feature release"
/ship --version major "feat!: breaking change release"

Ship Workflow

When user invokes /ship:

Step 1: Check Git Status

Run the status check script:

./.claude/skills/ship/scripts/check-status.sh

Show the user:

  • Untracked files
  • Modified files
  • Current branch

Step 2: Stage All Changes

git add -A

Step 3: Confirm with User

Present summary of staged changes and ask for confirmation:

  • Number of files to be committed
  • List key files (max 10)
  • Proposed commit message

Step 4: Commit with Git Note

Use conventional commit format and attach a git note:

# Commit
git commit -m "<message>

Co-Authored-By: Claude <[email protected]>"

# Get commit hash
COMMIT_SHA=$(git log -1 --format="%H")

# Attach git note with summary
git notes add -m "## Ship Summary

**Message:** <message>
**Files Changed:** <count>
**Timestamp:** $(date -u +"%Y-%m-%dT%H:%M:%SZ")

### Key Changes
- File 1
- File 2
..." $COMMIT_SHA

Step 5: Push

git push origin $(git branch --show-current)

Version Bump Workflow

When user invokes /ship --version [type]:

Step 1: Run Version Bump Script

./.claude/skills/ship/scripts/bump-version.sh [patch|minor|major]

This updates version in:

  • Root package.json
  • packages/client/package.json
  • packages/cloud/package.json
  • packages/desktop/package.json
  • packages/server/package.json
  • packages/shared/package.json
  • packages/terminal-service-rs/package.json
  • packages/conductor-cli-wrapper/package.json

Step 2: Commit Version Bump

VERSION=$(node -p "require('./package.json').version")
git add -A
git commit -m "chore: bump version to $VERSION

Co-Authored-By: Claude <[email protected]>"

Step 3: Create Git Tag

git tag -a "v$VERSION" -m "Release v$VERSION"

Step 4: Attach Git Note

git notes add -m "## Version Release

**Version:** $VERSION
**Type:** [patch|minor|major]
**Timestamp:** $(date -u +"%Y-%m-%dT%H:%M:%SZ")
**Packages Updated:** 8

### Affected Packages
- conductor-studio (root)
- @forge/client
- @forge/cloud
- @forge/desktop
- @forge/server
- @forge/shared
- @forge/terminal-service-rs
- @forge/cli-wrapper"

Step 5: Push with Tags

git push origin $(git branch --show-current) --follow-tags

Packages NOT Updated on Version Bump

These packages have independent versions:

  • packages/chatops (0.0.1) - Standalone ChatOps bot

Semantic Versioning Guide

TypeWhen to UseExample
patchBug fixes, minor improvements0.3.32 → 0.3.33
minorNew features, backward compatible0.3.32 → 0.4.0
majorBreaking changes, major rewrites0.3.32 → 1.0.0

Critical Rules

  1. Never use --no-verify - Pre-push hooks exist to catch issues
  2. Always include Co-Authored-By - For attribution
  3. Always attach git notes - For audit trail
  4. Wait for user confirmation - Before committing
  5. Check status first - Ensure clean working directory is understood

When not to use it

  • When pre-push hooks should be bypassed
  • When an audit trail is not desired
  • When user confirmation is not required before committing

Limitations

  • Requires user confirmation before committing
  • Does not update packages with independent versions like `packages/chatops`
  • Version bumping is limited to patch, minor, or major types

How it compares

This workflow integrates version bumping and git note attachment into the commit and push process, providing a more structured release mechanism than manual git commands.

Compared to similar skills

ship side by side with the closest alternatives in the catalog.

SkillInstallsUpdatedSafetyDifficulty
ship (this skill)04moReviewIntermediate
agent-project-board-sync06moReviewIntermediate
release-version06moReviewIntermediate
release04moReviewIntermediate

Try saying

Example prompts that trigger this skill in your AI assistant.

Search skills

Search the agent skills registry