An intelligent git workflow automation tool that streamlines your development process with AI-powered commit messages and automated testing.
CodeUp automates your entire git workflow in a single command:
- ✅ Git Status Check - Verifies changes exist before proceeding
- 🧹 Automatic Linting - Runs your
./lintscript if present - 🧪 Automatic Testing - Runs your
./testscript if present - 📝 AI-Powered Commits - Generates contextual commit messages using OpenAI or Anthropic
- 🔄 Smart Rebasing - Handles conflicts and keeps your branch up-to-date
- 🚀 Safe Pushing - Pushes to remote with conflict detection
pip install codeup# Navigate to your git repository
cd your-project
# Run the complete workflow
codeup
# That's it! CodeUp will:
# 1. Check git status
# 2. Run linting (if ./lint exists)
# 3. Run tests (if ./test exists)
# 4. Stage all changes
# 5. Generate an AI commit message
# 6. Commit and push to remoteCodeUp analyzes your git diff and generates meaningful commit messages following conventional commit format:
# Example generated messages:
feat(auth): add OAuth2 authentication system
fix(api): resolve null pointer exception in user endpoint
docs(readme): update installation instructionsCodeUp supports both OpenAI and Anthropic for commit message generation:
# Set OpenAI API key (recommended)
codeup --set-key-openai sk-your-openai-key-here
# Or set Anthropic API key
codeup --set-key-anthropic sk-ant-your-anthropic-key-here
# Alternative: use environment variables
export OPENAI_API_KEY="sk-your-key-here"
export ANTHROPIC_API_KEY="sk-ant-your-key-here"Keys are securely stored in your system keyring.
# Skip AI and provide manual commit message
codeup -m "fix: resolve login bug"
# Skip linting and testing, just commit
codeup --just-ai-commit
# Non-interactive mode (perfect for CI/CD)
codeup --no-interactive
# Skip pushing to remote
codeup --no-push
# Skip automatic rebasing
codeup --no-rebase
# Disable auto-accept of AI commit messages
codeup --no-autoaccept
# Skip testing
codeup --no-test
# Skip linting
codeup --no-lint
# Verbose output
codeup --verbose
# Enable detailed logging
codeup --log- OpenAI GPT-3.5-turbo: Fast and reliable
- Anthropic Claude: Automatic fallback if OpenAI fails
- Analyzes git diffs to generate contextual commit messages
- Automatically detects and runs
./lintscripts - Automatically detects and runs
./testscripts - Supports UV project dependency resolution
- Cross-platform support (Windows, macOS, Linux)
- Safe rebase handling with conflict detection
- Automatic staging of changes and untracked files
- Interactive prompts for untracked files (when not in
--no-interactivemode) - Push conflict resolution with automatic retries
- System keyring integration for API key storage
- Multiple configuration sources (keyring → config file → environment)
- No credentials stored in plaintext
- Python 3.8.1 or higher
- Git repository
- OpenAI or Anthropic API key (for AI commit messages)
To contribute to CodeUp:
# Clone the repository
git clone https://github.com/zackees/codeup.git
cd codeup
# Install in development mode
pip install -e .
# Run tests
./test
# Run linting
./lintMIT License - see LICENSE file for details.
Created by Zach Vorhies - [email protected]