Install gitaiflow as one native binary for macOS, Linux and Windows — no Python or package manager needed.
AI commit messages, changelogs and release notes from your terminal, scripts and CI.
curl -fsSL https://install.djangoplay.org/gitaiflow | bash
curl -fsSL https://install.djangoplay.org/gitaiflow | bash -s -- v1.1.0
gitaiflow --version
~/.local/bin/gitaiflow with no sudo; if that folder is not on your PATH, the installer prints the line to add. Windows installs to %LOCALAPPDATA%\Programs\gitaiflow and adds it to your user PATH. Set GITAIFLOW_INSTALL_DIR to change the macOS & Linux location.gitaiflow --uninstall removes the binary and local state files.gitaiflow needs four settings before its first run: AI_PROVIDER, AI_API_KEY, AI_BASE_URL, and AI_MODEL. The installer creates an empty ~/.gitaiflow/config.env for exactly this — fill it in once and you are set. Any OpenAI-compatible provider works, from a free cloud model to Ollama on your own machine.
Settings are read from real environment variables first, then a project-local .env, then ~/.gitaiflow/config.env.
AI_PROVIDER=geminiAI_API_KEY=<your-key>AI_BASE_URL=https://generativelanguage.googleapis.com/v1beta/openaiAI_MODEL=gemini-flash-lite-latest
| Name | Default | Notes |
|---|---|---|
| AI_PROVIDER | Required | Free-form provider label (gemini, ollama, openai, custom, …); only affects display and usage-log grouping. |
| AI_API_KEY | Required | Needed for every provider, including local ones that ignore its value — use any non-empty placeholder for Ollama. |
| AI_BASE_URL | Required | Full OpenAI-compatible chat-completions base URL. |
| AI_MODEL | Required | Model name/id exactly as the configured provider expects it, e.g. gemini-flash-lite-latest, llama3.2:3b, gpt-4.1-mini. |
AI_PROVIDER=ollamaAI_API_KEY=not-neededAI_BASE_URL=http://127.0.0.1:11434/v1AI_MODEL=llama3.2:3b
In any Git repository with uncommitted changes, run the command below. gitaiflow reads your diff and prints a ready-to-use commit message, and saves a structured summary you can reuse for changelogs and release notes.
gitaiflow --change-summary