Agent skill

Ship

by 2SSK in 2SSK/dot-files

A skill your agent uses when the user wants to commit, push, and open a pull request for the current changes.

MITAuto-check: notesDevelopment

Install Ship

skills CLI
$ npx skills add 2SSK/dot-files --skill ship -a claude-code

Project install by default; add -g for ~/.claude/skills/.

GitHub CLI
$ gh skill install 2SSK/dot-files ship --agent claude-code

Project scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).

Manual copy
$ git clone --depth 1 https://github.com/2SSK/dot-files.git skills-src && mkdir -p .claude/skills && cp -r skills-src/.claude/skills/ship .claude/skills/ship && rm -rf skills-src

Use ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.

Claude Code skills documentation · loads skills from .claude/skills/

Facts

Skill name
ship
GitHub stars
247
Token cost
~808 tokens
SKILL.md length
342 words
Files
1
Skills in repo
7
Repo updated
First seen
Licence
MIT

At a glance

A skill your agent uses when the user wants to commit, push, and open a pull request for the current changes.

  • Works in 8 steps: Sanity checks → Fetch and rebase → Stage files → …
  • The user wants to commit
  • SKILL.md covers When to Use This Skill, Workflow and Rules
  • Calls git, gh and go

What it does

Ship is an agent skill from 2SSK/dot-files. Use when the user wants to commit, push, and open a pull request for the current changes. Stages relevant files, writes a descriptive commit message, pushes the branch, opens a PR against main, and posts an /oc review comment so opencode automatically reviews and approves if ready.

Its SKILL.md is about 810 tokens, which your agent loads only when the skill is triggered. It is a single SKILL.md file with no bundled scripts.

It sits in Development, covering Commit messages and Pull requests. The licence is MIT.

When your agent uses it

  • The user wants to commit
  • Open a pull request for the current changes

Example prompts

  • “/ship”

Workflow steps

8 steps, taken from the step headings in SKILL.md.

  1. Sanity checks
  2. Fetch and rebase
  3. Stage files
  4. Commit
  5. Push
  6. Open PR
  7. Trigger opencode review
  8. Report back

What it can do on your machine

Read from SKILL.md and the folder at commit 5cab3b1. It shows what the files ask for, not the result of running them.

  • Tool permissions

    Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.

    From allowed-tools in the SKILL.md frontmatter.

  • Runs code

    Shell commands in SKILL.md call:

    • git
    • gh
    • go
    • npm

    From the folder's file list and the shell code blocks in SKILL.md.

  • Network

    No URLs in SKILL.md. Its commands use git, gh and npm, which can reach the network depending on how they are called.

    From URLs in SKILL.md, links to its own repository left out.

  • Credentials

    Names no API keys, tokens, secrets or passwords.

    From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.

Context cost

Ship loads about 808 tokens when it runs. Until then it costs about 72 tokens; SKILL.md has 342 words of instructions outside code blocks.

Always · name and description, kept in context so the agent knows when to use it
~72
When it runs · the whole SKILL.md, loaded when a task matches
~808

Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.

Safety

Auto-check: notes

The automated check noted patterns worth knowing about, such as sudo or a known installer.

  • NoteMentions a .env fileSKILL.md:53
    le that looks like it contains secrets (`.env`, `credentials.*`, etc.)
  • NoteMentions a .env fileSKILL.md:129
    - **Never commit** `.env`, secrets, or credential files — warn the user if they're staged

Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.

SKILL.md

The full file from 2SSK/dot-files at commit 5cab3b1, republished under its MIT licence (© 2SSK). 342 words, ~808 tokens.

