aboutsummaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
authornsfisis <nsfisis@gmail.com>2026-02-01 10:15:11 +0900
committernsfisis <nsfisis@gmail.com>2026-02-01 10:15:11 +0900
commitb785aa736ab72e3b7d2e75c389fe51a7e239918e (patch)
treeea7dd1d90deff63367e9ef2c0fe477ba402c1255
parentf007d52bdee21ef03888a5e862cc7e5a872272d5 (diff)
downloaddotfiles-b785aa736ab72e3b7d2e75c389fe51a7e239918e.tar.gz
dotfiles-b785aa736ab72e3b7d2e75c389fe51a7e239918e.tar.zst
dotfiles-b785aa736ab72e3b7d2e75c389fe51a7e239918e.zip
claude: add /conventional-commit
-rw-r--r--.config/claude/skills/conventional-commit/SKILL.md36
-rw-r--r--home-manager/modules/common.nix1
2 files changed, 37 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`
diff --git a/home-manager/modules/common.nix b/home-manager/modules/common.nix
index 44e4884..e7f6759 100644
--- a/home-manager/modules/common.nix
+++ b/home-manager/modules/common.nix
@@ -91,6 +91,7 @@ in
++ pkgs.lib.optional requiresWlClipboard pkgs.wl-clipboard;
home.file = {
+ ".claude/skills/conventional-commit".source = ../../.config/claude/skills/conventional-commit;
".config/alacritty/alacritty.common.toml".source = ../../.config/alacritty/alacritty.common.toml;
".config/alacritty/alacritty.local.toml".source = ../../.config/alacritty/alacritty.${env.os}.toml;
".config/alacritty/alacritty.toml".source = ../../.config/alacritty/alacritty.toml;