Claude-skill-registry-data commit
Use when work is complete and ready to commit. Triggers after code review passes, when asked to "commit", "save this", or "wrap up". Runs quality checks, updates changelog, creates commit.
install
source · Clone the upstream repo
git clone https://github.com/majiayu000/claude-skill-registry-data
Claude Code · Install into ~/.claude/skills/
T=$(mktemp -d) && git clone --depth=1 https://github.com/majiayu000/claude-skill-registry-data "$T" && mkdir -p ~/.claude/skills && cp -r "$T/data/make-commit" ~/.claude/skills/majiayu000-claude-skill-registry-data-commit-b4cc6b && rm -rf "$T"
manifest:
data/make-commit/SKILL.mdsource content
Commit
Commit workflow that ensures quality gates pass and changelog is updated before committing.
When to Use
- After
passes with no critical issues/code-review - When asked to commit, save, or wrap up work
- Before creating a PR
Workflow
┌─────────────────────┐ │ 1. Run quality │ │ checks │ │ ty → ruff → pytest └─────────┬───────────┘ │ ▼ ┌─────────────┐ │ All pass? │───No──→ STOP. Fix issues first. └─────┬───────┘ │Yes ▼ ┌─────────────────────┐ │ 2. Update CHANGELOG │ └─────────┬───────────┘ │ ▼ ┌─────────────────────┐ │ 3. Stage + Commit │ └─────────┬───────────┘ │ ▼ ┌─────────────────────┐ │ 4. Verify success │ └─────────────────────┘
Step 1: Run Quality Checks
Run in this order. Stop on first failure.
ty # Type checking ruff check . # Linting ruff format --check . # Format check pytest # Tests
If any fail: Fix the issue. Do not proceed to commit.
No exceptions:
- "It's a flaky test" → Fix the test or mark it properly
- "I manually tested it" → Automated tests must pass
- "We can fix it later" → Later never comes. Fix now.
Step 2: Update CHANGELOG
Create or update
CHANGELOG.md in project root.
IMPORTANT: Review ALL staged changes, not just the most recent work. The changelog entry must cover everything being committed. If multiple features, fixes, or changes are being committed together, document all of them.
Format:
# Changelog ## [Unreleased] ### Added - New feature description ### Changed - Modified behavior description ### Fixed - Bug fix description ### Removed - Removed feature description
Rules:
- Add entry under
section[Unreleased] - Use appropriate category (Added/Changed/Fixed/Removed)
- Be concise but specific - what changed and why it matters
- If CHANGELOG.md doesn't exist, create it
Step 3: Stage and Commit
git add -A # Or specific files if preferred git commit -m "$(cat <<'EOF' Short summary in imperative mood (max 50 chars) Longer description if needed. Explain what changed and why. Keep lines under 72 characters. Co-Authored-By: Claude <noreply@anthropic.com> EOF )"
Commit message guidelines:
- First line: imperative mood, max 50 chars ("Add feature" not "Added feature")
- Blank line after summary
- Body: explain what and why, not how
- Reference issues if applicable
- Cover ALL changes: Review
to ensure the message describes everything being committed, not just the most recent work. If the user wants only a subset of changes committed, they will specify which ones.git diff --staged
Step 4: Verify Success
git status # Should show clean working tree git log -1 # Verify commit message looks correct
Red Flags - STOP
- Tests failing → Fix before commit
- Linting errors → Fix before commit
- Type errors → Fix before commit
- No changelog entry → Add one
- Vague commit message → Rewrite it
Common Mistakes
| Mistake | Fix |
|---|---|
| Skipping checks "to save time" | Checks catch bugs. Run them. |
| Committing with failing tests | Fix the test or the code |
| Forgetting changelog | Always update before commit |
| "WIP" or "fix" commit messages | Write meaningful messages |
| Not verifying after commit | Always check git status/log |