
julien-dev-commit-message
by theflysurfer
Personal marketplace for developing and sharing custom Claude skills
SKILL.md
name: julien-dev-commit-message description: "Generate semantic commit messages and create git commits. Handles OneDrive mmap errors automatically. Use when user wants to commit, needs a commit message, or git commit fails." license: Apache-2.0 metadata: author: "Julien" version: "2.0.0" category: "development" triggers:
English - Keywords
- "commit"
- "git commit"
- "commit message"
- "commit changes"
English - Actions
- "make a commit"
- "create a commit"
- "write commit message"
- "generate commit"
- "help me commit"
- "commit my changes"
- "commit this"
- "commit these changes"
- "stage and commit"
French - Keywords
- "commiter"
- "committer"
- "message de commit"
French - Actions
- "faire un commit"
- "créer un commit"
- "écrire un message de commit"
- "committer les changements"
- "commiter mes changements"
- "aide moi à commiter"
- "génère un commit"
Error handling
- "mmap failed"
- "git error"
- "commit failed"
- "onedrive git" allowed-tools:
- Bash
- Read
Commit Message Generator
Generate semantic commit messages and create git commits. Automatically handles OneDrive mmap errors.
Observability
First: At the start of execution, display:
🔧 Skill "julien-dev-commit-message" activated
Quick Reference
<type>(<scope>): <description max 50 chars>
<body explaining why>
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>
Commit Types
| Type | When to Use |
|---|---|
feat | New feature |
fix | Bug fix |
docs | Documentation only |
refactor | Code restructure (no functional change) |
style | Formatting (no code change) |
test | Adding/updating tests |
chore | Maintenance, dependencies |
Execution Process
Step 1: Analyze Changes
git status
git diff --cached --stat
git diff --cached
git log --oneline -5
Step 2: Generate Message
- Identify type from changes (feat/fix/docs/etc.)
- Identify scope from file paths
- Write description (≤50 chars, imperative mood)
- Write body explaining WHY (not what)
Step 3: Present to User
## Proposed Commit
\`\`\`
feat(api): add user authentication endpoint
- Implemented JWT token generation
- Added password hashing with bcrypt
- Created login/logout routes
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>
\`\`\`
**Ready to commit?** Run:
\`\`\`bash
git add -A && git commit -m "$(cat <<'EOF'
feat(api): add user authentication endpoint
- Implemented JWT token generation
- Added password hashing with bcrypt
- Created login/logout routes
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>
EOF
)"
\`\`\`
Step 4: Wait for Approval
NEVER commit automatically. Always wait for user to execute the command.
OneDrive Error Handling
If git commit fails with fatal: mmap failed: Invalid argument:
Automatic Detection
Check if repo is in OneDrive:
pwd | grep -i onedrive && echo "OneDrive detected"
Workaround: Git Plumbing Commands
# 1. Configure memory limits
git config core.packedGitWindowSize 1m
git config pack.windowMemory 1m
# 2. Create blob objects
SHA=$(git hash-object -w path/to/file)
# 3. Update index
git update-index --add --cacheinfo 100644,$SHA,path/to/file
# 4. Create tree
TREE=$(git write-tree)
# 5. Get parent
PARENT=$(git rev-parse HEAD)
# 6. Create commit
COMMIT=$(echo "your message" | git commit-tree $TREE -p $PARENT)
# 7. Update branch
git update-ref refs/heads/$(git branch --show-current) $COMMIT
Alternative
If plumbing fails, recommend:
- Git GUI (included with Git for Windows)
- GitHub Desktop
- VSCode Source Control
Security Checks
Warn if staged files contain:
.envfilescredentials.json- API keys, tokens
- Private keys (
.pem,.key)
Checklist
Before presenting:
- Type matches changes
- Description ≤50 chars, imperative mood
- Body explains WHY
- No secrets in staged files
- Attribution included
- Command provided (not auto-committed)
Skill Chaining
Input Expected
- Git repository with staged or unstaged changes
Output Produced
- Format: Commit message + git command to execute
- Side effects: None until user executes command
Tools Used
Bash(git status, git diff, git log)Read(if needed to understand file changes)
Score
Total Score
Based on repository quality metrics
SKILL.mdファイルが含まれている
ライセンスが設定されている
100文字以上の説明がある
GitHub Stars 100以上
3ヶ月以内に更新がある
10回以上フォークされている
オープンIssueが50未満
プログラミング言語が設定されている
1つ以上のタグが設定されている
Reviews
Reviews coming soon