| name | conventional-commits |
| description | Enforce English Conventional Commits for every commit message. Use whenever Codex creates, amends, squashes, rewrites, suggests, reviews, or validates a git commit message, including when the surrounding conversation is in another language. |
Conventional Commits
Rule
Always write commit messages in English and in Conventional Commits format.
Use this shape:
<type>[optional scope][!]: <description>
[optional body]
[optional footer(s)]
Workflow
- Inspect the staged diff before committing. If nothing is staged, inspect the intended changes and stage only the relevant files.
- Choose the narrowest accurate type.
- Add a scope only when it clarifies the affected area.
- Use
! and a BREAKING CHANGE: footer when behavior or APIs break.
- Keep the subject concise, imperative, lower-case after the type unless a proper noun requires capitalization, and do not end it with a period.
- Add a body only when the reason, migration detail, or behavior change is not obvious from the subject.
- Run the commit with the final English message.
Types
Prefer these types:
feat: user-visible feature or capability
fix: bug fix
docs: documentation-only change
style: formatting-only change with no behavior impact
refactor: code restructuring with no intended behavior change
perf: performance improvement
test: test-only change
build: build system, dependency, packaging, or toolchain change
ci: continuous integration change
chore: maintenance that does not fit the above
revert: revert a previous commit
Examples
feat(auth): add passkey enrollment
fix(parser): handle empty frontmatter
docs: clarify local setup steps
refactor(api)!: remove legacy response adapter
BREAKING CHANGE: clients must read `data.items` instead of `items`.
Validation
Before finalizing a commit, reject messages that are not English, lack a Conventional Commits type, use an inaccurate type, or describe multiple unrelated changes as one commit. Split unrelated changes into separate commits when the user asks Codex to commit them.