agentleFS
griffinhillygriffinhilly/claude-code-synthesis/skills/ship/SKILL.md

ship

Skill67 starsChanged 4 months agoMITView on GitHub

Pre-commit readiness check. Verifies tests, COMP freshness, uncommitted changes, then drafts commit message and stages specific files.

194 other projects use a version of this.

Adopted by

Most recently taken up by

Used with

Projects with it also use ios-sync, open-gstack-browser and 10 more.

Other files people use alongside this one.

Files found in the same public projects as a version of this one, more often than they turn up anywhere else. Each project counts once, large collections count for less, and this file's own repository is left out.
  • Saqlain-811Skill

    ios-sync

    Regenerate the iOS debug bridge against the latest upstream gstack templates. (gstack)

    Also in 6 projects that use this

  • seek888Skill

    open-gstack-browser

    Launch GStack Browser — AI-controlled Chromium with the sidebar extension baked in. Opens a visible browser window where you can watch every action in real time. The sidebar shows a live activity feed and chat. Anti-bot stealth built in. Use when asked to "open gstack browser", "launch browser", "connect chrome", "open chrome", "real browser", "launch chrome", "side panel", or "control my browser". Voice triggers (speech-to-text aliases): "show me the browser".

    Also in 10 projects that use this

  • ayudaySkill

    setup-deploy

    Configure deployment settings for /land-and-deploy. Detects your deploy platform (Fly.io, Render, Vercel, Netlify, Heroku, GitHub Actions, custom), production URL, health check endpoints, and deploy status commands. Writes the configuration to CLAUDE.md so all future deploys are automatic. Use when: "setup deploy", "configure deployment", "set up land-and-deploy", "how do I deploy with gstack", "add deploy config".

    Also in 19 projects that use this

  • ShreyRaviSkill

    landing-report

    Read-only queue dashboard for workspace-aware ship. Shows which VERSION slots are currently claimed by open PRs, which sibling Conductor workspaces have WIP work likely to ship soon, and what slot /ship would pick next. No mutations — just a snapshot. Use when asked to "landing report", "what's in the queue", "show me open PRs", or "which version do I claim next". (gstack)

    Also in 9 projects that use this

  • zebbernSkill

    debug-fix

    Find and fix a bug or issue — from any source (GitHub issue, error message, user report, or observed behavior)

    Also in 4 projects that use this

  • ramybarsoumSkill

    document-release

    Post-ship documentation update. Reads all project docs, cross-references the diff, updates README/ARCHITECTURE/CONTRIBUTING/CLAUDE.md to match what shipped, polishes CHANGELOG voice, cleans up TODOS, and optionally bumps VERSION. Use when asked to "update the docs", "sync documentation", or "post-ship docs". Proactively suggest after a PR is merged or code is shipped.

    Also in 23 projects that use this

The file

Show its rules and text

We split this skill into the rules it gives an agent

21 rules. 0 are common, 15 are distinctive, and 6 are very specific to this project.

  • 0

    Common

    Most of the 180 edited versions we read keep these.

  • 15

    Distinctive

    This author's own choices. Worth a look.

  • 6

    Very specific

    Tied to their project's names, files or tools. Probably skip.

  • Common
  • Distinctive
  • Very specific
  • could be automatic: a setting could enforce it
  1. Distinctive:

    Verify everything is ready to commit, then stage and commit with user approval.

    line 11
  2. Very specific:

    Commit message hint: $ARGUMENTS

    line 15
  3. Distinctive:

    If provided, use this to guide the commit message.

    line 17
  4. Distinctive:

    Run these in parallel:

    line 23
  5. Very specific:

    Look for a test command in the project's CLAUDE.md (e.g., npm test, pytest, cargo test)

    line 35
  6. Distinctive:

    If found, run it. Record PASS/FAIL.

    line 36
  7. Distinctive:

    If no test command is defined, record NONE.

    line 37
  8. Distinctive:

    Check if it exists

    line 41
  9. Very specific:

    Check git log -1 --format="%ai" -- <file> for last commit date

    line 42
  10. Very specific:

    If the changes involve data pipeline scripts or outputs, suggest running /verify first

    line 53
  11. Very specific:

    Update stale COMP files (run through the /finalize logic)

    line 70
  12. Distinctive:

    Do NOT proceed to commit. Wait for user direction.

    line 72
  13. Very specific:

    Use the $ARGUMENTS hint if provided

    line 78
  14. Distinctive:

    NEVER use git add -A or git add .

    line 84
  15. Distinctive:

    Only stage files related to the current work

    line 85
  16. Distinctive:

    If a CHANGELOG.md or CHANGELOG exists in the project, check if it was updated

    line 89
  17. Distinctive:

    If not, suggest an entry in user-facing voice ("You can now..." not "Refactored X")

    line 90
  18. Distinctive:

    Wait for explicit user approval before running git commit.

    line 103
  19. Distinctive:

    Commit using a HEREDOC for the message

    line 107
  20. Distinctive:

    Run git status to confirm clean state

    line 108
  21. Distinctive:

    Do NOT push. If user wants to push, they'll say so.

    line 109

