A collection of powerful CLI tools to enhance developer workflow.
Command | Description | Config Required |
---|---|---|
gitit |
AI-powered commit message & changelog generator | None |
gitis |
GitHub issues analyzer and tracker | GITHUB_PERSONAL_ACCESS_TOKEN |
ccat |
Enhanced file concatenation with filters and tree view | None |
# Install latest version from GitHub
pip install git+https://github.com/unclecode/ucli.git
# Update to latest version
pip install --upgrade git+https://github.com/unclecode/ucli.git
Required only for gitis
:
# Add to your ~/.bashrc or ~/.zshrc
export GITHUB_PERSONAL_ACCESS_TOKEN="your-token-here"
Analyzes uncommitted changes and generates AI-powered commit messages and changelogs.
Output Location: .ucli/
directory in your project
.ucli/changelog.md
: Formatted changelog in Markdown.ucli/changelog.json
: Structured data for programmatic use
# From your git repository root:
# 1. Make your changes
git add file1.py file2.js
# 2. Generate commit message & changelog
gitit
# 3. Optionally review generated files in .ucli/
# 4. Apply the commit with generated message
gitit --commit
# Additional options:
gitit --branch # Analyze changes since branching from main
gitit --help # Show all available options
Analyzes and tracks GitHub issues for your repository.
Output Location: .ucli/git_issues.md
# Must be run from a git repository directory
# List all open issues
gitis --state open
# Find issues with specific keywords
gitis --keywords bug feature
# Find issues where you were last commenter
gitis --owner-last
# Additional options:
gitis --help # Show all available options
Concatenates and displays file contents with optional filters and a directory tree view.
# Basic usage:
ccat dir1 dir2
# Include only specific file types:
ccat -i '\.py$' dir1
# Exclude files or directories:
ccat -e 'test' dir1 dir2
# Bypass .gitignore rules:
ccat -g dir1
# Additional options:
ccat --help # Show all available options
.ucli/ # Created in your project directory
├── changelog.md # Latest generated changelog
├── changelog.json # Structured changelog data
└── git_issues.md # Repository issues report
your-project/ # Your git repository
├── .ucli/ # UCLI working directory
├── .git/ # Git directory
└── ... # Your project files
# Clone the repository
git clone https://github.com/unclecode/ucli.git
cd ucli
# Install in development mode
pip install -e .
- Initialize your git repository (if not already done):
git init