freshcrate
Skin:/
Home > Testing > Gito

Gito

An AI-powered GitHub code review tool that uses LLMs to detect high-confidence, high-impact issues—such as security vulnerabilities, bugs, and maintainability concerns.

Why this rank:Strong adoptionRecent releaseHealthy release cadence

Description

An AI-powered GitHub code review tool that uses LLMs to detect high-confidence, high-impact issues—such as security vulnerabilities, bugs, and maintainability concerns.

README

Gito: AI Code Reviewer

PYPI Release PyLint Tests Code Coverage Stand With Ukraine License

Gito is an open-source AI code reviewer that works with any language model provider. It detects issues in GitHub pull requests or local codebase changes—instantly, reliably, and without vendor lock-in.

Get consistent, thorough code reviews in seconds—no waiting for human availability.

📋 Table of Contents

✨ Why Gito?

  • [⚡] Lightning Fast: Get detailed code reviews in seconds, not days—powered by parallelized LLM processing
  • [🔧] Vendor Agnostic: Works with any language model provider (OpenAI, Anthropic, Google, local models, etc.)
  • [🔒] Private & Secure: Your code goes directly to your chosen LLM inference provider or local model—no intermediary servers
  • [🌐] Universal: Supports all major programming languages and frameworks
  • [🔍] Comprehensive Analysis: Detect issues across security, performance, maintainability, best practices, and much more
  • [📈] Consistent Quality: Never tired, never biased—consistent review quality every time
  • [🚀] Easy Integration: Automatically reviews pull requests via CI/CD workflows (GitHub Actions, etc), posts results as PR comments, and reacts to maintainer comments
  • [🎛️] Infinitely Flexible: Adapt to any project's standards—configure review rules, severity levels, and focus areas, build custom workflows

🎯 Perfect For

  • Solo developers who want expert-level code review without the wait
  • Teams looking to catch issues before human review
  • Open source projects maintaining high code quality at scale
  • CI/CD pipelines requiring automated quality gates

✨ See code review in action

🌐 Supported Platforms & Integrations

🧩 Git Platforms

Platform Status
GitHub ✅ Supported
GitLab 🧪 Supported (Beta)
Bitbucket 🛠️ Planned
Local / CLI ✅ Supported

ℹ️ Gito ships ready-to-use CI/CD workflows for these platforms, with full support for triggering actions via PR comments, automatic review posting, and PR lifecycle integration.

Not on this list? Gito works anywhere—via custom CI/CD pipelines or directly from the CLI.

🤖 LLM Providers / Runtimes

Provider / Runtime Status
OpenAI API ✅ Supported
Anthropic API ✅ Supported
Google API ✅ Supported
Local LLM Services
Ollama, LM Studio, vLLM, etc.
✅ Supported
Embedded Inference
PyTorch / Transformers
✅ Supported
Any OpenAI-compatible API
Mistral, xAI, Azure, Amazon Bedrock, OpenRouter, Fireworks, etc.
✅ Supported

🗂️ Issue Trackers

Tool Status Documentation
Jira ✅ Supported Atlassian Jira Integration
Linear ✅ Supported Linear Integration

🚀 More platforms and integrations are coming — Gito is built to grow with your stack.

🔒 Security & Privacy

Gito keeps your source code private by design: it is designed as a stateless, client-side tool with a strict zero-retention policy.

  • No middleman: Source code is transmitted directly from your environment (CI/CD runner or local machine) to your explicitly configured LLM provider. If you use a local model, your code never leaves your network. We never see your code.
  • No data collection: Your code isn't stored, logged, or retained by Gito.
  • Fully auditable: 100% open source. Verify every line yourself.

🚀 Quickstart

1. Review Pull Requests via GitHub Actions

Create a .github/workflows/gito-code-review.yml file with the following content:

name: "Gito: AI Code Review"
on:
  pull_request:
    types: [opened, synchronize, reopened]
  workflow_dispatch:
    inputs:
      pr_number:
        description: "Pull Request number"
        required: true
