Add BMAD, Claude, Cursor, and OpenCode configuration directories along with AGENTS.md documentation. 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <noreply@anthropic.com>
7.1 KiB
7.1 KiB
| description |
|---|
| Create well-formatted commits with conventional commit messages and emoji |
Commit Command
You are an AI agent that helps create well-formatted git commits with conventional commit messages and emoji icons, follow these instructions exactly. Always run and push the commit, you don't need to ask for confirmation unless there is a big issue or error.
Instructions for Agent
When the user runs this command, execute the following workflow:
-
Check command mode:
- If user provides $ARGUMENTS (a simple message), skip to step 3
-
Run pre-commit validation:
- Execute
pnpm lintand report any issues - Execute
pnpm buildand ensure it succeeds - If either fails, ask user if they want to proceed anyway or fix issues first
- Execute
-
Analyze git status:
- Run
git status --porcelainto check for changes - If no files are staged, run
git add .to stage all modified files - If files are already staged, proceed with only those files
- Run
-
Analyze the changes:
- Run
git diff --cachedto see what will be committed - Analyze the diff to determine the primary change type (feat, fix, docs, etc.)
- Identify the main scope and purpose of the changes
- Run
-
Generate commit message:
- Choose appropriate emoji and type from the reference below
- Create message following format:
<emoji> <type>: <description> - Keep description concise, clear, and in imperative mood
- Show the proposed message to user for confirmation
-
Execute the commit:
- Run
git commit -m "<generated message>" - Display the commit hash and confirm success
- Provide brief summary of what was committed
- Run
Commit Message Guidelines
When generating commit messages, follow these rules:
- Atomic commits: Each commit should contain related changes that serve a single purpose
- Imperative mood: Write as commands (e.g., "add feature" not "added feature")
- Concise first line: Keep under 72 characters
- Conventional format: Use
<emoji> <type>: <description>where type is one of:feat: A new featurefix: A bug fixdocs: Documentation changesstyle: Code style changes (formatting, etc.)refactor: Code changes that neither fix bugs nor add featuresperf: Performance improvementstest: Adding or fixing testschore: Changes to the build process, tools, etc.
- Present tense, imperative mood: Write commit messages as commands (e.g., "add feature" not "added feature")
- Concise first line: Keep the first line under 72 characters
- Emoji: Each commit type is paired with an appropriate emoji:
- ✨
feat: New feature - 🐛
fix: Bug fix - 📝
docs: Documentation - 💄
style: Formatting/style - ♻️
refactor: Code refactoring - ⚡️
perf: Performance improvements - ✅
test: Tests - 🔧
chore: Tooling, configuration - 🚀
ci: CI/CD improvements - 🗑️
revert: Reverting changes - 🧪
test: Add a failing test - 🚨
fix: Fix compiler/linter warnings - 🔒️
fix: Fix security issues - 👥
chore: Add or update contributors - 🚚
refactor: Move or rename resources - 🏗️
refactor: Make architectural changes - 🔀
chore: Merge branches - 📦️
chore: Add or update compiled files or packages - ➕
chore: Add a dependency - ➖
chore: Remove a dependency - 🌱
chore: Add or update seed files - 🧑💻
chore: Improve developer experience - 🧵
feat: Add or update code related to multithreading or concurrency - 🔍️
feat: Improve SEO - 🏷️
feat: Add or update types - 💬
feat: Add or update text and literals - 🌐
feat: Internationalization and localization - 👔
feat: Add or update business logic - 📱
feat: Work on responsive design - 🚸
feat: Improve user experience / usability - 🩹
fix: Simple fix for a non-critical issue - 🥅
fix: Catch errors - 👽️
fix: Update code due to external API changes - 🔥
fix: Remove code or files - 🎨
style: Improve structure/format of the code - 🚑️
fix: Critical hotfix - 🎉
chore: Begin a project - 🔖
chore: Release/Version tags - 🚧
wip: Work in progress - 💚
fix: Fix CI build - 📌
chore: Pin dependencies to specific versions - 👷
ci: Add or update CI build system - 📈
feat: Add or update analytics or tracking code - ✏️
fix: Fix typos - ⏪️
revert: Revert changes - 📄
chore: Add or update license - 💥
feat: Introduce breaking changes - 🍱
assets: Add or update assets - ♿️
feat: Improve accessibility - 💡
docs: Add or update comments in source code - 🗃️
db: Perform database related changes - 🔊
feat: Add or update logs - 🔇
fix: Remove logs - 🤡
test: Mock things - 🥚
feat: Add or update an easter egg - 🙈
chore: Add or update .gitignore file - 📸
test: Add or update snapshots - ⚗️
experiment: Perform experiments - 🚩
feat: Add, update, or remove feature flags - 💫
ui: Add or update animations and transitions - ⚰️
refactor: Remove dead code - 🦺
feat: Add or update code related to validation - ✈️
feat: Improve offline support
- ✨
Reference: Good Commit Examples
Use these as examples when generating commit messages:
- ✨ feat: add user authentication system
- 🐛 fix: resolve memory leak in rendering process
- 📝 docs: update API documentation with new endpoints
- ♻️ refactor: simplify error handling logic in parser
- 🚨 fix: resolve linter warnings in component files
- 🧑💻 chore: improve developer tooling setup process
- 👔 feat: implement business logic for transaction validation
- 🩹 fix: address minor styling inconsistency in header
- 🚑️ fix: patch critical security vulnerability in auth flow
- 🎨 style: reorganize component structure for better readability
- 🔥 fix: remove deprecated legacy code
- 🦺 feat: add input validation for user registration form
- 💚 fix: resolve failing CI pipeline tests
- 📈 feat: implement analytics tracking for user engagement
- 🔒️ fix: strengthen authentication password requirements
- ♿️ feat: improve form accessibility for screen readers
Example commit sequence:
- ✨ feat: add user authentication system
- 🐛 fix: resolve memory leak in rendering process
- 📝 docs: update API documentation with new endpoints
- ♻️ refactor: simplify error handling logic in parser
- 🚨 fix: resolve linter warnings in component files
- ✅ test: add unit tests for authentication flow
Agent Behavior Notes
- Error handling: If validation fails, give user option to proceed or fix issues first
- Auto-staging: If no files are staged, automatically stage all changes with
git add . - File priority: If files are already staged, only commit those specific files
- Always run and push the commit: You don't need to ask for confirmation unless there is a big issue or error
git push. - Message quality: Ensure commit messages are clear, concise, and follow conventional format
- Success feedback: After successful commit, show commit hash and brief summary