Everything practical for running gitaiflow: how to install it, how to configure it, every CLI flag, and how it handles security and privacy.
The existing gitaiflow CLI and the new MCP integration share the same AI/runtime configuration. The MCP server is an adapter around the AOT executable; it does not introduce a second AI configuration system.
For the CLI, configure the AI provider in ~/.gitaiflow/config.env. For MCP, keep transport, workspace, authentication, timeout, and rate-limit settings in .mcp.env or the deployment environment.
AI_PROVIDER=custom AI_BASE_URL=<endpoint> AI_API_KEY=<key> AI_MODEL=<model>
The v1.1.3 integration model separates the two concerns:
For more details, refer to the documentation.
| Env Variable | Default | Notes |
|---|---|---|
| AI_PROVIDER | Required | Provider label used by gitaiflow, e.g. gemini, ollama, openai, or custom. |
| AI_API_KEY | Required | Provider credential. Local providers still require a non-empty value under the current configuration contract. |
| AI_BASE_URL | Required | OpenAI-compatible chat-completions endpoint used by gitaiflow. |
| AI_MODEL | Required | Model name/id exactly as the configured provider expects it. |
| MCP_TRANSPORT | stdio | MCP transport. Use stdio for local clients or streamable-http for service-style deployments. |
| MCP_API_TOKEN | Optional | Bearer token used by the streamable HTTP MCP endpoint when authentication is enabled. |
| MCP_WORKSPACE | Current workspace | Allowed parent workspace containing one or more Git repositories. |
| MCP_ALLOWED_WORKSPACES | MCP_WORKSPACE | Workspace allow-list enforced before a repository is selected and executed. |
| MCP_EXECUTION_TIMEOUT | 120 | Maximum execution time for an MCP request in seconds. |
| MCP_RATE_LIMIT | 5 | Maximum MCP requests per rate window; local verification may use a higher value. |
| MCP_RATE_WINDOW_SECONDS | 60 | Rate-limit window in seconds. |
gitaiflow has one core execution engine — the native AOT CLI — and v1.1.3 adds MCP integrations around that same binary: a standalone MCP server, a Claude Desktop extension, and a Docker deployment path. Choose the installation path that matches how you want to use it.
The existing gitaiflow CLI remains the core execution engine. v1.1.3 ships the same standalone native AOT binary for macOS, Linux, and Windows — no Python runtime is required.
curl -fsSL https://install.djangoplay.org/gitaiflow | bash
curl -fsSL https://install.djangoplay.org/gitaiflow | bash -s -- v1.1.3
irm https://install.djangoplay.org/gitaiflow.ps1 | iex
$env:GITAIFLOW_VERSION = "v1.1.3"; irm https://install.djangoplay.org/gitaiflow.ps1 | iex
For the complete MCP setup, Docker deployment, Claude Desktop integration, configuration, verification, and troubleshooting:
gitaiflow documentation →--path PATHFile or directory to summarize (default: current directory).--remote / --base-branchOverride the comparison remote (defaults to the branch’s upstream, then origin) and base branch (defaults to the remote’s detected default branch, falling back to main).--skip [paths...]Exclude directories, exact file paths, or file-type patterns (e.g. *.svg) from the diff.-o, --output-dir DIRCustom root for change-summary output (default change-summary/); reuse the same value with --changelog.--markdownAlso render a human-facing Markdown view alongside the JSON artifact.--no-chunkSend the whole diff as a single AI request instead of per-directory chunks.--change-summaryPrint just the generated commit title + body to stdout (pipeable into git commit -F).--last-summaryPrint the most recently generated change-summary straight from disk — no git diff, no AI call, no new run.--regenerate-summaryForce a fresh AI summary for every group, even if an identical diff was already summarized on a previous day.--show-analysisWith --change-summary, also print the model’s raw reasoning that preceded its answer (debugging).--allow-billingSkip the free-model pricing guard and proceed even if the configured model may be billed.--changelog --since ... [--until ...]Generate/prepend a CHANGELOG.md entry for a date range, grouped by conventional-commit type.--release-notesGenerate or overwrite RELEASE_NOTES.md from the current version’s CHANGELOG.md entry (run --changelog first if it doesn’t exist yet).--list-models [--free-only] [--json]List OpenRouter’s live model catalog; no API key required.--usage [version | --since --until]Query the local usage log for the last run, a specific version, or a custom date range.--telemetry enable|disable|status|historySet or inspect the durable, locally saved telemetry consent, independent of the current session.--uninstallCompletely remove the gitaiflow binary and local state files.