| name | commit |
| description | Commit staged changes following Conventional Commits v1.0.0. Activate when user asks to commit, create a commit, or says /commit. |
| metadata | {"ai-assistant-harness-adaptation.claude-code":"references/ai-assistant-harnesses/claude-code.md","ai-assistant-harness-adaptation.codex":"references/ai-assistant-harnesses/codex.md"} |
Commit
Follow the Conventional Commits v1.0.0 specification.
Harness Adaptation
Depending on who you are as an AI agent, load exactly one metadata-linked reference and skip every non-matching file.
Format
<type>[optional scope]: <description>
Single-line message only.
Types
| Type | Meaning |
|---|
feat | New feature (MINOR in semver) |
fix | Bug fix (PATCH in semver) |
build | Build system or external dependencies |
chore | Other changes (no src/test modification) |
ci | CI configuration files/scripts |
docs | Documentation only |
perf | Performance improvement |
refactor | Code change that neither fixes a bug nor adds a feature |
revert | Reverts a previous commit |
style | Formatting, whitespace, semicolons (no code change) |
test | Adding or correcting tests |
bump | Version bump (include old → new version in description) |
Breaking Changes
Append ! before the colon to indicate a breaking change:
feat!: drop support for python 3.11
Scope
Optional. Describes the section of the codebase affected, in parentheses:
fix(payments): resolve decimal rounding
feat(auth): add oauth2 support
Description Rules
- Lower-case first letter
- No period at end
- Imperative mood ("add" not "added", "fix" not "fixed")
- Describe what was done concisely
Instructions
- Run
git diff --staged to analyze staged changes
- Determine the appropriate type from the table above
- Optionally determine a scope (component/module affected)
- Write a concise description of what was done
- Keep commits atomic: stage and commit specific paths explicitly.
git add path/to/file1 path/to/file2 && git commit -m "<scoped message>"
- Never include a body, footer, or
Co-Authored-By trailer
- Never mention the AI agent in the commit message
After Commit
Ask the user whether to push. Preview = actual output of git log @{u}..HEAD --oneline. If no upstream, show only the new commit and note that push will require --set-upstream.
Examples
feat: add user authentication endpoint
fix(payments): resolve decimal rounding
refactor: extract validation logic into helpers
docs: update API changelog
test: add unit tests for order service
chore: update ruff config
feat!: drop support for python 3.11
bump: v0.4.0 → v0.5.0
bump(deps): upgrade pydantic to 2.10.0
build: migrate from pip to uv
ci: add staging deployment step
perf(queries): optimize merchant lookup query
style: fix indentation in config files
revert: undo migration changes from previous commit