An intelligent, AI-powered Git assistant.
Go beyond simple commits. Let GCT explain, create, and conversationally refine your code changes with the power of AI.
- Conversational AI Commits: Generate a commit message and then "chat" with the AI to refine it until it's perfect.
- Multi-Provider Support: Works with over 10 AI providers, including OpenAI, Anthropic, Google (AI Studio & Vertex AI), Mistral, Amazon Bedrock, and any OpenAI-compatible endpoint.
- AI-Generated Changelogs: Automatically create user-facing changelogs from any set of git changes (
gct ai log). - AI-Powered Diff Analysis: Get a high-level explanation of any commit, branch, or staged changes (
gct ai diff). - Guided Setup: An interactive wizard (
gct init) makes setup for any provider simple and fast. - Custom Guidelines: Enforce project-specific styles for commits and changelogs by providing your own guide files.
The easiest way to get started is with the model preset wizard. It provides a curated list of popular, high-performance models and configures the provider for you. In your project directory, run:
gct init modelFor a fully manual setup where you enter the provider and model name yourself, run gct init.
GCT is highly flexible. You can configure it using a local gct.yaml file, a global config file (e.g. ~/.config/gct/config.yaml), or with environment variables. This allows you to set project-specific guidelines while keeping your API keys global or managed by your shell.
For a detailed guide on the configuration hierarchy and all available options, please see the Configuration Reference.
Security Note: When using file-based configuration, your API key is stored in plain text. The gct init command will automatically add gct.yaml to your .gitignore file to prevent accidentally committing secrets.
GCT supports a wide range of providers:
Google AI Studio, Google Vertex AI, OpenAI, OpenAI Compatible, Azure OpenAI, Anthropic, OpenRouter, DeepSeek, Mistral, Alibaba, Hugging Face, Amazon Bedrock, and xAI.
provider: The AI service you want to use.model: The specific model/deployment name from your chosen provider.api: Your secret API key.commits.guides&changelogs.guides: Lists of local files containing formatting rules.endpoint: (Optional) The base URL, only for the"OpenAI Compatible"provider.gcp_project_id,gcp_region: (Optional) Required only for"Google Vertex AI".aws_region,aws_access_key_id,aws_secret_access_key: (Optional) Required only for"Amazon Bedrock".azure_resource_name: (Optional) Required only for"Azure OpenAI".cache.enabled: (Optional) To store generated responses locally and reduce costs.
Choosing a model can be tough. Here are some recommended starting points for GCT's use case:
| Recommendation | Model ID | Best For... |
|---|---|---|
| Best Overall | gpt-5-mini (OpenAI) |
Top-tier reasoning, speed, and instruction following. |
| Best Balance | claude-3-5-haiku-latest (Anthropic) |
Excellent performance at a great price point. |
| Fastest & Best Value | gemini-2.5-flash (Google) |
High-speed, low-cost tasks like ai log & chat. |
| Best Open Model | openai/gpt-oss-120b (via OpenRouter) |
State-of-the-art open-source performance. |
GCT is a command-line tool. Here are the available commands, grouped by category:
| Command | Description |
|---|---|
gct init model |
Starts a wizard with recommended models for easy setup. |
gct init |
Interactively creates a gct.yaml config file with manual input. |
gct version |
Shows GCT version information. |
gct help |
Shows the detailed help message. |
| Command | Description |
|---|---|
gct commit |
Creates a new git commit using an interactive TUI form. |
gct commit edit |
Edits the previous commit's message using the same TUI. |
| Command | Description |
|---|---|
gct ai commit [context] |
Generates and conversationally refines a commit message from staged changes. |
gct ai diff [args] |
Asks AI to explain a set of code changes in a readable format. |
gct ai log [args] |
Generates a user-facing changelog entry from code changes. |
GCT must be built from source. To do so, you need to have go installed.
# For Linux/macOS
./build/build-all.sh
# For Windows
./build/build-all.ps1For more detailed guides, please refer to the GCT Docs.
GCT is developed by Zusty < Zillowe Foundation, part of the Zillowe Development Suite (ZDS).