jobs:
  review:
    runs-on: ubuntu-latest
    permissions: { contents: read, pull-requests: write } # 'write' for leaving the summary comment
    steps:
    - uses: actions/checkout@v6
      with: { fetch-depth: 0 }
    - name: Set up Python
      uses: actions/setup-python@v6
      with: { python-version: "3.13" }
    - name: Install AI Code Review tool
      run: pip install gito.bot~=4.0
    - name: Run AI code analysis
      env:
        LLM_API_KEY: ${{ secrets.LLM_API_KEY }}
        LLM_API_TYPE: openai
        MODEL: "gpt-5.2"
        GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
        PR_NUMBER_FROM_WORKFLOW_DISPATCH: ${{ github.event.inputs.pr_number }}
      run: |
        gito --verbose review
        gito github-comment --token ${{ secrets.GITHUB_TOKEN }}
    - uses: actions/upload-artifact@v6
      with:
        name: ai-code-review-results
        path: |
          code-review-report.md
          code-review-report.json

⚠️ Make sure to add LLM_API_KEY to your repository's GitHub secrets.

💪 Done!
PRs to your repository will now receive AI code reviews automatically. ✨
See GitHub Setup Guide for more details.

2. Running Code Analysis Locally

Initial Local Setup

Prerequisites:

Option A: Install via pip (recommended)

Step 1: Install gito.bot using pip.

pip install gito.bot

Troubleshooting:
pip may also be available via CLI as pip3 depending on your Python installation.

To install from repository source / specific branch:

pip install git+https://github.com/Nayjest/Gito.git@<branch-or-tag>

Option B: Windows Standalone Installer

Download the latest Windows installer from Releases.

The installer includes:

  • Standalone executable (no Python required)
  • Automatic PATH configuration
  • Start Menu shortcuts
  • Easy uninstallation

Step 2: Perform initial setup

The following command will perform one-time setup using an interactive wizard. You will be prompted to enter LLM configuration details (API type, API key, etc). Configuration will be saved to ~/.gito/.env.

gito setup

Troubleshooting:
On some systems, gito command may not become available immediately after installation.
Try restarting your terminal or running python -m gito instead.

Perform your first AI code review locally

Step 1: Navigate to your repository root directory.
Step 2: Switch to the branch you want to review.
Step 3: Run the following command:

gito review

Note: This will analyze the current branch against the repository main branch by default.
Files that are not staged for commit will be ignored.
See gito --help for more options.

Reviewing remote repository

gito remote git@github.com:owner/repo.git <FEATURE_BRANCH>..<MAIN_BRANCH>

Use interactive help for details:

gito remote --help

🔧 Configuration

Gito uses a two-layer configuration model:

Scope Location Purpose
Environment ~/.gito/.env or OS environment variables LLM provider, model, API keys, concurrency
Project <repo>/.gito/config.toml Review behavior, prompts, templates, integrations

Note: Environment configuration defines external resources and credentials — it's machine-specific and never committed to version control. Project configuration defines review behavior and can be shared across your team.

Environment Configuration

Environment settings control LLM inference, API Keys and apply system-wide.

Gito uses ai-microcore for vendor-agnostic LLM access. All settings are configured via OS environment variables or .env files.

Default location: ~/.gito/.env
(Created automatically via gito setup)

Example

# ~/.gito/.env
LLM_API_TYPE=openai
LLM_API_KEY=sk-...
LLM_API_BASE=https://api.openai.com/v1/
MODEL=gpt-5.2
MAX_CONCURRENT_TASKS=20

For all supported options, see the ai-microcore configuration guide.

CI/CD Environments

In CI workflows, configure LLM settings via workflow environment variables. Use your platform's secrets management (GitHub Secrets, GitLab CI Variables) for API keys.

Project Configuration

Gito supports per-repository customization through a .gito/config.toml file placed at the root of your project. This allows you to tailor code review behavior to your specific codebase, coding standards, and workflow requirements.

Configuration Inheritance Model

Project settings follow a layered override model:

Bundled Defaults (config.toml) → Project Config (<your-repo>/.gito/config.toml)

