From openhuman-shipping
End-to-end PR shipping workflow for tinyhumansai/openhuman: commit local changes, push to the user's fork, open or reuse a PR against main, then babysit CI and CodeRabbit feedback until the PR is green and clean. Use when the user asks to ship, open a PR, monitor CI, address review comments, or 'babysit' a branch.
How this skill is triggered — by the user, by Claude, or both
Slash command
/openhuman-shipping:ship-and-babysitThe summary Claude sees in its skill listing — used to decide when to auto-load this skill
Use this skill for `tinyhumansai/openhuman` when the user wants a branch shipped end to end:
Use this skill for tinyhumansai/openhuman when the user wants a branch shipped end to end:
tinyhumansai/openhuman:mainAGENTS.md, including validation and PR checklist requirements.origin is the user's writable fork and upstream points to tinyhumansai/openhuman.FORK_OWNER=$(git remote get-url origin | sed -E 's#.*[:/]([^/]+)/[^/]+(\.git)?$#\1#')origin resolves to tinyhumansai, stop and ask the user to add a fork remote. Never push branches to upstream.main, create a new descriptive branch before committing so the changes leave main immediately.main.upstream.git status --shortgit diff --statgit diff --cached --statgit log --oneline --decorate -n 12git rev-parse --abbrev-ref HEADfeat/, fix/, refactor/, chore/, docs/, or test/.
main, create a new descriptive branch immediately and continue there.main branch, keep using it unless it is still local and trivially safe to rename without disrupting a pushed branch.main stays free of agent-authored commits.Before shipping feature work, verify that the PR includes end-to-end coverage for the new behavior.
tests/*_e2e.rs, usually targeted through pnpm test:rust:e2e -- --suite <suite> or bash scripts/test-rust-e2e.sh --suite <suite>.tests/json_rpc_e2e.rs unless a more focused *_e2e.rs suite owns the domain.app/test/e2e/specs/*.spec.ts; build/run targeted web E2E with pnpm --filter openhuman-app test:e2e:web:build and bash app/scripts/e2e-web-session.sh test/e2e/specs/<spec>.spec.ts.scripts/mock-api-server.mjs, scripts/mock-api/*, app/test/e2e/mock-server.ts) and admin behavior endpoints; do not hit real backend services or third-party APIs.origin.-u.--no-verify and record that explicitly in the PR body.git remote -v and confirm upstream points at tinyhumansai/openhuman.gh pr list --repo tinyhumansai/openhuman --head <fork-owner>:<branch> --state open --json number,urlgit log main..HEAD and git diff main...HEAD.github/PULL_REQUEST_TEMPLATE.md exactly- [x] N/A: <reason> so pnpm pr:checklist accepts ittinyhumansai/openhuman:main with --head <fork-owner>:<branch>Run an explicit poll loop until the PR is green and clean. Do not treat this as a one-shot status check, and do not sit idle waiting for all checks to complete before acting.
sleep 270.Each tick:
gh pr checks <pr-number> --repo tinyhumansai/openhuman --json name,state,link,descriptionPENDING as still in progress. Do not claim success while checks are still running.FAILURE or CANCELLED:
link is a GitHub Actions run URL, extract the run id and inspect failing logs with gh run view <id> --log-failed --repo tinyhumansai/openhumanPENDING, do not wait for the whole matrix to finish before taking action:
gh api repos/tinyhumansai/openhuman/pulls/<pr-number>/comments --paginategh api repos/tinyhumansai/openhuman/issues/<pr-number>/comments --paginatereviewThreads with pagination until hasNextPage is falsecoderabbitai and coderabbitai[bot], but also check for human actionable review comments.SUCCESS, no unresolved actionable review threads remain, no new actionable CodeRabbit issue comments remain, and the latest fixes are committed and pushed to the PR branch.If the loop reaches the hard cap, stop and report the PR URL, current CI snapshot, and any unresolved review threads or comments.
pnpm typecheckpnpm lintpnpm format:checkpnpm testcargo check --manifest-path Cargo.tomlcargo check --manifest-path app/src-tauri/Cargo.tomlpnpm test:rustpnpm test:rust:e2e -- --suite <suite>pnpm --filter openhuman-app test:e2e:web:buildbash app/scripts/e2e-web-session.sh test/e2e/specs/<spec>.spec.tsPrefer targeted test commands when the touched area is narrow, but do not claim validation passed if a command was not run.
main, branch first, then ship. Do not make the user clean up agent commits from main.gh pr checks --watch once is not sufficient babysitting. The skill should actively re-poll CI and review surfaces until the exit condition is met.Use $ship-and-babysit for this branchShip this and babysit the PROpen the PR and stay on CI until it is greenGuides creation, editing, and verification of skills for AI coding agents using test-driven development with subagent scenarios. Use when authoring or debugging skills.
npx claudepluginhub sueytame/claude-skills-collection --plugin openhuman-shipping