金色时刻 · 15:48
让好资源,触手可及
AGENT SKILL

commit

commit 是面向开发运维的 Agent Skill,来自 vinta/hal-9000。查看技能说明、操作步骤与使用约定,并通过原项目了解详细用法。

Use when creating git commits. Groups changes into atomic, single-purpose commits.

SKILL.md

下载 MD ↓
namecommit
descriptionUse when creating git commits. Groups changes into atomic, single-purpose commits.
allowed-tools["Grep", "Glob", "Read", "Write", "Edit", "Bash(git status:*)", "Bash(git diff:*)", "Bash(git branch:*)", "Bash(git log:*)", "Bash(git stash:*)", "Bash(git add:*)", "Bash(git restore:*)", "Bash(git mv:*)", "Bash(git rm:*)", "Bash(git apply:*)", "Bash(git commit:*)", "Read(//tmp/**)", "Write(//tmp/**)", "Edit(//tmp/**)"]
contextfork
user-invocableTrue
modelsonnet

Overview

Creating clean, atomic commits that follow best practices for version control hygiene. The core principle is one logical change per commit - each commit should represent a single, coherent, easily revertable modification that can stand alone.

Instructions

ALWAYS cd to project root before git commands. NEVER use git -C. Execute git commands directly without explanatory preamble. Commit immediately without confirmation prompts (never use interactive mode).

  1. Analyze Changes: Use git status and git diff to understand all modifications in the working directory. Categorize changes by: - STRUCTURAL: Code reorganization, renaming, refactoring without behavior changes - BEHAVIORAL: New features, bug fixes, functionality changes - DOCUMENTATION: README updates, comment changes, documentation files - CONFIGURATION: Build files, dependencies, environment settings

  2. Group Logically: Organize changes into logical units where each unit: - Addresses a single purpose or problem - Structure changes to be atomic and easily revertable for safe rollback - Would make sense to revert as a unit

  3. Stage Changes: Use appropriate staging strategy: - Whole file: git add <file> - Hunk-by-hunk: git diff <file> > /tmp/patch.diff, edit the patch to keep only specific hunks, then git apply --cached /tmp/patch.diff - NEVER use git reset to unstage - use git restore --staged if needed

  4. Handle Pre-commit Hooks: If hooks complain about unstaged changes: - Stash unstaged changes first: git stash push -p -m "temp: unstaged changes" (select hunks to stash) - Or stash all unstaged: git stash push --keep-index -m "temp: unstaged changes" - Commit, then restore: git stash pop

  5. Create Atomic Commits: For each logical group: - Write clear, descriptive commit messages following conventional format - Keep first line under 50 characters - Include context in body when necessary - IMPORTANT: DO NOT run any linter/formatter before committing. Commit exactly what the user changed

Attribution

Include in every commit:

🤖 Generated with Claude Code (https://claude.ai/code)
Co-Authored-By: Claude <[email protected]>

来源:vinta/hal-9000 · MIT 许可 · 许可原文 · MD 为来源页保存的历史版本