“Common” is measured: kept by at least 6 in 10 of the 180 edited versions of this file we could read. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.

Keep what fits and drop the rest. Your version, ready for your agents.
Files
SKILL.md

/ship -- Pre-Commit Readiness Check

Verify everything is ready to commit, then stage and commit with user approval.

Input

Commit message hint: $ARGUMENTS

If provided, use this to guide the commit message. If not, infer from the changes.

Process

Step 1: Gather State

Run these in parallel:

  1. git status -- see all tracked/untracked changes
  2. git diff -- unstaged changes
  3. git diff --cached -- already-staged changes
  4. git log --oneline -5 -- recent commit style reference

Step 2: Assess Readiness

Check each dimension:

Tests:

  • Look for a test command in the project's CLAUDE.md (e.g., npm test, pytest, cargo test)
  • If found, run it. Record PASS/FAIL.
  • If no test command is defined, record NONE.

COMP freshness:

  • For each COMP file (CLAUDE.md, ORIENT.md, MEMORY.md, PLAN.md) in the project root:
    • Check if it exists
    • Check git log -1 --format="%ai" -- <file> for last commit date
    • Compare against the current session's work -- if meaningful work was done but the relevant COMP file wasn't updated, flag it as STALE
    • CLAUDE.md and ORIENT.md rarely need updating -- only flag if architecture or project shape changed
    • MEMORY.md and PLAN.md should reflect the current session's decisions and progress

Uncommitted work:

  • List all modified, added, and untracked files
  • Categorize: which are related to the current work vs. unrelated leftovers
  • Flag any files that look like they should be included but aren't staged

Data pipeline check:

  • If the changes involve data pipeline scripts or outputs, suggest running /verify first
  • This is advisory, not blocking

Step 3: Present Readiness Dashboard

SHIP READINESS -- [project name]
Tests:        [PASS / FAIL / NONE]
COMP files:   [UP TO DATE / STALE -- list which]
Uncommitted:  [list of unstaged changes relevant to this work]
Verdict:      [READY / NOT READY -- reasons]

Step 4a: If NOT READY

  • List what needs to happen first, in priority order
  • Offer to fix what can be fixed automatically:
    • Update stale COMP files (run through the /finalize logic)
    • Stage forgotten files
  • Do NOT proceed to commit. Wait for user direction.

Step 4b: If READY

  1. Draft commit message:
    • 1-2 sentences focusing on "why" not "what"
    • Use the $ARGUMENTS hint if provided
    • Match the style of recent commits (from git log)
    • End with the Co-Authored-By trailer
  2. Stage specific files:
    • List exactly which files will be staged
    • NEVER use git add -A or git add .
    • Only stage files related to the current work
    • Present the list for user review
  3. CHANGELOG check:
    • If a CHANGELOG.md or CHANGELOG exists in the project, check if it was updated
    • If not, suggest an entry in user-facing voice ("You can now..." not "Refactored X")
  4. Present for approval:
    STAGED FILES:
    - path/to/file1.py
    - path/to/file2.md
    
    COMMIT MESSAGE:
    <the drafted message>
    
    Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
    Wait for explicit user approval before running git commit.
  5. After user approves:
    • Stage the listed files with individual git add commands
    • Commit using a HEREDOC for the message
    • Run git status to confirm clean state
    • Do NOT push. If user wants to push, they'll say so.

Rules

  • Never push to remote without explicit user approval
  • Never git add -A or git add . -- the PreToolUse hook blocks this anyway
  • Stage only related files -- unrelated changes get left for a separate commit
  • Commit message via HEREDOC -- ensures correct formatting of multi-line messages
  • User approval is mandatory -- never auto-commit, even if everything looks ready
  • Match project commit style -- check recent git log for conventions (conventional commits, imperative mood, etc.)

Download now (ZIP)

Does it work?

Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.

No reviews yet

People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.

  • It worked
  • Partly
  • It didn't
What did you use it for? e.g. Reviewing pull requests in a Rails app

Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.

Your trail

Files you open will collect here, so you can find them again.

Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.

Now do this for your own.

Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.