Any values defined in your project's .gito/config.toml are merged on top of the built-in defaults. You only need to specify the settings you want to change—everything else falls back to sensible defaults.

Common Customizations

  • Review prompts — Tailor AI instructions, review criteria, and quality thresholds
  • Output templates — Customize report format for GitHub comments and CLI
  • Post-processing — Python snippets to filter or transform detected issues
  • Bot behavior — Mention triggers, retries, comment handling
  • Pipeline integrations — Jira, Linear, etc.

Explore the bundled config.toml for the complete list of available options.

Example

# .gito/config.toml
mention_triggers = ["gito", "/check"]
collapse_previous_code_review_comments = true

# Files to provide as context
aux_files = [
    'documentation/command_line_reference.md'
]

exclude_files = [
    'poetry.lock',
]

[prompt_vars]
# Custom instructions injected into the system prompts
awards = ""  # Disable awards
requirements = """
- All public functions must have docstrings.
"""

For detailed guidance, see the 📖 Configuration Cookbook.

📚 Guides & Reference

For more detailed information, check out these articles:

Or browse all documentation in the /documentation directory.

🚧 Known Limitations

Gito cannot modify files inside .github/workflows when reacting to GitHub PR comments (e.g., "Gito fix issue 2").
This is a GitHub security restriction that prevents workflows from modifying other workflow files using the default GITHUB_TOKEN.

While using a Personal Access Token (PAT) with the workflow scope would bypass this limitation, it is not recommended as a workaround. PATs have broader permissions, longer lifespans, and are tied to individual user accounts, making them less secure than the default GITHUB_TOKEN for CI/CD pipelines.

💻 Development Setup

Clone the repository and navigate to it:

git clone https://github.com/Nayjest/Gito.git
cd Gito

Install dependencies:

make install

Note: If make is not available on your system, you can run the underlying command directly:
pip install -e ".[dev]"
See the Makefile for all available commands.

Format code and check style:

make black
make cs

Run tests:

pytest

🤝 Contributing

Looking for a specific feature or having trouble?
Contributions are welcome! ❤️
See CONTRIBUTING.md for details.

📝 License

Licensed under the MIT License.

© 2025–2026 Vitalii Stepanenko

Release History

