dotfiles/agents/skills/git-commit/SKILL.md
Format, lint, test, and commit changes. Detects repo tooling automatically.
npx skillsauth add szymonkaliski/home-configuration git-commitInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
Commit all changes in the repo with proper formatting, linting, and testing.
Check what tooling exists:
!ls -la package.json Makefile Cargo.toml pyproject.toml go.mod 2>/dev/null || true
!cat package.json 2>/dev/null | head -50 || true
Study the repo's commit message style:
!git log --oneline -20 2>/dev/null || true
Note the pattern: conventional commits? imperative mood? lowercase? prefix? scope? Look at casing, punctuation, length, and structure. Your commit message MUST follow this pattern.
!git status
!git diff
!git diff --cached
Based on what you found:
git add the relevant files by path (never git add -A — avoid staging .env, credentials, or large binaries) and commit with a message matching the repo's style. Go from most independent change to most dependent.If $ARGUMENTS is provided, use it as the commit message for a single commit of all changes. Otherwise, generate messages matching the repo's commit style, splitting into multiple commits when it matches the repo's pattern.
Fix any formatting/lint issues automatically. If tests fail, report and stop.
development
Test-driven bug fixing and feature development. Use when fixing bugs or building features — works with test suites or ad-hoc repro scripts. Enforces red-green-refactor vertical slices.
tools
Open the current plan file in nvim for user review
testing
Review uncommitted changes for issues, missed items, and improvements. Use when reviewing before commit or when user asks to check their work.
tools
Understand current work context from recent changes. Use at session start or when resuming work.