aboutsummaryrefslogtreecommitdiffhomepage
path: root/.config/claude/skills/conventional-commit
diff options
context:
space:
mode:
Diffstat (limited to '.config/claude/skills/conventional-commit')
-rw-r--r--.config/claude/skills/conventional-commit/SKILL.md36
1 files changed, 36 insertions, 0 deletions
diff --git a/.config/claude/skills/conventional-commit/SKILL.md b/.config/claude/skills/conventional-commit/SKILL.md
new file mode 100644
index 0000000..8645b91
--- /dev/null
+++ b/.config/claude/skills/conventional-commit/SKILL.md
@@ -0,0 +1,36 @@
+---
+name: conventional-commit
+description: Create a git commit for the current changes, following The Conventional Commits.
+allowed-tools: Bash(git add:*), Bash(git diff:*), Bash(git status:*), Bash(git commit:*)
+---
+
+## Context
+
+- Current git status: !`git status`
+- Current git diff (staged and unstaged changes): !`git diff HEAD`
+- Recent commits: !`git log --oneline -5`
+
+## Instructions
+
+1. Check the git status and changes.
+2. Analyze the changes and draft a commit message following Conventional Commits format:
+ - Types: feat, fix, refactor, test, docs, chore, style, perf, ci, build
+ - Format: `<type>(<scope>): <description>`
+ - Keep the first line under 72 characters
+ - Add a blank line and body if more context is needed
+3. Create the commit with the message (`git commit -a -m "..."`)
+
+## Commit Message Format
+
+```
+<type>(<scope>): <short description>
+
+<optional body explaining the "why" not the "what">
+```
+
+## Examples
+
+- `feat(auth): add refresh token rotation`
+- `fix(sync): handle network timeout during push`
+- `refactor(db): extract repository pattern for cards`
+- `test(api): add integration tests for deck endpoints`