codeup


Namecodeup JSON
Version 1.0.22 PyPI version JSON
download
home_pagehttps://github.com/zackees/codeup
SummaryIntelligent git workflow automation tool with AI-powered commit messages
upload_time2025-10-28 22:23:57
maintainerZachary Vorhies
docs_urlNone
authorNone
requires_python>=3.10
licenseMIT
keywords git ai commit automation workflow
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI No Travis.
coveralls test coverage No coveralls.
            # CodeUp - Intelligent Git Workflow Automation

**An intelligent git workflow automation tool that streamlines your development process with AI-powered commit messages and automated testing.**

![here-title](https://github.com/user-attachments/assets/c661d973-3f44-4a70-b3ae-cb75bbf09285)

## What is CodeUp?

CodeUp automates your entire git workflow in a single command:
- โœ… **Git Status Check** - Verifies changes exist before proceeding
- ๐Ÿงน **Automatic Linting** - Runs your `./lint` script if present
- ๐Ÿงช **Automatic Testing** - Runs your `./test` script 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

## Quick Start

### Installation

```bash
pip install codeup
```

### Basic Usage

```bash
# 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 remote
```

### AI-Powered Commit Messages

CodeUp analyzes your git diff and generates meaningful commit messages following conventional commit format:

```bash
# Example generated messages:
feat(auth): add OAuth2 authentication system
fix(api): resolve null pointer exception in user endpoint
docs(readme): update installation instructions
```

## Configuration

### Setting Up API Keys

CodeUp supports both OpenAI and Anthropic for commit message generation:

```bash
# 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.

## Command Line Options

```bash
# 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
```

## Features

### ๐Ÿค– Dual AI Provider Support
- **OpenAI GPT-3.5-turbo**: Fast and reliable
- **Anthropic Claude**: Automatic fallback if OpenAI fails
- Analyzes git diffs to generate contextual commit messages

### ๐Ÿ”ง Development Tool Integration
- Automatically detects and runs `./lint` scripts
- Automatically detects and runs `./test` scripts
- Supports UV project dependency resolution
- Cross-platform support (Windows, macOS, Linux)

### ๐Ÿ›ก๏ธ Smart Git Operations
- Safe rebase handling with conflict detection
- Automatic staging of changes and untracked files
- Interactive prompts for untracked files (when not in `--no-interactive` mode)
- Push conflict resolution with automatic retries

### ๐Ÿ” Secure Credential Management
- System keyring integration for API key storage
- Multiple configuration sources (keyring โ†’ config file โ†’ environment)
- No credentials stored in plaintext

## Requirements

- Python 3.8.1 or higher
- Git repository
- OpenAI or Anthropic API key (for AI commit messages)

## Development

To contribute to CodeUp:

```bash
# 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
./lint
```

## License

MIT License - see [LICENSE](LICENSE) file for details.

## Author

Created by [Zach Vorhies](https://github.com/zackees) - zach@zachvorhies.com

            

Raw data

            {
    "_id": null,
    "home_page": "https://github.com/zackees/codeup",
    "name": "codeup",
    "maintainer": "Zachary Vorhies",
    "docs_url": null,
    "requires_python": ">=3.10",
    "maintainer_email": null,
    "keywords": "git, ai, commit, automation, workflow",
    "author": null,
    "author_email": "Zach Vorhies <zach@zachvorhies.com>",
    "download_url": null,
    "platform": null,
    "description": "# CodeUp - Intelligent Git Workflow Automation\r\n\r\n**An intelligent git workflow automation tool that streamlines your development process with AI-powered commit messages and automated testing.**\r\n\r\n![here-title](https://github.com/user-attachments/assets/c661d973-3f44-4a70-b3ae-cb75bbf09285)\r\n\r\n## What is CodeUp?\r\n\r\nCodeUp automates your entire git workflow in a single command:\r\n- \u2705 **Git Status Check** - Verifies changes exist before proceeding\r\n- \ud83e\uddf9 **Automatic Linting** - Runs your `./lint` script if present\r\n- \ud83e\uddea **Automatic Testing** - Runs your `./test` script if present\r\n- \ud83d\udcdd **AI-Powered Commits** - Generates contextual commit messages using OpenAI or Anthropic\r\n- \ud83d\udd04 **Smart Rebasing** - Handles conflicts and keeps your branch up-to-date\r\n- \ud83d\ude80 **Safe Pushing** - Pushes to remote with conflict detection\r\n\r\n## Quick Start\r\n\r\n### Installation\r\n\r\n```bash\r\npip install codeup\r\n```\r\n\r\n### Basic Usage\r\n\r\n```bash\r\n# Navigate to your git repository\r\ncd your-project\r\n\r\n# Run the complete workflow\r\ncodeup\r\n\r\n# That's it! CodeUp will:\r\n# 1. Check git status\r\n# 2. Run linting (if ./lint exists)\r\n# 3. Run tests (if ./test exists)\r\n# 4. Stage all changes\r\n# 5. Generate an AI commit message\r\n# 6. Commit and push to remote\r\n```\r\n\r\n### AI-Powered Commit Messages\r\n\r\nCodeUp analyzes your git diff and generates meaningful commit messages following conventional commit format:\r\n\r\n```bash\r\n# Example generated messages:\r\nfeat(auth): add OAuth2 authentication system\r\nfix(api): resolve null pointer exception in user endpoint\r\ndocs(readme): update installation instructions\r\n```\r\n\r\n## Configuration\r\n\r\n### Setting Up API Keys\r\n\r\nCodeUp supports both OpenAI and Anthropic for commit message generation:\r\n\r\n```bash\r\n# Set OpenAI API key (recommended)\r\ncodeup --set-key-openai sk-your-openai-key-here\r\n\r\n# Or set Anthropic API key\r\ncodeup --set-key-anthropic sk-ant-your-anthropic-key-here\r\n\r\n# Alternative: use environment variables\r\nexport OPENAI_API_KEY=\"sk-your-key-here\"\r\nexport ANTHROPIC_API_KEY=\"sk-ant-your-key-here\"\r\n```\r\n\r\nKeys are securely stored in your system keyring.\r\n\r\n## Command Line Options\r\n\r\n```bash\r\n# Skip AI and provide manual commit message\r\ncodeup -m \"fix: resolve login bug\"\r\n\r\n# Skip linting and testing, just commit\r\ncodeup --just-ai-commit\r\n\r\n# Non-interactive mode (perfect for CI/CD)\r\ncodeup --no-interactive\r\n\r\n# Skip pushing to remote\r\ncodeup --no-push\r\n\r\n# Skip automatic rebasing\r\ncodeup --no-rebase\r\n\r\n# Disable auto-accept of AI commit messages\r\ncodeup --no-autoaccept\r\n\r\n# Skip testing\r\ncodeup --no-test\r\n\r\n# Skip linting\r\ncodeup --no-lint\r\n\r\n# Verbose output\r\ncodeup --verbose\r\n\r\n# Enable detailed logging\r\ncodeup --log\r\n```\r\n\r\n## Features\r\n\r\n### \ud83e\udd16 Dual AI Provider Support\r\n- **OpenAI GPT-3.5-turbo**: Fast and reliable\r\n- **Anthropic Claude**: Automatic fallback if OpenAI fails\r\n- Analyzes git diffs to generate contextual commit messages\r\n\r\n### \ud83d\udd27 Development Tool Integration\r\n- Automatically detects and runs `./lint` scripts\r\n- Automatically detects and runs `./test` scripts\r\n- Supports UV project dependency resolution\r\n- Cross-platform support (Windows, macOS, Linux)\r\n\r\n### \ud83d\udee1\ufe0f Smart Git Operations\r\n- Safe rebase handling with conflict detection\r\n- Automatic staging of changes and untracked files\r\n- Interactive prompts for untracked files (when not in `--no-interactive` mode)\r\n- Push conflict resolution with automatic retries\r\n\r\n### \ud83d\udd10 Secure Credential Management\r\n- System keyring integration for API key storage\r\n- Multiple configuration sources (keyring \u2192 config file \u2192 environment)\r\n- No credentials stored in plaintext\r\n\r\n## Requirements\r\n\r\n- Python 3.8.1 or higher\r\n- Git repository\r\n- OpenAI or Anthropic API key (for AI commit messages)\r\n\r\n## Development\r\n\r\nTo contribute to CodeUp:\r\n\r\n```bash\r\n# Clone the repository\r\ngit clone https://github.com/zackees/codeup.git\r\ncd codeup\r\n\r\n# Install in development mode\r\npip install -e .\r\n\r\n# Run tests\r\n./test\r\n\r\n# Run linting\r\n./lint\r\n```\r\n\r\n## License\r\n\r\nMIT License - see [LICENSE](LICENSE) file for details.\r\n\r\n## Author\r\n\r\nCreated by [Zach Vorhies](https://github.com/zackees) - zach@zachvorhies.com\r\n",
    "bugtrack_url": null,
    "license": "MIT",
    "summary": "Intelligent git workflow automation tool with AI-powered commit messages",
    "version": "1.0.22",
    "project_urls": {
        "Documentation": "https://github.com/zackees/codeup#readme",
        "Homepage": "https://github.com/zackees/codeup",
        "Issues": "https://github.com/zackees/codeup/issues",
        "Repository": "https://github.com/zackees/codeup"
    },
    "split_keywords": [
        "git",
        " ai",
        " commit",
        " automation",
        " workflow"
    ],
    "urls": [
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "f146e385aedcf8c341ad56c99acd9b5f320a8429bf9104586f449ea26886f3e5",
                "md5": "f3ccc52aa3a8195889e6249f7fa2a50b",
                "sha256": "d4522d4eb75d623e156dd79c8f0bfbbad0b2fa18b3b00d81d104306cb407dc55"
            },
            "downloads": -1,
            "filename": "codeup-1.0.22-py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "f3ccc52aa3a8195889e6249f7fa2a50b",
            "packagetype": "bdist_wheel",
            "python_version": "py3",
            "requires_python": ">=3.10",
            "size": 46675,
            "upload_time": "2025-10-28T22:23:57",
            "upload_time_iso_8601": "2025-10-28T22:23:57.494775Z",
            "url": "https://files.pythonhosted.org/packages/f1/46/e385aedcf8c341ad56c99acd9b5f320a8429bf9104586f449ea26886f3e5/codeup-1.0.22-py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2025-10-28 22:23:57",
    "github": true,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "github_user": "zackees",
    "github_project": "codeup",
    "travis_ci": false,
    "coveralls": false,
    "github_actions": true,
    "tox": true,
    "lcname": "codeup"
}
        
Elapsed time: 2.01778s