skills/autoship/SKILL.md
Automates npm release workflows using changesets. Creates a changeset (default patch), fixes lint/test/typecheck/format issues with an iterative compile-fix loop, commits and pushes, watches CI via the Monitor tool, finds and merges the Version Packages PR opened by changesets/action, and watches the release workflow to completion. Use when the user asks to ship, release, publish, autoship, cut a release for an npm package, fix compiler errors, fix type errors, make it compile, or fix the build.
npx skillsauth add mblode/agent-skills autoshipInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
Automate npm releases with a changeset -> fix -> push -> monitor -> merge -> publish workflow.
| File | Read when |
|------|-----------|
| references/changeset-and-commit.md | Creating a changeset, fixing quality issues, or committing and pushing |
| references/ci-polling.md | Watching CI with the Monitor tool, diagnosing failures, or handling retries |
| references/version-pr-and-publish.md | Searching for the Version Packages PR, merging it, or watching the release workflow |
| Intent | Steps | Notes | |--------|-------|-------| | Full autoship (ship / release / publish) | 1 through 5 | Default entry point. Runs end-to-end through publish without intermediate prompts | | Create changeset only | Step 1 | Stage a release without pushing | | Fix quality and push | Steps 1-2 | Changeset + fixes + commit, no CI watch | | Watch CI only | Steps 3-5 | When changes are already pushed | | Merge version PR only | Steps 4-5 | When CI already passed. Auto-merges once preconditions are met | | Fix compiler only | Step 2 | When build is broken, no changeset needed |
Invoking autoship is standing consent for the full release flow. Do not pause mid-flow for re-confirmation; gate risky steps with objective preconditions instead.
GREEN -- execute directly: gh run list, gh run view, gh pr list, gh pr checks, npm view, reading CI status, listing changesets, reading package.json scripts, git log, git status.YELLOW -- announce then execute: npm run changeset / writing changeset files, running lint/typecheck/test/format fixers, git add/commit/push, starting Monitor background watches, and gh pr merge of the Version Packages PR opened by changesets/action once its identity is confirmed and all checks are green.RED -- explicit confirmation required: force-pushing, history rewrites, and any destructive git operations.Copy this checklist to track progress:
Autoship progress:
- [ ] Step 1: Create changeset (default patch)
- [ ] Step 2: Fix lint, types, tests, format
- [ ] Step 3: Commit + push changeset (do NOT run `changeset version`)
- [ ] Step 4: Monitor CI and find/merge the Version Packages PR
- [ ] Step 5: Watch release workflow to completion
references/changeset-and-commit.md.ls .changeset/*.md 2>/dev/null | grep -v README.md.patch bump type. Only use minor or major when the user explicitly requests it.git log --oneline -10.references/changeset-and-commit.md (skip when running Fix compiler only intent).package.json scripts for build, typecheck, tsc, type-check; also check for Makefile, Cargo.toml, pyproject.toml, go.mod.package.json.lint --fix, format) to changed files where the tool supports it. After any fixer runs, check git status — broad format/fix scripts routinely reformat or corrupt files outside your change (MDX is a frequent casualty). Revert anything unrelated (git restore <path>) before continuing; never let a fixer's unrelated churn ride along in the release commit.git add <paths> over git add -A. Before committing, run git status --porcelain and strip stray generated artifacts (e.g. a root schema.gql left by a pre-commit hook) and any unrelated files a fixer touched. Commit and push.npx changeset version locally. CI's changesets/action runs it inside the Version Packages PR..changeset/*.md file so CI's "Changeset Status" check passes.references/ci-polling.md and references/version-pr-and-publish.md.Monitor watch that emits a line each time the latest workflow run on the current branch reaches a terminal state (completed). The agent reacts to each emitted line; no /loop re-prompt needed.completed.gh run rerun <id> --failed. For real failures: fix, commit, push, restart the monitor.changeset-release/main. If not found immediately, start a second Monitor watch that polls for the PR for up to 10 minutes (the changesets bot needs time).changeset-release/main (do not merge any other PR).state: completed and conclusion: success.mergeable: MERGEABLE, not CONFLICTING or UNKNOWN).gh pr merge <number> --squash --delete-branch. Do not pause for confirmation; invoking autoship is the consent.references/version-pr-and-publish.md and references/ci-polling.md.changesets/action now executes the publish: script (changeset publish).release.yml, npm-publish.yml, or publish.yml) in .github/workflows/.Monitor watch on that workflow's latest run on main, emitting a line when it reaches a terminal state.npm view <package> version and stop any remaining Monitor watches.npm publish directly instead of using the changesets workflow.major bump without explicit user instruction.sleep 30 or longer between gh calls.npx changeset version locally. CI's changesets/action runs it inside the Version Packages PR. Running it locally consumes the changeset file, the pushed commit has no pending changeset, CI's "Changeset Status" check fails, and no Version Packages PR is opened.CHANGELOG.md or package.json version as part of autoship — CI generates both.format/fix script reformat or corrupt files outside your change (e.g. MDX) — scope fixers to changed files and revert unrelated churn before committing.schema.gql) emitted by a pre-commit hook — sweep git status and stage only intended files.development
Reverse-engineers a UI animation from a screen recording — extracts frames, tracks motion per frame, fits easing and spring curves, annotates choreography, and emits CSS, Motion/Framer Motion, SwiftUI, React Native, or UIKit code. Use when the user shares or uploads a screen recording or video of a UI animation, or asks to "reverse engineer this animation", "recreate this animation", "match this easing", "extract the animation curve", "figure out the spring from this video", "copy this transition from a video", "how does this animation work", or "reproduce this motion".
development
Produces a read-only review report of the current local diff or branch — it lists findings and does NOT edit files. Use when asked to run `/pr-reviewer` before commit, before push, or before handing changes off for PR creation or update; also use for "review my changes", "code review", "code quality review", or when you want findings listed by severity so you can decide what to fix yourself. Also use for "thermo-nuclear review", "deep code quality audit", "structural review", "harsh maintainability review", or "code judo" — these load the structural quality rubric for an unusually strict maintainability pass. Also use for "deslop this", "clean up AI code", "remove slop", or "review for AI patterns" — these load the AI slop detection catalog. For automatic fix-in-place (no manual review step needed), use the private `simplify` skill instead.
development
Autonomous PR monitor — polls every 2 minutes for merge conflicts, CI/CD failures across GitHub Actions, Buildkite, Vercel, and Fly.io, review comments, and merge readiness. Auto-detects PR from current branch, fixes what it can, notifies on state changes. No setup questions. Also runs as one-shot for specific concerns. Use when asked to babysit a PR, watch a PR, monitor CI, keep a PR green, handle merge conflicts, poll PR status, run `/pr-babysitter`, fix CI, diagnose CI failure, why is CI red, CI is broken, loop on CI, fix CI checks, resolve merge conflicts, or fix conflicts.
development
Feature-level UX audit for React/Next.js code. Catches what Lighthouse, axe, ESLint, and Storybook miss — state coverage gaps (missing loading/empty/error), form data loss on validation, broken focus management, optimistic UI without rollback, skeleton-induced layout shift, vague microcopy, and 25+ other modern frontend UX bugs. Diff-aware (audits changed files only) and produces a 3-tier ship-readiness verdict (release-blocker / fix-this-sprint / backlog) grouped by surface, with concrete fixes using modern React 19 APIs (useActionState, useFormStatus, useOptimistic, useTransition, Suspense). Use before merging a frontend PR, before shipping a feature, or when asked "is this checkout/onboarding/dashboard ready?", "review this PR for UX bugs", "audit this component", "what would break in production?", "is this ready to ship?"