
versioning
by ncssm-robotics
Marketplace for Claude Plugins for FTC
SKILL.md
name: versioning description: >- FTC marketplace versioning guardrail. Activates when considering version bumps, changing version numbers, or modifying plugin.json versions. Redirects to the correct automated release process. Use this to understand the versioning workflow. license: MIT compatibility: Claude Code, Codex CLI, VS Code Copilot, Cursor metadata: author: ncssm-robotics category: tools allowed-tools: Read
FTC Versioning Guardrail
STOP: Do Not Manually Change Version Numbers!
This repository uses an automated release process. Contributors should NEVER manually change version numbers in any file.
Files You Should NOT Edit (Version Fields)
| File | Field | Why Not |
|---|---|---|
plugins/<name>/plugin.json | version | Release script updates this |
plugins/<name>/skills/<name>/SKILL.md | metadata.version | Release script updates this |
.claude-plugin/marketplace.json | plugin version | Release script updates this |
The Correct Workflow
For Contributors
-
Make your changes to the skill (SKILL.md, scripts, etc.)
-
Add changelog entries to
## [Unreleased]section in CHANGELOG.md:## [Unreleased] ### Added - New calibration script for pod offset calculation ### Fixed - Corrected coordinate transformation formula -
Use the update-skill command to help generate entries:
/update-skill <skill-name> -
Submit PR to the
developbranch -
Done! - Versions are bumped automatically during the release process
For Maintainers (Release Process)
- Go to GitHub Actions
- Run "Prepare Release" workflow
- Script automatically:
- Parses changelog categories (Added → MINOR, Fixed → PATCH, etc.)
- Calculates new version numbers
- Updates all three version locations atomically
- Creates release PR
Why This Matters
Deterministic Versioning
Version bumps are calculated from changelog categories:
| Changelog Category | Version Bump |
|---|---|
### Removed | MAJOR (X.0.0) |
### Changed | MAJOR (X.0.0) |
### Added | MINOR (0.Y.0) |
### Deprecated | MINOR (0.Y.0) |
### Fixed | PATCH (0.0.Z) |
### Security | PATCH (0.0.Z) |
Consistency Guarantee
The release script ensures:
- All three version locations match
- Changelog is properly formatted
- Release notes are generated
- Git tags are created
Avoiding Merge Conflicts
Manual version bumps cause:
- Merge conflicts when multiple PRs touch versions
- Inconsistency between files
- Confusion about which version is correct
Exception: New Skills (1.0.0)
When creating a new skill with /create-skill, the version IS set to 1.0.0. This is the only time a version is "manually" set, and it's done by the create-skill command.
New skills should:
- Start at version 1.0.0
- Have this in plugin.json, SKILL.md, and marketplace.json
- Have initial 1.0.0 entry in CHANGELOG.md
If You're Tempted to Bump a Version
Ask yourself:
- Did I add entries to the
## [Unreleased]section? (Do this instead!) - Am I running the release process? (Only maintainers do this)
- Is this a new skill? (Let create-skill handle it)
If none of these apply, you probably shouldn't be changing version numbers.
Commands Reference
| Command | Purpose |
|---|---|
/create-skill | Creates new skill at 1.0.0 |
/update-skill | Generates changelog entries (NO version bump) |
/validate-skill | Validates structure (NO version bump) |
/review | Runs code review (NO version bump) |
None of these commands change version numbers after initial creation.
See Also
RELEASES.md- Full release process documentation.github/scripts/prepare-release.sh- The release automation script.github/workflows/prepare-release.yml- The release workflow
Score
Total Score
Based on repository quality metrics
SKILL.mdファイルが含まれている
ライセンスが設定されている
100文字以上の説明がある
GitHub Stars 100以上
3ヶ月以内に更新がある
10回以上フォークされている
オープンIssueが50未満
プログラミング言語が設定されている
1つ以上のタグが設定されている
Reviews
Reviews coming soon