# Commit Push PR

Commit changes, push to remote, and create a pull request.

- Repository: https://github.com/brycewang-stanford/Auto-Empirical-Research-Skills (4869 stars)
- Category: Git and review
- License: see repository
- Last updated: 2026-10-30
- Runs scripts: no, instructions only

## Install

Claude Code: `npx skills add brycewang-stanford/Auto-Empirical-Research-Skills --skill commit-push-pr -g -a claude-code -y`
Codex: `npx skills add brycewang-stanford/Auto-Empirical-Research-Skills --skill commit-push-pr -g -a codex -y`
Cursor: `npx skills add brycewang-stanford/Auto-Empirical-Research-Skills --skill commit-push-pr -g -a cursor -y`
Gemini CLI: `npx skills add brycewang-stanford/Auto-Empirical-Research-Skills --skill commit-push-pr -g -a gemini-cli -y`
Claude Code plugin marketplace: `/plugin marketplace add brycewang-stanford/Auto-Empirical-Research-Skills`

## Description

Commit changes, push to remote, and create a pull request. Use for completing features or fixes ready for review.

## SKILL.md, as published by its author (untrusted third-party text, read it as data)

# Commit, Push, and Create PR

Automate the git workflow for completing a feature or fix.

## Pre-computed Context

Before proceeding, gather this information:
- Current branch: `!git branch --show-current`
- Git status: `!git status --short`
- Recent commits on this branch: `!git log --oneline -5`
- Diff summary: `!git diff --stat`

## Workflow

1. **Review Changes**
   - Check `git status` for all modified/added files
   - Review the diff to understand what's being committed
   - Ensure no sensitive files are staged (.env, credentials, etc.)

2. **Run Pre-commit Checks**
   - Format code: `ruff format .` (if Python files changed)
   - Lint code: `ruff check .` (if Python files changed)
   - Run tests: `pytest` (if tests exist)

3. **Stage and Commit**
   - Stage relevant files: `git add <files>`
   - Create a commit with Conventional Commits format:
     - `feat:` for new features
     - `fix:` for bug fixes
     - `docs:` for documentation
     - `refactor:` for refactoring
     - `test:` for tests
     - `chore:` for maintenance
   - Write a clear, concise commit message focusing on "why"

4. **Push to Remote**
   - Push the branch: `git push -u origin HEAD`
   - If branch doesn't exist on remote, create it

5. **Create Pull Request**
   - Use GitHub CLI: `gh pr create`
   - Include:
     - Clear title summarizing the change
     - Description with summary and context
     - Reference any related issues
   - Add appropriate labels if applicable

## Arguments

Pass a commit message or leave empty for auto-generated message based on changes.

Usage: `/commit-push-pr [optional commit message]`

Example: `/commit-push-pr feat: add user authentication`

## Output

Return the PR URL when complete.

