pFad - Phone/Frame/Anonymizer/Declutterfier! Saves Data!


--- a PPN by Garber Painting Akron. With Image Size Reduction included!

URL: http://github.com/commitizen-tools/commitizen/blob/master/AGENTS.md

ps://github.githubassets.com/assets/global-b40ec823a1a6a1af.css" /> commitizen/AGENTS.md at master · commitizen-tools/commitizen · GitHub
Skip to content

Latest commit

 

History

History
54 lines (40 loc) · 2.55 KB

File metadata and controls

54 lines (40 loc) · 2.55 KB

AGENTS instructions

Purpose

This file provides project-specific guidance for AI agents (and other automated tools) working on the commitizen repository. Follow these instructions in addition to any higher-level system or tool rules.

Project Overview

  • Project: commitizen - a tool to help enforce and automate conventional commits, version bumps, and changelog generation.
  • Primary language: Python (library + CLI).
  • Key entrypoints:
    • commitizen/cli.py - main CLI implementation.
    • commitizen/commands/ - subcommands such as bump, commit, changelog, check, etc.
    • commitizen/config/ - configuration discovery and loading.
    • commitizen/providers/ - version providers (e.g., pep621, poetry, npm, uv).

General Expectations

  • Preserve public behavior and CLI UX.
  • Avoid breaking changes (APIs, CLI flags, exit codes) unless explicitly requested.
  • Keep changes small and focused.
  • Update or add tests/docs when you change user-facing behavior.

How to Explore and Validate Changes

  • Code entrypoints:
    • CLI behavior: commitizen/cli.py and commitizen/commands/.
    • Config resolution: commitizen/config/factory.py and config modules.
    • Bump/changelog/versioning: commitizen/bump.py, commitizen/changelog.py, commitizen/version_schemes.py, commitizen/providers/.
  • Docs to consult (before larger changes):
    • docs/README.md
    • docs/contributing.md
    • docs/commands/ and docs/config/
  • Tests:
    • Prefer targeted runs, e.g. uv run pytest tests/test_cli.py or a specific tests/commands/ file.

Coding Guidelines (for AI tools)

  • Style: Follow patterns in nearby code; keep functions focused.
  • Types: Preserve or improve existing type hints.
  • Errors: Prefer commitizen/exceptions.py error types; keep messages clear for CLI users.
  • Output: Use commitizen/out.py; do not add noisy logging.

Common Task Pointers

  • CLI commands: edit commitizen/commands/<name>.py, wire via commitizen/cli.py, and adjust tests/commands/ + docs/commands/.
  • Version bumps / changelog: use commitizen/bump.py, commitizen/changelog.py, commitizen/version_schemes.py, and commitizen/providers/ (+ matching tests).
  • Config resolution: use commitizen/config/factory.py and config modules; update tests/test_conf.py and related tests.

When Unsure

  • Prefer reading tests and documentation first to understand the expected behavior.
  • When behavior is ambiguous, assume backward compatibility with current tests and docs is required.
pFad - Phonifier reborn

Pfad - The Proxy pFad © 2024 Your Company Name. All rights reserved.





Check this box to remove all script contents from the fetched content.



Check this box to remove all images from the fetched content.


Check this box to remove all CSS styles from the fetched content.


Check this box to keep images inefficiently compressed and original size.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy