ship

A guided process for taking a feature branch through committing, pushing, updating from the main branch, merging, and cleaning up.

In plain words
What is it for?
Use it when a feature or bug-fix branch is ready to merge into main.
Why use it?
It keeps the branch-merge steps in order and stops when a step fails or conflicts need attention.

Skill for Claude CodeCodex

Install

Getting it into your agent

One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.

agentmods
npx agentmods add skills/mblua/agentscommander/ship
Any agent
npx skills add mblua/AgentsCommander --skill ship
Clone the repo
git clone --depth 1 https://github.com/mblua/AgentsCommander

Made for: Claude Code, Codex.

Per session 31 Skills are progressive disclosure: only the name and description are preloaded; the body loads when the skill is used.
When invoked 671 The whole file, excluding the scripts and references it only reads on demand.
Security scan A 0 findings. Scan, not verified.
Origin original No closer match found in the catalogue.
Token cost

What it costs to keep this loaded

Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.

ModelPer sessionOnce invoked
Fable 5 $0.00031 $0.00671
Opus 5 $0.00015 $0.00336
Sonnet 5 $0.00006 $0.00134
Haiku 4.5 $0.00003 $0.00067

Measured yesterday against content hash 56418d28931d, method: parsed. Prices are Anthropic first-party input rates as of 2026-08-30, from the pricing page.

Security

Grade A, and why

ship scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured yesterday.

A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.

Nothing flagged

None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.

.claude/skills/ship/SKILL.md · 62 lines

How it starts

The opening of the file, as written. The whole thing — 62 lines — stays where its author put it; the contents beside it link to each section on GitHub.

Ship Branch to Main

Ship the current branch through the full merge lifecycle. Execute each step in order. If any step fails, STOP and report the issue — do not continue.

Pre-flight

  1. Run rtk git status and rtk git branch --show-current to identify the current branch
  2. If on main, ABORT with: "You are already on main. Switch to a feature branch first."
  3. Show the branch name and ask the user to confirm before proceeding

Step 1 — Commit & Push

  1. Run rtk git status to check for uncommitted changes
  2. If there are changes:
    • Run rtk git diff and rtk git log --oneline -3 to understand context and commit style
    • Stage relevant files (prefer specific files over git add .)
    • Create a commit following the repo's commit message conventions
  3. Push the branch to origin: rtk git push origin <branch>
    • If the remote branch doesn't exist yet, use rtk git push -u origin <branch>

Step 2 — Update from origin/main

  1. Fetch latest: rtk git fetch origin
  2. Check if origin/main has new commits: rtk git log HEAD..origin/main --oneline
  3. If there are new commits, merge: rtk git merge origin/main
  4. If there are merge conflicts:
    • Report the conflicting files
    • STOP and ask the user to resolve them
    • Do NOT continue until the user says conflicts are resolved
  5. If merge brought new commits, push the updated branch: rtk git push origin <branch>

Step 3 — Merge to main

  1. Switch to main: rtk git checkout main
  2. Update local main: rtk git merge origin/main
  3. Merge the branch with: rtk git merge --no-ff <branch>
    • The --no-ff preserves the branch history as a merge commit
  4. Push main to origin: rtk git push origin main

Step 4 — Verify & Cleanup

  1. Verify the merge landed on origin: rtk git log origin/main --oneline -3
    • Confirm the merge commit is visible
    • If NOT visible, STOP and report the issue — do not delete anything
  2. Only after confirming the merge is on origin/main:
    • Delete local branch: rtk git branch -d <branch>
    • Delete remote branch: rtk git push origin --delete <branch>
  3. Final status: rtk git branch -a to confirm cleanup

Read the full file on GitHub · 62 lines

Changes

What this file has done since we first saw it

Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.

  1. yesterday First seen · 62 lines · 31 tokens per session scan A 56418d28931d

Subscribe to this mod's changes

ship is a skill published in the GitHub repository mblua/AgentsCommander (10 stars, last pushed yesterday), licensed MIT. It adds 31 tokens to every session and 671 once invoked, about $0.0002 per session on Opus 5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-31.

Related

Other skills, from other repositories

qa-cli-mcp-api

Select and run explicitly requested, risk-based QA for Anarlog's CLI, webhooks, stdio MCP, hosted Cloud API, and remote MCP. Test only affected lanes unless comprehensive coverage is requested.

fastrepl/anarlog · 47 tokens

product-update-newsletter

Draft, update, or audit a crisp, changelog-grounded Anarlog product-update newsletter in Loops (app.loops.so) for a desktop release. Use after the changelog is merged, when asked to draft, revise, or pre-send check the release announcement email.

fastrepl/anarlog · 62 tokens

sqlite-schema-design

Design or review schemas for crates/cloudsync using SQLite Sync constraints, not generic SQLite advice. Use when adding synced tables, changing synced columns, or planning CloudSync-safe migrations.

fastrepl/anarlog · 42 tokens

release-new-version

Release a new desktop stable version for Anarlog. Use when asked to cut, publish, or prepare a new stable desktop release after checking and merging the changelog.

fastrepl/anarlog · 38 tokens

fix-ready-prs

Inspect every open non-draft PR for CI failures and unresolved Cursor Bugbot findings, then fix them on the existing PR branches. Use when asked to check active PRs, triage ready PRs, fix CI, or address Bugbot comments.

fastrepl/anarlog · 55 tokens

reactive-sqlite-ui

Build SQLite-backed reactive UI in apps/desktop using stable patterns for reads, selection, forms, writes, and loading states. Use when implementing or reviewing screens built on useDrizzleLiveQuery and SQLite mutations.

fastrepl/anarlog · 53 tokens