git-coco
v0.55.0
Published
zero-effort git commits with coco.
Readme
coco
An AI-powered git assistant that generates meaningful commit messages, creates changelogs, explores repository history, and streamlines your development workflow.
✨ Key Features:
- 🤖 AI-Powered Commit Messages - Generate contextual commits from your staged changes
- 📋 Conventional Commits - Full support with automatic validation and formatting (extends to
coco commit --splittoo — every group's title respects the spec) - 🔧 Commitlint Integration - Seamless integration with your existing commitlint configuration
- 🏠 Local AI Support - Run completely offline with Ollama (no API costs, full privacy)
- 🖥️ Coco UI Git Workstation - Thirteen top-level views (history, status, diff, compose, branches, tags, stash, worktrees, pull-request, conflicts, reflog, bisect, changelog) reachable via
g-prefixed chords, with an interactive command palette (:), global search (/), and one-keystroke workflows:Ssplit staged changes,Lgenerate a changelog,Ccreate a PR seeded from changelog,Eopen the commit draft in$EDITOR - 🎯
--repo <dir>global flag - Drive any coco command against any repository withoutcd-ing first - 📦 Package Manager Friendly - Works with npm, yarn, and pnpm
- 👥 Team Ready - Shared configurations and enterprise deployment
Quick Start
# Try without installing
npx git-coco@latest init
# Install globally
npm install -g git-coco
# Setup and configure
coco init
# Generate your first commit
git add .
coco -iCommands
coco commit- Generate commit messages from staged changescoco changelog- Create changelogs from commit historycoco recap- Summarize recent changes and activitycoco review- AI-powered code review of your changescoco log- Explore commit history with graph, filters, JSON output, and commit detailscoco ui- Open the full-screen Git workstation TUIcoco init- Interactive setup wizard
Usage Examples
Basic Workflow
# Make your changes
git add .
# Generate commit message (interactive mode recommended)
coco -i
# Or use stdout mode
git commit -m "$(coco)"Conventional Commits
# Enable conventional commits format
coco --conventional
# With additional context
coco -a "Fixes login timeout" --conventional
# Include ticket from branch name
coco --append-ticket --conventionalTeam Workflows
# Generate changelog for releases
coco changelog --since-last-tag
# Summarize recent work
coco recap --yesterday
# Code review before committing
coco review
# Explore commit history
coco ui
coco ui --view status
coco log --limit 20
coco log -i
coco log --view full --limit 20
coco log --all --limit 20
coco log --author "Grace Hopper" --path src
coco log --commit HEAD
coco log --format jsonNavigating the TUI
coco ui and coco log -i share a chord-driven navigation model. Press g and then a second key to jump anywhere; < (or Esc) pops the navigation stack back.
g h history g c compose g x conflicts
g s status g b branches g r reflog
g d diff g t tags < back
g z stash Esc back / close modal
g w worktrees ? help overlay
g p pull request : command paletteThe command palette (:) is an interactive launcher with fuzzy filter and recently-used at the top — every keybinding and workflow action is reachable from there. / searches the active view (history, branches, tags, stash, or reflog). On branches, tags, and history, press m to mark a ref as the compare base — then Enter on a second ref opens a git diff <base>..<head> view. See the Coco UI and TUI Navigation wiki pages for the full keymap.
Configuration
Configure coco for your workflow with the interactive setup wizard:
# Setup wizard
coco init
# Project-specific setup
coco init --scope projectAI Providers:
- OpenAI - GPT-4o, GPT-4o-mini (API key required)
- Anthropic - Claude 3.5 Sonnet (API key required)
- Ollama - Local models, no API costs, full privacy
Example Configuration:
{
"mode": "interactive",
"conventionalCommits": true,
"logTui": {
"theme": {
"preset": "catppuccin"
}
},
"service": {
"provider": "openai",
"model": "gpt-4o"
}
}Documentation
For comprehensive guides, advanced usage, and detailed configuration options, visit our complete documentation:
📚 Coco Wiki
Essential Guides:
- Getting Started - Complete beginner's guide from installation to first commit
- Command Reference - Detailed command options and examples
- Configuration Overview - All configuration options and setup methods
- Coco UI - GitKraken-style terminal workstation guide
- Interactive Log TUI - History-focused
coco log -iguide - Team Collaboration - Enterprise deployment and team adoption strategies
Advanced Resources:
- Using Ollama - Local AI setup for privacy and cost control
- Advanced Usage - Custom prompts, automation, and power-user features
- Troubleshooting - Solutions for common issues and debugging
🆘 Need Help?
- Troubleshooting Guide - Comprehensive problem-solving resource
- GitHub Issues - Bug reports and feature requests
- Discord Community - Real-time help and discussion
Contribution
We welcome contributions! Check out our CONTRIBUTING.md for more information.
Project Stats
License
MIT © gfargo
