mirror of
https://github.com/anthropics/claude-code.git
synced 2025-11-28 16:50:27 +08:00
- Add plugins section to main README with link to detailed docs - Create plugins/README.md with overview of all available plugins - Add detailed READMEs for agent-sdk-dev, commit-commands, and feature-dev plugins - Document all commands, agents, usage patterns, and workflows 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-authored-by: Claude <noreply@anthropic.com>
225 lines
5.8 KiB
Markdown
225 lines
5.8 KiB
Markdown
# Commit Commands Plugin
|
|
|
|
Streamline your git workflow with simple commands for committing, pushing, and creating pull requests.
|
|
|
|
## Overview
|
|
|
|
The Commit Commands Plugin automates common git operations, reducing context switching and manual command execution. Instead of running multiple git commands, use a single slash command to handle your entire workflow.
|
|
|
|
## Commands
|
|
|
|
### `/commit`
|
|
|
|
Creates a git commit with an automatically generated commit message based on staged and unstaged changes.
|
|
|
|
**What it does:**
|
|
1. Analyzes current git status
|
|
2. Reviews both staged and unstaged changes
|
|
3. Examines recent commit messages to match your repository's style
|
|
4. Drafts an appropriate commit message
|
|
5. Stages relevant files
|
|
6. Creates the commit
|
|
|
|
**Usage:**
|
|
```bash
|
|
/commit
|
|
```
|
|
|
|
**Example workflow:**
|
|
```bash
|
|
# Make some changes to your code
|
|
# Then simply run:
|
|
/commit
|
|
|
|
# Claude will:
|
|
# - Review your changes
|
|
# - Stage the files
|
|
# - Create a commit with an appropriate message
|
|
# - Show you the commit status
|
|
```
|
|
|
|
**Features:**
|
|
- Automatically drafts commit messages that match your repo's style
|
|
- Follows conventional commit practices
|
|
- Avoids committing files with secrets (.env, credentials.json)
|
|
- Includes Claude Code attribution in commit message
|
|
|
|
### `/commit-push-pr`
|
|
|
|
Complete workflow command that commits, pushes, and creates a pull request in one step.
|
|
|
|
**What it does:**
|
|
1. Creates a new branch (if currently on main)
|
|
2. Stages and commits changes with an appropriate message
|
|
3. Pushes the branch to origin
|
|
4. Creates a pull request using `gh pr create`
|
|
5. Provides the PR URL
|
|
|
|
**Usage:**
|
|
```bash
|
|
/commit-push-pr
|
|
```
|
|
|
|
**Example workflow:**
|
|
```bash
|
|
# Make your changes
|
|
# Then run:
|
|
/commit-push-pr
|
|
|
|
# Claude will:
|
|
# - Create a feature branch (if needed)
|
|
# - Commit your changes
|
|
# - Push to remote
|
|
# - Open a PR with summary and test plan
|
|
# - Give you the PR URL to review
|
|
```
|
|
|
|
**Features:**
|
|
- Analyzes all commits in the branch (not just the latest)
|
|
- Creates comprehensive PR descriptions with:
|
|
- Summary of changes (1-3 bullet points)
|
|
- Test plan checklist
|
|
- Claude Code attribution
|
|
- Handles branch creation automatically
|
|
- Uses GitHub CLI (`gh`) for PR creation
|
|
|
|
**Requirements:**
|
|
- GitHub CLI (`gh`) must be installed and authenticated
|
|
- Repository must have a remote named `origin`
|
|
|
|
### `/clean_gone`
|
|
|
|
Cleans up local branches that have been deleted from the remote repository.
|
|
|
|
**What it does:**
|
|
1. Lists all local branches to identify [gone] status
|
|
2. Identifies and removes worktrees associated with [gone] branches
|
|
3. Deletes all branches marked as [gone]
|
|
4. Provides feedback on removed branches
|
|
|
|
**Usage:**
|
|
```bash
|
|
/clean_gone
|
|
```
|
|
|
|
**Example workflow:**
|
|
```bash
|
|
# After PRs are merged and remote branches are deleted
|
|
/clean_gone
|
|
|
|
# Claude will:
|
|
# - Find all branches marked as [gone]
|
|
# - Remove any associated worktrees
|
|
# - Delete the stale local branches
|
|
# - Report what was cleaned up
|
|
```
|
|
|
|
**Features:**
|
|
- Handles both regular branches and worktree branches
|
|
- Safely removes worktrees before deleting branches
|
|
- Shows clear feedback about what was removed
|
|
- Reports if no cleanup was needed
|
|
|
|
**When to use:**
|
|
- After merging and deleting remote branches
|
|
- When your local branch list is cluttered with stale branches
|
|
- During regular repository maintenance
|
|
|
|
## Installation
|
|
|
|
This plugin is included in the Claude Code repository. The commands are automatically available when using Claude Code.
|
|
|
|
## Best Practices
|
|
|
|
### Using `/commit`
|
|
- Review the staged changes before committing
|
|
- Let Claude analyze your changes and match your repo's commit style
|
|
- Trust the automated message, but verify it's accurate
|
|
- Use for routine commits during development
|
|
|
|
### Using `/commit-push-pr`
|
|
- Use when you're ready to create a PR
|
|
- Ensure all your changes are complete and tested
|
|
- Claude will analyze the full branch history for the PR description
|
|
- Review the PR description and edit if needed
|
|
- Use when you want to minimize context switching
|
|
|
|
### Using `/clean_gone`
|
|
- Run periodically to keep your branch list clean
|
|
- Especially useful after merging multiple PRs
|
|
- Safe to run - only removes branches already deleted remotely
|
|
- Helps maintain a tidy local repository
|
|
|
|
## Workflow Integration
|
|
|
|
### Quick commit workflow:
|
|
```bash
|
|
# Write code
|
|
/commit
|
|
# Continue development
|
|
```
|
|
|
|
### Feature branch workflow:
|
|
```bash
|
|
# Develop feature across multiple commits
|
|
/commit # First commit
|
|
# More changes
|
|
/commit # Second commit
|
|
# Ready to create PR
|
|
/commit-push-pr
|
|
```
|
|
|
|
### Maintenance workflow:
|
|
```bash
|
|
# After several PRs are merged
|
|
/clean_gone
|
|
# Clean workspace ready for next feature
|
|
```
|
|
|
|
## Requirements
|
|
|
|
- Git must be installed and configured
|
|
- For `/commit-push-pr`: GitHub CLI (`gh`) must be installed and authenticated
|
|
- Repository must be a git repository with a remote
|
|
|
|
## Troubleshooting
|
|
|
|
### `/commit` creates empty commit
|
|
|
|
**Issue**: No changes to commit
|
|
|
|
**Solution**:
|
|
- Ensure you have unstaged or staged changes
|
|
- Run `git status` to verify changes exist
|
|
|
|
### `/commit-push-pr` fails to create PR
|
|
|
|
**Issue**: `gh pr create` command fails
|
|
|
|
**Solution**:
|
|
- Install GitHub CLI: `brew install gh` (macOS) or see [GitHub CLI installation](https://cli.github.com/)
|
|
- Authenticate: `gh auth login`
|
|
- Ensure repository has a GitHub remote
|
|
|
|
### `/clean_gone` doesn't find branches
|
|
|
|
**Issue**: No branches marked as [gone]
|
|
|
|
**Solution**:
|
|
- Run `git fetch --prune` to update remote tracking
|
|
- Branches must be deleted from the remote to show as [gone]
|
|
|
|
## Tips
|
|
|
|
- **Combine with other tools**: Use `/commit` during development, then `/commit-push-pr` when ready
|
|
- **Let Claude draft messages**: The commit message analysis learns from your repo's style
|
|
- **Regular cleanup**: Run `/clean_gone` weekly to maintain a clean branch list
|
|
- **Review before pushing**: Always review the commit message and changes before pushing
|
|
|
|
## Author
|
|
|
|
Anthropic (support@anthropic.com)
|
|
|
|
## Version
|
|
|
|
1.0.0
|