Thank you for contributing! This guide will help you understand our development workflow.
We use Conventional Commits for automatic versioning and changelog generation.
<type>(<scope>): <subject>
[optional body]
[optional footer]
| Type | Description | Version Bump |
|---|---|---|
feat |
New feature | MINOR (0.x.0) |
fix |
Bug fix | PATCH (0.0.x) |
docs |
Documentation only | PATCH |
style |
Code style (formatting) | No release |
refactor |
Code refactoring | PATCH |
perf |
Performance improvement | PATCH |
test |
Adding/updating tests | No release |
chore |
Build, dependencies | No release |
ci |
CI/CD changes | No release |
Add BREAKING CHANGE: in the footer or ! after the type:
feat!: remove deprecated API endpoint
BREAKING CHANGE: The /v1/rules endpoint has been removed. Use /v2/rules instead.# Feature → bumps MINOR
feat(cli): add interactive mode for init command
# Bug fix → bumps PATCH
fix(pull): resolve file path issues on Windows
# Breaking change → bumps MAJOR
feat!: rename cursor-kit commands to ck shorthand
BREAKING CHANGE: All commands now use `ck` prefix instead of `cursor-kit`Releases are fully automated:
- Push commits to
master/mainbranch - Release Please analyzes commits and creates a Release PR
- Merge the Release PR to trigger:
- Version bump in
package.json - Git tag creation
- GitHub Release with auto-generated changelog
- npm publish
- Version bump in
# Install dependencies
pnpm install
# Build
pnpm build
# Development mode
pnpm dev
# Type check
pnpm typecheck
# Lint
pnpm lint- Create a feature branch from
master - Follow the commit message convention
- Ensure all checks pass
- Request review