Download SKILL.mdSave it as .claude/skills/ship/SKILL.md (or your agent's skills folder).
name
ship
description
Use when the user wants to commit, push, and open a pull request for the current changes. Stages relevant files, writes a descriptive commit message, pushes the branch, opens a PR against main, and posts an /oc review comment so opencode automatically reviews and approves if ready.

Ship

Commits staged changes, pushes the branch, opens a PR, and triggers an automated opencode review.

When to Use This Skill

Invoke this skill when the user says things like:

  • "ship it"
  • "commit push pr"
  • "ship this"
  • "create a pr"
  • "push and open a pr"
  • "commit and ship"

Workflow

Follow these steps in order, stopping and reporting any errors immediately.

Step 1 — Sanity checks

Run these in parallel:

bash
git status
git diff
git log --oneline -5
git remote -v

Use the output to understand: what branch we're on, what's changed, what the recent commit style looks like, and what the remote is.

Step 2 — Fetch and rebase
bash
git fetch origin
git rebase origin/main

If there are conflicts, resolve them (keeping both sides where appropriate), then continue the rebase. Do NOT skip this step.

Step 3 — Stage files

Stage all changed/new files that are relevant to the work. Explicitly exclude:

  • .DS_Store
  • *.db, *.db-shm, *.db-wal
  • Any file that looks like it contains secrets (.env, credentials.*, etc.)
  • Prototype/demo directories unless they are part of the deliverable
bash
git add <relevant files>
git status   # verify staging looks right
Step 4 — Commit

Write a commit message that:

  • Uses the imperative mood (feat:, fix:, ci:, docs:, refactor:)
  • First line ≤ 72 characters summarising the why, not the what
  • Body bullet points for non-obvious details (optional but preferred for large changes)
  • Matches the style of recent commits in git log
bash
git commit -m "<message>"
Step 5 — Push

If the branch has no upstream yet:

bash
git push -u origin <branch>

Otherwise:

bash
git push
Step 6 — Open PR

Use the gh CLI to create a PR targeting main:

bash
gh pr create \
  --title "<concise title matching commit subject>" \
  --body "$(cat <<'EOF'
## Summary

<2-4 bullet points describing what changed and why>

## Notes

<any reviewer context, migration steps, known limitations — omit section if none>
EOF
)" \
  --base main

Capture the PR URL from the output.

Step 7 — Trigger opencode review

Post the review comment on the PR so the opencode GitHub Action picks it up:

bash
gh pr comment <PR number> --body "/oc please review this PR and approve if you find it ready to merge"
Step 8 — Report back

Tell the user:

  • The commit hash and message
  • The PR URL
  • That the opencode review has been triggered

Rules

  • Never force-push to main or master
  • Never commit .env, secrets, or credential files — warn the user if they're staged
  • Always rebase onto origin/main before pushing to minimise conflicts
  • If gh is not authenticated, tell the user to run gh auth login first
  • If the build/tests are known to exist (e.g. go build ./..., npm test), run them before committing and abort if they fail

© 2SSK, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file

Files

Just SKILL.md in .claude/skills/ship of 2SSK/dot-files.

Open the folder on GitHubat commit 5cab3b1

Compare with similar skills

Ship next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.

Ship compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
Ship this skill2SSK/dot-files247—~808Automated safety check: NotesMIT
PR Finalize Reviewmicrosoft/garnet12k—~3.1kAutomated safety check: PassMIT
Git Workflow and Versioningaddyosmani/agent-skills102k2 repos~3.5kAutomated safety check: NotesMIT
React Router Pull Request Creatorremix-run/react-router57k—~2.5kAutomated safety check: PassMIT
Verdaccio Pull Request Workflowverdaccio/verdaccio18k—~1.9kAutomated safety check: PassMIT
Emoji Commit ConventionsbaptisteArno/typebot.io11k—~424Automated safety check: PassCustom licence

Similar skills

  • PR Finalize Review

    microsoft/garnet

    Official

    Checks that a pull request's title and description match its implementation and reviews the code for Garnet best practices, reporting findings without posting them.

    12k GitHub stars~3.1k tokensUpdated today
    DevelopmentAuto-check passed
  • Git Workflow and Versioning

    addyosmani/agent-skills

    Sets git habits for every change: short-lived branches, atomic commits with descriptive messages, clean pull requests, plus versioning, tagging and changelogs for releases.

    102k GitHub starsUsed in 2 repos~3.5k tokens
    DevelopmentAuto-check: notes
  • React Router Pull Request Creator

    remix-run/react-router

    Packages finished React Router work into a draft pull request: branch, commit, push, a written PR body and the right GitHub labels.

    57k GitHub stars~2.5k tokensUpdated today
    DevelopmentAuto-check passed
  • Takes a change through a verdaccio pull request: branch, local checks, changeset, title and body, labels, CI and review rounds, and ports to other release lines.

    18k GitHub stars~1.9k tokensUpdated today
    DevelopmentAuto-check passed
  • Emoji Commit Conventions

    baptisteArno/typebot.io

    Sets the repository's convention for commit messages and pull request titles: one emoji prefix for the main intent, a concise title and clean follow-up commits.

    11k GitHub stars~424 tokensUpdated yesterday
    DevelopmentAuto-check passed
  • Commit And PR Messages

    superplanehq/superplane

    Write Git commit messages and pull request titles/descriptions using the Chris Beams / Tim Pope conventions (subject/body split, ~50-char subject, imperative mood, why-not-how body) plus ASD-STE100…

    7.7k GitHub stars~1.6k tokensUpdated today
    DevelopmentAuto-check passed

