> semantic-release
Automate versioning and package publishing with semantic-release. Use when a user asks to automate npm publishing, generate changelogs, handle semantic versioning in CI, or automate GitHub releases.
curl "https://skillshub.wtf/TerminalSkills/skills/semantic-release?format=md"semantic-release
Overview
semantic-release automates the release workflow: determine version bump from commit messages, generate changelog, create Git tag, publish to npm, create GitHub release.
Instructions
Step 1: Setup
npm install -D semantic-release @semantic-release/changelog @semantic-release/git
Step 2: Configure
// .releaserc.json — Release configuration
{
"branches": ["main"],
"plugins": [
"@semantic-release/commit-analyzer",
"@semantic-release/release-notes-generator",
["@semantic-release/changelog", { "changelogFile": "CHANGELOG.md" }],
"@semantic-release/npm",
["@semantic-release/git", { "assets": ["CHANGELOG.md", "package.json"] }],
"@semantic-release/github"
]
}
Step 3: CI Integration
Add to your CI pipeline (GitHub Actions, GitLab CI, etc.) to run on every push to main. Requires GITHUB_TOKEN and NPM_TOKEN secrets.
Guidelines
- Requires conventional commits — feat = minor, fix = patch, BREAKING CHANGE = major.
- Use with commitlint + husky to enforce commit format.
- Works with monorepos using semantic-release-monorepo plugin.
> related_skills --same-repo
> zustand
You are an expert in Zustand, the small, fast, and scalable state management library for React. You help developers manage global state without boilerplate using Zustand's hook-based stores, selectors for performance, middleware (persist, devtools, immer), computed values, and async actions — replacing Redux complexity with a simple, un-opinionated API in under 1KB.
> zod
You are an expert in Zod, the TypeScript-first schema declaration and validation library. You help developers define schemas that validate data at runtime AND infer TypeScript types at compile time — eliminating the need to write types and validators separately. Used for API input validation, form validation, environment variables, config files, and any data boundary.
> xero-accounting
Integrate with the Xero accounting API to sync invoices, expenses, bank transactions, and contacts — and generate financial reports like P&L and balance sheet. Use when: connecting apps to Xero, automating bookkeeping workflows, syncing accounting data, or pulling financial reports programmatically.
> windsurf-rules
Configure Windsurf AI coding assistant with .windsurfrules and workspace rules. Use when: customizing Windsurf for a project, setting AI coding standards, creating team-shared Windsurf configurations, or tuning Cascade AI behavior.