| name | commit |
| description | Commit changes following project quality gates and best practices. Run before creating any git commit. |
Commit Skill
Use this skill when committing changes to ensure quality and correctness.
Pre-Commit Checklist
Run these in order. Do not commit if any fail.
pnpm format — Format all source files
pnpm lint — Check for ESLint errors
pnpm typecheck — Verify TypeScript compiles
pnpm build — Ensure production build succeeds (optional for small changes, required before PR)
Staging Rules
- Only stage files related to the current task. Review
git status carefully.
- Never stage unrelated files — markdown notes, scratch files,
.monorepo-tarballs/, agent/, etc. should not be committed unless explicitly requested.
- Use specific file paths with
git add, not git add . or git add -A.
- Review
git diff --staged before committing to verify only intended changes are included.
Commit Message Format
- Use conventional commit prefixes:
feat:, fix:, style:, chore:, refactor:, docs:, test:
- Keep the first line under 72 characters
- Add a blank line then bullet points for multi-change commits
- End with
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
- Use a HEREDOC to pass the message to avoid shell escaping issues
Things to Watch For
- Secrets: Never commit
.env, credentials, or API keys
- Large files: Don't commit binaries, build artifacts, or font files (check
.gitignore)
- Formatting drift: If oxfmt changed files you didn't touch, stage them separately or skip them
Example Flow
pnpm format
pnpm lint
pnpm typecheck
git status
git diff
git add <specific-files>
git diff --staged
git commit -m "$(cat <<'EOF'
feat: description of change
- Detail 1
- Detail 2
EOF
)"