More from 2SSK/dot-files

  • Cpp Best Practices

    2SSK/dot-files

    C++ development best practices. An agent skill from 2SSK/dot-files.

    247 GitHub stars~489 tokensUpdated 25 days ago
    Auto-check passed
  • Docker and container best practices. An agent skill from 2SSK/dot-files.

    247 GitHub stars~438 tokensUpdated 25 days ago
    Auto-check passed
  • Go Best Practices

    2SSK/dot-files

    Go development best practices. An agent skill from 2SSK/dot-files.

    247 GitHub stars~467 tokensUpdated 25 days ago
    Auto-check passed
  • Observability

    2SSK/dot-files

    Observability best practices. An agent skill from 2SSK/dot-files.

    247 GitHub stars~676 tokensUpdated 25 days ago
    Auto-check passed
  • React Native development. An agent skill from 2SSK/dot-files.

    247 GitHub stars~570 tokensUpdated 25 days ago
    Auto-check passed
  • TDD

    2SSK/dot-files

    Test-Driven Development workflow. An agent skill from 2SSK/dot-files.

    247 GitHub stars~444 tokensUpdated 25 days ago
    Auto-check passed

Categories

Questions about Ship

What does Ship do?

A skill your agent uses when the user wants to commit, push, and open a pull request for the current changes. Ship is an agent skill from 2SSK/dot-files. Use when the user wants to commit, push, and open a pull request for the current changes.

When should I use Ship?

Ship fits situations like: the user wants to commit; open a pull request for the current changes.

How do I install Ship in Claude Code?

Run `npx skills add 2SSK/dot-files --skill ship -a claude-code`. Or copy the skill folder (.claude/skills/ship in 2SSK/dot-files) into .claude/skills/ship in your project. Claude Code loads it when a task matches its description.

How do I install Ship in Codex?

Run `npx skills add 2SSK/dot-files --skill ship -a codex`. Or copy the skill folder (.claude/skills/ship in 2SSK/dot-files) into .agents/skills/ship in your project. Codex loads it when a task matches its description.

Can I use Ship in Cursor, Gemini CLI or GitHub Copilot?

Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add 2SSK/dot-files --skill ship -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/ship, .gemini/skills/ship, .github/skills/ship and .opencode/skills/ship in your project.

What does Ship need to run?

Going by SKILL.md and its folder, Ship needs the command-line tools its instructions call (git, gh, go and npm).

Does Ship access the network?

SKILL.md contains no URLs. Its commands use git, gh and npm, which can reach the network depending on how they are called. This is read from the text; nothing was executed.

Is Ship safe to install?

Our automated static check of SKILL.md found notes only (mentions a .env file), nothing it rates as a warning. It is not a guarantee. Review the folder before installing.

What licence does Ship use?

Ship is published under the MIT licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.

How many tokens does Ship use?

About 808 tokens (SKILL.md is roughly 3.2k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.

What are the alternatives to Ship?

Skills that share tags, products or a category with Ship: PR Finalize Review (microsoft/garnet, 12k stars), Git Workflow and Versioning (addyosmani/agent-skills, 102k stars), React Router Pull Request Creator (remix-run/react-router, 57k stars) and Verdaccio Pull Request Workflow (verdaccio/verdaccio, 18k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains Ship?

2SSK (a GitHub user) maintains it in 2SSK/dot-files, which has 247 GitHub stars. The repository holds 7 skills in this directory. The repository was last updated on September 12, 2026.

Source: 2SSK/dot-files on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.