mcpField
S
ship-it

ship-it

github.com/rubenflamshepherdDevelopment0146 installsUpdated 4w ago
Repository

About ship-it

ship-it coordinates two companion skills to create a pull request, monitor CI, merge that exact PR, and safely clean up its local branch. It is intended for workflows that need the existing skills’ checks and stop conditions preserved.

Key features

  1. 01Runs checkout, commit, push, and PR workflow
  2. 02Monitors CI before merging
  3. 03Verifies the exact PR merge
  4. 04Cleans up the recorded local branch safely

Use cases

  1. 01Create and merge a change through a PR
  2. 02Track CI checks before merging
  3. 03Remove a local branch after verified merge

Install

Copy the command and run it in a terminal.

$npx skills add https://github.com/rubenflamshepherd/ruben-agent-skills --skill ship-it

After installing, type/ship-itin Claude Code to confirm it loaded.

Bundled filesagents/openai.yaml

Details

From the project README

Ship It

Coordinate the two sibling skills without replacing or weakening either skill's instructions.

Workflow

  1. Resolve these paths relative to this skill's directory:

    • ../checkout-commit-push-pr/SKILL.md
    • ../soft-delete-git/SKILL.md

    Stop and report the missing dependency if either file is unavailable.

  2. Record the current branch name so the same branch can be cleaned up later.

  3. Read ../checkout-commit-push-pr/SKILL.md completely and follow it through PR creation and CI monitoring. Preserve all of its safety checks and stop conditions. Capture the resulting PR URL or number.

  4. Treat the ship-it invocation as authorization to merge only the PR created by this run. After every required check passes, merge it with gh pr merge:

    • Follow a merge strategy required by repository guidance when one is documented.
    • Otherwise prefer --merge, because retaining branch ancestry allows the subsequent safe delete to use git branch -d.
    • If merge commits are explicitly disabled, fall back to an allowed strategy, preferring --squash and then --rebase. Do not change strategy merely because the PR has conflicts, lacks approval, or is blocked by policy.
    • Do not pass --delete-branch; leave local branch cleanup to soft-delete-git.
    • Never use --admin or bypass branch protection. Surface any review, conflict, permission, or policy blocker.
  5. Verify the merge rather than trusting the merge command's exit status:

    gh pr view <PR-NUMBER> --json state,mergedAt,url
    

    If the repository uses a merge queue, monitor until the PR reports MERGED. Do not begin branch cleanup while it remains open.

  6. Once the exact PR reports MERGED, read ../soft-delete-git/SKILL.md completely and follow it for the branch recorded in step 2. Preserve its dirty-worktree and merged-PR verification safeguards. For a verified squash or rebase merge, treat the original ship-it request as advance confirmation for the child skill's git branch -D exception, but only for that recorded branch and exact merged PR. Never force-delete an unmerged or different branch.

  7. Finish by reporting the PR URL, CI result, merge result, and whether the local branch was deleted.

If either child skill stops or fails, stop the sequence at that point and surface its exact blocker. Do not skip ahead or duplicate the child skill's procedure from memory.

Comments

Markdown supported