VersionChangesUrgencyDate
v4.1.0## What's Changed - Minor performance improvements (use async LLM requests where possible) - Possibility to use Claude Code or other CLI agents instead of HTTP LLM API #260 Thanks to @dmitryuk for the idea. See configuration examples for ~/.gito/.env here: https://github.com/Nayjest/ai-microcore/releases/tag/v6.2.0 <img width="786" height="455" alt="image" src="https://github.com/user-attachments/assets/42af34c1-1366-41ac-8c23-14bf82fe8338" /> **Full Changelog**: https://github.comHigh6/4/2026
v4.0.4## What's Changed * Alias for `uvx gito.bot` added (executeable name same as package name) Thanks to @marutichintan https://github.com/Nayjest/Gito/issues/256 * Bump black from 26.1.0 to 26.3.1 in the pip group across 1 directory by @dependabot[bot] in https://github.com/Nayjest/Gito/pull/240 * Bump the pip group across 1 directory with 2 updates by @dependabot[bot] in https://github.com/Nayjest/Gito/pull/243 * Bump python-dotenv from 1.1.1 to 1.2.2 in poetry.lock by @akimochkinv in https:High5/15/2026
v4.0.3## What's Changed * Bump cryptography from 46.0.3 to 46.0.5 in the pip group across 1 directory by @dependabot[bot] in https://github.com/Nayjest/Gito/pull/226 * Fix issue #212: Allow 'Gito fix' to fix all issues by @Artcapella in https://github.com/Nayjest/Gito/pull/213 * fix running tests in forks by @counter-prop in https://github.com/Nayjest/Gito/pull/227 * reindent code by @Nayjest in https://github.com/Nayjest/Gito/pull/228 ## New Contributors * @Artcapella made their first contribLow2/13/2026
v4.0.2## What's Changed * Fix #221 Jinja2 template bug in question answering in https://github.com/Nayjest/Gito/pull/222 * Upgrade to Anthropic Claude 4 Opus in https://github.com/Nayjest/Gito/pull/223 **Full Changelog**: https://github.com/Nayjest/Gito/compare/v4.0.1...v4.0.2Low2/5/2026
v4.0.1## What's Changed ### Added - **Explicit issue key option for posting Linear comments** — Use `--issue-key` or `-k` to specify the Linear issue directly, bypassing branch-based detection. ### Changed - **Improved error handling for Linear API** — Clearer, more actionable error messages when API calls fail, including GraphQL-level error detection. - **Development setup documentation** — Expanded with fallback instructions for systems without `make` and added visual flair to the README. - Low1/26/2026
v4.0.0## What's Changed * GitLab support (experimental) in https://github.com/Nayjest/Gito/pull/140 * Upgrade ai-microcore to v5, switch to new google-genai SDK when working with Gemini models, Google Vertex Support * Deploy command reworked * Windows installer improvements * ASCII-art Gito logotype added to deploy & setup commands * Provide default MAX_CONCURRENT_TASKS to avoid rate limit errors in https://github.com/Nayjest/Gito/pull/191 * Metadata updated for better discoverability in httpLow1/22/2026
v3.6.0## What's Changed * Add Windows Installer Support by @Alperen012 in https://github.com/Nayjest/Gito/pull/166 * More debug info if push failed when reacting from GitHub comments in https://github.com/Nayjest/Gito/pull/169 * Fix tests / code review workflows on PRs made from repo forks in https://github.com/Nayjest/Gito/pull/168 * Fix fork cr #167 in https://github.com/Nayjest/Gito/pull/171 * Fix: Add anchor tags to headings for PyPI ToC links compatibility by @Alperen012 in https://github.coLow1/7/2026
v3.5.0## What's Changed - `gito ask` now supports the `--all` option for answering questions based on the whole codebase - `gito talk` alias removed (use `gito ask` or `gito answer` in CLI or github comments) - Improved CLI argument descriptions - Documentation updates: - [Linear integration](https://github.com/Nayjest/Gito/blob/main/documentation/linear_integration.md) article added #158 - [Jira integration](https://github.com/Nayjest/Gito/blob/main/documentation/jira_integration.md) arLow12/27/2025
v3.4.3## What's Changed - Upgraded underlying GitHub Actions in workflow templates - Upgraded default deploy models (Claude, GPT) - fixes #136 **Full Changelog**: https://github.com/Nayjest/Gito/compare/v3.4.2...v3.4.3Low12/23/2025
v3.4.2## What's Changed * fix #154 by @Nayjest in https://github.com/Nayjest/Gito/pull/155 **Full Changelog**: https://github.com/Nayjest/Gito/compare/v3.4.1...v3.4.2Low12/18/2025
v3.4.1## What's Changed - Upgraded dependencies (#151) - Gito.bot install was forcing a downgrade of the Python typer package (@gczajkowskiTT) - No more LLM retries when max tokens exceeded (see [ai-microcore v4.5.0 release](https://github.com/Nayjest/ai-microcore/releases/tag/v4.5.0)) - Do not fail entire code review due to failed file reviews (too large files, etc.) - display warnings instead - Added ability to specify ignored files as list of fnmatch patterns in config.toml via new `exclude_filLow12/15/2025
v3.4.0## What's Changed `gito ask` now supports the `--save-to "<file-name>"` argument for saving the answer to a file. https://github.com/Nayjest/Gito/pull/150 **Full Changelog**: https://github.com/Nayjest/Gito/compare/v3.3.4...v3.4.0Low11/14/2025
v3.3.4## What's Changed * Fixed KeyError bug @Nayjest in https://github.com/Nayjest/Gito/pull/148 **Full Changelog**: https://github.com/Nayjest/Gito/compare/v3.3.3...v3.3.4Low11/4/2025
v3.3.3## What's Changed * 🐛 Fixed [#145](https://github.com/Nayjest/Gito/issues/145): incorrect line numbers detected in issues within newly added files. ([PR #146](https://github.com/Nayjest/Gito/pull/146)) — thanks to @gcflymoto for discovering and reporting the issue! **Full Changelog**: https://github.com/Nayjest/Gito/compare/v3.3.2...v3.3.3Low10/31/2025
v3.3.2## What's Changed - LLM Response validation integrated into retries mechanism - Fix https://github.com/Nayjest/Gito/issues/142: No clear messaging regarding empty changeset in gito files command output - Fix #141 **Full Changelog**: https://github.com/Nayjest/Gito/compare/v3.3.1...v3.3.2Low10/31/2025
v3.3.1## What's Changed * fix #138 (loading .env from project root by FastMCP package causing errors) in https://github.com/Nayjest/Gito/pull/139 Thanks to @marutichintan for reporting **Full Changelog**: https://github.com/Nayjest/Gito/compare/v3.3.0...v3.3.1Low10/7/2025
v3.3.0## What's Changed * review-all: possibility to review full repo code instead of changeset by @Nayjest in https://github.com/Nayjest/Gito/pull/137 * fix current folder for review --remote by @Nayjest in https://github.com/Nayjest/Gito/pull/134 **Full Changelog**: https://github.com/Nayjest/Gito/compare/v3.2.2...v3.3.0Low9/9/2025
v3.2.2## What's Changed * Fix #132, sanitize issue / issue.affected_lines fields received from the LLM by @Nayjest in https://github.com/Nayjest/Gito/pull/133 **Full Changelog**: https://github.com/Nayjest/Gito/compare/v3.2.1...v3.2.2Low8/3/2025
v3.2.1## What's Changed * Fix #114 by @Nayjest in https://github.com/Nayjest/Gito/pull/131 **Full Changelog**: https://github.com/Nayjest/Gito/compare/v3.2.0...v3.2.1Low7/24/2025
v3.2.0## What's Changed * Cli ref by @Nayjest in https://github.com/Nayjest/Gito/pull/129 * --aux-files support and more by @Nayjest in https://github.com/Nayjest/Gito/pull/130 **Full Changelog**: https://github.com/Nayjest/Gito/compare/v3.1.2...v3.2.0Low7/24/2025
v3.1.2 ## What's Changed * `gito deploy` can now create PRs https://github.com/Nayjest/Gito/pull/128 **Full Changelog**: https://github.com/Nayjest/Gito/compare/v3.1.1...v3.1.2Low7/23/2025
v3.1.1**Full Changelog**: https://github.com/Nayjest/Gito/compare/v3.1.0...v3.1.1Low7/23/2025
v3.1.0## What's Changed * show ver (fix #111) by @Nayjest in https://github.com/Nayjest/Gito/pull/112 **Full Changelog**: https://github.com/Nayjest/Gito/compare/v3.0.0...v3.1.0Low7/14/2025
v3.0.0## What's Changed **Full Changelog**: https://github.com/Nayjest/Gito/compare/v2.0.2...v3.0.0Low7/14/2025
v2.0.2## What's Changed * GIT-3 by @Nayjest in https://github.com/Nayjest/Gito/pull/99 **Full Changelog**: https://github.com/Nayjest/Gito/compare/v2.0.1...v2.0.2Low6/24/2025
v2.0.1- Fix PYPI logoLow6/22/2025
v2.0.0Release v2.0.0Low6/22/2025
v0.6.0## What's Changed * v0.6 refactoring, tests, get rid of asyncio_typer dependency in https://github.com/Nayjest/ai-code-review/pull/45 * Documentation: github setup guide in https://github.com/Nayjest/ai-code-review/pull/48 * --use-merge-base support in https://github.com/Nayjest/ai-code-review/pull/49 * tests in https://github.com/Nayjest/ai-code-review/pull/50 * fix to #51, ignore binary files by @Nayjest in https://github.com/Nayjest/ai-code-review/pull/52 **Full Changelog**: https:Low6/11/2025
v0.5.0**Full Changelog**: https://github.com/Nayjest/ai-code-review/compare/v0.4.5...v0.5.0Low6/11/2025
v0.4.5## What's Changed - Prompt improvements - Typo fixes - PYPI multibuild - Fix PYPI doc. links **Full Changelog**: https://github.com/Nayjest/ai-code-review/compare/v0.4.1...v0.4.5Low5/24/2025
v0.4.1## What's Changed * fix artifact issue by @Nayjest in https://github.com/Nayjest/ai-code-review/pull/35 * #32 Bug: Wrong calculation of reviewed files qty by @NIKITASAGA in https://github.com/Nayjest/ai-code-review/pull/36 ## New Contributors * @NIKITASAGA made their first contribution in https://github.com/Nayjest/ai-code-review/pull/36 **Full Changelog**: https://github.com/Nayjest/ai-code-review/compare/v0.4.0...v0.4.1Low5/23/2025
v0.4.0## What's Changed * compact .github workflow by @Nayjest in https://github.com/Nayjest/ai-code-review/pull/31 * post comment from app by @Nayjest in https://github.com/Nayjest/ai-code-review/pull/33 **Full Changelog**: https://github.com/Nayjest/ai-code-review/compare/v0.3.4...v0.4.0Low5/21/2025
v0.3.4Affected code snippet bugfix (missing last line) **Full Changelog**: https://github.com/Nayjest/ai-code-review/compare/v0.3.3...v0.3.4Low5/21/2025
v0.3.3## What's Changed * github links in CR report **Full Changelog**: https://github.com/Nayjest/ai-code-review/compare/v0.3.2...v0.3.3Low5/21/2025
v0.3.2## What's Changed * simplify git workflow by @Nayjest in https://github.com/Nayjest/ai-code-review/pull/28 * v0.3 by @Nayjest in https://github.com/Nayjest/ai-code-review/pull/29 **Full Changelog**: https://github.com/Nayjest/ai-code-review/compare/v0.2.1...v0.3.2Low5/21/2025
v0.2.1New features: - project configs - cli for local usage - summarization step (optional)Low5/19/2025
v0.1.0Release v0.1.0Low4/30/2025

