version-management

Manage versions across Gradle, npm, and Python projects using Git tags.

3|1|Updated Dec 4, 2025
One-click install
npx skills add https://github.com/hitoshura25/claude-devtools --skill version-management-hitoshura25
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: version-management
Source: https://github.com/hitoshura25/claude-devtools/tree/main/skills/version-management
Command: npx skills add https://github.com/hitoshura25/claude-devtools --skill version-management-hitoshura25

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill requires git.

What problem does it solve?

This Skill centralizes version management by using Git tags as the single source of truth, eliminating drift between releases, artifacts, and code across repositories.

Core Features & Use Cases

  • Git-tag-driven versioning: Version numbers are derived from Git tags, ensuring a single source of truth for all release tooling.
  • Multi-platform adapters: Seamless support for Gradle (Android), npm, and Python projects via dedicated adapters.
  • CI/CD-ready workflow: Automatic version file caching, tag updates, and release tagging to streamline automated pipelines.
  • Use Case: In a multi-repo project, synchronize versions by tagging releases and propagating version updates to language-specific files (e.g., version.properties, package.json, or build.gradle) to keep all artifacts in sync.

Quick Start

Use the core version manager to inspect and advance versions and to apply platform-specific updates. For example:

  • Detect the latest version tag: ./scripts/version-manager.sh latest
  • Generate the next patch version: ./scripts/version-manager.sh generate patch
  • Generate and update Gradle version: ./scripts/gradle-version.sh generate patch

Frequently Asked Questions about version-management

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I manage semantic versioning across multi-platform Gradle, npm, and Python projects?

Git tag-driven versioning uses Git tags as the single source of truth to derive version numbers, eliminating drift between code and releases. The technology-agnostic core parses tags, bumps semantic versions, and plugs in adapters to update language-specific files.

How do I automate version bumps and release tagging in a CI/CD pipeline?

You can automate multi-repo version synchronization by tagging releases and using adapters to propagate version updates to language-specific files like version.properties or package.json. This keeps all artifacts across repositories in sync without manual drift.

Does this Git tag versioning approach work without manual version file updates?

This approach requires Git as a dependency to function, because it uses Git tags as the single source of truth for versioning. You need an existing Git repository to parse tags, bump semantic versions, and apply updates to language-specific files.

What is the best way to keep version numbers consistent across multiple repositories?

Unlike manual version tracking, this approach uses a technology-agnostic core to parse Git tags and bump semantic versions automatically. It eliminates the drift common in manual methods by driving all release tooling and language-specific file updates from a single source.

Do I need Git to use this semantic versioning and build automation workflow?

Yes, this approach works without manual version file updates by using platform-specific adapters. Once a Git tag is advanced, the adapters automatically generate and apply the new semantic version to the appropriate build files like build.gradle or package.json.