.cursor/skills/xfi-release-workflow/SKILL.md
Guide for managing X-Fidelity releases using the unified release system. Use when releasing, versioning, troubleshooting release issues, or writing commit messages.
npx skillsauth add zotoio/x-fidelity xfi-release-workflowInstall 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.
This skill guides you through the unified release process for X-Fidelity.
X-Fidelity uses a unified release system that synchronizes versions between:
x-fidelity) - Published to npmx-fidelity-vscode) - Published to VS Marketplace and Open VSXBoth packages always share the same version number.
Releases are triggered automatically by conventional commits. Use yarn commit for guided commit creation.
| Type | Version Bump | Example |
|------|--------------|---------|
| feat: | Minor (0.X.0) | feat: add new rule for React hooks |
| fix: | Patch (0.0.X) | fix: resolve AST parsing for arrow functions |
| perf: | Patch | perf: optimize file scanning |
| revert: | Patch | revert: undo breaking change |
| bump: | Patch | bump: update dependencies |
| BREAKING CHANGE: | Major (X.0.0) | Include in commit body |
These do NOT trigger releases:
| Type | Use For |
|------|---------|
| docs: | Documentation changes |
| style: | Code formatting, whitespace |
| chore: | Maintenance, tooling |
| refactor: | Code restructuring without behavior change |
| test: | Adding or updating tests |
| build: | Build system changes |
| ci: | CI/CD changes |
type(scope): subject
body (optional)
footer (optional)
Examples:
# Feature (minor release)
feat(plugins): add new complexity threshold operator
# Bug fix (patch release)
fix(vscode): resolve diagnostic not clearing on fix
# Breaking change (major release)
feat(core): redesign plugin initialization API
BREAKING CHANGE: Plugin initialize() now receives PluginContext instead of logger
Release Workflow:
- [ ] Ensure all tests pass: yarn test
- [ ] Verify build succeeds: yarn build
- [ ] Create conventional commit
- [ ] Push to master branch
- [ ] Monitor GitHub Actions
- [ ] Verify published packages
Test what would be released without actually publishing:
yarn release:dry-run
This shows:
# Requires environment variables
GH_TOKEN=xxx VSCE_PAT=xxx OVSX_PAT=xxx yarn release
When commits are pushed to master:
For local releases or CI configuration:
| Variable | Purpose | Where to Get |
|----------|---------|--------------|
| GH_TOKEN | GitHub releases and git operations | GitHub Settings > Developer settings > PAT |
| VSCE_PAT | VS Code Marketplace publishing | VS Marketplace > Manage Publishers |
| OVSX_PAT | Open VSX Registry publishing | Open VSX > Access Tokens |
Note: NPM_TOKEN is not required - CLI uses npm trusted publishing via OIDC.
feat, fix, perf, revert, bump trigger releasesmaster (or beta for prereleases)# View recent commits with their types
git log --oneline -10
If one package fails to publish:
git commit --allow-empty -m "fix: retry release"
git push
Should not occur with unified releases. If it does:
yarn release:dry-run to see expected state# Test VS Marketplace token
vsce verify-pat -p $VSCE_PAT
# Test GitHub token
gh auth status
| Branch | Release Type | npm Tag |
|--------|--------------|---------|
| master | Stable | latest |
| beta | Prerelease | beta |
Prerelease versions: 1.2.3-beta.1, 1.2.3-beta.2, etc.
After release completes:
# Verify npm package
npm view x-fidelity version
# Verify global install
npm install -g x-fidelity@latest
xfi --version
# Check VS Marketplace
# Visit: https://marketplace.visualstudio.com/items?itemName=zotoio.x-fidelity-vscode
| File | Purpose |
|------|---------|
| .releaserc.json | semantic-release configuration |
| scripts/prepare-unified-release.js | Pre-publish version updates |
| scripts/publish-unified-release.js | Publish both packages |
| .github/workflows/release-unified.yml | GitHub Actions workflow |
| CHANGELOG.md | Auto-generated changelog |
# Create proper commit
yarn commit
# Test release locally
yarn release:dry-run
# View changelog
cat CHANGELOG.md
# Check current versions
cat packages/x-fidelity-cli/package.json | grep version
cat packages/x-fidelity-vscode/package.json | grep version
documentation
Guide for executing engineering plans through coordinated subagent work. Use when executing existing plans from knowledge/plans/ directory.
development
Guide for updating X-Fidelity documentation including README and website. Use when updating docs, adding new features to documentation, or ensuring docs stay in sync with code.
tools
Guide for debugging X-Fidelity analysis issues. Use when troubleshooting analysis failures, rule evaluation problems, VSCode extension issues, or unexpected results.
development
End-to-end guide for creating a new X-Fidelity analysis rule. Use when creating rules, adding new checks, or when the user asks about rule development.