Dependencies & License Audit

Loading dependencies...

Similar Packages

llm_context_benchmarks 📊 LLM Context Benchmarks - A comprehensive benchmarking tool for testing LLMs with varying context sizes using Ollama. Features dual benchmark modes (API/CLI), automatic hardware detection (optimizmaster@2026-06-04
kimi-code-mcpConnect Kimi Code’s large-context reading with Claude Code’s reasoning for efficient, cost-effective codebase analysis and edits.main@2026-06-04
ring89 skills and 38 specialized agents that enforce proven engineering practices for AI-assisted development. TDD, systematic debugging, parallel code review, and 10-gate development cycles — as a Claudemain@2026-06-03
mlflowThe open source AI engineering platform for agents, LLMs, and ML models. MLflow enables teams of all sizes to debug, evaluate, monitor, and optimize production-quality AI applications while controllinv3.13.0
costrict-coding-hub聚合精选编程 AI 扩展资源:MCP Servers、Skills、Rules、Prompts,周更索引 + 一键安装。catalog-bundle-manual-23f33a2

More from Nayjest

lm-proxyOpenAI-compatible HTTP LLM proxy / gateway for multi-provider inference (Google, Anthropic, OpenAI, PyTorch). Lightweight, extensible Python/FastAPI—use as library or standalone service.

More in Testing

vector-db-benchmarkFramework for benchmarking vector search engines
mxcliMendix cli tool, a headless way to work with Mendix projects. Enables Mendix projects for use with 3rd party agentic coding tools like Claude Code and Copilot. Includes a starlark linter for quality v
llm_context_benchmarks 📊 LLM Context Benchmarks - A comprehensive benchmarking tool for testing LLMs with varying context sizes using Ollama. Features dual benchmark modes (API/CLI), automatic hardware detection (optimiz
promptfooTest your prompts, agents, and RAGs. Red teaming/pentesting/vulnerability scanning for AI. Compare performance of GPT, Claude, Gemini, Llama, and more. Simple declarative configs with command line and