Agent skill
dev-swarm-draft-commit-message
Draft a conventional commit message when the user asks to commit, commit changes, git commit, or save changes to git. Use when user says "commit", "commit this", "commit changes", "make a commit", or similar.
Install this agent skill to your Project
npx add-skill https://github.com/X-School-Academy/ai-dev-swarm/tree/main/dev-swarm/skills/dev-swarm-draft-commit-message
Metadata
Additional technical details for this skill
- short description
- Draft an informative commit message.
SKILL.md
AI Builder - Draft Commit Message
This skill drafts conventional commit messages that accurately summarize code changes based on git diff output.
When to Use This Skill
- User says "commit" or "commit changes"
- User asks to commit code changes
- User requests a commit message draft
- User wants to create a conventional commit message
- User says "git commit" or "make a commit"
- Before committing changes to version control
Your Roles in This Skill
- DevOps Engineer: Review git diff output and analyze code changes. Identify the type of change (feat, fix, refactor, etc.). Determine the scope of changes and affected components. Draft clear, concise commit messages following conventional commits format.
Role Communication
As an expert in your assigned roles, you must announce your actions before performing them using the following format:
As a {Role} [and {Role}, ...], I will {action description}
This communication pattern ensures transparency and allows for human-in-the-loop oversight at key decision points.
Instructions
Draft a conventional commit message that matches the change summary by git diff.
Requirements:
- Use
git diffcommand first, then summary the changes - Use the Conventional Commits format:
type(scope): summary - Use the imperative mood in the summary (for example, "Add", "Fix", "Refactor")
- Keep the summary under 72 characters
- If there are breaking changes, include a
BREAKING CHANGE:footer
Atomic Commits - One Task Per Commit:
- IMPORTANT: Each commit should represent ONE atomic task only
- Create separate commits for:
- Different types of changes (feature vs bugfix vs docs vs refactor)
- Different features (feature A vs feature B)
- Different bugfixes (bug X vs bug Y)
- Different refactorings (refactor component A vs component B)
- Each commit should focus on ONE logical change with a short, clear message
- Avoid multi-line commit messages that describe multiple unrelated changes
- This creates a clean, atomic commit history that's easier to review, revert, and understand
- Examples:
- Instead of: "Add feature X and feature Y" → Create two commits:
feat: add feature X,feat: add feature Y - Instead of: "Fix bug A and bug B" → Create two commits:
fix: resolve bug A,fix: resolve bug B - Instead of: "Add feature X, fix bug Y, update docs" → Create three commits:
feat: add feature X,fix: resolve bug Y,docs: update API documentation
- Instead of: "Add feature X and feature Y" → Create two commits:
Do not add content as below, to make the message shorter
Generated with xx
Co-Authored-By: xxx
``
Recommended Agent Skills
Expand your agent's capabilities with these related and highly-rated skills.
awslabs-aws-api-mcp-server-call-aws
To run an exact AWS CLI command, execute a validated `aws ...` command for direct AWS operations when you already know the precise service and parameters; use instead of suggesting commands.
dart-get-runtime-errors
To read recent runtime errors from a running Dart or Flutter app, fetch runtime errors after connecting to the Dart Tooling Daemon.
dart-set-widget-selection-mode
To enable or disable widget selection mode in a running Flutter app, set selection mode after connecting to the Dart Tooling Daemon.
background-process-stop-process
To stop a managed background task, terminate a running process by ID to shut it down cleanly.
playwright-browser-network-requests
To inspect network activity since page load, list network requests to review API calls and resources.
playwright-browser-console-messages
To read console logs from the current page, retrieve console messages for debugging JavaScript output.
Didn't find tool you were looking for?