OpenParable
Skip to content
← Back to skills

Commitizen

DevOps & Security
commitizen

Commitizen is an Agent Skill for devops & security published in the commitizen-tools/commitizen repository on GitHub: a SKILL.md instruction file an AI agent can load to do this task.

Use this skill for tasks involving Conventional Commits, commit message validation, Commitizen configuration, semantic version bumps, changelog generation, or CI/release automation with the Commitizen CLI.

View on GitHub ↗
QUICK START

How to use this skill

Bring this guide into your coding agent with a prompt tailored to the tool you use.

  1. Open your project in Codex.
  2. Copy and paste the prompt below.
  3. Review files and risks before approving any action.
Prompt to paste
Inspect the Agent Skill at https://github.com/commitizen-tools/commitizen/blob/HEAD/.agents/skills/commitizen/SKILL.md and all supporting files. Report provenance, permissions, scripts, dependencies, and security risks. Propose an exact installation into .agents/skills/commitizen, but wait for my approval before writing files or running scripts.

Copying this prompt does not install or run the skill. Review third-party files before use.

Commitizen

Commitizen is a CLI for enforcing Conventional Commits, automating version bumps, and generating changelogs.

Use this skill when

  • A task involves commit message authoring or validation.
  • A repository needs Commitizen initialization or configuration updates.
  • Work depends on version schemes, version providers, version files, tags, or changelog behavior.
  • CI/CD automation needs commit validation, automated version bumps, or release notes.

Core workflow

  1. Find the active configuration file in this order: .cz.toml, cz.toml, .cz.json, cz.json, .cz.yaml, cz.yaml, then pyproject.toml under [tool.commitizen].
  2. Read the effective settings before acting, especially name, version, version_provider, version_scheme, version_files, tag_format, update_changelog_on_bump, annotated_tag, bump_message, pre_bump_hooks, and post_bump_hooks.
  3. Match the command to the task:
    • cz commit for interactive commit authoring
    • cz check for validating commit messages or git ranges
    • cz init for bootstrapping configuration
    • cz bump for calculating or applying release versions
    • cz changelog for generating or updating CHANGELOG.md
    • cz ls for listing available commit rules
    • cz version for showing the current version
  4. Prefer read-only inspection first. Safe discovery commands include cz version, cz ls, cz check, cz bump --get-next, and cz bump --dry-run.
  5. Treat cz bump as stateful: it can update version files, create a bump commit, and create a git tag. Verify the version provider, version scheme, tag format, and changelog settings before running it for real.
  6. When automating in CI, check whether the workflow should ignore specific exit codes with --no-raise and whether bump_message should include skip-CI text.
  7. After making changes, validate the resulting configuration, commands, and automation against the repository's actual version scheme and provider.

Important domain details

  • Commitizen supports both global installation (recommended for the cz CLI) and project-local installation; see the installation section in docs/README.md for the full matrix of supported tools.
  • The default version scheme is PEP 440; semver and semver2 are also supported.
  • Common version providers include commitizen, pep621, poetry, cargo, npm, composer, uv, and scm.
  • cz changelog generates Markdown changelogs.
  • cz commit supports --dry-run and --write-message-to-file.
  • cz check can validate a literal message, a commit-msg file, or a git revision range.

Examples

  • Validate one message: cz check --message "feat(cli): add release command"
  • Validate branch history: cz check --rev-range master..HEAD
  • Preview the next version: cz bump --get-next
  • Preview bump details: cz bump --dry-run
  • Preview changelog output: cz changelog --dry-run
  • Initialize configuration: cz init