Create a git commit for the current changes using a concise Conventional Commits-style subject.
Format
<type>(<scope>): <summary>
typeREQUIRED. Usefeatfor new features,fixfor bug fixes. Other common types:docs,refactor,chore,test,perf.scopeOPTIONAL. Short noun in parentheses for the affected area (e.g.,api,parser,ui).summaryREQUIRED. Short, imperative, <= 72 chars, no trailing period.
Notes
- Body is OPTIONAL. If needed, add a blank line after the subject and write short paragraphs.
- Do NOT include breaking-change markers or footers.
- Do NOT add sign-offs (no
Signed-off-by). - Only commit; do NOT push.
- Treat caller-provided arguments as additional guidance: freeform instructions shape scope/summary/body; file paths or globs limit which files to commit (stage/commit only those unless the user explicitly asks otherwise); if arguments combine both, honor both.
Steps
- Infer from the prompt if the user provided specific file paths/globs and/or additional instructions.
- Review
git statusandgit diffto understand the current changes (limit to argument-specified files if provided). - (Optional) Run
git log -n 50 --pretty=format:%sto see commonly used scopes. - If there are ambiguous extra files, ask the user for clarification before committing.
- Stage only the intended files (all changes if no files specified).
- Run
git commit -m "<subject>"(and-m "<body>"if needed).