skills/clawpatch-release/SKILL.md
clawpatch release: version/changelog, CI, npm publish, GitHub release, verify.
npx skillsauth add steipete/agent-scripts clawpatch-releaseInstall 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.
Release ~/Projects/clawpatch as the public npm package clawpatch.
Use $npm and $one-password rules for registry auth. Keep all op and npm secret work inside one persistent tmux session and temp npmrc. Never print tokens, passwords, or OTPs.
Start clean on main.
cd ~/Projects/clawpatchgit status --short --branchgit pull --ff-onlygit tag --list "vX.Y.Z" and gh release view vX.Y.Z --repo openclaw/clawpatch.npm view clawpatch version dist-tags time --json.Prep release files.
package.json version to target.Unreleased to X.Y.Z - YYYY-MM-DD.pnpm install --lockfile-only; commit lockfile only if it actually changes.Prove locally before publishing.
pnpm typecheck && pnpm lint && pnpm format:check && pnpm test && pnpm build && pnpm pack:smoke.Commit and push release prep.
committer "chore(release): X.Y.Z" CHANGELOG.md package.json [pnpm-lock.yaml].git push origin main.gh run list --repo openclaw/clawpatch --branch main --commit <sha> --json databaseId,workflowName,status,conclusion,url,headShagh run view <run_id> --repo openclaw/clawpatch --json status,conclusion,url,jobsPublish npm.
npm whoami; if unauthenticated, use npm web login in the tmux session:
NPM_CONFIG_USERCONFIG="$tmp_npmrc" npm login --auth-type=web --registry=https://registry.npmjs.org/npmjs 1Password item inside the same tmux session.NPM_CONFIG_USERCONFIG="$tmp_npmrc" npm publish --access public --otp "$NPM_OTP".Verify npm before GitHub release.
npm view [email protected] version dist-tags dist.tarball dist.integrity time --jsonX.Y.Z, latest points to X.Y.Z, tarball URL exists, integrity exists, publish time exists.Tag and create GitHub release.
git tag -a vX.Y.Z <release_sha> -m "vX.Y.Z"git push origin vX.Y.Zgh release create vX.Y.Z --repo openclaw/clawpatch --title "vX.Y.Z" --notes-file "$notes"Release verify.
npm view [email protected] version dist-tags.latest dist.tarball dist.integrity time.X.Y.Z --jsongh release view vX.Y.Z --repo openclaw/clawpatch --json tagName,url,body,isDraft,isPrereleasegit rev-list -n1 vX.Y.Z.Post-release closeout.
CHANGELOG.md: ## X.Y.(Z+1) - Unreleased.committer "docs(changelog): open X.Y.(Z+1)" CHANGELOG.md.main.git checkout main && git pull --ff-only && git status --short --branch.npmjs fields only.gh comments/releases should use temp --body-file / --notes-file, not inline quoted bodies.data-ai
OpenClaw session relay: prompts/posts via local/remote acpx over SSH.
tools
Wrangler CLI: Workers, KV, tail, deploy, account routing.
tools
Twilio SMS CLI: buy/list/keep numbers, send/check messages, credential routing.
development
Audit Codex/OpenClaw skills: loaded roots, duplicate skills, unused skills, prompt-budget costs, compact descriptions.