--- alwaysApply: true description: "Guidance on commit messages" --- Use the following format for commit messages: - `ci: description` for all testing related changes, and changes to github workflows etc. - `dev: description` for development related changes, including updates to the cursor or claude rules - `fix(component): description` for bug fixes - `feat(component): description` for new features - `enh(component): description` for enhancements - `docs: description` for documentation - `ref(component): description` for refactoring - `chore: description` for maintenance tasks (pre-commit hooks, imports, etc.) Generally, the description should focus on the intent of the changes, not the implementation details. ## Style notes Do **NOT** add "Co-authored-by: Cursor" lines to the commit message or to the trailer. ## Reviewing While preparing the commit message, flag critical issues that should be addressed before committing. Do not flag style issues or minor changes. Flag the following: - Anything that might raise an unhandled exception in an unintentional manner - Anything that looks logically wrong or inconsistent - Breaking changes to protocols/interfaces without corresponding updates to implementations Flag the following style issue as minor: - Imports not at top of file ## Components Use these component names in parentheses for `fix`, `feat`, `enh`, and `ref` commits: - `models` - Changes to model interfaces (litellm, anthropic, openai, portkey, openrouter) - `agents` - Changes to agent classes (default, interactive, multimodal) - `env` - Changes to environments (docker, local, singularity, bubblewrap, swerex) - `config` - Changes to configuration files or config handling - `run` - Changes to run scripts (mini, hello_world) - `benchmarks` - Changes to benchmark runners (swebench, inspector) - `cli` - Changes to CLI argument handling - `deps` - Dependency updates