Only this pageAll pages
Powered by GitBook
Couldn't generate the PDF for 144 pages, generation stopped at 100.
Extend with 50 more pages.
1 of 100

BITO

Loading...

Loading...

Loading...

AI Architect

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

AI Code Reviews in Git

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

AI Code Reviews in IDE

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

AI Code Reviews in CLI

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Privacy and security

Bito doesn't read or store your code. Nor do we use your code for AI model training.

This document explains some of Bito's privacy and security practices. Our Trust Center outlines our various accreditations (SOC 2 Type II) and our various security policies. You can read our full Privacy Policy at https://bito.ai/privacy-policy/.

Bito AI

Security is top of mind at Bito, especially when it comes to your code. A fundamental approach we have taken is we do not store any code, code snippets, indexes or embedding vectors on Bito’s servers unless you expressly allow it. You decide where you want to store your code, either locally on your machine, in your cloud, or on Bito’s cloud. Importantly, our AI partners do not store any of this information.

All requests are transmitted over HTTPS and are fully encrypted.

None of your code or AI requests are used for AI model training. None of your code or AI requests are stored by our AI partners. Our AI model partners are OpenAI, Anthropic, and Google. Here are their policies where they state that they do not store or train on data related to API access (we access all AI models via APIs):

  1. OpenAI: https://openai.com/enterprise-privacy/

  2. Anthropic: https://www.anthropic.com/uk-government-internal-ai-safety-policy-response/data-input-controls-and-audit

  3. Google Cloud: https://cloud.google.com/blog/products/ai-machine-learning/google-cloud-unveils-ai-and-ml-privacy-commitment (5th paragraph)

The AI requests including code snippets you send to Bito are sent to Bito servers for processing so that we can respond with an answer.

Interactions with Bito AI are auto-moderated and managed for toxicity and harmful inputs and outputs.

Any response generated by the Bito IDE AI Assistant is stored locally on your machine to show the history in Bito UI. You can clear the history anytime you want from the Bito UI.

SOC 2 Type II Compliance

Bito is SOC 2 Type II compliant. This certification reinforces our commitment to safeguarding user data by adhering to strict security, availability, and confidentiality standards. SOC 2 Type II compliance is an independent, rigorous audit that evaluates how well an organization implements and follows these security practices over time.

Our SOC 2 Type II compliance means:

  • Enhanced Data Security: We consistently implement robust controls to protect your data from unauthorized access and ensure it remains secure.

  • Operational Excellence: Our processes are designed to maintain high availability and reliability, ensuring uninterrupted service.

  • Regular Monitoring and Testing: We conduct continuous monitoring and regular internal reviews to uphold the highest security standards.

This certification is an assurance that Bito operates with a high level of trust and transparency, providing you with a secure environment for your code and data.

For any further questions regarding our SOC 2 Type II compliance or to request a copy of the audit report, please reach out to [email protected]

Code Flow through Bito’s System

AI Code Review Agent

When you use the self-hosted/docker version that you have setup in your VPC, in the docker image Bito checks out the diff and clones the repo for static analysis and also to determine relevant code context for code review. This context and the diff is passed to Bito's system. The request is then sent to a third-party LLM (e.g., OpenAI, Google Cloud, etc.). The LLM processes the prompt and return the response to Bito. No code is retained by the LLM. Bito then receives the response, processes it (such as formatting), and returns it to your self-hosted docker instance. This then posts it to your Git provider. However, the original query is not retained, nor are the results. After each code review is completed, the diff and the checked out repo are deleted.

If you use the Bito cloud to run the AI Code Review Agent, it runs similarly to the self-hosted version. Bito ephemerally checks out the diff and clones the repo for static analysis and to determine the relevant code context for code review. This context and the diff is passed to Bito's system. The request is then sent by Bito to a third-party LLM (e.g., OpenAI, Google Cloud, etc.). The LLM processes the prompt and return the response to Bito. No code is retained by the LLM. Bito then receives the response, processes it (such as formatting), and posts it to your Git provider. However, the original query is not retained, nor are the results. After each code review is completed, the diff and the checked out repo are deleted.

AI Chat and Code Completions

When we receive an AI request from a user, it is processed by Bito's system (such as adding relevant context and determining the Large Language Model (LLM) to use). However, the original query is not retained. The request is then sent to a third-party LLM (e.g., OpenAI, Google Cloud, etc.). The LLM processes the prompt and return the response to Bito. Bito then receives the response, processes it (such as formatting), and returns it to the user’s machine.

For enterprises, we have the ability to connect to your own private LLM accounts, including but not limited to OpenAI, Google Cloud, Anthropic, or third-party services such as AWS Bedrock, Azure OpenAI. This way all data goes through your own accounts or Virtual Private Cloud (VPC), ensuring enhanced control and security.

Data and Business Privacy Policy

In line with Bito's commitment to transparency and adherence to data privacy standards, our comprehensive data and business privacy policy is integrated into our practices. Our complete Terms of Use, including the Privacy Policy, are available at https://bito.ai/terms-of-use/, with our principal licensing information detailed at https://bito.ai/terms-of-service/.

Data Retention Policy

Our data retention policy is carefully designed to comply with legal standards and to respect our customers' privacy concerns. The policy is categorized into four levels of data:

  1. Relationship and Usage Meta Data: This includes all data related to the customer's interaction with Bito, such as address, billing amounts, user account data (name and email), and usage metrics (number of queries made, time of day, length of query, etc.). This category of data is retained indefinitely for ongoing service improvement and customer support.

  2. Bito Business Data: Includes customer-created templates and settings. This data is terminated 90 days after the end of the business relationship with Bito.

  3. Confidential Customer Business Data: This includes code, code artifacts, and other organization-owned data such as Jira, Confluence, etc. This data is either stored on-prem/locally on the customer’s machines, or, if in the cloud, is terminated at the end of the business relationship with Bito.

  4. AI Requests: Data in an AI request to Bito’s AI system. AI requests are neither retained nor viewed by Bito. We ensure the confidentiality of your AI queries; Bito and our LLM partners do not store your code, and none of your data is used for model training. All requests are transmitted via HTTPS and are fully encrypted.

Sub-processor

Bito uses the following third-party services: Amazon AWS, Anthropic, Clearbit, Github, Google Analytics, Google Cloud, HelpScout, Hubspot, Microsoft Azure, Mixpanel, OpenAI, SendGrid, SiteGround, and Slack for infrastructure, support, and functional capabilities.

Personal Data

Bito follows industry standard practices for protecting your e-mail and other personal details. Our password-less login process - which requires one-time passcode sent to your e-mail for every login - ensures the complete security of your account.

If you have any questions about our security and privacy, please email [email protected]

Key features

AI Architect is a full engineering workflow platform built around a knowledge graph of your codebase, business context, tribal knowledge, docs, tickets, and observability data. It operates across three solution areas — technical design & scoping, grounded coding, and code review — surfacing system-level intelligence at every stage of development.

This page covers the core features that power those workflows.

Knowledge graph

The knowledge graph is the context engine at the core of AI Architect. It ingests your codebase, Git history, issue tracker data (Jira, Linear), documentation (Confluence), observability signals, and Slack conversations into a unified, continuously updated graph.

Rather than treating your codebase as searchable text, the knowledge graph models the relationships between services, APIs, dependencies, past decisions, and recurring incident patterns — capturing how your system actually fits together.

This shared context powers every capability in AI Architect. When an agent runs a feasibility analysis, generates a technical design, or reviews a pull request, it draws from the same knowledge graph — so output is grounded in your real architecture, not generic patterns.

The knowledge graph also enables cross-repo reasoning: it understands blast radius, tracks instability histories, and connects a Jira incident from six months ago to the service a developer is about to change today.

Learn more

Supported integrations

AI Architect connects to the tools your team already uses across planning, coding, review, and communication.

  • Jira is the primary surface for technical design and scoping. AI Architect listens for new or updated Epics and Stories, posts implementation plans as ticket comments, and can be triggered on demand via @bito in any comment. Plans include feasibility assessments, story breakdowns, effort estimates, and risk flags — all grounded in your knowledge graph.

  • Slack brings AI Architect into team discussions. Mention @Bito in any channel thread and the assistant reads the full conversation context, resolves referenced Jira tickets and Confluence pages, and responds with context-aware answers, task breakdowns, or implementation plans — directly in the thread.

  • Coding agents connect to AI Architect via MCP (Model Context Protocol). A one-command installer automatically configures all supported tools detected on your system. Supported agents include Claude Code, Cursor, Windsurf, GitHub Copilot (VS Code), Junie, and JetBrains AI Assistant. Once connected, Agent Skills are available inside each tool, giving developers access to the full knowledge graph while they build.

  • Chat agents — including Claude.ai (Web & Desktop) and ChatGPT (Web & Desktop) — can also be connected to AI Architect via MCP for codebase-aware conversational assistance outside of a dedicated coding environment.

  • Bito's AI Code Review Agent integrates with AI Architect to bring knowledge graph context into every pull request review across GitHub, GitLab, and Bitbucket. Reviews go beyond the diff — they include cross-repo impact analysis, architectural consistency checks, and blast radius detection, catching issues before they reach production.

Auto triage

When auto-analysis is enabled for Jira, AI Architect evaluates every new or updated Epic and Story before generating an implementation plan. It reads the full ticket — title, description, comments, attachments, and any linked Confluence pages — and assigns a complexity score from 1 to 10. Implementation plans are only generated for tickets that meet or exceed the complexity threshold (default: 7). Tickets below the threshold receive a short note explaining why a plan was skipped, along with a prompt to request one manually if needed.

This keeps your ticket history clean and ensures that AI Architect's output is directed at the work that actually benefits from it — complex, ambiguous, or cross-cutting changes — rather than straightforward tasks that engineers can act on immediately.

Learn more

Flexible trigger

AI Architect can be invoked in two ways: automatically when a ticket is created or updated, or on demand by any team member. On-demand triggering is done by commenting @bito, /bito, or #bito directly on the Jira ticket, or by adding a bito, bito-analyse, or bito-analyze label.

The same comment syntax also works for follow-up requests — you can ask AI Architect to revise its analysis, focus on a specific aspect, or regenerate the plan after requirements change.

This gives teams full control over when AI Architect runs. You can start with on-demand mode to evaluate output quality on specific tickets, then graduate to automatic analysis once you're confident in the results.

Learn more

Iterative refinement

Requirements rarely stay fixed. AI Architect supports iterative refinement by generating new versions of any artifact — technical designs, scope breakdowns, feasibility assessments — as the ticket evolves. As engineers update descriptions, add comments, or link new context, they can re-trigger AI Architect to produce a revised plan that reflects the current state of the work.

This means technical planning stays in sync with changing requirements without manual rework. Each iteration builds on the ticket's full history, so AI Architect understands what has changed and why.

Learn more

Custom templates

By default, AI Architect formats its output using Bito's standard structure. Custom templates let you override that with your team's own format — whether that's a specific TDD layout, an internal RFC structure, or a planning format tied to your sprint process. Output then matches what your engineers expect to see and what your workflow tooling can consume.

Custom templates are configured per workspace. To get started, contact the Bito team at [email protected].

Custom prompts

AI Architect supports free-form prompting directly inside the Jira ticket, coding agents, or Slack. Engineers can mention Bito followed by a question/instruction in natural-language, such as:

In Jira:

  • @bito analyze technical feasibility

  • @bito focus on database migration risk

  • @bito write this as a spike document

  • @bito break this into frontend and backend workstreams

In Slack:

  • @Bito PROJ-456 is causing errors in production — here are the logs. Identify the root cause?

  • @Bito help us break this feature into smaller tasks

  • @Bito explain the difference between these two approaches

  • @Bito what are the action items from this thread?

  • @Bito review the code changes in this thread and suggest improvements

In coding agents:

Open a chat or conversation in your AI tool and try a test query to confirm AI Architect is working:

  • "What repositories are available in my organization?"

  • "Show me all Python repositories"

  • "List the available tools"

  • "What are the dependencies of [repo-name]?"

  • "Find all microservices using Redis"

  • "Show me repository clusters in our organization"

  • "Plan a new feature for [component]"

    • (uses bito-feature-plan skill)

  • "Write a PRD for [feature]"

    • (uses bito-prd skill)

  • "Help me triage this production issue"

    • (uses bito-production-triage skill)

Custom prompts work alongside the knowledge graph context AI Architect already has. You're directing the output, not replacing the grounding.

Web research

AI Architect can pull external technical context alongside your internal knowledge graph when generating plans. When web research is enabled, it incorporates relevant industry patterns, library documentation, and external best practices into its analysis — useful for greenfield work, third-party integrations, or areas where your codebase doesn't yet have established patterns.

Web research is applied selectively. It supplements internal context rather than replacing it, so the output remains grounded in your actual system.

Slack agent

The Bito AI Assistant brings AI Architect directly into Slack. You can ask system-level questions, trigger implementation plans, iterate on technical designs, and triage production issues — all without leaving the channel where the discussion is already happening. Mention @Bito in any thread, and the assistant reads the full conversation context, including any referenced Jira tickets or Confluence pages, before responding.

Common use cases include summarizing long planning threads, generating task breakdowns from a discussion, and pulling context from a specific ticket mid-conversation. The Slack agent is available in both public and private channels and supports file attachments including code files, configs, and logs.

Learn more

Agent skills

Agent Skills are structured instruction files that define how AI Architect approaches specific engineering tasks. Each skill is purpose-built for a different type of work: feasibility analysis, epic planning, spike investigations, production triage, PRD or TRD generation, pre-commit reviews, and more. Skills can be triggered in Jira and Slack by commenting with natural language (@bito is this feasible?, @bito turn this epic into tasks), or invoked directly inside your coding agent via MCP.

Skills have full access to your knowledge graph — codebase, Jira history, Confluence docs, and observability data — so their output is always grounded in how your system actually works, not a generic template. In coding agents, skills are installed automatically and discoverable via / in the chat interface.

Learn more

Detailed agent specs

After a technical plan is approved, AI Architect can transform it into self-contained workstream agent specs — structured documents that give a coding agent everything it needs to implement a single workstream without further clarification. Each spec includes file paths, relevant patterns from your codebase, verification gates, and a dependency contract describing what other workstreams it relies on or produces.

Agent specs are designed to be passed directly into Cursor, Claude Code, Codex, or any MCP-compatible coding agent. They eliminate the back-and-forth between planning and implementation by encoding architectural decisions into the spec itself.

Learn more

Automated implementation

Once a workstream plan is approved, AI Architect can execute it directly. It creates a new branch from your default branch, implements the code changes across the relevant repositories, and follows the patterns and conventions already present in your codebase. Implementation is guided by the agent spec, with verification gates checked at each step.

This capability is available via the bito-agent-spec-executor skill in your connected coding agent. It is designed for well-scoped workstreams with clear acceptance criteria and works best when paired with the detailed agent spec output.

Learn more

Automated pull request creation

After implementation is complete, AI Architect opens a pull request per workstream, linked back to the originating Jira ticket. PRs include a summary of the changes made, the workstream spec they were generated from, and any verification results from the implementation run. This closes the loop between planning and review, giving engineers and reviewers immediate context on what was built and why.

Automated PRs work across GitHub, GitLab, and Bitbucket. They follow your existing branch naming and PR conventions.

Learn more

Single Sign-On (SSO)

SSO integration lets your team authenticate with AI Architect through your organization's existing identity provider instead of managing shared access tokens. When someone joins or leaves, access is granted or revoked through the same system that controls their email, Slack, and other business tools — no separate credential rotation required.

AI Architect's SSO implementation supports a broad range of identity providers including Google Workspace, Okta, Azure Entra ID, Microsoft AD FS, Auth0, Keycloak, and others, as well as any custom SAML 2.0 or OIDC configuration.

For self-hosted deployments, SSO runs entirely on-premises — no authentication traffic leaves your environment except for identity provider federation (if Enterprise IdP is configured) and Bito API calls for SSO configurations.

Session duration, refresh token TTL, and concurrent session limits are all configurable per workspace.

Learn moreSSO for self-hosted deployments

Available commands

CLI commands for installing, operating, and maintaining Bito's AI Architect.

Quick reference for bitoarch CLI commands used to configure and manage Bito's AI Architect.

Note: After installation of AI Architect (self-hosted), the bitoarch command is available globally. All commands support --help for per-command usage.

Lifecycle

Commands used to control the lifecycle of AI Architect.

bitoarch start

For recovery if AI Architect services stopped/killed due to system issues

bitoarch stop

Stop all services (keeps data)

bitoarch restart [--force]

Restart services. --force reloads env and recreates containers

bitoarch logs [service]

Tail service logs (-f). All services if service omitted

bitoarch update

Refresh service images per versions/service-versions.json

bitoarch reset

Remove services, volumes, and config. Keeps install directory

bitoarch uninstall

Full removal (services + install directory)

Examples:

AI Architect management commands

Use these bitoarch commands to manage AI Architect.

Core operations

Command
Description
Example

bitoarch index-repos [--only-new-repos]

Trigger workspace repository indexing. Use --only-new-repos to index only newly added repositories

bitoarch index-repos --only-new-repos

bitoarch index-status [--raw] [--output json]

Check indexing status. --raw dumps the full API response; --output json emits machine-readable JSON

View progress and state

bitoarch pause-indexing

Pause ongoing indexing process

bitoarch pause-indexing

bitoarch resume-indexing

Resume paused indexing process

bitoarch resume-indexing

bitoarch stop-indexing

Stop indexing completely

bitoarch stop-indexing

bitoarch index-repo-list [--status <active\|all>] [--limit <N>]

List indexed repositories

bitoarch index-repo-list --status active

bitoarch show-config

Show current indexing configuration

bitoarch show-config --raw

bitoarch create-index-scheduler

Create scheduled indexing tasks

bitoarch update-index-scheduler

Update existing scheduled indexing tasks

Examples:

One indexing job runs per workspace at a time. If you add a repo mid-run, re-trigger bitoarch index-repos after the current job finishes.


Repository management

Command
Description
Example

bitoarch add-repo <namespace>

Add single repository

bitoarch add-repo myorg/myrepo

bitoarch remove-repo <namespace>

Remove repository

bitoarch remove-repo myorg/myrepo

bitoarch add-repos [file]

Load repos from YAML. Uses .bitoarch-config.yaml if file omitted

bitoarch add-repos

bitoarch update-repos [file]

Update repos from YAML. Uses .bitoarch-config.yaml if file omitted

bitoarch update-repos

bitoarch repo-info <name> [--dependencies]

Show repository details (add --dependencies to include incoming/outgoing deps)

bitoarch repo-info myrepo --dependencies

bitoarch fetch-repo-list [--force-load]

Sync repo list from your git provider. --force-load ignores local cache

bitoarch fetch-repo-list

Examples:


Service operations

Command
Description
Example

bitoarch status

View all services status

Docker ps-like output

bitoarch health

Check health of all services

bitoarch health --verbose

bitoarch info

Get platform information

Version, ports, resources

Examples:


Configuration

Command
Description
Example

bitoarch update-api-key

Update Bito API key

Interactive or with --api-key [--restart] flag

bitoarch update-git-creds

Update Git provider credentials

Interactive or with --provider <p> --token <t> [--restart] flags

bitoarch update-llm-keys

Update LLM API keys

Interactive prompt

bitoarch rotate-mcp-token [<new-token>]

Rotate MCP access token. Omit <new-token> to auto-generate

bitoarch rotate-mcp-token <new-token>

bitoarch config path [env\|repos\|llm]

Print the absolute path of a config file (default: env)

bitoarch config edit [env\|repos\|llm]

Open a config file in $EDITOR (default: env)

Config file types:

env

.env-bitoarch

Main environment config (ports, credentials, secrets)

repos

.bitoarch-config.yaml

Repository list

llm

.env-llm-bitoarch

Custom LLM provider configuration

Examples:


MCP operations

Command
Description
Example

bitoarch mcp-test

End-to-end MCP connectivity check

Verify server connectivity

bitoarch mcp-tools [--details] [--summary] [--output <file>]

List available MCP tools

bitoarch mcp-tools --details

bitoarch mcp-capabilities [--output <file>]

Show MCP server capabilities

bitoarch mcp-capabilities --output caps.json

bitoarch mcp-info

Show MCP configuration

Show MCP URL, access token, and active auth mode

bitoarch mcp-tool-info <name>

Show details for one MCP tool

bitoarch mcp-tool-info search_code

Examples:


SSO authentication

SSO is optional and disabled by default (bearer-token auth). When enabled, bitoarch mcp-info reflects the active auth mode.

Command
Description

bitoarch sso setup

This command will guide you through the SSO configuration process, including choosing between Enterprise IdP and Bito authentication

bitoarch sso status

Displays the current SSO configuration and IdP connection status

bitoarch sso enable

Re-enable SSO after it has been temporarily disabled

bitoarch sso disable

You can disable SSO either temporarily or permanently. Choose temporary to turn off SSO authentication but preserve IdP configuration (can re-enable with bitoarch sso enable), or permanent to remove IdP configuration entirely (requires bitoarch sso setup to reconfigure)

bitoarch sso rotate-key

Rotate SSO management key for security purposes. Important: After rotating the key, SSO services will restart automatically. Active sessions may need to re-authenticate

Auth modes:

Bearer Token

Default — static MCP access token (SSO disabled)

Bito

SSO via Bito — no external IdP required

Enterprise IdP

SSO via your SAML/OIDC provider (Okta, Azure AD, etc.)

Output options

Add these flags to any command:

Flag
Purpose
Example

--format json

JSON output

For automation/scripts

--raw

Show full API response

For debugging

--output json

Filtered JSON output

For index-status

--help

Show command help

Get usage information


Common workflows

Initial setup

Daily operations

Adding new repositories

Credential rotation

Tear-down

Troubleshooting


Getting help

Command
Shows

bitoarch --help | -h

Top-level help with all commands

bitoarch <command> --help

Command-specific usage and flags

Examples:


Environment

Configuration is loaded from .env-bitoarch file. (path: bitoarch config path env)

Key variables:

Variable
Purpose

BITO_API_KEY

Bito authentication key

GIT_PROVIDER

Git provider (github, gitlab, bitbucket)

GIT_ACCESS_TOKEN

Git personal access token

BITO_MCP_ACCESS_TOKEN

MCP server access token

CIS_PROVIDER_EXTERNAL_PORT

MCP server port (default 8080 for k8s)

CIS_MANAGER_EXTERNAL_PORT

Manager API port

CIS_CONFIG_EXTERNAL_PORT

Config API port

CIS_TRACKER_EXTERNAL_PORT

Tracker API port

MYSQL_EXTERNAL_PORT

MySQL external port

Note: See .env-bitoarch.default in the install directory for the full list with defaults.


Version

Check CLI version:

Bito's AI Architect plugin for Claude Code

Bito's AI Architect plugin brings cross-repository intelligence to Claude Code. Search code, explore dependencies, analyze architecture, and discover patterns across all your organization's repositories. Use it to build implementation plans, write requirements documents, diagnose production issues, and understand complex codebases.

It enables users to explore and understand any codebase — from high-level architecture to line-level code traces — calibrated for multiple personas (Developer, EM, PM, VP, CTO).

Key capabilities:

  • Deep codebase exploration across multiple repositories

  • AI-powered architecture analysis and documentation

  • Production incident triage with blast radius mapping

  • Feature planning grounded in real system context

Installation

Step 1: Add the marketplace

Run this command in Claude Code:

Step 2: Install the plugin

Step 3: Configure your credentials

Run the interactive setup:

This command guides you through configuring your workspace ID, bearer token, and email.

Alternative: manual configuration

Set these environment variables manually:

After configuration, restart Claude Code and run /mcp to verify the server is connected.

Available commands

Once installed, access these slash commands in Claude Code:

Command
Description

/bito-ai-architect:bito-setup

Configure credentials interactively

/bito-ai-architect:codebase-explorer

Explore and understand any codebase from high-level architecture to line-level code traces. Uses "The One Test" methodology with a 4-phase exploration workflow calibrated for different personas (Developer, EM, PM, VP, CTO).

/bito-ai-architect:feature-plan

Build a detailed implementation plan for complex features with cross-repo context

/bito-ai-architect:prd

Write a Product Requirements Document grounded in real system context

/bito-ai-architect:trd

Produce a Technical Requirements Document by analyzing existing architecture

/bito-ai-architect:production-triage

Diagnose production incidents with cross-repo context and blast radius mapping

/bito-ai-architect:epic-to-plan

Convert an approved epic or PRD into a complete, sprint-ready implementation plan

/bito-ai-architect:feasibility

Produce a go/no-go feasibility and impact analysis before committing to implementation

/bito-ai-architect:scope-to-plan

Convert any approved work item into a complete, sprint-ready implementation plan

/bito-ai-architect:spike

Conduct a structured technical investigation when the team doesn't know enough to plan

Getting started

Explore a codebase

Use the codebase explorer to understand any repository:

The explorer uses a 4-phase workflow to analyze architecture, dependencies, and code patterns. Choose your persona (Developer, EM, PM, VP, CTO) to get insights calibrated to your role.

Plan a feature

Create an implementation plan with cross-repo context:

The plugin analyzes your codebase to identify affected components, dependencies, and potential conflicts.

Triage production issues

Diagnose incidents across repositories:

Get cross-repo context and blast radius mapping to understand the full impact of production issues.

GitHub repository

  • https://github.com/gitbito/claude-plugins

Integrating AI Architect with your tools

Integrating with chat agents

Integrating with Bito's AI Code Review Agent

Leverage AI Architect's knowledge graph to power more intelligent code reviews

Enhance your code reviews with deeper codebase intelligence by connecting Bito's AI Code Review Agent to AI Architect. This integration enables significantly more accurate and context-aware reviews by leveraging the comprehensive knowledge graph that AI Architect builds from your codebase.

What this integration provides

When AI Code Review Agent accesses AI Architect's knowledge graph, it gains a complete understanding of your codebase architecture — including microservices, modules, APIs, dependencies, and design patterns.

This enhanced context allows the AI Code Review Agent to:

  • Provide system-aware code reviews - Understand how changes in one service or module impact other parts of your system

  • Catch architectural inconsistencies - Identify when new code doesn't align with your established patterns and conventions

  • Detect cross-repository issues - Spot problems that span multiple repositories or services

  • Deliver more accurate suggestions - Generate fixes that are grounded in your actual codebase structure and usage patterns

  • Reduce false positives - Better understand context to avoid flagging valid code as problematic

Setup instructions

Follow these steps to connect AI Architect with AI Code Review Agent:

  1. Log in to Bito Cloud

  2. Open the AI Architect Settings dashboard.

  3. In the Server URL field, enter your Bito MCP URL

  4. In the Auth token field, enter your Bito MCP Access Token

Need help?

Contact our team at [email protected] to request a trial. We'll help you configure the integration and get your team up and running quickly.

Available MCP tools

Access deep repository intelligence and codebase insights through AI Architect's MCP server

AI Architect's MCP server provides a comprehensive suite of tools for exploring, analyzing, and understanding your organization's codebase. These tools enable AI coding assistants to access deep repository intelligence, architectural insights, and code-level information across all your Git repositories.

Below is the complete list of MCP tools provided by AI Architect:

Tool name
Description

getCapabilities

Discover what repository intelligence and analysis capabilities this MCP server provides.

Returns comprehensive information about available repository data, dependency analysis features, architectural insights, and clustering patterns for your organization's Git repositories.

Use this to understand what repository information is available through this specialized service.

listRepositories

Browse all Git repositories in your organization. Returns comprehensive repository catalog with names, descriptions, and resource URIs.

Use this to discover available repositories, understand the organization's project landscape, identify microservices and components, or get an overview of all systems.

Each entry includes a resource URI for accessing detailed repository information.

Instant access to pre-indexed organizational repository data.

listClusters

View automatically identified clusters of related repositories in your organization.

Clusters represent groups of repositories with strong dependencies or architectural relationships, often forming subsystems or microservice groups.

Use this to understand system architecture, identify bounded contexts, discover service groupings, or analyze component relationships.

Returns cluster information with member repositories and their resource URIs.

getRepositoryInfo

Get comprehensive repository information including metadata, structure, and dependencies.

To access incoming dependencies (services depending on this repo): set includeIncomingDependencies=true.

To access outgoing dependencies (services this repo depends on): set includeOutgoingDependencies=true.

Edge data includes various dependency types - filter by edge.type field to isolate specific categories.

Smart defaults: dependencies auto-limited by detailLevel (summary: 10, standard: 25, full: unlimited).

Essential for understanding repository relationships, analyzing dependencies, investigating integration points, and assessing impact of changes.

Returns pre-analyzed dependency graphs and relationship data.

getClusterInfo

Examine a specific cluster of related repositories to understand subsystem architecture within your organization.

Returns all member repositories, their interdependencies, project summaries, and resource URIs.

Use this to analyze how repositories collaborate, understand service boundaries, explore microservice architectures, or investigate system decomposition patterns.

Valuable for architectural reviews and impact analysis.

searchRepositories

ONLY use when you DON'T know the repository name. If you know exact name, use getRepositoryInfo or getFieldPath directly.

Intelligent search across your organization's Git repositories using natural language queries.

Search by technology, functionality, frameworks, or project characteristics when repository name is unknown.

Uses TF-IDF algorithm on pre-indexed repository metadata for relevant results.

Examples: 'Python microservices', 'repositories using Redis', 'authentication services', 'React applications', 'payment processing systems', 'Kubernetes deployments'.

Returns repositories with relevance scores and direct access URIs.

searchWithinRepository

Search for content within a single repository including metadata and dependency data.

Searches metadata fields and optionally incoming_dependencies and outgoing_dependencies.

By default searches ALL data for comprehensive results.

Use includeIncomingDependencies=false and includeOutgoingDependencies=false for faster metadata-only search.

Returns filtered results with matches from metadata and dependencies.

Use when: You know which repo but need to find specific information without knowing exact field paths.

Natural language queries work well.

getRepositorySchema

Discover repository structure without fetching data.

Returns field names, types, array counts, and nested hierarchy.

Essential first step for exploring unfamiliar repositories.

getFieldPath

Extract specific nested field using dot notation and array indexing.

MOST EFFICIENT for surgical data extraction - returns only requested field vs full repository.

For dependencies: use 'incoming_dependencies' or 'outgoing_dependencies' paths with arraySlice, then filter by edge.type field to isolate specific categories.

Supports deep nesting, array slicing, and optional parent context.

Returns only the requested field data.

queryFieldAcrossRepositories

Query same field path across multiple repositories in single call.

Comparative analysis, pattern discovery, and technology audits across repos.

searchCode

Search code using zoekt index with powerful query syntax.

Supports file filters, exclusions, case sensitivity.

Returns code matches with snippets.

searchSymbols

Search for symbol definitions (functions, classes, methods) across indexed codebase.

getCode

Retrieve actual source code content from repository files.

Use after searchCode/searchSymbols to view the full code around matches.

Returns file contents with line numbers. Only available when reposDir is configured.

Knowledge graph

The context engine behind Bito's AI Architect

Bito's Knowledge graph is the context engine behind Bito's AI Architect that captures your entire engineering system. It ingests your codebase, business context, and tribal knowledge into a unified graph, giving AI and dev tools a shared understanding of the system.

This always-updated graph powers smarter planning, grounded code generation, and faster problem-solving across a variety of tools, including:

  • Issue trackers (Jira, Linear)

  • Coding agents (Claude Code, Cursor, etc.)

  • Code reviews (GitHub, GitLab, Bitbucket)

  • Team communication (Slack)

The knowledge graph is great at answering questions like "What will be affected if we change Service A?" or "Have we seen this issue before?" without manual research.

Bito's AI Architect knowledge graph indexes your codebase, business context, and tribal knowledge. AI and dev tools can query this graph to give context-aware answers.

Table of contents

  1. How the knowledge graph is built

  2. Capabilities enabled by the knowledge graph

  3. How the knowledge graph differs from other AI tools

  4. Why the knowledge graph matters

How the knowledge graph is built

The knowledge graph ingests data from multiple sources to form a complete context layer.

The following sources are fed into Bito's indexing pipeline, which scans and parses each type of data to populate the knowledge graph.

  • Code and commits history: All source code (microservices, libraries, modules) and Git history (commits, branches). The graph records entities like classes, functions, and API endpoints, and notes code changes (e.g. refactor patterns) from commit metadata.

  • Issue trackers: Jira or Linear tickets, epics, and bugs. Each ticket is connected to the code or service it involves, and recurring incident patterns (like frequent hotfixes) become part of the context.

  • Documentation: Design documents, architecture decisions, wikis (e.g. Confluence). The graph links these to the relevant code components, capturing business intent and past decisions for reference.

  • Observability data: Logs, errors, and performance metrics. For example, if a service has repeated errors or missing logs, the graph notes that instability. This means operational risk indicators (like outage-prone services) are surfaced in the graph.

    • Note: Observability data integration is available as a custom-built solution for your organization. We can integrate with your existing observability platform (such as DataDog, New Relic, or others) to enrich the knowledge graph with operational insights. Contact the Bito team at [email protected] to discuss your observability integration needs.

  • Team communication: Slack messages that contain tribal knowledge like incident discussions, architecture debates, undocumented context.

  • Custom instructions: Enrich the knowledge graph with additional context that's relevant to your engineering workflow. By providing supplementary documentation, you help AI Architect develop a more complete understanding of your project.

    • Learn more

Capabilities enabled by the knowledge graph

Feasibility analysis

The knowledge graph evaluates proposed changes against your actual system state. It understands service boundaries, existing patterns, historical constraints, and known limitations. This allows it to determine what is realistically buildable, highlight risks early, and surface constraints that may not be obvious from specifications alone.

Impact assessment

Before any change is made, the knowledge graph maps its full system impact. It traces dependencies across services, APIs, and shared components, and combines this with historical usage and change patterns. This ensures that decisions are based on a complete view of downstream effects, not partial assumptions.

Technical design

The knowledge graph grounds design decisions in how your system actually works. It reflects existing architectural patterns, prior design decisions, and service-level responsibilities. This leads to designs that are consistent with your environment and easier to implement, operate, and maintain.

Epic breakdown

The knowledge graph connects high-level work to real system components. It uses past implementation patterns, system dependencies, and team workflows to break down epics into actionable units. This results in tasks that are aligned with how work is actually executed in your organization.

Context for AI coding agents

When generating code, the knowledge graph provides system-specific context such as API contracts, service interactions, error handling patterns, and operational constraints. This ensures that generated code aligns with your architecture and integrates correctly with existing systems.

Code review enhancement

The knowledge graph adds system-wide context to code reviews. It highlights relevant patterns, prior issues, and cross-service implications that may not be visible within a single pull request. This helps reviewers make more informed decisions with less manual investigation.

How the knowledge graph differs from other AI tools

Beyond RAG and vector search

Most AI coding tools use retrieval-augmented generation: embedding code as vectors and retrieving relevant snippets. This treats your codebase as searchable text rather than an interconnected system.

When you ask about authentication, vector search finds files containing "auth" keywords. It doesn't understand that your authentication service depends on specific Redis configuration, that an Architecture Decision Record (ADR) documents why Redis was chosen, or that a recent incident involved rate limiting.

The difference is between finding information and understanding relationships. A vector database can retrieve your authentication service code and a Jira ticket separately, but can't connect that the ticket describes an incident that led to the code change, which implemented a pattern from an ADR, and monitoring shows the pattern's effectiveness.

More context isn't better context

Some tools add more context to prompts — feeding more code and documentation to the AI. But retrieving fifty potentially relevant files when only three matter creates noise, not clarity.

The knowledge graph solves a different problem: identifying which information matters for specific decisions and why it matters.

Understanding system evolution

Traditional AI tools treat codebases as relatively static, re-indexing periodically without modeling change over time. The knowledge graph understands that your current architecture results from decisions made in specific contexts.

When your team has been migrating from monolith to microservices for a year, that's not historical trivia — it's a pattern that should inform how new features are designed.

Operational context

Code analysis tools build dependency graphs and trace function calls, but they don't capture operational reality. Knowing Service A calls Service B is useful. Knowing that Service B has rate limits that caused a production incident eight months ago, that the response involved implementing circuit breakers, and that a shared library now exists for this pattern — that's the context difference between adequate code and production-ready code.

Why the knowledge graph matters

Scaling engineering organizations

The constraint in scaling engineering isn't hiring developers — it's enabling them to make good decisions without complete context. When critical knowledge lives in senior engineers' heads, scaling means either accepting decisions with less context (leading to rework) or creating bottlenecks.

The knowledge graph distributes accumulated knowledge. Mid-level engineers access the same contextual understanding staff engineers bring, not through years of experience but through the graph making that context explicit and queryable.

Technical debt visibility

Technical debt is the gap between how your system is designed and how it needs to work. The graph makes this visible by connecting what was decided (ADRs, design docs), what was built (code), what happened (incidents, monitoring), and what's planned (Jira epics).

This visibility enables informed decisions about what technical debt costs and what remediation provides value.

Compliance and auditability

For organizations with regulatory requirements, the graph provides an auditable record of technical decisions. When you need to demonstrate why architectural choices were made, what alternatives were considered, and how security requirements were addressed, the graph traces these relationships explicitly.

AI for high-level decisions

Most AI tools excel at isolated tasks: writing functions, explaining code, suggesting refactors. The knowledge graph makes AI useful for decisions requiring system-wide understanding: feasibility analysis, architectural design, impact assessment, etc.

These are tasks senior engineers spend most time on, and where AI historically provided least value due to lacking context.

Organizational learning

Every decision captured in the graph becomes training data for better future decisions. Organizations accumulate knowledge over time, but it usually remains implicit until people leave and understanding walks out the door.

The knowledge graph makes accumulation explicit, preserving it in a form that informs decision-making as teams evolve.

MCP Analytics

The Architect MCP Analytics dashboard in Bito Cloud provides visibility into how Bito's AI Architect is being used across your workspace through the Model Context Protocol (MCP). Use these metrics to track tool usage, monitor engagement, and understand what tasks the AI Architect is being applied to.

All charts update on a rolling basis and are accessible directly from the Bito UI.

Overview

Each time the AI Architect invokes a structured capability — such as code search, file reading, or architecture analysis — it is recorded as a tool call. The analytics page aggregates these tool calls to help you answer questions like:

  • How much is the AI Architect being used?

  • Who is using it, and how many people are actively engaged?

  • Which types of tasks is it being used for most?

  • Is usage growing or declining over time?

Available charts

Tool Call Volume — Last 4 Weeks

Displays the total number of MCP tool calls made by all users in the last 4 weeks.

Use this as a high-level indicator of overall AI Architect activity. A rising count suggests growing adoption or deeper integration into developer workflows. A sudden drop may point to access issues, a change in team workflow, or a degraded experience worth investigating.

Active Users — Last 4 Weeks

Shows the number of unique workspace members who triggered at least one MCP tool call within the last 4 weeks.

This metric reflects the breadth of adoption rather than total volume. Compare it alongside tool call volume to understand usage distribution:

  • High volume + low active users → a few power users driving most activity

  • Growing active users + stable volume → broader but lighter adoption across the team

Tool Call Volume — Last 8 Weeks

Breaks down tool call volume week by week over the last 8 weeks.

The longer time horizon makes it easier to identify growth trajectories, plateau periods, or regressions following a product change or team event. Use this chart to compare performance before and after AI Architect rollouts, onboarding pushes, or feature updates.

Tool Calls by Purpose — Last 4 Weeks

Segments tool calls by their functional category, showing which types of tasks the AI Architect is most frequently being used for. Volume is displayed over time so you can track how the purpose distribution shifts within the 4-week window.

Use this chart to identify which Architect capabilities are most valued by your team and where adoption of specific features may need support or enablement.

Interpreting the data

Signal
What it may indicate

Steady or growing tool call volume

Healthy adoption and continued use

Increasing active users

Broader team engagement

Flat volume after onboarding

Adoption gap; consider enablement efforts

High volume, few active users

Power-user concentration; limited spread

Sharp weekly drop

Possible access issue or workflow disruption

Single purpose dominating usage

Narrow use case; other capabilities may be underexplored

Tip: Cross-reference Tool Call Volume and Active Users to calculate an average calls-per-user ratio. This helps distinguish between deep individual usage and broad team adoption.

Glossary

Term
Definition

MCP

Model Context Protocol — the structured interface used by AI Architect to invoke tools like code search, file access, and architectural analysis.

Tool call

A single invocation of an MCP tool by the AI Architect on behalf of a user. One session may produce many tool calls.

Tool call volume

The total count of tool calls recorded within a given time window, across all users.

Active users

Unique workspace members who triggered at least one tool call within the specified window.

Tool calls by purpose

A categorization of tool calls by the intent or function they serve, such as code navigation or architecture review.

Rolling window

A time range (e.g. 4 weeks or 8 weeks) that shifts forward each day relative to the current date, rather than being fixed to a calendar period.

Key features

Explore the powerful capabilities of the AI Code Review Agent.

Get a 14-day FREE trial of Bito's AI Code Review Agent.

Features overview

A quick look at powerful features of Bito's AI Code Review Agent—click to jump to details.

  1. AI that understands your code

  2. One-click setup for GitHub, GitLab, and Bitbucket

  3. Automated and manually-triggered AI code reviews

  4. Pull request summary

  5. Changelist

  6. One-click to accept suggestions

  7. Chat with AI Code Review Agent

  8. Incremental code reviews

  9. Code review analytics

  10. Custom code review rules and guidelines

  11. Multiple specialized engineers for targeted code analysis

  12. Integrated feedback from dev tools you use

  13. Jira integration

  14. Supports all major programming languages

  15. Enterprise-grade security

Start free trialGet a demo


AI that understands your code

The AI Code Review Agent understand code changes in pull requests. It analyzes relevant context from your entire repository, resulting in more accurate and helpful code reviews.

To comprehend your code and its dependencies, it uses Symbol Indexing, Abstract Syntax Trees (AST), and Embeddings.

Learn more

One-click setup for GitHub, GitLab, and Bitbucket

Bito Cloud offers a one-click solution for using the AI Code Review Agent, eliminating the need for any downloads on your machine.

Bito supports integration with the following Git providers:

  • GitHub

  • GitHub (Self-Managed)

  • GitLab

  • GitLab (Self-Managed)

  • Bitbucket

  • Bitbucket (Self-Managed)

Learn more

Automated and manually-triggered AI code reviews

By default, the AI Code Review Agent automatically reviews all new pull requests and provides detailed feedback.

To initiate a manual review, simply type /review in the comment box on the pull request and submit it. This action will start the code review process.

Pull request summary

Get a concise overview of your pull request (PR) directly in the description section, making it easier to understand the code changes at a glance.

Each pull request includes an automatically generated summary that explains the intent and scope of the changes in a clear, easy-to-read format.

The summary highlights the main objective of the update, outlines the most important modifications, and provides a high-level view of their impact on the codebase. This allows reviewers to quickly understand what the pull request is about before diving into the detailed code changes.

Summary of pull request in the description section.

Changelist

A tabular view that displays key changes in a pull request, making it easy to spot important updates at a glance without reviewing every detail. Changelist categorizes modifications and highlights impacted files, giving you a quick, comprehensive summary of what has changed.

Changelist in AI Code Review Agent's feedback.

One-click to accept suggestions

The AI-generated code review feedback is posted as comments directly within your pull request, making it seamless to view and address suggestions right where they matter most.

You can accept the suggestions with a single click, and the changes will be added as a new commit to the pull request.

One-click to accept AI code review suggestions
One-click to accept AI code review suggestions

Chat with AI Code Review Agent

Ask questions directly to the AI Code Review Agent regarding its code review feedback. You can inquire about highlighted issues, request alternative solutions, or seek clarifications on suggested fixes.

Real-time collaboration with the AI Code Review Agent accelerates your development cycle. By delivering immediate, actionable insights, it eliminates the delays typically experienced with human reviews. Developers can engage directly with the Agent to clarify recommendations on the spot, ensuring that any issues are addressed swiftly and accurately.

Bito supports over 20 languages—including English, Hindi, Chinese, and Spanish—so you can interact with the AI in the language you’re most comfortable with.

Incremental code reviews

AI Code Review Agent automatically reviews only the recent changes each time you push new commits to a pull request. This saves time and reduces costs by avoiding unnecessary re-reviews of all files.

You can enable or disable incremental reviews using the Agent settings.

Learn more

Code review analytics

Get in-depth insights into your org’s code reviews with user-friendly Code Review Analytics dashboard. Track key metrics such as pull requests reviewed, issues found, lines of code reviewed, and understand individual contributions.

Code Review Analytics dashboard

Learn more

Custom code review rules and guidelines

The AI Code Review Agent offers a flexible solution for teams looking to enforce custom code review rules, standards, and guidelines tailored to their unique development practices. Whether your team follows specific coding conventions or industry best practices, you can customize the Agent to suite your needs.

We support two ways to customize AI Code Review Agent’s suggestions:

  1. Provide feedback on Bito-reported issues in pull requests, and the AI Code Review Agent automatically adapts by creating code review rules to prevent similar suggestions in the future.

  2. Create custom code review guidelines via the dashboard. Define rules through the Custom Guidelines dashboard in Bito Cloud and apply them to agent instances in your workspace.

Learn more

Multiple specialized engineers for targeted code analysis

The AI Code Review Agent acts as a team of specialized engineers, each analyzing different aspects of your pull request. You'll get specific advice for improving your code, right down to the exact line in each file.

The areas of analysis include:

  • Security

  • Performance

  • Scalability

  • Optimization

  • Will this change break anything? Based on the diff can we include anything?

  • Code structure and formatting (e.g., tab, spaces)

  • Basic coding standards including variable names (e.g., ijk)

This multifaceted analysis results in more detailed and accurate code reviews, saving you time and improving code quality.

Learn more

Integrated feedback from dev tools you use

Elevate your code reviews by harnessing the power of the development tools you already trust. Bito's AI Code Review Agent seamlessly integrates feedback from essential tools including:

  • Static code analysis

  • Open source security vulnerabilities check

  • Linter integrations

  • Secrets scanning (e.g., passwords, API keys, sensitive information)

Static code analysis

Using tools like Facebook’s open-source fbinfer (available out of the box), the Agent dives deep into your code—tailored to each language—and suggests actionable fixes. You can also configure additional tools you use for a more customized analysis experience.

Static Code Analysis feedback highlighting suggestions and fixes.

Open source security vulnerabilities check

The AI Code Review Agent checks real-time for the latest high severity security vulnerabilities in your code, using OWASP Dependency-Check (available out of the box). Additional tools such as Snyk, or GitHub Dependabot can also be configured.

Showing high-severity security vulnerabilities report.

Linter integrations

Our integrated linter support reviews your code for consistency and adherence to best practices. By catching common errors early, it ensures your code stays clean, maintainable, and aligned with modern development standards.

Secrets scanning

Safeguard your sensitive data effortlessly. With built-in scanning capabilities, the Agent checks your code for exposed passwords, API keys, and other confidential information—helping to secure your codebase throughout the development lifecycle.

Learn more

Jira integration

Seamlessly connect Bito with Jira to automatically validate pull request code changes against linked Jira tickets. This ensures your implementations meet specified requirements through real-time, structured validation feedback directly in your pull requests.

Support for Jira Cloud and Jira Data Center setups enables flexible integrations, while multiple ticket-linking methods ensure accurate requirement tracking.

Boost your team's code quality, collaboration, and traceability with automated Jira ticket validation.

Learn more

Supports all major programming languages

No matter if you're coding in Python, JavaScript, Java, C++, or beyond, our AI Code Review Agent has you covered. It understands the unique syntax and best practices of every popular language, delivering tailored insights that help you write cleaner, more efficient code—every time.

Learn more

Enterprise-grade security

Bito and third-party LLM providers never store or use your code, prompts, or any other data for model training or any other purpose.

Bito is SOC 2 Type II compliant. This certification reinforces our commitment to safeguarding user data by adhering to strict security, availability, and confidentiality standards. SOC 2 Type II compliance is an independent, rigorous audit that evaluates how well an organization implements and follows these security practices over time.

Learn more

Install/run using Bito Cloud

Deploy the AI Code Review Agent in Bito Cloud.

Bito Cloud offers a single-click solution for using the AI Code Review Agent, eliminating the need for any downloads on your machine. You can create multiple instances of the Agent, allowing each to be used with a different repository on a Git provider such as GitHub, GitLab, or Bitbucket.

We also support GitHub (Self-Managed), GitLab (Self-Managed), and Bitbucket (Self-Managed).

The Free Plan offers AI-generated pull request summaries to provide a quick overview of changes. For advanced features like line-level code suggestions, consider upgrading to the Team Plan. For detailed pricing information, visit our Pricing page.

Get a 14-day FREE trial of Bito's AI Code Review Agent.

Connect Bito to your Git provider

Select your Git provider from the options below and follow the step-by-step installation guide to seamlessly set up your AI Code Review Agent.

Guide for GitHub

Guide for GitHub (Self-Managed)

Guide for GitLab

Guide for GitLab (Self-Managed)

Guide for Bitbucket

Guide for Bitbucket (Self-Managed)

Guide for GitHub

Integrate the AI Code Review Agent into your GitHub workflow.

Speed up code reviews by configuring the AI Code Review Agent with your GitHub repositories. In this guide, you'll learn how to set up the Agent to receive automated code reviews that trigger whenever you create a pull request, as well as how to manually initiate reviews using available commands.

The Free Plan offers AI-generated pull request summaries to provide a quick overview of changes. For advanced features like line-level code suggestions, consider upgrading to the Team Plan. For detailed pricing information, visit our Pricing page.

Get a 14-day FREE trial of Bito's AI Code Review Agent.

Video tutorial

Installation and configuration steps

Follow the step-by-step instructions below to install the AI Code Review Agent using Bito Cloud:

Step 1: Log in to Bito

Log in to Bito Cloud and select a workspace to get started.

Step 2: Open the Code Review Agents setup

Click Repositories under the CODE REVIEW section in the sidebar.

Step 3: Select your Git provider

Bito supports integration with the following Git providers:

  • GitHub

  • GitHub (Self-Managed)

  • GitLab

  • GitLab (Self-Managed)

  • Bitbucket

  • Bitbucket (Self-Managed)

Since we are setting up the Agent for GitHub, select GitHub to proceed.

This will redirect you to GitHub.

Step 4: Install the Bito app for GitHub

To enable pull request reviews, you need to install and authorize the Bito’s AI Code Review Agent app.

On GitHub, select where you want to install the app.

Grant Bito access to your repositories:

  • Choose All repositories to enable Bito for every repository in your account.

  • Or, select Only select repositories and pick specific repositories using the dropdown menu.

Bito app uses these permissions:

  • Read access to metadata

  • Read and write access to code, issues, and pull requests

  • Read access to organization members

Click Install & Authorize to proceed. Once completed, you will be redirected to Bito.

Step 5: Enable AI Code Review Agent on repositories

After connecting Bito to your GitHub account, you'll see a list of repositories that Bito has access to.

Use the toggles in the Code Review Status column to enable or disable the Agent for each repository.

To customize the Agent’s behavior, you can edit existing configurations or create new Agents as needed.

Learn more

Step 6: Automated and manual pull request reviews

Once a repository is enabled, you can invoke the AI Code Review Agent in the following ways:

  1. Automated code review: By default, the Agent automatically reviews all new pull requests and provides detailed feedback.

  2. Manually trigger code review: To initiate a manual review, simply type /review in the comment box on the pull request and submit it. This action will start the code review process.

The AI-generated code review feedback will be posted as comments directly within your pull request, making it seamless to view and address suggestions right where they matter most.

Note: To enhance efficiency, the automated code reviews are only triggered for pull requests merging into the repository’s default branch. This prevents unnecessary processing and Advanced AI requests usage.

To review additional branches, you can use the Include Source/Target Branches filter. Bito will review pull requests when the source or target branch matches the list.

The Include Source/Target Branches filter applies only to automatically triggered reviews. Users should still be able to trigger reviews manually via the /review command.

The AI Code Review Agent automatically reviews code changes up to 5000 lines when a pull request is created. For larger changes, you can use the /review command.

It may take a few minutes to get the code review posted as a comment, depending on the size of the pull request.

Step 7: Specialized commands for code reviews

Bito also offers specialized commands that are designed to provide detailed insights into specific areas of your source code, including security, performance, scalability, code structure, and optimization.

  • /review security: Analyzes code to identify security vulnerabilities and ensure secure coding practices.

  • /review performance: Evaluates code for performance issues, identifying slow or resource-heavy areas.

  • /review scalability: Assesses the code's ability to handle increased usage and scale effectively.

  • /review codeorg: Scans for readability and maintainability, promoting clear and efficient code organization.

  • /review codeoptimize: Identifies optimization opportunities to enhance code efficiency and reduce resource usage.

By default, the /review command generates inline comments, meaning that code suggestions are inserted directly beneath the code diffs in each file. This approach provides a clearer view of the exact lines requiring improvement. However, if you prefer a code review in a single post rather than separate inline comments under the diffs, you can include the optional parameter: /review #inline_comment=False

For more details, refer to Available Commands.

Step 8: Chat with AI Code Review Agent

Ask questions directly to the AI Code Review Agent regarding its code review feedback. You can inquire about highlighted issues, request alternative solutions, or seek clarifications on suggested fixes.

To start the conversation, type your question in the comment box within the inline suggestions on your pull request, and then submit it. Typically, Bito AI responses are delivered in about 10 seconds. On GitHub and Bitbucket, you need to manually refresh the page to see the responses, while GitLab updates automatically.

Bito supports over 20 languages—including English, Hindi, Chinese, and Spanish—so you can interact with the AI in the language you’re most comfortable with.

Step 9: Configure Agent settings

Agent settings let you control how reviews are performed, ensuring feedback is tailored to your team’s needs. By adjusting the options, you can:

  • Make reviews more focused and actionable.

  • Apply your own coding standards.

  • Reduce noise by excluding irrelevant files or branches.

  • Add extra checks to improve code quality and security.

Learn more

Screenshots

Screenshot # 1

AI-generated pull request (PR) summary

Screenshot # 2

Changelist showing key changes and impacted files in a pull request.

Changelist in AI Code Review Agent's feedback.

Screenshot # 3

AI code review feedback posted as comments on the pull request.

Guide for GitLab (Self-Managed)

Integrate the AI Code Review Agent into your self-hosted GitLab workflow.

Speed up code reviews by configuring the AI Code Review Agent with your GitLab (Self-Managed) server. In this guide, you'll learn how to set up the Agent to receive automated code reviews that trigger whenever you create a merge request, as well as how to manually initiate reviews using available commands.

The Free Plan offers AI-generated pull request summaries to provide a quick overview of changes. For advanced features like line-level code suggestions, consider upgrading to the Team Plan. For detailed pricing information, visit our Pricing page.

Get a 14-day FREE trial of Bito's AI Code Review Agent.

Video tutorial

coming soon...

Prerequisites

Before proceeding, ensure you've completed all necessary prerequisites.

1. Create a GitLab Personal Access Token:

For GitLab merge request code reviews, a token with api scope is required. Make sure that the token is created by a GitLab user who has the Maintainer access role.

View Guide

Important: Bito posts comments using the GitLab user account linked to the Personal Access Token used during setup. To display "Bito" instead of your name, create a separate user account (e.g., Bito Agent) and use its token for integration.

We recommend setting the token expiration to at least one year. This prevents the token from expiring early and avoids disruptions in the AI Code Review Agent's functionality.

Additionally, we highly recommend updating the token before expiry to maintain seamless integration and code review processes.

GitLab Personal Access Token

2. Authorizing a GitLab Personal Access Token for use with SAML single sign-on:

If your GitLab organization enforces SAML Single Sign-On (SSO), you must authorize your Personal Access Token through your Identity Provider (IdP); otherwise, Bito's AI Code Review Agent won't function properly.

For more information, please refer to the following GitLab documentation:

  • SAML SSO for GitLab.com groups

  • SAML SSO for GitLab Self-Managed

  • Password generation for users created through SAML

Installation and configuration steps

Follow the step-by-step instructions below to install the AI Code Review Agent using Bito Cloud:

Step 1: Log in to Bito

Log in to Bito Cloud and select a workspace to get started.

Step 2: Open the Code Review Agents setup

Click Repositories under the CODE REVIEW section in the sidebar.

Step 3: Select your Git provider

Bito supports integration with the following Git providers:

  • GitHub

  • GitHub (Self-Managed)

  • GitLab

  • GitLab (Self-Managed)

  • Bitbucket

  • Bitbucket (Self-Managed)

Since we are setting up the Agent for GitLab (Self-Managed) server, select GitLab (Self-Managed) to proceed.

Supported versions:

  • GitLab (Self-Managed): 15.5 and above

Step 4: Connect Bito to GitLab

To enable merge request reviews, you’ll need to connect your Bito workspace to your GitLab (Self-Managed) server.

If your network blocks external services from interacting with the GitLab server, whitelist all of Bito's gateway IP addresses in your firewall to ensure Bito can access your self-hosted repositories. The Agent response can come from any of these IPs.

  • List of IP addresses to whitelist:

    • 18.188.201.104

    • 3.23.173.30

    • 18.216.64.170

You need to enter the details for the below mentioned input fields:

  • Hosted GitLab URL: This is the domain portion of the URL where you GitLab Enterprise Server is hosted (e.g., https://yourcompany.gitlab.com). Please check with your GitLab administrator for the correct URL.

  • Personal Access Token: Generate a GitLab Personal Access Token with api scope in your GitLab (Self-Managed) account and enter it into the Personal Access Token input field. For guidance, refer to the instructions in the Prerequisites section.

Click Validate to ensure the token is functioning properly.

If the token is successfully validated, you can select your GitLab Group from the dropdown menu.

  • Note: You can select multiple groups after the setup is complete.

Click Connect Bito to GitLab to proceed.

Step 5: Enable AI Code Review Agent on repositories

After connecting Bito to your GitLab self-managed server, you'll see a list of repositories that Bito has access to.

Use the toggles in the Code Review Status column to enable or disable the Agent for each repository.

To customize the Agent’s behavior, you can edit existing configurations or create new Agents as needed.

Learn more

Step 6: Automated and manual merge request reviews

Once a repository is enabled, you can invoke the AI Code Review Agent in the following ways:

  1. Automated code review: By default, the Agent automatically reviews all new merge requests and provides detailed feedback.

  2. Manually trigger code review: To initiate a manual review, simply type /review in the comment box on the merge request and submit it. This action will start the code review process.

The AI-generated code review feedback will be posted as comments directly within your merge request, making it seamless to view and address suggestions right where they matter most.

Note: To enhance efficiency, the automated code reviews are only triggered for merge requests merging into the repository’s default branch. This prevents unnecessary processing and Advanced AI requests usage.

To review additional branches, you can use the Include Source/Target Branches filter. Bito will review merge requests when the source or target branch matches the list.

The Include Source/Target Branches filter applies only to automatically triggered reviews. Users should still be able to trigger reviews manually via the /review command.

The AI Code Review Agent automatically reviews code changes up to 5000 lines when a merge request is created. For larger changes, you can use the /review command.

It may take a few minutes to get the code review posted as a comment, depending on the size of the merge request.

Step 7: Specialized commands for code reviews

Bito also offers specialized commands that are designed to provide detailed insights into specific areas of your source code, including security, performance, scalability, code structure, and optimization.

  • /review security: Analyzes code to identify security vulnerabilities and ensure secure coding practices.

  • /review performance: Evaluates code for performance issues, identifying slow or resource-heavy areas.

  • /review scalability: Assesses the code's ability to handle increased usage and scale effectively.

  • /review codeorg: Scans for readability and maintainability, promoting clear and efficient code organization.

  • /review codeoptimize: Identifies optimization opportunities to enhance code efficiency and reduce resource usage.

By default, the /review command generates inline comments, meaning that code suggestions are inserted directly beneath the code diffs in each file. This approach provides a clearer view of the exact lines requiring improvement. However, if you prefer a code review in a single post rather than separate inline comments under the diffs, you can include the optional parameter: /review #inline_comment=False

For more details, refer to Available Commands.

Step 8: Chat with AI Code Review Agent

Ask questions directly to the AI Code Review Agent regarding its code review feedback. You can inquire about highlighted issues, request alternative solutions, or seek clarifications on suggested fixes.

To start the conversation, type your question in the comment box within the inline suggestions on your merge request, and then submit it. Typically, Bito AI responses are delivered in about 10 seconds. On GitHub and Bitbucket, you need to manually refresh the page to see the responses, while GitLab updates automatically.

Bito supports over 20 languages—including English, Hindi, Chinese, and Spanish—so you can interact with the AI in the language you’re most comfortable with.

Step 9: Configure Agent settings

Agent settings let you control how reviews are performed, ensuring feedback is tailored to your team’s needs. By adjusting the options, you can:

  • Make reviews more focused and actionable.

  • Apply your own coding standards.

  • Reduce noise by excluding irrelevant files or branches.

  • Add extra checks to improve code quality and security.

Learn more

Managing multiple GitLab groups in Bito Cloud

Bito Cloud allows you to connect and manage multiple GitLab groups for GitLab (Self-Managed) integrations. Use the instructions below to add or remove GitLab groups for AI code reviews.

How to add multiple GitLab groups?

You can connect more than one GitLab group to Bito for AI code reviews.

Follow these steps to add additional groups:

  1. Go to the Repositories page.

  1. At the top-center of the page, click the “+” (plus) icon next to the currently selected GitLab group name, then select Add group from the dropdown menu.

  1. A popup will appear. Use the dropdown menu to select a GitLab group you want to add.

  1. Click the Add group button.

Once added, all repositories from that group will be listed and available for AI code reviews under the default agent.

Note: This multiple GitLab groups feature is currently available only for GitLab (Self-Managed) integrations.

How to remove a GitLab group?

To disconnect a GitLab group from Bito Cloud:

  1. Go to the Repositories page.

  1. At the top-center of the page, click the three dots icon next to the currently selected GitLab group name, then select Manage groups from the dropdown menu.

  1. A popup will appear showing a list of connected groups. Click the “✕” (cross) icon next to the group you want to remove.

  1. Confirm the removal in the prompt.

Once removed, the repositories from that group will no longer appear in Bito or be included in AI code reviews.

How to select one or more GitLab Groups?

When you have multiple GitLab groups connected in Bito Cloud, the group name at the top-center of the Repositories page becomes a dropdown menu.

From this dropdown, you can:

  • Select a single group

  • Select multiple groups as needed

  • Select All groups

The list of repositories displayed below will update automatically based on your selection—showing only the repositories from the selected groups.

Screenshots

Screenshot # 1

AI-generated merge request (MR) summary

Screenshot # 2

Changelist showing key changes and impacted files in a merge request.

Changelist in AI Code Review Agent's feedback.

Screenshot # 3

AI code review feedback posted as comments on the merge request.

Clone an Agent instance

Easily duplicate Agent configurations for faster setup.

Save time and effort by quickly creating a new AI Code Review Agent instance using the configuration settings of an existing one. It’s a fast and simple way to set up multiple Agent instances without having to reconfigure each one.

Follow the steps below to get started:

  1. Log in to Bito Cloud and select a workspace to get started.

  2. From the left sidebar, select Code Review Agents.

  1. If your Bito workspace is connected to your GitHub/GitLab/Bitbucket account, a list of AI Code Review Agent instances configured in your workspace will appear. Locate the instance you wish to duplicate and click the Clone button given in front of it.

  1. An Agent configuration form will open, pre-populated with the input field values. You can edit these values as needed.

  1. Click Select repositories to choose Git repositories for the new Agent.

  1. To enable code review for a specific repository, simply select its corresponding checkbox. You can also enable repositories later, after the Agent has been created. Once done, click Save and continue to save the new Agent configuration.

  1. When you save the configuration, your new Agent instance will be added and available on the Code Review Agents page.

Delete unused Agent instances

Easily delete Agent instances you no longer need.

If you no longer need an AI Code Review Agent instance, you can delete it to keep your workspace organized. Follow the steps below to quickly remove any unused Agents.

  1. Log in to Bito Cloud and select a workspace to get started.

  2. From the left sidebar, select Code Review Agents.

    If your Bito workspace is connected to your GitHub/GitLab/Bitbucket account, a list of AI Code Review Agent instances configured in your workspace will appear.

  1. Before deleting an Agent, ensure that any repositories currently using it are reassigned to another Agent otherwise a warning popup will appear.

  1. Locate the Agent you wish to delete and click the Delete button given in front of it.

Note: The Default Agent (provided by Bito) cannot be deleted.

Chat with AI Code Review Agent

Ask questions about highlighted issues, request alternative solutions, or seek clarifications on suggested fixes.

Ask questions directly to the AI Code Review Agent regarding its code review feedback. You can inquire about highlighted issues, request alternative solutions, or seek clarifications on suggested fixes.

Real-time collaboration with the AI Code Review Agent accelerates your development cycle. By delivering immediate, actionable insights, it eliminates the delays typically experienced with human reviews. Developers can engage directly with the Agent to clarify recommendations on the spot, ensuring that any issues are addressed swiftly and accurately.

Bito supports over 20 languages—including English, Hindi, Chinese, and Spanish—so you can interact with the AI in the language you’re most comfortable with.

How to chat?

To start a conversation, type your question directly as a reply to the Agent’s code review comment.

The AI Code Review Agent will analyze your comment and determine if it’s a valid and relevant question.

  • If the agent decides it’s a valid question, it will respond with helpful insights.

  • If the agent determines it’s unclear, off-topic, or not related to its feedback, it will not respond.

To help the agent recognize your question faster, you can also tag your comment with @bitoagent or @askbito. Tagging informs the Agent that your message is intended as a question. However, tagging does not guarantee a reply. The agent will still analyze your comment and decide whether it is a valid question worth responding to.

Bito usually responds within about 10 seconds.

  • On GitHub and Bitbucket, you may need to manually refresh the page to see the response.

  • On GitLab, updates happen automatically.

Note: The AI Code Review Agent will only respond to questions posted as a reply to its own comments. It will not reply to questions added on threads that it didn’t start.

What you can ask about

When chatting with the AI Code Review Agent, you can ask questions to better understand or improve the code feedback it provided. Here are examples of what you can ask:

  • Clarifications about a highlighted issue Ask the AI to explain why it flagged a certain line of code or why something might cause a problem.

  • Request for alternative solutions Request different ways to fix or improve the code beyond what was originally suggested.

  • Deeper explanations If you want to understand the technical reasoning behind a suggestion (e.g., security concerns, performance impacts, best practices), you can ask for more detailed explanations.

  • Request for examples Ask the AI to provide an example snippet showing the corrected or improved code.

  • Trade-off discussions Ask the AI about pros and cons of different approaches it may have suggested (e.g., performance vs. readability).

  • Best practices guidance Request advice on best practices related to the specific code snippet — such as naming conventions, error handling, optimization tips, or design patterns.

  • Language-specific advice If you’re working in a particular language (e.g., JavaScript, Python, Java), you can ask for language-specific guidance related to the comment.

  • Request for more context If the suggestion feels too "short" or "surface level," you can ask the AI to explain more about the broader coding or architectural concept behind its feedback.

  • Security and safety questions If a suggestion touches on security (like input validation, authentication, or encryption), you can ask for further security-related advice.

  • Testing and validation Ask the AI if it recommends writing any tests based on its code suggestions and what those tests might look like.

Tip: Feel free to ask your question in your preferred language! Bito supports over 20 languages, including English, Hindi, Chinese, and Spanish.

What you cannot ask about

The AI can only answer questions related to its own code review comments.

  • You cannot ask general questions about the repository or unrelated topics.

  • You cannot start a new thread independently — your question must be a reply to a comment made by Bito’s AI Code Review Agent.

If your comment is not linked to a Bito review comment, the AI will not respond.

Implementing custom code review rules

Customize Bito’s AI Code Review Agent to enforce your coding practices.

Bito’s AI Code Review Agent offers a flexible solution for teams looking to enforce custom code review rules, standards, and guidelines tailored to their unique development practices. Whether your team follows specific coding conventions or industry best practices, you can customize the Agent to suite your needs.

We support three ways to customize AI Code Review Agent’s suggestions:

  1. Provide feedback on Bito-reported issues in pull requests, and the AI Code Review Agent automatically adapts by creating code review rules to prevent similar suggestions in the future.

  2. Create custom code review guidelines. Define rules through the Custom Guidelines dashboard in Bito Cloud and apply them to agent instances in your workspace, or add them directly to your repository using a .bito.yaml file.

  3. Use project-specific guideline files. Add guideline files (like .cursor/rules/*.mdc, .windsurf/rules/*.md, CLAUDE.md, GEMINI.md, or AGENTS.md) to your repository, and the AI Code Review Agent automatically uses them during pull request reviews to provide feedback aligned with your project's standards.

1- Provide feedback on Bito-reported issues

AI Code Review Agent refines its suggestions based on your feedback. When you provide negative feedback on Bito-reported issues in pull requests, the Agent automatically adapts by creating custom code review rules to prevent similar suggestions in the future.

Depending on your Git platform, you can provide negative feedback in the following ways:

  • GitHub: Select the checkbox given in feedback question at the end of each Bito suggestion or leave a negative comment explaining the issue with the suggestion.

  • GitLab: React with negative emojis (e.g., thumbs down) or leave a negative comment explaining the issue with the suggestion.

  • Bitbucket: Provide manual review feedback by leaving a negative comment explaining the issue with the suggestion.

The custom code review rules are displayed on the Learned Rules dashboard in Bito Cloud.

These rules are applied at the repository level for the specific programming language.

By default, newly generated custom code review rules are disabled. Once negative feedback for a specific rule reaches a threshold of 3, the rule is automatically enabled. You can also manually enable or disable these rules at any time using the toggle button in the Status column.

Note: Providing a positive reaction emoji or comment has no effect and will not generate a new code review rule.

After you provide negative feedback, Bito generates a new code review rule in your workspace. The next time the AI Code Review Agent reviews your pull requests, it will automatically filter out the unwanted suggestions.

2- Create custom code review guidelines

We understand that different development teams have unique needs. To accommodate these needs, we offer the ability to implement custom code review guidelines in Bito’s AI Code Review Agent.

Once you add guidelines, the agent will follow them when reviewing pull requests.

You can manage guidelines in two ways:

  1. Through the Bito Cloud dashboard - Create, apply, and edit guidelines entirely in the web interface

  2. Using a .bito.yaml file - Add custom guidelines directly to your repository for version-controlled, repository-specific configuration

By enabling custom code review guidelines, Bito helps your team maintain consistency and improve code quality.

Note: Custom review guidelines are available on the Professional Plan. Enabling this feature will upgrade your workspace to the Professional Plan. Visit pricing page

How to add a guideline

Step 1: Open the Custom Guidelines tab

  • Sign in to Bito Cloud.

  • Click Custom Guidelines in the sidebar.

Step 2: Fill the form

A. Manual setup

  1. Click Add guidelines button from the top right.

  2. Fill out:

    • Guideline name

    • Language (select a specific programming language or select General if the guideline applies to all languages)

    • Custom Guidelines and Rules (enter your guidelines here)

  3. Click Create guideline.

B. Use a Template

  1. Click Add guidelines button from the top right.

  2. Choose a template from the Use template dropdown menu.

  3. Review/edit fields as needed.

  4. Click Create guideline.

Step 3: Apply to an Agent

  • After creating a guideline, you’ll see an Apply review guideline dropdown.

  • Select the Agent instance, then click Manage review guidelines to open its settings.

To apply the guideline later: go to Repositories, find the Agent instance, click Settings, and manage guidelines there.

Step 4: Save configuration

On the Agent settings page, hit Save (top-right) to apply guideline changes.

Note: Visit the Custom Guidelines tab to edit or delete any guideline.

Managing review guidelines from agent settings

Efficiently control which custom guidelines apply to your AI Code Review Agent through the Agent settings interface.

  1. Go to Repositories dashboard from the Bito Cloud sidebar.

  2. Click Settings next to the target agent instance.

  1. Navigate to the Custom Guidelines section. Here you can either create a new guideline or select from existing guidelines.

  1. Create a new guideline

    • If you click Create a new guideline button, you will see the same form as mentioned earlier where you can enter the details to create a review guideline.

  1. Or select an existing guideline

    • If you click Select from existing guidelines button, you will get a popup screen from where you can select from a list review guidelines you already created. Use checkboxes to enable or disable each guideline for the selected agent and then click Add selected.

  1. Once you’ve applied or adjusted guidelines, click the Save button in the top-right corner to confirm changes.

FAQs

What types of custom code review guidelines can be implemented?

You can implement a wide range of custom code review guidelines, including:

  • Style and formatting guidelines

  • Security best practices

  • Performance optimization checks

  • Code complexity and maintainability standards

  • etc.

Is "custom code review guidelines" feature available in Team Plan?

No, this feature is available on the Professional Plan. Enabling the "custom code review guidelines" feature also upgrades your workspace to the Professional Plan.

For more details on Professional Plan, visit our Pricing Page.

3- Use project-specific guideline files

The AI Code Review Agent can read guideline files directly from your repository and use them during code reviews. These are the same guideline files that AI coding assistants (like Cursor, Windsurf, and Claude Code) use to help developers write code.

By adding these files to your repository, the agent automatically follows your project's specific coding standards, architecture patterns, and best practices when reviewing pull requests.

Supported guideline files

The AI Code Review Agent currently supports analyzing the following guideline files that are commonly used by different AI coding agents:

CRA currently supports analyzing the following guideline files that are commonly used by different AI coding agents:

.cursor/rules/*.mdc

Cursor IDE

.windsurf/rules/*.md

Windsurf IDE

CLAUDE.md

Claude Code

GEMINI.md

Gemini CLI

AGENTS.md

OpenAI CodeX, Cursor IDE

How to organize your guideline files

Multiple files in one directory

You can split your guidelines across multiple files:

For Windsurf, use the .md extension:

Module-specific guidelines:

Place guideline files in subdirectories to create rules for specific parts of your codebase:

The agent finds all relevant guideline files based on which files changed in your pull request.

Note: Rule precedence (where subdirectory rules override parent-level rules) will be added in a future release. Currently, the agent considers all applicable guideline files equally.

How citations work

Every relevant Bito comment includes a Citations section that links to the specific guideline that triggered the comment. The link takes you directly to the relevant line in your guideline file, making it easy to verify the feedback and understand why it was given.

Example scenario

Let's say you're building an application that integrates multiple LLM providers. Your guideline file specifies:

  • All providers must extend the BaseLLMProvider class

  • All providers must implement standard methods like generateResponse() and streamResponse()

  • New providers must be registered in the config/providers.json file

When someone submits a pull request to add a new provider, the agent can catch issues like:

  • The new provider doesn't extend the base class

  • Required methods are missing

  • The provider wasn't added to the configuration file

Each comment links back to the specific guideline, so the developer knows exactly what needs to be fixed.

Sample guideline file

Here's an example AGENT.md file to help you get started:

Interaction diagram

Visualize code changes and their impact with automated sequence diagrams.

The Interaction Diagram is a visual feature in Bito's AI Code Review Agent that automatically generates sequence diagrams to help you quickly understand the impact of code changes in your pull requests.

This diagram visualizes how different components of your code interact with each other, making code reviews faster and more intuitive.

Interaction diagram by Bito
Interaction Diagram by Bito

How to enable

  1. Navigate to the Code Review > Repositories dashboard.

  2. Click the Settings button next to the Agent instance you wish to modify.

  3. Under Review tab, enable the Generate interaction diagrams option.

Once enabled, Bito will automatically post interaction diagrams during code reviews.

Understanding sequence diagrams

A sequence diagram is a type of visual diagram that shows how different parts of your system interact with each other over time.

It illustrates the flow of operations by displaying the order in which methods are called and how data flows between different components.

This makes it easy to trace the execution path of your code and understand dependencies between modules.

Diagram components

Boxes

The main components in the diagram are displayed as boxes. The level of detail shown depends on the size of your code changes:

  • Small changes: Boxes may represent individual classes or functions with detailed interactions

  • Large changes: Boxes may represent higher-level abstractions for better readability

Bito's AI automatically determines the appropriate level of detail based on your pull request.

Labels and indicators

Within boxes, you'll see labels that provide quick insights:

Change type:

Indicates what kind of modification was made to each module in your codebase.

  • 🟩 Added - New code introduced to the codebase. These are components, functions, or classes that didn't exist before this pull request.

  • 🔄 Updated - Existing code that has been modified. This indicates changes to the logic, behavior, or implementation of existing components.

  • Deleted - Code that has been removed from the codebase. These components are no longer present after this pull request is merged.

Impact level:

Shows the scope and significance of changes to help you prioritize your code review efforts.

  • Low - Minimal impact (● ○ ○)

    • Changes are localized and unlikely to affect other parts of the system. Safe to review with standard attention.

  • Medium - Moderate impact (● ● ○)

    • Changes affect multiple components or have moderate complexity. Requires careful review of interactions and side effects.

  • High - Significant impact (● ● ●)

    • Changes are extensive or critical, affecting core functionality or multiple system areas. Demands thorough review and testing.

These visual indicators help you identify critical changes at a glance.

Arrows and flow

Solid arrows (→): Represent forward calls flowing left to right

  • Example: If main() calls UserService, a solid arrow points from main() to UserService

Dotted arrows (⇢): Represent return flows going right to left

  • Example: When UserService returns data to main(), a dotted arrow points back from UserService to main()

Circular arrows (↻): Indicate internal calls within the same module

  • Example: One component of UserService calling another component within UserService

Control flow blocks

Alt block (if-else logic)

  • Displayed as a dotted box around multiple lines

  • Contains two sections separated by a dotted line representing "if" and "else" branches

  • Shows conditional execution paths in your code

Opt block (optional parameters)

  • Used for functions with parameter overloading

  • Contains a single section for optional execution flow

  • Represents code that may or may not execute depending on optional parameters

Code outside these blocks represents the normal execution flow.

Platform-specific behavior

GitHub

  • Diagrams are posted in Mermaid format

  • Interactive controls available:

    • Pan (move top, bottom, left, right)

    • Expand/collapse

    • Zoom in/out

GitLab

  • Diagrams are posted in Mermaid format

  • Note: For very large diagrams, GitLab may not render automatically. You'll see a notice box with a "Display" button - click it to manually render the diagram

Bitbucket

  • Diagrams are posted as image format

Note: If you see a "syntax error" or "unable to render" message, try refreshing the page.

Incremental reviews

When you run incremental reviews (for example, by using the /review command in pull request comments), the existing interaction diagram will be updated rather than creating a new comment with a separate diagram.

Interaction diagram vs impact analysis diagram

Bito can generate two types of diagrams, but only one is displayed at a time:

  • Interaction diagram: Generated by the standard Code Review Agent, focusing on code changes in the current pull request

  • Impact analysis diagram: Generated using Bito AI Architect with complete cross-repository codebase understanding.

    • Note: This feature is not publicly available yet. Please contact Bito at [email protected] to have it enabled for your account.

Note: If both Impact Analysis and Interaction Diagram are enabled, only the Impact Analysis diagram will be shown.

Best practices

  • Review the diagram before diving into code details to get a high-level understanding

  • Use impact indicators to prioritize which changes need closer examination

  • Follow the arrow flows to understand the execution path

  • Pay special attention to "High" impact modules

Troubleshooting

  • Diagram not appearing: Verify that "Generate interaction diagrams" is enabled in Bito Cloud settings

  • Rendering issues:

    • In GitLab, you may need to click the Display button to manually render the diagram.

    • Refresh the page - this often resolves transient rendering errors.

  • Syntax errors: In some cases, the Mermaid diagram may contain syntax errors that prevent it from rendering. Try updating the pull request so the diagram is regenerated.

Installing on Cursor

It takes less than 2 minutes

Get up and running with Bito in just a few steps! Bito seamlessly integrates with Cursor, providing powerful AI-driven code reviews directly within your editor. Click the button below to quickly install the Bito extension and start optimizing your development workflow with context-aware AI Chat, and more.

Install on Cursor

Installation Steps

Step 1: Open Cursor IDE

Launch Cursor IDE on your computer.

Note: Bito’s IDE plugin supports Cursor version 2.0.77 and later. Please ensure your Cursor installation is updated to this version or newer before installing the plugin.

Step 2: Access the extensions marketplace

From the top menu, click View -> Extensions to open the Extensions marketplace.

You can also use keyboard shortcut to open the Extensions view:

  • Windows/Linux: Press Ctrl+Shift+X

  • Mac: Press Cmd+Shift+X

Step 3: Search for Bito and install the extension

  1. In the Extensions search bar at the top, type "Bito"

  2. Look for the official Bito extension in the search results. The extension should be published by "Bito".

  3. Click the Install button

  4. Wait for the installation to complete (this usually takes just a few seconds)

Step 4: Sign in to Bito

Once installed, you'll need to authenticate:

  1. Click "Sign up or Sign-in"

  2. Bito authentication screen will display.

  3. Log in with your Bito account credentials (or create a new account)

Step 5: Verify installation

To confirm Bito is working correctly:

  1. You should see the Bito icon in your Cursor IDE sidebar

  2. Click on it to open the Bito panel

  3. You should now have access to all Bito features

Upgrading Bito plugin

How to Update Bito Plugin on VS Code and JetBrains IDEs

Keeping your Bito plugin up to date ensures you have access to the latest features and improvements. In this article, we will guide you through the steps to update the Bito plugin on both VS Code and JetBrains IDEs. Let's dive in!

Updating Bito Plugin on VS Code

  1. Open your VS Code IDE

  2. Navigate to the Extensions view by clicking on the square icon in the left sidebar

  3. In the search bar, type "Bito" to locate the Bito plugin

  4. Once you locate the Bito plugin, click on the update button to initiate the update

Pro Tip 💡: Enable Auto-update for Bito Plugin on VS Code (as shown in the video)

Updating Bito plugin on VS Code

Updating Bito Plugin on JetBrains IDEs

  1. Open your JetBrains IDE (e.g., IntelliJ IDEA, PyCharm, etc.)

  2. Go to Settings by clicking on "File" in the menu bar (Windows/Linux) or by clicking on "IntelliJ IDEA" in the menu bar (macOS).

  3. In the Settings window, navigate to the "Plugins" section

  4. Switch to the "Installed" tab to view the list of installed plugins

  5. Locate the Bito plugin in the list and click on the update button to initiate the update

Updating Bito Plugin on JetBrains IDEs

Start free trial

Unlock premium Bito features with our 14-day free trial.

The Bito free trial gives you access to premium features for 14 days, allowing you to experience the full capabilities of Bito's AI-powered coding assistant.

You can start your free trial directly from the Bito IDE extension using any of the three methods below.

How to start your free trial

Method 1: Using Bito AI chat

The easiest way to start your trial is through natural interaction:

  1. Type a message in the Bito chat box and send it.

  2. Look for the popup that appears after sending your message.

  3. Click Try for free in the popup notification.

  4. Complete signup in the browser window that opens.

  5. Select Start Trial to activate your free trial.

Method 2: Click upgrade button

For a direct approach to upgrading:

  1. Click the UPGRADE button given at the top of the chat window

  2. Complete signup in the browser window that opens.

  3. Select Start Trial to activate your free trial.

Method 3: Quick trial activation

The fastest way to start your free trial:

  1. Hover over Include my code (located above the Bito chat box).

  2. In the popup, select Click for 14 day free trial to immediately activate your trial.

💡 Pro tip: Method 3 is the quickest option as it starts your trial instantly without opening any external windows.

Available features in free trial

During your free trial, you'll have access to all the features of Bito Team Plan as mentioned on our Pricing page. It includes:

  • AI Code Reviews in Git

  • AI Code Reviews in IDE

  • AI Chat

  • AI that understands your code

  • and more.

Visit our Pricing page

Need Help?

If you encounter any issues while starting your free trial:

  • Check your internet connection.

  • Ensure your Bito extension is up to date.

  • Contact [email protected] if the trial doesn't activate properly.

Next steps

Once your free trial is active, explore all the premium features available to you. Consider upgrading to a paid plan before your trial expires to continue enjoying advanced functionality.

AI Chat in Bito

Bito AI chat is the most versatile and flexible way to use AI assistance. You can type any technical question to generate the best possible response. Check out these Use cases and examples to understand all you can do with Bito.

To use AI Chat, type the question in the chat box, and press 'Enter' to send. You can add a new line in the question with 'SHIFT+ ENTER'.

Bito starts streaming answers within a few seconds, depending on the size and complexity of the prompt.

Note: Team Plan users receive 50 AI Chat requests per user per day in the Bito IDE extension, while Free Trial users are limited to 20 AI Chat requests per day.

Bito makes it super easy to use the answer generated by AI, and take a number of actions.

Copy Answer

Copy the answer to the clipboard.

Regenerate Answer

AI may not give the best answer on the first attempt every time. You can ask Bito AI to regenerate the answer by clicking "Regenerate" button next to the answer.

Rate Response

Vote response "Up" or "Down". This feedback Bito improve the prompt handling.

Modify Last Prompt

Many of these commands can be executed with keyboard shortcuts documented here: Keyboard shortcuts

Share chat session

Let your friends see what you and Bito are creating together.

Easily share insights from any AI Chat session by creating a unique shareable link directly from the Bito extension in VS Code or JetBrains IDEs.

Whether you need to share AI-generated code suggestions, explanations, or any other chat insights, this feature allows you to create a public link that others can access. The link will remain active for 15 days and can be viewed by anyone with access to the URL, making collaboration and knowledge sharing seamless.

Additionally, you can quickly share your AI Chat session through a pre-written Tweet or an Email.

Note:

  • The link will expire in 15 days.

  • The session link will be publicly accessible by anyone with the link.

  • Recipients can access the chat session in any web browser by using the unique URL.

Let's see how it is done:

  1. Open Bito in Visual Studio Code or any JetBrains IDE.

  2. Start a conversation in Bito’s AI Chat user interface.

  3. Locate the share button on the top right of the Bito extension side-panel.

  4. Click the share button to open a menu with options, including X (Twitter), Email, and Link.

  5. Share on X (Twitter):

    1. Click on X (Twitter) from the menu, and a dialogue window will appear, asking whether you want to open the external site.

    2. Simply click "Open" to proceed.

    3. You will be redirected to the X (Twitter) website, with a pre-written tweet containing a link to your Chat Session ready to be published.

    4. Click the "Post" button to send the tweet.

  6. Share Through Email:

    1. Click on Email from the menu, and you will be redirected to your email application.

    2. Select your email account if needed.

    3. The email will be pre-filled with all the necessary information, including the link to your Chat Session.

    4. Add the receiver(s) of this email using the "To" input field.

    5. Click the "Send" button to send the email.

  7. Share the Link:

    1. Click on Link from the menu.

    2. A confirmation popup will appear. Click Share session to generate a unique URL for your chat session, which will automatically be copied to your clipboard for easy sharing.

    3. Feel free to share this link with anyone you'd like to.

Use cases and examples

Supercharging development with AI

Bito AI Assistance can help with generating new content or help with your existing code.

Click on each use case for an example instruction and response.

  • Generate Code

  • Command Syntax

  • Learn technical concepts

  • Generate test cases

  • Explain code

  • Comment method

  • Improve code performance

  • Check security

  • Find style issues

Generate Code

Instruction

Implement a simple rest API in Go.

Response

Command Syntax

Instruction

How to rebase a branch in git?

Response

  1. Checkout the branch you want to rebase:

$ git checkout

  1. Rebase your branch against the upstream branch:

$ git rebase upstream/

  1. Resolve any conflicts that arise.

  2. Once all conflicts are resolved, do a git status to verify that all files have been updated correctly.

  3. Finally, push the rebased branch to the remote repository:

$ git push origin --force

Learn Technical Concepts

Instruction

Can you explain the B+ tree with a code example?

Response

A B+ tree is a self-balancing tree data structure used in databases to store and retrieve data efficiently. It is a variation of the B-tree and is designed to minimize the number of disk accesses required for insertion, deletion, and retrieval operations. B+ trees are characterized by the number of keys stored per node, the order of the nodes, and the number of children per node.

For example, a B+ tree of order 5 would have 5 keys per node and 5 children per node. When a node becomes full, it will split into two nodes, each containing half of the keys and half of the children. This means that all the nodes at the same level will have the same number of keys, making retrieval operations more efficient.

Here is an example in Python

Test Case

Instruction

Generate test cases for the following method.

Response

Test Case 1: Input: newLabelArray = [ 'Apple', 'Banana', 'Mango', 'Apple' ] oldLabelArray = [ 'Banana', 'Mango', 'Orange' ] Expected Output: ['Apple:2', 'Orange:-1']

Test Case 2: Input: newLabelArray = [ 'Apple', 'Banana', 'Apple', 'Orange' ] oldLabelArray = [ 'Banana', 'Mango', 'Orange' ] Expected Output: ['Apple:2', 'Mango:-1']

Explain this Code

Instruction

What does this code do?

Response

This code takes two arrays, newLabelArray and oldLabelArray, and generates a new array that contains the difference between the two arrays. It does this by first creating three empty arrays, new_, old_, and merged_. It then iterates through the newLabelArray and adds each label to the new_ array, as well as the merged_ array. It then iterates through the oldLabelArray and does the same for the old_ array, but also subtracts it from the merged_ array. Finally, it iterates through the merged_ array and checks for any values that are not equal to 0 and adds them to the final array. It then returns this final array.

Comment Method

Instruction

Generate a comment for this method, explaining the parameters and output

Response

/* This method takes two arrays, newLabelArray and oldLabelArray. It uses the elements of both arrays to generate a merged array, merged_, where it counts the occurrences of each element in both arrays. It then creates a third array, final, containing the elements of merged_ where the difference is not 0. The output is the final array. */

Improve Performance

Instruction

How can I improve the performance of this code?

Response

  1. Use ES6 syntax to simplify the code.

  2. Use a hashmap instead of looping through the arrays.

  3. Use a single loop to build the final array instead of two loops.

  4. Use array methods instead of for-each loops.

  5. Use optimized data structures like Set and Map.

Instruction

Rewrite this code with performance improvements?

Response

Check for Security

Instruction

Find potential security issues in this code

Response

  1. A lack of input validation: the user-supplied search term is not being validated to ensure it is safe to use in a database query. This could leave the system open to SQL injection attacks.

  2. A lack of output encoding: the results from the database are not being encoded before they are printed. This could leave the system open to cross-site scripting attacks.

Instruction

Rewrite this code with fix to potential security issues

Response

Find Style Issues

Instruction

Identify potential issues that EsLint would find in this code

Response

//ESLint would find the following issues:

  • Missing semicolons (potential syntax errors)

  • Missing spacing after 'forEach' statements

  • Unused variables (e.g. 'old_')

  • Missing spacing between operators (e.g. '++new_[lbl]')

Templates

Instantly improve code performance, security, and readability with AI suggestions.

Templates help you improve your code quality instantly with AI-powered analysis. Get automated suggestions for performance optimization, security fixes, style improvements, and code cleanup without leaving your editor. Each template provides actionable feedback and ready-to-use code improvements that you can review and apply with a single click.

Available templates

  1. Performance Check: Optimize code performance and efficiency

  2. Security Check: Identify and fix security vulnerabilities

  3. Style Check: Apply coding style and formatting standards

  4. Improve Readability: Enhance code clarity and organization

  5. Clean Code: Remove debugging and logging statements

Templates menu in Bito Panel

How to use templates

Prerequisites

Select the code you want to analyze in your editor before using any template.

Method 1: Click Templates button

  1. Select code in your editor

  2. Click the Templates button at the bottom of the Bito extension panel

  1. Choose the desired template from the dropdown menu

Quick navigation: Use arrow keys, Tab, or Shift+Tab to navigate the template menu

Method 2: Open context menu

  1. Select code in your editor

  2. Right-click in the editor window

  3. Hover over "Bito AI" in the context menu

  4. Select the desired template from the submenu

Method 3: Using slash / command in Bito chat box

  1. Select code in your editor

  2. Type / at the start of the Bito chat box

  3. Choose the desired template from the dropdown menu

  1. Type some text after the slash / to filter templates by name

Method 4: Command Palette (VS Code)

  1. Select code in your editor

  2. Go to View → Command Palette (or press Ctrl+Shift+P / Cmd+Shift+P)

  3. Type "bito" to see available templates

  4. Select the desired template from the list

Applying code suggestions

When templates provide code improvements, you'll see an Apply button above the suggested code snippet.

  1. Click the Apply button to open the diff view

  1. Review the changes highlighted in the diff:

    • Red lines show code to be removed

    • Green lines show code to be added

  2. Choose your action:

    • Accept - Apply the suggested changes to your code

    • Undo - Reject the changes and keep your original code

Tips

  • Select meaningful code blocks for better analysis results

  • Templates work best with complete functions or logical code segments

  • Review suggested changes before applying them to your codebase

  • Verify that the changes don't break existing functionality

  • Use multiple templates on the same code for comprehensive analysis

  • Use the diff view to understand exactly what changes will be made

AI that Understands Your Code

Work on your code with AI that knows your code!

Overview

AI that Understands Your Code

How it Works?

Bito indexes your code locally using AI

Available Keywords

Keywords to invoke AI that understands your code

Example Questions

What type of questions can be asked?

How does Bito Understand My Code?

Sneak peek into the inner workings of Bito

Using in Visual Studio Code

AI that understands your code in VS Code

Using in JetBrains IDEs

AI that understands your code in JetBrains IDEs (e.g., PyCharm)

Managing Index Size

Exclude unnecessary files and folders from repo to index faster!

FAQs

Answers to popular questions

Available Keywords

Keywords to invoke AI that understands your code

Here is the list of keywords in different languages to ask questions regarding your entire codebase. Use any of these keywords in your prompts inside Bito chatbox.

English:

  • my code

  • my repo

  • my project

  • my workspace

Chinese:

  • 我的代码

  • 我的仓库

  • 我的代码库

  • 我的项目

  • 我的文件夹

Chinese Traditional:

  • 我的程式碼

  • 我的倉庫

  • 我的項目

  • 我的工作區

Spanish:

  • Mi código

  • Mi repo

  • Mi proyecto

  • Mi espacio de trabajo

Japanese:

  • 私のコード

  • 私のリポ

  • 私のプロジェクト

  • 私のワークスペース

Portuguese:

  • Meu código

  • Meu repo

  • Meu projeto

  • Meu espaço de trabalho

Polish

  • Mój obszar roboczy

  • moje miejsce pracy

  • mój obszar roboczy

  • moj kod

  • mój kod

  • moim kodzie

  • moje repo

  • moje repozytorium

  • moim repo

  • moj projekt

  • mój projekt

  • moim projekcie

How does Bito Understand My Code?

Sneak Peek into the Inner Workings of Bito

Bito deploys a Vector Database locally on the user’s machine, bundled as part of the Bito IDE plug-in. This database uses Embeddings (a vector with over 1,000 dimensions) to retrieve text, function names, objects, etc. from the codebase and then transform them into multi-dimensional vector space.

Then when you give it a function name or ask it a question, that query is converted into a vector and is compared to other vectors nearby. This returns the relevant search results. So, it's a way to perform search not on keywords, but on meaning. Vector Databases are able to do this kind of search very quickly.

Learn more about how Bito indexes your code so that it can understand it.

Bito also uses an Agent Selection Framework that acts like an autonomous entity capable of perceiving its environment, making decisions, and taking actions to achieve certain goals. It figures out if it’s necessary to do an embeddings comparison on your codebase, do we need to perform an action against Jira, or do we do something else.

Finally, Bito utilizes Large Language Models (LLMs) from Open AI, Anthropic, and others that actually provide the answer to the question by leveraging the context provided by the Agent Selection Framework and the embeddings.

This is what makes us stand out from other AI tools like ChatGPT, GitHub Copilot, etc. that do not understand your entire codebase.

We’re making significant innovations in our AI Stack to simplify coding for everyone. To learn more about this head over to Bito’s AI Stack documentation.

Overview

AI Code Reviews in CLI

AI Code Reviews in CLI brings fast, intelligent code reviews directly to your terminal, helping you catch issues early — before they reach production.

It analyzes your code changes using AI to provide instant feedback on:

  • Security vulnerabilities - Detects issues such as SQL injection, XSS, insecure authentication, and unsafe data handling.

  • Potential bugs - Identifies logic errors, edge cases, incorrect assumptions, and runtime-related issues.

  • Performance problems - Flags inefficient algorithms, unnecessary computations, memory-intensive patterns, and scalability risks.

  • Code quality & best practices - Improves readability, maintainability, and design by suggesting better patterns, structure, and conventions.

Unlike traditional linters or static analyzers, the analysis is context-aware and explains why an issue matters and how to fix it.

By reviewing changes as you work, it helps you improve code consistency and reliability across your projects.

Perfect for Agentic coding workflows

The CLI integrates seamlessly with AI coding agents like Cursor, Claude Code, Windsurf, and others. Simply tell your agent "review my changes" and it automatically runs the review, presents findings, and can even implement fixes for you.

Stay in natural conversation while getting expert code analysis - no manual command typing or context switching required.

Learn more

Supported platforms

Supported Operating Systems

  • Windows

  • macOS

  • Linux

Source Code Management (SCM) compatibility

Works seamlessly across a wide range of version control systems and workflows:

  • Git

  • Subversion (SVN)

  • Mercurial

  • Perforce

  • Plain files (no SCM required)

This makes it suitable for both modern Git-based projects and legacy or enterprise codebases.

Why use AI Code Reviews in CLI?

Terminal-first by design

Run reviews directly from your terminal — locally, over SSH, or in cloud environments — without pushing code or opening an IDE. This makes it ideal for remote servers, containers, and minimal development setups.

Catch issues earlier (Shift Left)

Review code:

  • Before committing

  • Before pushing

  • Before opening a pull request

  • As part of automated CI/CD checks

Earlier feedback means fewer regressions, faster reviews, and lower cost of fixes.

Precise control over what gets reviewed

Review exactly what you want, when you want:

  • Uncommitted local changes

  • One or more recent commits

  • Specific files or directories

  • Differences against any branch, tag, or commit

This flexibility makes it easy to integrate into both individual and team workflows.

AI that understands context

Instead of only matching rules, the AI analyzes intent and structure. It can:

  • Detect non-obvious bugs

  • Explain trade-offs

  • Suggest safer or cleaner alternatives

  • Adapt feedback based on surrounding code

Fits seamlessly into existing workflows

Use it as:

  • A pre-commit quality gate

  • A pre-push validation step

  • A CI/CD job that fails builds on critical issues

  • An interactive review tool during active development

How it fits into the broader Bito ecosystem

AI Code Reviews in CLI complements other review surfaces by covering scenarios where IDEs or Git platforms are not ideal.

Platform
Best used for

AI Code Reviews in Git (GitHub, GitLab, Bitbucket)

Pull request and merge request reviews

AI Code Reviews in IDE (VS Code, JetBrains, Cursor, Windsurf)

Real-time feedback while coding

AI Code Reviews in CLI

CI/CD automation, remote or terminal-only workflows, pre-commit checks

Use the CLI when you need:

  • Terminal-native workflows

  • Automation and scripting

  • Reviews in headless or remote environments

  • Fast feedback without opening an IDE or browser

  • Pre-commit/pre-push validation

Key features

Smart review modes & filtering

Focus on what matters most at each stage of development:

  • Essential mode Shows only HIGH-severity issues — ideal for pre-commit or CI gates.

  • Comprehensive mode Includes all severity levels for deeper analysis.

  • Focus areas Limit reviews to specific concerns such as:

    • Security

    • Performance

    • Bugs

    • Tests

    • Documentation

  • Severity filtering Display only high, medium, or low-priority findings as needed.

Output formats for humans and automation

Choose the format that fits your use case:

  • Interactive terminal UI Colorized, structured output optimized for developer review.

  • Plain text output Clean, deterministic output for logs and CI/CD systems.

  • Prompt-only mode Minimal output designed for AI agents or tool chaining.

Interactive fix application

Apply suggested fixes safely and efficiently:

  • Review each issue and its proposed change

  • Apply or skip fixes individually

  • Apply all remaining fixes in one step

  • Automatic backups ensure changes are reversible

This enables faster iteration without losing control.

Security & privacy

  • Reviews are run on-demand and scoped to selected files or changes

  • Designed to integrate safely into local, remote, and CI environments

  • No requirement to push code to a repository to get feedback

Getting started

Ready to start reviewing code from your terminal?

👉 Visit the Installation guide to get set up in minutes.

Next steps:

  • How to use? – Run your first code review

  • Available commands – Complete reference of CLI commands

  • Troubleshooting – Common issues and how to resolve them

AI code reviews in AI coding agents

Supercharge AI coding agents with automated code reviews

AI Code Reviews in CLI integrates seamlessly with AI coding agents like Cursor, Claude Code, Windsurf, and others, enabling natural language code reviews and automated fixes.

Prerequisites

Before you begin, make sure you have:

  • ✅ Installed the CLI (Installation guide)

  • ✅ Configured your Bito API key (aka Bito Access Key)

  • ✅ A Git repository with code changes (committed or uncommitted)

Why use code review CLI with AI agents?

AI coding agents are great at writing code, but they need expert guidance to catch security vulnerabilities, performance issues, and best practices violations. The AI Code Reviews in CLI provides that expertise.

The power combination:

  • AI Code Reviews in CLI provides specialized code analysis

  • Your AI agent (Cursor, Claude Code, Windsurf, etc.) implements the fixes and iterates based on feedback

  • You stay in natural conversation, never leaving your workflow

How it works

1

Configure your agent

Add bitoreview command to your agent's rules file so it knows when and how to run code reviews. See the Setup guide section below for commands to set this up for your specific coding agent.

2

Ask for code reviews in natural language

Simply tell your agent "review my changes" or "check for security issues"

3

Agent runs code review CLI Automatically

Your agent executes the bitoreview command and reads the results

4

Get fixes implemented instantly

Tell your agent which issues to fix, and it implements the changes automatically

Setup guide

The guidelines file is a set of instructions that tells your AI coding agent (Claude Code, Cursor, etc.) how to correctly run bitoreview command when you ask it to do a code review. It defines the expected workflow, such as always using --prompt-only for structured JSON output, waiting for the review to complete before responding, grouping issues by severity, and validating problems in the actual code before suggesting fixes. Without these guidelines, the AI coding agent may not know how to use Bito's AI Code Reviews in CLI.

To get started, you need to add the guidelines to your agent's rules file. Depending on your AI coding agent, this is either done automatically during installation, or manually per project using a simple command:

Global configuration (auto-applied during install)

During setup, the installer automatically adds the usage guidelines globally for the following AI coding agents if they are detected on your system:

AI Coding Agent
Guidelines file location

Claude Code

~/.claude/CLAUDE.md

Windsurf

~/.codeium/windsurf/memories/global_rules.md

Project-level configuration (manual, per-project)

For all other supported IDEs such as Cursor, VS Code (GitHub Copilot), Junie, and JetBrains AI Assistant, you need to add the guidelines manually inside each project directory where you want them to apply.

Navigate to your project root, then run the relevant command:

Cursor:

  • macOS / Linux:

  • Windows:

Windsurf:

  • macOS / Linux:

  • Windows:

VS Code (GitHub Copilot):

  • macOS / Linux:

  • Windows:

Junie:

  • macOS / Linux:

  • Windows:

JetBrains AI Assistant:

  • macOS / Linux:

  • Windows:

Other agents: Check your agent's documentation for the custom rules/instructions file location, then copy and paste the sample guidelines content provided below directly into that file.

bitoarch restart --force            # reload env + recreate containers
bitoarch logs cis-provider          # tail one service
# Trigger repository indexing
bitoarch index-repos

# Check indexing status (default summary)
bitoarch index-status

# Full API response for debugging
bitoarch index-status --raw

# Machine-readable filtered JSON
bitoarch index-status --output json

# List all repositories
bitoarch index-repo-list --status active --limit 50
# Add a single repository
bitoarch add-repo myorg/myrepo

# Remove a repository
bitoarch remove-repo myorg/myrepo

# Load multiple repositories from default config file
bitoarch add-repos

# Load multiple repositories from a custom config file
bitoarch add-repos ./custom-repos.yaml

# Update configuration
bitoarch update-repos

# Get repository details
bitoarch repo-info myrepo
# Check service status (docker ps-like)
bitoarch status

# Health check
bitoarch health

# Detailed health information
bitoarch health --verbose

# Platform information
bitoarch info
# Update API key (interactive)
bitoarch update-api-key

# Update API key with flag
bitoarch update-api-key --api-key <key> --restart

# Update Git credentials (interactive)
bitoarch update-git-creds

# Update Git credentials with flags
bitoarch update-git-creds --provider github --token <token> --restart

# Update LLM API keys
bitoarch update-llm-keys

# Rotate MCP token - auto-generates a new MCP token
bitoarch rotate-mcp-token

# Rotate MCP token - set a specific MCP token manually
bitoarch rotate-mcp-token <new-token>

# prints path to .bitoarch-config.yaml
bitoarch config path repos

# edit .env-bitoarch
bitoarch config edit env
# Test MCP connection
bitoarch mcp-test

# List MCP tools
bitoarch mcp-tools

# Show detailed tool information
bitoarch mcp-tools --details

# Get server capabilities
bitoarch mcp-capabilities

# Save capabilities to file
bitoarch mcp-capabilities --output capabilities.json

# Show MCP configuration
bitoarch mcp-info

# Show details for one MCP tool (e.g. search_code)
bitoarch mcp-tool-info search_code
# 1. Check services are running
bitoarch status

# 2. Add repositories - load repos from .bitoarch-config.yaml file
bitoarch add-repos

# 3. Trigger indexing
bitoarch index-repos

# 4. Monitor progress
bitoarch index-status

# 5. Grab MCP URL + token for your client
bitoarch mcp-info
# Check health
bitoarch health

# View repositories
bitoarch index-repo-list

# Check index status
bitoarch index-status
# Single repository
bitoarch add-repo myorg/newrepo

# Multiple repositories from config file
bitoarch add-repos

# Trigger re-indexing
bitoarch index-repos --only-new-repos
# Update Bito API key
bitoarch update-api-key

# Update Git provider credentials
bitoarch update-git-creds

# Rotate MCP access token
bitoarch rotate-mcp-token

# Rotate SSO management key for security purposes.
# only if SSO is enabled
bitoarch sso rotate-key
# pause services
bitoarch stop

# remove services + volumes + config (keeps install dir)
bitoarch reset

# full removal
bitoarch uninstall
# Check all services
bitoarch status
bitoarch health --verbose

# View full configuration
bitoarch show-config --raw

# Test MCP connection
bitoarch mcp-test

# Check indexing status with details
bitoarch index-status --raw

# Check logs of all services
bitoarch logs

# Check logs of one service
bitoarch logs cis-manager
# Main help
bitoarch --help

# Command help
bitoarch index-repos --help
bitoarch add-repo --help
bitoarch mcp-tools --help
bitoarch --version
/plugin marketplace add gitbito/claude-plugins
/plugin install bito-ai-architect@bito-claude-plugins
/bito-ai-architect:bito-setup
export BITO_WORKSPACE_ID="your-workspace-id"
export BITO_MCP_TOKEN="your-bearer-token"
export BITO_EMAIL="[email protected]"
/bito-ai-architect:codebase-explorer
/bito-ai-architect:feature-plan
/bito-ai-architect:production-triage
.cursor/rules/project-overview.mdc
.cursor/rules/architecture-principles.mdc
.cursor/rules/security-standards.mdc
.windsurf/rules/coding-standards.md
.windsurf/rules/api-patterns.md
.cursor/rules/global-standards.mdc
providers/.cursor/rules/provider-implementation.mdc
auth/.cursor/rules/authentication-rules.mdc
# LLM Proxy Architecture & Design Document

## Document Overview

### Purpose
This document serves as a coding guideline and technical reference for AI agents working with this codebase. It provides comprehensive information about the current architecture, design patterns, implementation details, and the rationale behind design decisions. AI agents should use this document to understand the existing code structure, maintain consistency when making modifications, and follow established patterns when extending functionality.

### What This Document Covers
- **System Architecture**: High-level overview of components and their interactions
- **Design Patterns**: Detailed explanation of the Factory Pattern implementation
- **Component Design**: In-depth analysis of each system component
- **Data Flow**: Request/response lifecycle through the system
- **Design Decisions**: Rationale behind current architectural choices
- **Implementation Details**: Code structure, conventions, and patterns in use

---

## Table of Contents
1. [System Architecture](#system-architecture)
2. [Design Patterns](#design-patterns)
3. [Component Design](#component-design)
4. [Data Flow](#data-flow)
5. [Design Decisions](#design-decisions)
6. [Error Handling Strategy](#error-handling-strategy)
7. [Security Considerations](#security-considerations)
8. [Coding Conventions](#coding-conventions)

---

## System Architecture

### High-Level Overview

The LLM Proxy application follows a layered architecture with clear separation between the presentation layer (FastAPI), business logic layer (Provider implementations), and integration layer (external LLM APIs).

```
┌─────────────────────────────────────────────┐
│           FastAPI Application               │
│         (Presentation Layer)                │
│   - Request validation (Pydantic)           │
│   - Route handling (/chat endpoint)         │
│   - Response formatting                     │
└────────────────┬────────────────────────────┘
                 │
                 ▼
┌─────────────────────────────────────────────┐
│          Provider Factory                   │
│        (Abstraction Layer)                  │
│   - Provider selection logic                │
│   - Instance creation                       │
└────────────────┬────────────────────────────┘
                 │
        ┌────────┴────────┐
        ▼                 ▼
┌──────────────┐   ┌──────────────┐
│   OpenAI     │   │  Anthropic   │
│   Provider   │   │   Provider   │
│              │   │              │
│ (Concrete    │   │ (Concrete    │
│  Impl.)      │   │  Impl.)      │
└──────┬───────┘   └──────┬───────┘
       │                  │
       ▼                  ▼
┌──────────────┐   ┌──────────────┐
│  OpenAI API  │   │ Anthropic API│
└──────────────┘   └──────────────┘
```

### Component Layers

1. **Presentation Layer** (`main.py`)
   - Handles HTTP requests/responses
   - Validates input using Pydantic models
   - Manages API endpoints

2. **Abstraction Layer** (`providers/factory.py`)
   - Implements Factory Pattern
   - Routes requests to appropriate providers
   - Decouples client code from concrete implementations

3. **Business Logic Layer** (`providers/*.py`)
   - Abstract base class defines contract
   - Concrete providers implement LLM-specific logic
   - Handles API communication and response parsing

4. **Integration Layer**
   - External API calls via httpx
   - Authentication management
   - Network error handling

---

## Design Patterns

### Factory Design Pattern

The application implements the **Factory Design Pattern** to create provider instances without exposing creation logic to the client.

#### Pattern Components

1. **Abstract Product** (`LLMProvider`)
```python
class LLMProvider(ABC):
    def __init__(self, model: str):
        self.model = model
    
    @abstractmethod
    def generate_response(self, prompt: str) -> str:
        pass
```

**Purpose**: Defines the contract that all concrete providers must implement.

2. **Concrete Products** (`OpenAIProvider`, `AnthropicProvider`)
```python
class OpenAIProvider(LLMProvider):
    def generate_response(self, prompt: str) -> str:
        # OpenAI-specific implementation
        pass
```

**Purpose**: Implement provider-specific logic while adhering to the base contract.

3. **Factory** (`ProviderFactory`)
```python
class ProviderFactory:
    @staticmethod
    def get_provider(provider_name: str, model: str) -> LLMProvider:
        providers = {
            "openai": OpenAIProvider,
            "anthropic": AnthropicProvider
        }
        return providers[provider_name.lower()](model)
```

**Purpose**: Encapsulates provider instantiation logic.

#### Benefits of This Pattern

- **Loose Coupling**: Client code depends on abstractions, not concrete classes
- **Open/Closed Principle**: Open for extension (new providers), closed for modification
- **Single Responsibility**: Each provider handles only its specific implementation
- **Testability**: Easy to mock providers for testing
- **Scalability**: Adding new providers requires minimal changes

---

## Component Design

### 1. Base Provider (`providers/base.py`)

**Responsibility**: Define the contract for all LLM providers

**Key Design Decisions**:
- Uses ABC (Abstract Base Class) to enforce implementation
- Stores model name as instance variable for reuse
- Single abstract method keeps interface simple

**Design Rationale**:
- Python's ABC ensures compile-time checking of implementations
- Simple interface reduces cognitive load for implementers
- Storing model allows for provider-specific model validation in future

### 2. OpenAI Provider (`providers/openai_provider.py`)

**Responsibility**: Implement OpenAI Chat Completions API integration

**Key Features**:
- Environment-based API key management
- Message format conversion (user prompt → OpenAI format)
- Response parsing (extract content from choices)
- Timeout handling (30 seconds)

**API Contract**:
```
POST https://api.openai.com/v1/chat/completions
Headers: Authorization: Bearer <key>
Body: {
  "model": "gpt-4",
  "messages": [{"role": "user", "content": "prompt"}]
}
```

**Error Handling**:
- Validates API key presence on initialization
- Catches HTTP errors and wraps with descriptive messages
- Re-raises exceptions for upstream handling

### 3. Anthropic Provider (`providers/anthropic_provider.py`)

**Responsibility**: Implement Anthropic Messages API integration

**Key Features**:
- Custom header format (x-api-key, anthropic-version)
- Max tokens configuration (1024)
- Content array response parsing

**API Contract**:
```
POST https://api.anthropic.com/v1/messages
Headers: 
  x-api-key: <key>
  anthropic-version: 2023-06-01
Body: {
  "model": "claude-3-sonnet",
  "max_tokens": 1024,
  "messages": [{"role": "user", "content": "prompt"}]
}
```

**Design Choices**:
- Hard-coded max_tokens provides consistent behavior
- Version header ensures API stability
- Array access for content assumes single response

### 4. Provider Factory (`providers/factory.py`)

**Responsibility**: Create provider instances based on string identifiers

**Implementation Strategy**:
- Dictionary-based mapping for O(1) lookup
- Case-insensitive provider names
- Descriptive error messages for invalid providers

**Extensibility**:
```python
# Adding new provider:
providers = {
    "openai": OpenAIProvider,
    "anthropic": AnthropicProvider,
    "deepseek": DeepseekProvider,  # Just add here
}
```

### 5. FastAPI Application (`main.py`)

**Responsibility**: HTTP interface and request orchestration

**Key Components**:

1. **Request Model**:
```python
class ChatRequest(BaseModel):
    provider: str
    model: str
    prompt: str
```
- Leverages Pydantic for automatic validation
- Clear field names match user expectations

2. **Response Model**:
```python
class ChatResponse(BaseModel):
    provider: str
    model: str
    response: str
```
- Echoes input parameters for traceability
- Returns plain text response

3. **Endpoint Handler**:
```python
@app.post("/chat", response_model=ChatResponse)
async def chat(request: ChatRequest):
    provider = ProviderFactory.get_provider(request.provider, request.model)
    response_text = provider.generate_response(request.prompt)
    return ChatResponse(...)
```

**Error Mapping**:
- `ValueError` (invalid provider) → HTTP 400
- Generic `Exception` (API errors) → HTTP 500

---

## Data Flow

### Request Lifecycle

```
1. Client sends POST /chat
   ↓
2. FastAPI receives request
   ↓
3. Pydantic validates request body
   ↓
4. ProviderFactory.get_provider() called
   ↓
5. Factory returns concrete provider instance
   ↓
6. provider.generate_response() called
   ↓
7. Provider makes HTTP call to LLM API
   ↓
8. Provider parses response
   ↓
9. Response wrapped in ChatResponse model
   ↓
10. JSON response sent to client
```

### Detailed Flow Example (OpenAI)

```python
# Client Request
POST /chat
{
  "provider": "openai",
  "model": "gpt-4",
  "prompt": "Tell me a joke"
}

# Internal Processing
1. Pydantic validates: ChatRequest object created
2. Factory called: ProviderFactory.get_provider("openai", "gpt-4")
3. OpenAIProvider instantiated with model="gpt-4"
4. generate_response("Tell me a joke") called
5. HTTP POST to OpenAI API:
   {
     "model": "gpt-4",
     "messages": [{"role": "user", "content": "Tell me a joke"}]
   }
6. OpenAI responds with completion
7. Extract: data["choices"][0]["message"]["content"]
8. Return text to endpoint
9. Wrap in ChatResponse

# Client Response
{
  "provider": "openai",
  "model": "gpt-4",
  "response": "Why did the chicken cross the road?..."
}
```

---

## Design Decisions

### 1. Why Factory Pattern?

**Decision**: Use Factory Pattern instead of simple if/else logic

**Rationale**:
- **Scalability**: Adding providers doesn't require modifying existing code
- **Testability**: Easy to mock factory for unit tests
- **Maintainability**: Provider logic isolated in separate classes
- **Professional Standard**: Industry-recognized pattern for this use case

**Alternative Considered**: Direct instantiation with if/else
```python
# Rejected approach
if provider == "openai":
    result = OpenAIProvider(model).generate_response(prompt)
elif provider == "anthropic":
    result = AnthropicProvider(model).generate_response(prompt)
```
**Why Rejected**: Violates Open/Closed Principle, harder to extend

### 2. Why httpx Over Official SDKs?

**Decision**: Use httpx for HTTP calls instead of official provider SDKs

**Rationale**:
- **Minimal Dependencies**: Keeps requirements.txt small
- **Unified Interface**: Single HTTP client for all providers
- **Transparency**: Direct API calls are easier to debug
- **Control**: Full control over request/response handling

**Trade-offs**:
- Less abstraction (must handle response parsing)
- No built-in retry logic
- Manual API version management

### 3. Synchronous vs Asynchronous

**Decision**: Use synchronous HTTP calls with httpx.Client

**Rationale**:
- **Simplicity**: Easier to understand and debug
- **Current Scale**: Single request doesn't benefit from async
- **API Constraints**: LLM APIs are inherently blocking

**Future Consideration**: Switch to async if supporting streaming responses

### 4. Error Handling Strategy

**Decision**: Simple try/except with HTTP status code mapping

**Rationale**:
- **Simplicity**: Requirements specified basic error handling
- **Client Clarity**: HTTP status codes are standard
- **Debugging**: Error messages preserved in exceptions

**Not Included** (but recommended for production):
- Structured logging
- Retry logic
- Rate limiting
- Circuit breakers

### 5. Environment Variables for API Keys

**Decision**: Use environment variables instead of configuration files

**Rationale**:
- **Security**: Prevents accidental commit of credentials
- **12-Factor App**: Follows best practices for configuration
- **Flexibility**: Easy to change without code modification
- **Cloud-Ready**: Works seamlessly with container orchestration


---

## Error Handling Strategy

### Current Implementation

```python
try:
    provider = ProviderFactory.get_provider(request.provider, request.model)
    response_text = provider.generate_response(request.prompt)
    return ChatResponse(...)
except ValueError as e:
    # Invalid provider name
    raise HTTPException(status_code=400, detail=str(e))
except Exception as e:
    # API errors, network issues, etc.
    raise HTTPException(status_code=500, detail=str(e))
```

### Error Categories

1. **Client Errors (400)**:
   - Invalid provider name
   - Unsupported model
   - Malformed request

2. **Server Errors (500)**:
   - Missing API keys
   - Network timeouts
   - API errors (rate limits, service unavailable)
   - Response parsing failures


---

## Security Considerations

### Current Implementation

1. **API Key Management**:
   - Stored in environment variables
   - Never logged or returned in responses
   - Validated on provider initialization

2. **Request Validation**:
   - Pydantic models enforce type safety
   - No SQL injection risk (no database)
   - No command injection (no shell execution)

### Current Limitations

1. **No Rate Limiting**: The application does not implement rate limiting
2. **No Authentication**: Endpoints are publicly accessible
3. **No Input Sanitization**: Prompt length and content are not validated beyond Pydantic type checking
4. **No Retry Logic**: Failed API calls are not automatically retried

---

## Coding Conventions

### File Organization

**Current Structure**:
```
llm-proxy/
├── main.py                      # FastAPI application entry point
├── providers/                   # Provider package
│   ├── __init__.py             # Package exports
│   ├── base.py                 # Abstract base class
│   ├── openai_provider.py      # OpenAI implementation
│   ├── anthropic_provider.py   # Anthropic implementation
│   └── factory.py              # Factory implementation
├── requirements.txt             # Python dependencies
├── .env.example                # Environment variable template
└── README.md                   # User documentation
```

### Naming Conventions

1. **Classes**: PascalCase (e.g., `LLMProvider`, `OpenAIProvider`)
2. **Functions/Methods**: snake_case (e.g., `generate_response`, `get_provider`)
3. **Constants**: UPPER_SNAKE_CASE (e.g., `OPENAI_API_KEY`)
4. **Files**: snake_case (e.g., `openai_provider.py`)

### Code Patterns

1. **Provider Implementation**:
   - Inherit from `LLMProvider`
   - Validate API key in `__init__`
   - Implement `generate_response(prompt: str) -> str`
   - Use httpx.Client with 30-second timeout
   - Wrap errors with descriptive messages

2. **Error Handling**:
   - Use `try/except` blocks in provider implementations
   - Raise `ValueError` for missing API keys
   - Raise generic `Exception` with descriptive messages for API errors
   - Let FastAPI endpoint handle HTTP status code mapping

3. **Environment Variables**:
   - Load with `os.getenv()`
   - Validate presence in provider `__init__`
   - Use pattern: `{PROVIDER}_API_KEY`

4. **Type Hints**:
   - All methods should include type hints
   - Use Pydantic models for request/response validation
   - Return type explicitly stated

### Documentation Standards

1. **Docstrings**: All classes and methods include docstrings
2. **Comments**: Inline comments explain non-obvious logic
3. **README**: User-facing documentation with examples

### Dependencies

**Current Dependencies**:
- `fastapi==0.109.0`: Web framework
- `uvicorn[standard]==0.27.0`: ASGI server
- `pydantic==2.5.3`: Data validation
- `httpx==0.26.0`: HTTP client
- `python-dotenv==1.0.0`: Environment variable management

**Rationale**: Minimal, well-maintained dependencies that serve specific purposes.

---

## Summary

This document captures the current state of the LLM Proxy application. When working with this codebase, AI agents should:

1. **Follow the Factory Pattern**: All new providers must inherit from `LLMProvider` and be registered in `ProviderFactory`
2. **Maintain Consistency**: Use the same error handling, timeout values, and code structure as existing providers
3. **Respect Abstractions**: Keep provider-specific logic within provider classes
4. **Update Documentation**: Any changes to architecture should be reflected in this document
5. **Preserve Simplicity**: The design prioritizes simplicity and clarity over advanced features

The architecture demonstrates clean separation of concerns through the Factory Design Pattern, making the codebase maintainable and understandable for both human developers and AI agents.
package main
import ( 
"encoding/json" "fmt" "net/http" )
type user struct { Name string json:"name" Age int json:"age" }
func main() 
{http.HandleFunc("/", func(w http.ResponseWriter, r *http.Request) { 
	// Create user 
	u := user{ Name: "John Doe", Age: 25, }
	// Encode user
	uj, err := json.Marshal(u)
	if err != nil {
		fmt.Fprintf(w, err.Error())
	}
	// Return user
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(http.StatusOK)
	fmt.Fprintf(w, "%s\n", uj)
})
http.ListenAndServe(":3000", nil)
}
class Node:
    def __init__(self, order):
        self.order = order
        self.keys = []
        self.children = [None] * (order + 1)

class BPlusTree:
    def __init__(self, order):
        self.root = Node(order)
 
    def insert(self, key):
        if not self.root.keys:
            self.root.keys.append(key)
        else:
            pass # traverse the tree and insert the key
 
    def delete(self, key):
        pass # traverse the tree and delete the key
 
    def search(self, key):
        pass # traverse the tree and search for the key
 
# Create a B+ tree of order 5
bplus_tree = BPlusTree(5)
 
# Insert a key
bplus_tree.insert(10)
 
# Delete a key
bplus_tree.delete(10)

# Search for a key
bplus_tree.search(10)
genrateLabelDiffArray(newLabelArray,oldLabelArray=[])
  {
    let new_ =[],old_=[],merged_=[];
    newLabelArray.forEach((lbl)=>{
      if(new_[lbl] === undefined){ new_[lbl] =0;merged_[lbl]=0; }
      ++new_[lbl];
      ++merged_[lbl];
    });
    
    oldLabelArray.forEach((lbl)=>{
      if(old_[lbl] === undefined){ old_[lbl] =0; }
      if(merged_[lbl] === undefined){ merged_[lbl] =0; }

      ++old_[lbl];
      --merged_[lbl]
    });
    let final = [];

    merged_.forEach((value,key)=>{
      if(value!=0){ 
      //  final[key.toString()] = value;
      final.push(key+":"+value);
       }
    })
    
      return final;
  }
genrateLabelDiffArray(newLabelArray,oldLabelArray=[])
  {
    let new_ =[],old_=[],merged_=[];
    newLabelArray.forEach((lbl)=>{
      if(new_[lbl] === undefined){ new_[lbl] =0;merged_[lbl]=0; }
      ++new_[lbl];
      ++merged_[lbl];
    });
    
    oldLabelArray.forEach((lbl)=>{
      if(old_[lbl] === undefined){ old_[lbl] =0; }
      if(merged_[lbl] === undefined){ merged_[lbl] =0; }

      ++old_[lbl];
      --merged_[lbl]
    });
    let final = [];

    merged_.forEach((value,key)=>{
      if(value!=0){ 
      //  final[key.toString()] = value;
      final.push(key+":"+value);
       }
    })
    
      return final;
  }
genrateLabelDiffArray(newLabelArray,oldLabelArray=[])
  {
    let new_ =[],old_=[],merged_=[];
    newLabelArray.forEach((lbl)=>{
      if(new_[lbl] === undefined){ new_[lbl] =0;merged_[lbl]=0; }
      ++new_[lbl];
      ++merged_[lbl];
    });
    
    oldLabelArray.forEach((lbl)=>{
      if(old_[lbl] === undefined){ old_[lbl] =0; }
      if(merged_[lbl] === undefined){ merged_[lbl] =0; }

      ++old_[lbl];
      --merged_[lbl]
    });
    let final = [];

    merged_.forEach((value,key)=>{
      if(value!=0){ 
      //  final[key.toString()] = value;
      final.push(key+":"+value);
       }
    })
    
      return final;
  }
genrateLabelDiffArray(newLabelArray,oldLabelArray=[])
  {
    let new_ =[],old_=[],merged_=[];
    newLabelArray.forEach((lbl)=>{
      if(new_[lbl] === undefined){ new_[lbl] =0;merged_[lbl]=0; }
      ++new_[lbl];
      ++merged_[lbl];
    });
    
    oldLabelArray.forEach((lbl)=>{
      if(old_[lbl] === undefined){ old_[lbl] =0; }
      if(merged_[lbl] === undefined){ merged_[lbl] =0; }

      ++old_[lbl];
      --merged_[lbl]
    });
    let final = [];

    merged_.forEach((value,key)=>{
      if(value!=0){ 
      //  final[key.toString()] = value;
      final.push(key+":"+value);
       }
    })
    
      return final;
  }
genrateLabelDiffArray(newLabelArray,oldLabelArray=[])
  {
    let new_ =[],old_=[],merged_=[];
    newLabelArray.forEach((lbl)=>{
      if(new_[lbl] === undefined){ new_[lbl] =0;merged_[lbl]=0; }
      ++new_[lbl];
      ++merged_[lbl];
    });
    
    oldLabelArray.forEach((lbl)=>{
      if(old_[lbl] === undefined){ old_[lbl] =0; }
      if(merged_[lbl] === undefined){ merged_[lbl] =0; }

      ++old_[lbl];
      --merged_[lbl]
    });
    let final = [];

    merged_.forEach((value,key)=>{
      if(value!=0){ 
      //  final[key.toString()] = value;
      final.push(key+":"+value);
       }
    })
    
      return final;
  }
// Rewritten Code
function genrateLabelDiffArray(newLabelArray, oldLabelArray = []) {
  let new_ = {},
    old_ = {},
    merged_ = {},
    final = [];

  newLabelArray.forEach((lbl) => {
    new_[lbl] = new_[lbl] ? new_[lbl] + 1 : 1;
    merged_[lbl] = merged_[lbl] ? merged_[lbl] + 1 : 1;
  });

  oldLabelArray.forEach((lbl) => {
    old_[lbl] = old_[lbl] ? old_[lbl] + 1 : 1;
    merged_[lbl] = merged_[lbl] ? merged_[lbl] - 1 : -1;
  });

  Object.entries(merged_).forEach(([key, value]) => {
    if (value !== 0) {
      final.push(key + ":" + value);
    }
  });
  
  return final;
}
import database
search_term = input("Enter a search term: ")
query = "SELECT * FROM users WHERE name = '" + search_term + "'"
results = database.query(query)
print(results)
import database
search_term = input("Enter a search term: ")
query = "SELECT * FROM users WHERE name = '" + search_term + "'"
results = database.query(query)
print(results)
import database

# Get the user-supplied search term
search_term = input("Enter a search term: ")

# Use the user-supplied search term to query the database
query = "SELECT * FROM users WHERE name = %s"
results = database.query(query, (search_term,))

# Print the results
print(results)
genrateLabelDiffArray(newLabelArray,oldLabelArray=[])
  {
    let new_ =[],old_=[],merged_=[];
    newLabelArray.forEach((lbl)=>{
      if(new_[lbl] === undefined){ new_[lbl] =0;merged_[lbl]=0; }
      ++new_[lbl];
      ++merged_[lbl];
    });
    
    oldLabelArray.forEach((lbl)=>{
      if(old_[lbl] === undefined){ old_[lbl] =0; }
      if(merged_[lbl] === undefined){ merged_[lbl] =0; }

      ++old_[lbl];
      --merged_[lbl]
    });
    let final = [];

    merged_.forEach((value,key)=>{
      if(value!=0){ 
      //  final[key.toString()] = value;
      final.push(key+":"+value);
       }
    })
    
      return final;
  }
cd /path/to/your/project
curl -fsSL https://bitoreview.bito.ai/bito_cli_review_guidelines.md -o .cursorrules
cd C:\path\to\your\project
irm 'https://bitoreview.bito.ai/bito_cli_review_guidelines.md' | Out-File -FilePath .cursorrules
cd /path/to/your/project
mkdir -p .windsurf/rules
curl -fsSL https://bitoreview.bito.ai/bito_cli_review_guidelines.md -o .windsurf/rules/bitoai-review.md
cd C:\path\to\your\project
New-Item -ItemType Directory -Path .windsurf\rules -Force
irm 'https://bitoreview.bito.ai/bito_cli_review_guidelines.md' | Out-File -FilePath .windsurf\rules\bitoai-review.md
cd /path/to/your/project
mkdir -p .github
curl -fsSL https://bitoreview.bito.ai/bito_cli_review_guidelines.md -o .github/copilot-instructions.md
cd C:\path\to\your\project
New-Item -ItemType Directory -Path .github -Force
irm 'https://bitoreview.bito.ai/bito_cli_review_guidelines.md' | Out-File -FilePath .github\copilot-instructions.md
cd /path/to/your/project
mkdir -p .junie
curl -fsSL https://bitoreview.bito.ai/bito_cli_review_guidelines.md -o .junie/guidelines.md
cd C:\path\to\your\project
New-Item -ItemType Directory -Path .junie -Force
irm 'https://bitoreview.bito.ai/bito_cli_review_guidelines.md' | Out-File -FilePath .junie\guidelines.md
cd /path/to/your/project
mkdir -p .aiassistant/rules
curl -fsSL https://bitoreview.bito.ai/bito_cli_review_guidelines.md -o .aiassistant/rules/bitoai-review.md
cd C:\path\to\your\project
New-Item -ItemType Directory -Path .aiassistant\rules -Force
irm 'https://bitoreview.bito.ai/bito_cli_review_guidelines.md' | Out-File -FilePath .aiassistant\rules\bitoai-review.md
# Code Review

When user asks for code review, run `bitoreview` immediately with all required permissions needed to allow it to write files to its config.

## Do
- Always use `--prompt-only` flag (JSON output for AI)
- Generate a unique temp filename (e.g., using timestamp)
- Use `tee` to save output to the temp file while running
- Wait for command to complete before responding
- Present clear summary grouped by severity
- Validate issue against actual code before fixing

## Don't
- Don't use hardcoded filenames (conflicts with parallel runs)
- Don't respond before command completes
- Don't run the review command twice
- Don't show raw JSON output to user
- Don't fix issues without validating first

## Two-Step Pattern
1. Run `bitoreview review --prompt-only 2>&1 | tee <unique_temp_file>`
2. Parse the JSON output and present summary to user

Generate unique filename using timestamp or random value in the platform's temp directory.

## After Reading Output
1. Quick sanity check (file exists, line numbers valid)
2. Group issues by severity (high → medium → low)
3. Present summary: file:line, issue title, suggested fix
4. Show metrics (total issues, by severity)
5. Offer to help fix issues

## Before Fixing Any Issue
1. Read the actual code at the reported file:line
2. Validate the issue exists in current code
3. Verify suggested fix is appropriate
4. Apply fix only if validated
5. If invalid, explain why to user

## Modify Command By Intent
- "quick" / "critical" → add `--mode essential`
- "security" → add `--focus security`
- "performance" → add `--focus performance`
- "before PR" → add `--base main`
- "specific file" → add file path
- "uncommitted" → add `--type working`

## Flags Reference
- `--prompt-only` — always use (JSON output for AI)
- `--mode essential` — ~20% faster, critical issues only
- `--focus` — security | performance | bugs | best-practices

## Timing
~2-10 min depending on changeset size. `--mode essential` is ~20% faster.

## Platform Note
`tee` works on Linux, macOS, PowerShell, and Git Bash/WSL. Use platform-appropriate syntax if needed.

Welcome to Bito

Bito provides the context layer your engineering workflow is missing. It works across the entire software development lifecycle, from planning in Jira to generating code in your coding agent, and across your Git provider for codebase-aware code reviews.

Bito's AI Architect builds a knowledge graph of your codebase (from repos to modules to APIs) and operational history from Jira (capturing past decisions, incident patterns, and system behavior). This gives your team a shared, always-current understanding of the system, and makes that understanding available wherever engineering decisions are made:

  • In issue trackers (Jira) for feasibility analysis, technical design, and cross-repo impact assessment.

  • In coding agents (Claude Code, Cursor, Windsurf, GitHub Copilot, and more) for grounded code generation, accelerated onboarding, and production issue triage.

  • In pull requests (GitHub, GitLab, Bitbucket) for codebase-aware AI code reviews.

Start free trialGetting started guide

Getting started

Choose what you'd like to set up:

1

AI Architect

Installation:

  • Bito-hosted (Fully managed by Bito — no infrastructure setup required)

  • Self-hosted (Run AI Architect on your own infrastructure for maximum control)

Integrate with your tools:

  • Jira

  • Coding agents via MCP

  • AI Code Review Agent

2

AI Code Review Agent

  • Use in Git (GitHub, GitLab, Bitbucket)

  • (VS Code, Cursor, Windsurf, JetBrains)

  • (integrates seamlessly with AI coding agents like Cursor, Claude Code, Windsurf, and others.)

Key capabilities of the AI Architect

  • Technical design and planning — AI Architect analyzes your Jira tickets and posts a complete implementation plan directly in comments section: feasibility assessment, story breakdown, effort estimates, risk flags, and dependency mapping.

    • Watch demo video

  • Grounded 1-shot production-ready code — The AI Architect learns all your services, endpoints, code usage examples, and architectural patterns. The agent automatically feeds those to your coding agent (Claude Code, Cursor, Codex, any MCP client) to provide it the necessary information to quickly and efficiently create production ready code.

    • Watch demo video

  • Consistent design adherence — Code generated aligns with your architecture patterns and coding conventions.

  • Spec-driven development — Automatically generate highly detailed, implementation-ready technical requirement documents (TRDs) and low-level designs (LLDs) with a deep, context-aware understanding of your codebase, services, and design patterns, ensuring architectural integrity and consistency at a granular level.

    • Watch demo video

  • Triaging production issues — Easily and quickly find root causes to production issues based on errors/logs/etc.

    • Watch demo video

  • Faster onboarding — New engineers or AI agents can quickly understand how a system or component system structure.

  • Enhanced documentation and diagramming — Through its internal understanding of interconnections between modules and APIs.

  • Smarter code reviews — Reviews with system-wide awareness of dependencies and impacts.

Helpful resources

Cover

AI Architect

Cover

AI Code Review Agent

Cover

Account and settings

Cover

Billing and plans

Cover

Privacy and security

Cover

Get support

Cover

Changelog

AI Architect

Cover

Bito-hosted AI Architect

Cover

Self-hosted AI Architect

Cover

MCP integration with AI coding agents

AI Code Review Agent

Cover

AI that understands your code

Cover

Chat with AI Code Review Agent

Cover

Custom code review rules and guidelines

Cover

Code review analytics

Cover

Supported programming languages and tools

Cover

Available commands

Cover

Agent settings

Cover

FAQs

Video library

BitoYouTube

Need help?

If you have any questions, feel free to email us at [email protected]

Install AI Architect (self-hosted)

Deploy AI Architect in your own infrastructure for complete data control and enhanced security

This guide walks you through installing Bito's AI Architect as a self-hosted service in your own infrastructure. Self-hosting gives you complete control over where your code knowledge graph resides and how AI Architect accesses your repositories.

Why choose self-hosted deployment? Organizations with strict data governance requirements, air-gapped environments, or specific compliance needs benefit from running AI Architect within their own infrastructure. Your codebase analysis and knowledge graph stay entirely within your control, while still providing the same powerful context-aware capabilities to your AI coding tools.

What you'll accomplish: By the end of this guide, you'll have AI Architect running on your infrastructure, connected to your Git repositories, and ready to integrate with AI coding tools like Claude Code, Cursor, Windsurf, and GitHub Copilot through the Model Context Protocol (MCP).

Deployment options

AI Architect can be deployed in three different configurations depending on your team size, infrastructure, and security requirements:

a. Personal use (with your LLM keys)

Set up AI Architect on your local machine for individual development work. You'll provide your own LLM API keys for indexing, giving you complete control over the AI models used and associated costs.

Best for: Individual developers who want codebase understanding on their personal machine.

b. Team / shared access (with your LLM keys)

Deploy AI Architect on a shared server within your infrastructure, allowing multiple team members to connect their AI coding tools to the same MCP server. Each team member can configure AI Architect with their preferred AI coding agent while sharing the same indexed codebase knowledge graph.

Best for: Development teams that want to share codebase intelligence across the team while managing their own LLM costs.

c. Enterprise deployment (requires Bito Enterprise Plan)

Deploy AI Architect on your infrastructure (local machine or shared server) with indexing managed by Bito. Instead of providing your own LLM keys, Bito handles the repository indexing process, simplifying setup and cost management.

Best for: Organizations that prefer managed indexing without handling individual LLM API keys and costs.

Note: All deployment options are self-hosted on your infrastructure — your code and knowledge graph remain under your control.

Prerequisites

a. Required accounts and tokens

1

Bito API Key (aka Bito Access Key)

You'll need a Bito account and a Bito Access Key to authenticate AI Architect. You can sign up for a Bito account at https://alpha.bito.ai, and create an access key from Settings -> Advanced Settings

2

Git provider

We support the following Git providers:

  • GitHub

3

Git Access Token

A personal access token from your chosen Git provider is required. You'll use this token to allow AI Architect to read and index your repositories.

  1. GitHub Personal Access Token (Classic): To use GitHub repositories with AI Architect, ensure you have a CLASSIC personal access token with repo access. We do not support fine-grained tokens currently.

4

LLM API keys

Bito's AI Architect uses Large Language Models (LLMs) to build a knowledge graph of your codebase.

Teams of up to five members can use AI Architect for free with their preferred coding agents by using their own LLM API keys. Larger teams require , which includes bundled LLM tokens. Further, if you want to power Bito Code Review Agent with AI Architect, you will need Bito Enterprise Plan regardless of the size of the team.

An Anthropic API key is required

b. System requirements

AI Architect can be installed on your local machine for individual use, or on a shared server that your entire team can connect to. When installed on a server, multiple developers can configure their AI coding tools (such as Claude Code, Cursor, Windsurf, etc.) to use the same MCP server, sharing access to the indexed codebase.

The AI Architect supports the following operating systems:

  • macOS

  • Unix-based systems (Ubuntu, Debian, RHEL, or similar distributions)

  • Windows (via WSL2)

Shared servers (for team deployments)

  • On-premise physical servers - Bare metal Linux servers in your data center

  • On-premise virtual machines - VMware, Hyper-V, Proxmox, KVM, or other virtualization platforms

  • Cloud virtual machines - AWS EC2, Google Cloud Compute Engine, Azure VMs, DigitalOcean Droplets, or similar cloud instances

1

Hardware specifications

Recommended

AI Architect automatically detects available system resources during setup and configures optimal resource allocation for its Docker containers. For most deployments, the automatic configuration provides good performance. However, you can manually adjust these settings to fine-tune performance or accommodate specific workload requirements.

You can customize resource limits by editing the .env-bitoarch file and run the command bitoarch restart --force to update the allocation. The following environment variables can be manually configured to control resource allocation.

2

WSL2 is required for Windows users

If you're running Windows, Windows Subsystem for Linux 2 (WSL2) must be installed before proceeding.

To install WSL2:

3

Docker Desktop / Docker Service (required)

Docker Compose is required to run AI Architect.

The easiest and recommended way to get Docker Compose is to install Docker Desktop.

Docker Desktop includes Docker Compose along with Docker Engine and Docker CLI which are Docker Compose prerequisites.

4

Kubernetes cluster (required for Kubernetes based deployment method)

For production environments:

Installation guide

1

Install AI Architect

Before proceeding with the installation, ensure Docker Desktop / Docker Service or Kubernetes cluster is running on your system. If it's not already running, launch it and wait for it to fully start before continuing.

Open your terminal:

  • Linux/macOS: Use your standard terminal application

  • Windows (WSL2): Launch the Ubuntu application from the Start menu

Execute the installation command:

The installation script will:

  • Download the latest Bito AI Architect package

  • Extract it to your system

  • Initialize the setup process

2

Configuration

Follow the on-screen prompts to configure your deployment. You'll provide the following information:

3

Add repositories

Once your Git account is connected successfully, Bito automatically detects your repositories and populates the /usr/local/etc/bitoarch/.bitoarch-config.yaml file with an initial list. Review this file to confirm which repositories you want to index — feel free to remove any that should be excluded or add others as needed. Once the list looks correct, save the file, and continue with the steps below.

Below is an example of how the .bitoarch-config.yaml

4

Start indexing

Once your repositories are configured, AI Architect needs to analyze and index them to build the knowledge graph. This process scans your codebase structure, dependencies, and relationships to enable context-aware AI assistance.

Start the indexing process by running:

Once the indexing is complete, you can configure AI Architect MCP server in any coding or chat agent that supports MCP.

5

Check indexing status

Run this command to check the status of your indexing:

6

Check MCP server details

To manually check the MCP server details (e.g. Bito MCP URL and Bito MCP Access Token), use the following command:

If you need to update your Bito MCP Access Token, use the following command:

Update repository list and re-index

Edit /usr/local/etc/bitoarch/.bitoarch-config.yaml file to add/remove repositories.

vim /usr/local/etc/bitoarch/.bitoarch-config.yaml

To apply the changes, run this command:

bitoarch update-repos

Start the re-indexing process using this command:

bitoarch index-repos --only-new-repos

SSO Authentication

AI Architect supports Single Sign-On (SSO) authentication for secure, multi-user access to the MCP server. SSO runs entirely on-prem — no authentication traffic leaves your environment except for identity provider federation (if Enterprise IdP is configured) and Bito API calls for SSO configurations.

Authentication modes

AI Architect supports three authentication modes:

Mode
Provider
How it works

Bearer Token

None (SSO disabled)

Static MCP access token passed in the request header. This is the default mode.

Bito Authentication

Bito

OAuth flow validated via your Bito workspace. Ideal for teams already using Bito.

Note: If Enterprise IdP is selected but not yet configured, the system automatically falls back to Bito authentication until the IdP setup is complete.

Setting up SSO during installation

SSO is configured during the setup process. When prompted with "Configure SSO?", you can choose one of the following options:

  1. Enterprise IdP (SAML/OIDC)

    • The setup process generates a configuration URL for your identity provider

    • Open the URL in your browser and configure your IdP (e.g., Okta, Azure AD, Google Workspace) with the provided details. Learn more

    • Return to the setup and verify the connection

  2. Bito Authentication

    • Enables OAuth authentication using your Bito workspace credentials

    • No additional IdP configuration is required

Note: You can also configure or reconfigure SSO at any time after installation using the bitoarch sso setup command.

Configuring SSO after installation

If you skipped SSO during initial setup or want to change your SSO configuration, you can use the following CLI commands:

Set up or reconfigure SSO:

bitoarch sso setup

This command will guide you through the SSO configuration process, including choosing between Enterprise IdP and Bito authentication.

Check SSO status:

bitoarch sso status

Displays the current SSO configuration and IdP connection status.

Managing SSO

Enable SSO

Re-enable SSO after it has been temporarily disabled:

bitoarch sso enable

Disable SSO

You can disable SSO either temporarily or permanently:

bitoarch sso disable

You will be prompted to choose:

  • Temporary disable — Turns off SSO authentication but preserves your IdP configuration. You can re-enable it later with bitoarch sso enable.

  • Permanent disable — Removes the IdP configuration entirely and resets SSO settings. You will need to run bitoarch sso setup again to reconfigure.

Rotate SSO management key

Rotate the SSO tenant management key for security purposes:

bitoarch sso rotate-key

Important: After rotating the key, SSO services will restart automatically. Active sessions may need to re-authenticate.

SSO session configuration

SSO sessions are configurable with the following defaults:

Setting
Default
Description

Session duration

360 minutes (6 hours)

How long a session remains valid

Refresh token TTL

300 minutes (5 hours)

How long a refresh token remains valid

Note: Session settings can be customized through environment variables in the .env-bitoarch configuration file.

Accessing services (Kubernetes-based deployment)

Port-forwards are exposed on all network interfaces (0.0.0.0) and are accessible from any machine on the network.

Local access (from the Kubernetes host machine)

curl http://localhost:5001/health          # Provider
curl http://localhost:5002/health          # Manager
curl http://localhost:5003/health          # Config

Network access (from other machines on your network)

Get the host machine's IP address:

kubectl get nodes -o wide
# Or: hostname -I (Linux) / ifconfig (macOS)

From another machine on the network:

curl http://<host-ip>:5001/health          # Provider
curl http://<host-ip>:5002/health          # Manager
curl http://<host-ip>:5003/health          # Config
curl http://<host-ip>:5005/health          # Tracker

Security considerations

Important security notes:

  • Port-forwards use HTTP (not HTTPS) - traffic is unencrypted

  • Services are accessible from any machine that can reach the host

For production internet-facing deployments:

  • Use firewall rules to restrict access to trusted IPs

  • Consider using Kubernetes Ingress with TLS/SSL

  • Implement VPN for remote access

  • Use network policies to limit pod-to-pod traffic

Alternative: Kubernetes Ingress (production)

For production deployments, configure a Kubernetes Ingress Controller with TLS/SSL instead of using port-forwards. This provides secure HTTPS access with proper certificate management.

Setting up AI Architect MCP in coding agents

Now that AI Architect is installed and your repositories are indexed, the next step is to connect it to your AI coding tools (such as Claude Code, Cursor, Windsurf, GitHub Copilot, etc.) through the Model Context Protocol (MCP).

Quick setup (recommended)

Save time with our automated installer! We provide a one-command setup that automatically configures AI Architect for all compatible AI coding tools on your system.

The automated installer will:

  • Detect all supported AI tools installed on your system

  • Configure them automatically with your MCP credentials

  • Get you up and running in seconds instead of manually configuring each tool

👉 Try our Quick MCP Integration Guide for automated setup across all your tools.

Manual setup

If you prefer hands-on control over your configuration or encounter issues with automated setup, we provide detailed step-by-step guides for each supported AI coding tool:

  • Guide for Claude Code

  • Guide for Cursor

  • Guide for Windsurf

  • Guide for GitHub Copilot (VS Code)

Each guide walks you through the complete manual configuration process for that specific tool.

Configuring AI Architect for Bito AI Code Review Agent

Now that you have AI Architect set up, you can take your code quality to the next level by integrating it with Bito's AI Code Review Agent. This powerful combination delivers significantly more accurate and context-aware code reviews by leveraging the deep codebase knowledge graph that AI Architect has built.

Why integrate AI Architect with AI Code Review Agent?

When the AI Code Review Agent has access to AI Architect's knowledge graph, it gains a comprehensive understanding of your entire codebase architecture — including microservices, modules, APIs, dependencies, and design patterns.

This enables the AI Code Review Agent to:

  • Provide system-aware code reviews - Understand how changes in one service or module impact other parts of your system

  • Catch architectural inconsistencies - Identify when new code doesn't align with your established patterns and conventions

  • Detect cross-repository issues - Spot problems that span multiple repositories or services

  • Deliver more accurate suggestions - Generate fixes that are grounded in your actual codebase structure and usage patterns

  • Reduce false positives - Better understand context to avoid flagging valid code as problematic

Getting started with AI Architect-powered code reviews

  1. Log in to Bito Cloud

  2. Open the AI Architect Settings dashboard.

  3. In the Server URL field, enter your Bito MCP URL

  4. In the Auth token field, enter your Bito MCP Access Token

Need help getting started? Contact our team at [email protected] to request a trial. We'll help you configure the integration and get your team up and running quickly.

Upgrading AI Architect

Upgrade your AI Architect installation to the latest version while preserving your data and configuration. The upgrade process:

  • Automatically detects your current version

  • Downloads and extracts the new version

  • Migrates your configuration and data

  • Seamlessly transitions to the new version

  • Preserves all indexed repositories and settings

Upgrade instructions

Option 1: Upgrade from within your installation (Recommended)

If you're running version 1.1.0 or higher, navigate to your current installation directory and run:

cd /path/to/bito-ai-architect
./scripts/upgrade.sh --version=latest

Option 2: Upgrade from external location

If you need to run the upgrade from outside your installation directory (useful for version 1.0.0), use the --old-path parameter:

# Download the standalone upgrade script
curl -O https://github.com/gitbito/ai-architect/blob/main/upgrade.sh
chmod +x upgrade.sh

# Run upgrade with explicit path
./upgrade.sh --old-path=/path/to/bito-ai-architect --version=latest

Upgrade parameters

The upgrade script supports the following parameters:

# Description
--version=VERSION

# Upgrade to specific version
--version=latest

# Upgrade from custom URL or file
--url=file:///path/to/package.tar.gz

# Specify installation path (required if running outside installation directory)
--old-path=/opt/bito-ai-architect

# Show help message
--help

Your data is safe: All repositories, indexes, API keys, and settings are automatically preserved during upgrade.

Important: You can only upgrade within the same deployment type. To switch from Docker Compose to Kubernetes or vice versa, you must use the bitoarch reset command, which will result in data loss.

Uninstall

bitoarch reset       # wipe containers/volumes/config; keep install dir
bitoarch uninstall   # full removal (+ install dir + ~/.bitoarch/install.yaml)

Docker images are kept — docker image prune to reclaim.

Alternatively, you can also use the following curl command to uninstall AI Architect:

Troubleshooting guide

# Check all services
bitoarch status
bitoarch health --verbose

# View full configuration
bitoarch show-config --raw

# Test MCP connection
bitoarch mcp-test

# Check indexing status with details
bitoarch index-status --raw

# Check setup log
tail -f setup.log

# Local log files
tail -f var/logs/cis-provider/provider.log
tail -f var/logs/cis-manager/manager.log

# Services stopped after reboot
bitoarch start

# Complete logs
bitoarch logs

# Reset installation (removes all data and configuration)
bitoarch reset

# To stop all the services
bitoarch stop

# Restart service (for env based config updates)
bitoarch restart --force

# Force pull latest images based on service-versions.json and restart services
bitoarch update

Commands specific to Kubernetes-based deployment

# Check Kubernetes pod status
# All pods should show "Running" status.
kubectl get pods -n bito-ai-architect

# Check detailed information about a specific Kubernetes pod
kubectl describe pod <pod-name> -n bito-ai-architect

# Access Kubernetes pod shell
kubectl exec -it -n bito-ai-architect \
  $(kubectl get pod -n bito-ai-architect -l app.kubernetes.io/component=provider -o jsonpath='{.items[0].metadata.name}') \
  -- /bin/sh

# Stop KIND cluster (preserves data)
docker stop bito-ai-architect-control-plane

# Start KIND cluster again
docker start bito-ai-architect-control-plane

# Delete KIND cluster completely
kind delete cluster --name bito-ai-architect

# View Provider service logs:
kubectl logs -n bito-ai-architect -l app.kubernetes.io/component=provider --tail=100 -f

# View Manager service logs:
kubectl logs -n bito-ai-architect -l app.kubernetes.io/component=manager --tail=100 -f

Available commands

For complete reference of AI Architect CLI commands, refer to Available commands.

Quick MCP integration with AI coding agents

Connect Bito's AI Architect to your AI coding tools (Cursor, Claude Code, Windsurf, etc.) in seconds with our automated installer

Prerequisites

Before running the installer, have these ready:

  1. Your Bito Workspace ID (or full Bito MCP URL for self-hosted instances)

  2. Your Bito MCP Access Token — optional. If omitted, the installer configures the MCP client to complete SSO/OAuth against the server on first use. Most modern IDE MCP clients (Claude Code, Cursor, Windsurf, VS Code, Junie, JetBrains via mcp-remote) support this. Bito MCP advertises OAuth 2.1 discovery (PKCE, Dynamic Client Registration) at https://mcp.bito.ai/{workspace}/.well-known/oauth-authorization-server.

Note: For self-hosted instances, follow the AI Architect installation instructions. Upon successful setup, you will receive a Bito MCP URL and Bito MCP Access Token that you need to enter.

  1. Your email ID (for tracking/identification)

  2. At least one supported tool installed:

    • Claude Code

    • Cursor

    • Windsurf

    • VS Code (GitHub Copilot)

    • Junie

    • JetBrains AI Assistant

    • Google Antigravity

Note: For Claude.ai (Web) , Claude Desktop, and ChatGPT (Web & Desktop) you'll need to follow the manual setup process as they require OAuth authentication through your browser.

Installation guide

Our automated installer will prompt you for credentials and automatically configure all supported AI tools available on your system.

macOS / Linux

Open your terminal and run:

curl -fsSL https://mcp-setup.bito.ai/install.sh | bash

Windows

Run in PowerShell (not Command Prompt).

1. One-time PowerShell setup (first time only):

By default, PowerShell blocks scripts from running. Run this once to allow signed scripts to execute:

Set-ExecutionPolicy -ExecutionPolicy RemoteSigned -Scope CurrentUser

Per-user, no admin required.

2. Run the installer:

irm https://mcp-setup.bito.ai/install.ps1 | iex

The script will prompt you for credentials and automatically configure all detected IDEs.

Note: When using a self-hosted AI Architect, ensure that the MCP server is up and running before proceeding with the setup. The setup will fail if MCP is not running.

What happens next

  1. The installer starts and checks for compatible tools

  2. You'll be prompted to enter your credentials.

  3. Automatic configuration - All detected tools are configured

  4. Confirmation - You'll see which tools were successfully set up

After installation

1

Restart your AI tool

After the installer completes, completely close and reopen your IDE(s) to ensure the configuration takes effect.

2

Verify AI architect connection

Check that AI Architect appears in your tool's MCP server list:

  • Claude Code: Run claude mcp list

  • Cursor: Settings → MCP → Check server list

  • Windsurf: Settings → Cascade → MCP Servers

  • VS Code: Copilot Chat → Tools icon

  • Junie: Settings → Tools → Junie → MCP Settings

  • JetBrains AI Assistant: Settings → Tools → AI Assistant → Model Context Protocol

3

Add guidelines (optional but highly recommended)

The BitoAIArchitectGuidelines.md file contains best practices, usage instructions, and prompting guidelines for the Bito's AI Architect MCP server. Adding it to your project helps your AI coding agent interact with Bito's AI Architect more effectively and get better results out of every query.

If you are on Claude Code or Windsurf, the installer automatically adds the guidelines file globally, covering all your projects. If you'd also like to apply guidelines at the project level for a specific project, run the relevant command below inside that project directory.

If you are on Cursor, VS Code (GitHub Copilot), Junie, or JetBrains AI Assistant, guidelines are not configured automatically by the installer. Run the relevant command below manually inside each project directory where you want the guidelines to apply. This is a per-project step, so repeat it whenever you start working in a new project.

To add Bito's AI Architect guidelines to your project, run the following commands based on your coding agent:

Claude Code:

Cursor:

Windsurf:

VS Code (GitHub Copilot):

Junie:

JetBrains AI Assistant:

4

Run a test query

Open a chat or conversation in your AI tool and try a test query to confirm AI Architect is working:

  • "What repositories are available in my organization?"

  • "Show me all Python repositories"

  • "List the available tools"

  • "What are the dependencies of [repo-name]?"

  • "Find all microservices using Redis"

  • "Show me repository clusters in our organization"

  • "Plan a new feature for [component]"

    • (uses bito-feature-plan skill)

  • "Write a PRD for [feature]"

    • (uses bito-prd skill)

  • "Help me triage this production issue"

    • (uses bito-production-triage skill)

If you receive accurate responses about your codebase, the setup is complete!

Uninstalling

To remove Bito AI Architect from all tools:

macOS / Linux

Open your terminal and run:

curl -fsSL https://mcp-setup.bito.ai/uninstall.sh | bash

Windows

Run in PowerShell (not Command Prompt).

If you haven't already done so during install, run this once to allow signed scripts:

Set-ExecutionPolicy -ExecutionPolicy RemoteSigned -Scope CurrentUser

After that run the following command:

irm https://mcp-setup.bito.ai/uninstall.ps1 | iex

Need manual setup?

If you prefer to configure tools individually or need to set up web-based tools (Claude.ai, ChatGPT), refer to our detailed integration guides:

  • Claude Code

  • Claude Desktop

  • Claude.ai (Web)

  • Cursor

  • Windsurf

  • GitHub Copilot (VS Code)

  • Junie

  • JetBrains AI Assistant

  • ChatGPT (Web & Desktop)

Troubleshooting

Installer issues

"Command not found" or similar errors:

  • Verify you're using the correct shell (bash for macOS/Linux, PowerShell for Windows)

  • Check your internet connection

  • Try running the command again

No tools detected:

  • Ensure your AI tools are installed before running the installer

  • The installer only configures tools it can detect on your system

  • You can run the installer again after installing new tools

Connection issues

  • Verify Bito MCP URL and Bito MCP Access Token are correct.

  • Test endpoint with MCP protocol:

curl -s -X POST \
  -H "Authorization: Bearer <Your-Bito-MCP-Access-Token>" \
  -H "Content-Type: application/json" \
  -d '{"jsonrpc":"2.0","method":"initialize","params":{},"id":1}' \
  <Your-Bito-MCP-URL>

# Should return HTTP 200 with JSON response for valid credentials
# HTTP 401: Invalid Bito MCP Access Token
# HTTP 404: Invalid Bito MCP URL

Note:

  • Replace <Your-Bito-MCP-URL> with the Bito MCP URL you received after completing the AI Architect setup.

    • For the Bito-hosted AI Architect, use the following URL format: https://mcp.bito.ai/<Your-Bito-Workspace-ID>/mcp

      Replace <Your-Bito-Workspace-ID> with your actual Bito workspace ID, which you can find after logging into your Bito account at

  • Replace <Your-Bito-MCP-Access-Token> with the Bito MCP Access Token you received after completing the AI Architect setup.

Server not appearing after install:

  • Completely restart your AI tool (don't just reload)

  • Verify your credentials were entered correctly

  • Check that you have the minimum required versions (see below)

Minimum requirements

Some tools require specific versions:

  • Node.js 20.18.1+ for Claude Desktop, VS Code, and JetBrains

  • VS Code 1.99+ with Agent Mode enabled

  • JetBrains 2025.1+ with AI Assistant plugin 251.26094.80.5+

Check Node.js version:

node --version

If you need to install or update Node.js, visit nodejs.org

Skills not appearing

If skills are not visible in your IDE after installation:

  1. Verify files exist: ls ~/.claude/skills/bito-*/SKILL.md (Claude) or ls ~/.cursor/rules/bito-*.mdc (Cursor)

  2. Restart your IDE completely

  3. Check that jq is installed (required for manifest parsing): jq --version

  4. Re-run the install script — skills installation is idempotent

Hooks not working

If hooks are not triggering:

  1. Verify your IDE version supports hooks (Cursor hooks are in beta, VS Code hooks are preview)

  2. Check that the hook configuration wasn't overwritten by another tool

  3. Re-run the install script to restore hook configuration

Integrating with Jira

Connect Bito's AI Architect with Jira for feasibility analysis, technical design, and cross-repo impact assessment.

Planning is where engineering teams lose the most time. This is where AI Architect starts.

Senior engineers and tech leads spend hours on work that should take minutes, reading through old tickets to understand what went wrong before, figuring out what a one-line Epic description actually requires, mapping out which services will be affected and which ones have been fragile in the past.

AI Architect automates this work inside Jira. When an Epic or Story is created, AI Architect posts a detailed implementation plan directly as a comment on the ticket. Feasibility analysis, story breakdown, risk warnings, historical patterns from your team's own tickets — all generated in minutes, right where your team plans.

What gets posted on your ticket

When AI Architect analyzes an Epic or Story, it produces a structured Markdown implementation plan that covers:

  • Feasibility assessment — Is this viable given your current architecture? Which services are involved, and how stable are they? What's the blast radius if something goes wrong?

  • Story breakdown — For Epics, a full decomposition into Stories with acceptance criteria, dependencies, and recommended execution order across sprints.

  • Effort estimates — Both traditional and agentic estimates, with a breakdown of where AI tooling saves the most time and where it doesn't.

  • Proactive risk detection — Race conditions in concurrent flows, memory leak patterns, regression-prone areas, API rate-limiting gaps, security concerns. Each risk comes with a suggested mitigation drawn from your team's actual history.

  • Historical pattern insights — AI Architect references past tickets to flag issues your team has already encountered. For example: "A similar concurrency issue took 3 sprints to resolve in PROJ-456 — consider redesigning the locking strategy before implementing this."

  • Open questions — Technical decisions that need to be made before implementation begins, so they don't surface mid-sprint.

The plan is in Markdown. Engineers can paste it directly into Cursor, Claude Code, or any other coding agent to start implementation with full architectural context already loaded.

Note: Confluence pages linked to Jira tickets are now automatically pulled as context for plan generation.

Setup

1

Enable AI Architect for your workspace

AI Architect can be set up using one of the following deployment options:

Bito-hosted

AI Architect is managed and maintained by Bito.

  • Follow the Bito-hosted installation guide to get started.

  • If AI Architect isn't already active for your workspace, contact the Bito team at [email protected] to enable it.

Self-hosted

AI Architect is deployed and managed within your own infrastructure.

  • Follow the self-hosted installation guide to set up and configure AI Architect for your workspace.

2

Connect Jira

Bito supports two ways to connect with Jira, depending on where your Jira instance is hosted:

  1. Jira Cloud: for Jira sites hosted by Atlassian (e.g., https://mycompany.atlassian.net).

  2. Jira Data Center: for Jira instances hosted on your own company domain or servers (e.g., https://jira.mycompany.com).

Connect Bito with Jira Cloud (hosted by Atlassian)

  1. Navigate to the page in your Bito dashboard

  2. In the Available integrations section, you will see Jira. Click Connect to proceed.

  3. Select the option Jira Cloud. You will be redirected to the official Jira website, where you need to grant Bito access to your Atlassian account.

Connect Bito with Jira Data Center (hosted on your own server)

  1. Navigate to the page in your Bito dashboard

  2. In the Available integrations section, you will see Jira. Click Connect to proceed.

  3. Select the option Jira Data Center (self-managed).

3

Enable the feature flags

Two flags control how AI Architect behaves on your tickets. Contact the Bito team at [email protected] to enable them — a self-serve UI toggle is coming soon.

Flag
What it enables

How to trigger AI Architect in Jira

Automatic analysis

When enabled, AI Architect listens for new or updated Epics and Stories and posts the implementation plan automatically, no action needed from the ticket creator.

Requires the Jira Auto Analysis Enabled flag to be enabled for your workspace. Contact the Bito team at [email protected] to enable it.

You can download the plan (markdown file) and use it in your agentic tools (Cursor, Claude Code, etc.) to further update it or use the analysis.

On-demand analysis

Trigger analysis manually on any ticket by using any of the following in a Jira comment:

@bito
/bito
#bito

You can use the @bito, /bito, or #bito in Jira comment to ask Bito to make changes to the analysis or update based on your needs, or add more details to update the plan based on any new information.

Example:

@bito analyze technical feasibility

Or by adding one of these labels to the ticket:

bito
bito-analyse
bito-analyze

Requires the Jira Analysis Enabled flag to be enabled for your workspace. Contact the Bito team at [email protected] to enable it.

Auto triage

By default, when auto-analysis is enabled, AI Architect generates a plan for every new or updated Epic or Story. Auto triage adds a layer of intelligence before that happens: it evaluates whether a ticket actually needs a detailed implementation plan, and skips generating one if it doesn't.

This keeps your tickets clean and avoids generating plans for work that is already well-defined or straightforward enough to implement without one.

Note: Only events from your selected Jira projects are processed. Events from unselected projects are ignored before reaching auto triage.

How auto triage works

When a Story or Epic is created or updated, AI Architect reads the full ticket — title, description, comments, attachments, linked issues, and any associated Confluence pages — and assigns a complexity score from 1 to 10.

Score
What happens

Below threshold (default: 7)

Plan is skipped. An optional comment is posted on the ticket.

At or above threshold

Implementation plan is generated as usual.

When a ticket is below the threshold, AI Architect posts the following comment:

AI Architect — This ticket doesn't appear to need a detailed implementation plan based on its scope and complexity. If you'd like one anyway, type @Bito with what you want (example: @Bito technical plan)

Once a plan or skip notification has been posted on a ticket, auto triage will not re-trigger automatically on subsequent updates. To request a new plan, use @bito, /bito, or #bito directly on the ticket.

Note: AI Architect can perform live web research to incorporate up-to-date technical context into its evaluation and plan generation.

Supported attachment formats

When evaluating a ticket, AI Architect can read attachments in the following formats:

  • .pdf

  • .docx

  • .xlsx

  • .csv

  • .json

  • .yaml

  • .zip

SVG files are supported as images only. Binary image attachments (.png, .jpg, .gif, .webp) are not yet supported, full image support is coming soon.

Configuration

The following settings control how auto triage behaves for your workspace. Contact the Bito team at [email protected] to configure these.

Setting
Options
Description

Complexity threshold

Default: 7

Minimum score required for a plan to be generated.

Auto analysis type

  • plan

  • comment

Whether to generate a full plan or post a guidance comment when a ticket is created or updated.

What AI Architect knows about your team

AI Architect draws on multiple sources when it analyzes a ticket:

Your codebase — All your repositories, services, API endpoints, modules, and design patterns are indexed into a knowledge graph. AI Architect understands how your system fits together, not just what individual files contain.

Your Jira history — AI Architect analyzes your team's Jira tickets and categorizes recurring patterns: race conditions across subsystems, services with instability histories, security and credential issues, error handling gaps, API rate-limiting problems. This context is applied to every new ticket so your team doesn't repeat what's already been learned.

Other context sources — AI Architect also incorporates insights from Confluence documents, Linear, observability data, Slack messages, and any custom instructions you provide.

Learn how Bito builds the knowledge graph

Agent skills power the Jira integration

AI Architect works through purpose-built agentic skills. The two important agent skills that run in Jira are:

bito-epic-to-plan — Triggered on Epics. Converts an approved Epic or PRD into a sprint-ready plan with multiple architectural approaches, then granular Stories with effort estimates and acceptance criteria.

bito-scope-to-plan — Triggered on Stories. Auto-scales its output — a full multi-workstream plan for complex Stories, a focused single-workstream plan for simpler ones.

See all available skills

Skill selection by issue type

AI Architect uses different skill selection logic depending on the Jira issue type.

Issue type
Skill used

Story

Always uses bito-scope-to-plan

Epic

Always uses bito-epic-to-plan

All other types (Bug, Task, Sub-task, etc.)

Dynamically selected based on your comment

For Bugs, Tasks, and other issue types, AI Architect reads the intent of your latest comment and automatically picks the most appropriate skill from its full library. For example, a comment like "is this feasible?" triggers bito-feasibility, while "spike on this approach" triggers bito-spike. If the intent is ambiguous, AI Architect falls back to bito-scope-to-plan.

Integrating with Slack

Get context-aware AI assistance in your team's Slack conversations

Bito AI Assistant brings powerful AI capabilities directly into your Slack workspace. Instead of switching between apps or losing context, you get instant AI assistance right where your team collaborates.

Ask Bito to summarize lengthy threads, analyze code snippets, provide technical guidance, or help with planning. Bito reads the full thread context, understands shared files, and automatically pulls in information from Jira tickets and Confluence pages when you reference them.

With Bito in your Slack channels, you save time catching up on discussions, make faster technical decisions, and keep your team's knowledge accessible.

Click the button to add the Bito AI Assistant to your Slack.

Prerequisites

Before you install Bito AI Assistant, ensure you have:

  • A Bito account with an active paid plan that includes Bito AI Assistant for Slack

  • AI Architect set up for your Bito account:

    • Bito-hosted (Fully managed by Bito — no infrastructure setup required)

    • Self-hosted (Run AI Architect on your own infrastructure for maximum control)

  • Slack admin permissions to install apps in your workspace

Installation steps

Installation takes less than 2 minutes. Once complete, every team member in invited channels can interact with Bito.

1

Add the app to Slack

  1. Go to bitoaiassistant.bito.ai/slack/install

  2. Review the permissions and click Allow

  3. Connect your Bito account when prompted

2

Invite Bito to channels

  1. Open any Slack channel where you want AI assistance

  2. Invite Bito's AI Assistant to a channel by typing @Bito followed by your query. Slack will automatically prompt you to add Bito to the channel if it isn't already there, click Yes to add it and get your answer, or dismiss the prompt to skip.

  3. Repeat for each channel (both public and private channels work)

3

Start using Bito

  1. In any channel where you invited Bito, type @Bito followed by your question

  2. Bito reads the thread and responds with context-aware answers

How to use Bito AI Assistant

Basic usage

Mention @Bito in any message to get AI assistance. Bito reads the entire conversation thread, not just your message, so it understands the full context.

Example:

@Bito Based on the above discussion create a plan

Bito analyzes the thread and generates a structured, actionable plan based on the discussion.

Asking questions

You can ask Bito questions in natural language. Be specific about what you need:

Good questions:

  • @Bito PROJ-456 is causing errors in production — here are the logs. Identify the root cause?

  • @Bito help us break this feature into smaller tasks

  • @Bito explain the difference between these two approaches

  • @Bito what are the action items from this thread?

  • @Bito review the code changes in this thread and suggest improvements

Tips for better responses:

  • Ask specific questions rather than general ones

  • Reference what you're asking about if the thread contains multiple topics

  • Use follow-up questions to dive deeper into a response

Working with files

When you share files in a Slack thread, Bito automatically processes them and incorporates their content into its responses.

Supported file types:

  • Code files (.py, .js, .java, etc.)

  • Configuration files (.yaml, .json, .xml)

  • Documents (.txt, .md, .pdf)

  • Log files

Unsupported file types:

Bito skips the following file types during processing. If any of these are attached to a Slack conversation, Bito will ignore them and continue processing the rest of the thread.

  • Executables & binaries: .exe, .dll, .so, .dylib, .a, .lib, .bin, .o, .obj, .sys, .app, .deb, .rpm, .apk, .msi, .elf, .mach

  • Images & graphics: .jpg, .jpeg, .png, .gif, .bmp, .ico, .tiff, .webp, .heic, .psd, .eps

  • Media files: .mp4, .avi, .mov, .mkv, .flv, .wmv, .mp3, .wav, .flac, .aac, .m4a, .ogg, .m3u, .m3u8, .pls

If your thread contains a mix of supported and unsupported files, Bito will process the supported ones and silently skip the rest.

Example workflow:

  1. Upload a config file to the channel

  2. Ask: @Bito review this configuration and suggest improvements

  3. Bito reads the file and provides specific recommendations

Understanding integrations

Bito automatically detects and incorporates information from:

Jira tickets

  • Mention a ticket ID like PROJ-123 in your conversation

  • Bito recognizes the reference and pulls in context from that ticket

Confluence pages

  • Paste a Confluence link in your discussion

  • Bito reads the linked page and factors it into its response

You don't need to do anything special — just mention or paste the link as you normally would.

1:1 direct message with Bito

You can chat with Bito AI Assistant privately, just like you would with any teammate. In a 1:1 DM, you do not need to mention @Bito — every message you send is automatically processed by the bot.

How to start a 1:1 chat

  1. In Slack, click Apps in the left sidebar

  2. Select Bito AI Assistant

  3. Start typing your message and press Enter

What you can do

  • Ask questions directly: what does this function do?

  • Share files for analysis: attach a file and ask can you review this code?

  • Have a conversation: follow-up messages maintain context from the thread

Example:

You:   Can you help me understand what this code does?
       [uploaded: authentication.py]

Bito:  This file implements JWT-based authentication with three key functions...

Notes:

  • Every message you type in the 1:1 DM with Bito is processed — there is no need to prefix with @Bito

  • Message edits: if you edit a message to add a new @Bito mention, Bito will respond to the new request

Group direct message with Bito

You can also include Bito AI Assistant in a group chat with other teammates. This is useful when collaborating on a discussion where you want Bito's input along side human participants.

How to create a group DM with Bito

  1. In Slack, click the "New Message" or pencil icon at the top of the left sidebar

  2. In the "To:" field, add the teammates you want to include

  3. In the same "To:" field, add Bito AI Assistant (start typing "Bito" and select it from the dropdown)

  4. Send your first message to create the group

Important: Bito must be added to the group at the time of creation. Slack does not allow adding bots to an existing group DM. If you want to add Bito to an ongoing conversation, create a new group DM or use a private channel instead.

Talking to Bito in a group DM

Unlike 1:1 DMs, in a group DM you must explicitly mention @Bito when you want Bito to respond. Messages without a mention are treated as normal conversation between humans and Bito will not respond.

Example:

You:   Hey team, quick question about the new API design?
       [Bito does not respond — no mention]

Alice: I think we should use REST for consistency.

You:   @Bito AI Assistant what are the tradeoffs between REST and GraphQL
       for our use case?

Bito:  Great question. Here's a breakdown of the tradeoffs...

Notes:

  • Only messages containing @Bito trigger a response in group DMs

  • Message edits trigger Bito only if a new mention is added during the edit (Bito will not respond to unrelated text edits on messages it has already replied to)

Common use cases

Catch up on long threads

You return from vacation to find 100+ messages in a project channel.

What to do:

@Bito summarize the last 3 days of discussion and highlight any decisions that need my input

What you get:

  • Key points from the conversation

  • Decisions already made

  • Open questions requiring your attention

Review code and technical decisions

Your team discusses two different architectural approaches.

What to do:

  1. Share code snippets for both approaches

  2. Ask: @Bito compare these two approaches and explain the trade-offs

What you get:

  • Analysis of each approach

  • Pros and cons

  • Recommendations based on the discussion context

Extract action items

After a long planning discussion, you need to know what comes next.

What to do:

@Bito list all action items from this thread with who's responsible

What you get:

  • Organized list of tasks

  • Assignments (when mentioned in the thread)

  • Priorities or deadlines discussed

Break down complex work

Your team needs to implement a new feature but isn't sure where to start.

What to do:

@Bito help us break down this feature into implementable tasks

What you get:

  • Suggested task breakdown

  • Logical sequencing

  • Considerations from your team's discussion

Pull context from tickets

You're discussing a bug that relates to an existing Jira ticket.

What to do:

  1. Mention the ticket: "This might be related to PROJ-456"

  2. Ask: @Bito what's the background on PROJ-456 and how does it relate to this issue?

What you get:

  • Summary of the referenced ticket

  • Connection to current discussion

  • Relevant history or context

Turn plans into code

Your team has discussed and finalized an implementation plan in a thread and wants to move straight to coding.

What to do:

@Bito based on the implementation plan above, create a new branch and make the code changes

What you get:

  1. A new branch created from your default branch

  2. Code changes implemented following the agreed plan

  3. Changes aligned with your existing codebase patterns and conventions

Best practices

Get the most from Bito

Do:

  • ✅ Ask specific, focused questions

  • ✅ Use Bito in threads where team discussions happen

  • ✅ Reference files and tickets to give Bito more context

  • ✅ Ask follow-up questions to clarify responses

  • ✅ Use Bito to document decisions by asking for summaries

Don't:

  • ❌ Ask multiple unrelated questions in one message

  • ❌ Expect Bito to make decisions for you — use it to inform your decisions

  • ❌ Share sensitive credentials or secrets in threads (Bito reads all messages)

Privacy and context

What Bito can see:

  • All messages in the current thread

  • Files shared in the thread

  • Content from referenced Jira/Confluence links (if connected)

What Bito cannot see:

  • Messages in channels where it hasn't been invited

  • Direct messages between users

  • Private channels where it's not a member

Always invite Bito only to channels where AI assistance is appropriate for your team's privacy requirements.

Troubleshooting

Bito doesn't respond

Check:

  1. Did you invite Bito to this channel? If not, invite Bito's AI Assistant to a channel by typing @Bito followed by your query. Slack will automatically prompt you to add Bito to the channel if it isn't already there, click Yes to add it and get your answer, or dismiss the prompt to skip.

  2. Did you mention @Bito at the start of your message?

  3. Is your Bito subscription active and does it include Bito AI Assistant for Slack?

Solution: Verify Bito is in the channel members list. If not, invite it again.

Bito's response seems incomplete

Possible reasons:

  • The thread context is very long

  • Multiple topics are discussed simultaneously

Solution:

  • Ask more specific questions that focus on one aspect

  • Reference the specific part of the conversation you're asking about

  • Break complex questions into smaller parts

Bito doesn't see my Jira ticket

Check:

  1. Is your Bito account connected to Jira?

  2. Did you mention the exact ticket ID (e.g., PROJ-123)?

  3. Do you have access to that ticket in Jira?

Solution: Verify integrations are configured in your Bito account settings.

I need to remove Bito from a channel

Steps:

  1. Open the channel

  2. Click the channel name to view details

  3. Go to the Integrations tab

  4. Find Bito and click Remove

Bito will no longer see messages or respond in that channel.

Frequently Asked Questions

Does Bito read all messages in a channel?

Bito only reads messages in threads where someone mentions @Bito. It doesn't process or store messages from conversations where it's not mentioned.

Can I use Bito in private channels?

Yes. Invite Bito to private channels the same way you would invite any team member. Only people in that private channel can interact with Bito there.

How much does Bito AI Assistant cost?

Bito AI Assistant is included in Bito's paid plans. Check bito.ai/pricing for current plan details and features.

Does Bito learn from our conversations?

Bito uses conversation context to provide better responses during that discussion. Your team's specific conversations are used to improve responses within your Bito account but are not used to train public AI models.

What happens if I exceed my plan limits?

Bito will notify you when you approach plan limits. Responses may be rate-limited if you exceed usage caps. Upgrade your plan to increase limits.

Can I use Bito for customer support channels?

Yes, but consider privacy implications. Bito reads all messages in threads where it's mentioned. Only use it in channels where AI assistance is appropriate.

Next steps

Now that you understand how Bito AI Assistant works:

  1. Invite Bito to your most active project channels

  2. Try common use cases like summarizing threads or extracting action items

  3. Share with your team so everyone knows how to use @Bito

  4. Experiment with different types of questions to discover what works best for your workflow

Welcome to faster, smarter team collaboration with AI assistance right in Slack.

Guide for Claude Desktop

Integrate Claude Desktop with AI Architect for more accurate, codebase-aware AI assistance.

Use Bito's AI Architect with Claude Desktop to enhance your AI-powered coding experience.

Once connected via MCP (Model Context Protocol), Claude Desktop can leverage AI Architect's deep contextual understanding of your project, enabling more accurate code suggestions, explanations, and code insights.

Prerequisites

  1. Follow the AI Architect installation instructions. Upon successful setup, you will receive a Bito MCP URL and Bito MCP Access Token that you need to enter in your coding agent.

  2. Download BitoAIArchitectGuidelines.md file. You will need to copy/paste the content from this file later when configuring AI Architect.

    • Note: This file contains best practices, usage instructions, and prompting guidelines for the Bito AI Architect MCP server. The setup will work without this file, but including it helps AI tools interact more effectively with the Bito AI Architect MCP server.

  3. Claude Desktop installed - Download and install Claude Desktop from claude.ai/download if you haven't already.

  4. Node.js 20.18.1 or higher - Required for the mcp-remote proxy

    • macOS:

      brew install node@20
      # Or use nvm: nvm install 20 && nvm use 20
    • Windows: Download from https://nodejs.org/ (download 20.x LTS)

    • Linux (Ubuntu/Debian):

      curl -fsSL https://deb.nodesource.com/setup_20.x | sudo -E bash -
      sudo apt-get install -y nodejs
    • Verify installation:

      node --version  # Should show v20.x.x or higher
      npx --version

Note: Claude Desktop uses OAuth 2.1 authentication via the mcp-remote proxy, so you don't need to manually manage access tokens. Your email will be collected during the OAuth consent flow.

Set up AI Architect

Claude Desktop uses claude_desktop_config.json with the mcp-remote proxy for OAuth-enabled remote servers.

Claude Desktop supports both local MCP servers and remote HTTP servers. For Bito AI Architect (a remote OAuth server), we use the mcp-remote proxy which handles the OAuth flow automatically.

1

Open configuration file

macOS:

  1. Open Claude Desktop

  2. Click Claude menu → Settings → Developer tab

  3. Click Edit Config to open claude_desktop_config.json

Or manually open: ~/Library/Application Support/Claude/claude_desktop_config.json

Windows:

  1. Open Claude Desktop

  2. Click File → Settings → Developer tab

  3. Click Edit Config to open claude_desktop_config.json

Or manually open: %APPDATA%\Claude\claude_desktop_config.json

2

Add AI Architect configuration

Add the following to your claude_desktop_config.json:

{
  "mcpServers": {
    "BitoAIArchitect": {
      "command": "npx",
      "args": [
        "-y",
        "mcp-remote",
        "<Your-Bito-MCP-URL>"
      ]
    }
  }
}
  • Replace <Your-Bito-MCP-URL> with the Bito MCP URL you received after completing the AI Architect setup.

    • For the Bito-hosted AI Architect, use the following URL format: https://mcp.bito.ai/<Your-Bito-Workspace-ID>/mcp

If you already have other MCP servers configured, add BitoAIArchitect to the existing mcpServers object:

{
  "mcpServers": {
    "existing-server": {
      ...
    },
    "BitoAIArchitect": {
      "command": "npx",
      "args": [
        "-y",
        "mcp-remote",
        "<Your-Bito-MCP-URL>"
      ]
    }
  }
}
  • Replace <Your-Bito-MCP-URL> with the Bito MCP URL you received after completing the AI Architect setup.

    • For the Bito-hosted AI Architect, use the following URL format: https://mcp.bito.ai/<Your-Bito-Workspace-ID>/mcp

Windows-specific configuration:

On Windows, you may need to use the cmd wrapper:

3

Restart Claude Desktop

  1. Completely quit Claude Desktop (not just close the window)

    • macOS: Claude menu → Quit Claude

    • Windows: Right-click system tray icon → Exit

  2. Reopen Claude Desktop

  3. The MCP server will start automatically

4

Complete OAuth authorization

On first use, mcp-remote will open your browser to complete OAuth:

  1. A browser window opens showing the Bito Authorization page

  2. Review the requested permissions

  3. Enter your email address (required for tracking)

  4. Click "Authorize" or "Allow"

  5. Return to Claude Desktop - the connection is now active

5

Verify connection

  1. In Claude Desktop, click the "+" button at the bottom of the chat

  2. Select "Connectors" or look for the hammer/wrench icon

  3. BitoAIArchitect should appear in the list

  4. Try asking: "What repositories are available?"

Troubleshooting Claude Desktop

Server not appearing:

  1. Verify JSON syntax in config file

  2. Ensure Node.js 20+ is installed: node --version

  3. Check that npx is available: npx --version

  4. Fully quit and restart Claude Desktop

OAuth flow not starting:

  1. Ensure your browser is set as default

  2. Allow pop-ups for the OAuth flow

  3. Check firewall settings

"mcp-remote not found" error:

  • Ensure Node.js is in your PATH

  • Try running npx -y mcp-remote --help in terminal to verify it works

Connection shows "Disconnected":

  • OAuth tokens may have expired - restart Claude Desktop to re-authorize

  • Check your internet connection

  • Verify the Workspace ID is correct

Single Sign-On (SSO) integration

Note: If you are using a self-hosted deployment of AI Architect, please refer to the SSO authentication guide for self-hosted installations instead, as the setup process differs from the cloud version.

Single Sign-On (SSO) enables your team to authenticate with Bito's AI Architect MCP through your organization's identity provider instead of sharing access tokens with team members.

Why use SSO

SSO addresses a critical security challenge: when teams share access tokens, you lose visibility into who accessed what and when. If someone leaves the company or changes roles, you need to rotate tokens for everyone. SSO solves this by integrating authentication with your existing identity infrastructure.

Your organization likely already uses an identity provider like Google Workspace, Okta, Azure Entra ID, Auth0, or others to manage access to email, Slack, and other business tools. SSO extends this same authentication system to AI Architect, giving you centralized control over access without creating a separate credential management burden.

The practical benefits include automatic enforcement of your existing security policies (like multi-factor authentication requirements), immediate access revocation when someone leaves, and a complete audit trail of who accessed the system and when. This meets enterprise compliance requirements while making access simpler for your users.

Supported identity providers

AI Architect's SSO implementation uses Descope as the authentication platform, which provides native integrations with enterprise identity providers.

Common identity providers include:

  • Google Workspace

  • Okta

  • Azure Entra ID

  • Microsoft AD FS

  • PingFederate

  • PingOne

  • onelogin

  • Keycloak

  • JumpCloud

  • Auth0

  • ClassLink

  • Cyberark

  • Descope

  • Duo

  • LastPass

  • miniOrange

  • Salesforce

If your organization uses a different provider, you can configure it as a custom SAML 2.0 or OpenID Connect (OIDC) integration.

The setup process varies by provider but follows the same general pattern: you'll configure an application in your identity provider, exchange metadata or configuration details, and test the connection.

Prerequisites

To enable SSO, you need:

  1. Workspace admin access: You must be an admin in your Bito workspace. You can check your role in Bito by going to Manage Users dashboard.

  2. Identity provider account: Access to configure your organization's IdP (Google Workspace, Okta, etc.). This is typically an IT admin or someone in your identity and access management team. You'll need to add AI Architect as an authorized application and provide configuration details.

  3. AI Architect: Your workspace must have AI Architect enabled. Learn more

How to configure SSO

1

Access SSO settings in Bito

  1. Log in to Bito Cloud.

  2. Navigate to the Manage integrations dashboard.

  3. In the Available integrations section, you will see Single Sign-On (SSO). Click Connect to proceed.

  4. Click Connect via SSO. You will be redirected to Descope.

2

Configure your identity provider

The SSO configuration uses Descope as the authentication platform, which supports multiple identity providers.

  1. In the Welcome page, click SSO Configuration.

  2. Choose your identity provider from the . If you do not find the identity provider, use the generic configuration options such as SAML 2.0 or OpenID Connect (OIDC) at the bottom of the screen.

  3. Follow the provider-specific setup wizard to configure SSO.

For the sake of this documentation, we'll provide setup guide for Keycloak. For other identity providers, simply follow the step-by-step instructions provided by Descope in the setup wizard.

Guide for Keycloak:

  1. From the Identity Provider (IdP) Selection screen, click Keycloak.

  2. Click SAML.

  3. From the Service Provider Information screen, copy Client ID.

How users connect using SSO

Once SSO is enabled for your workspace, you can easily connect to AI Architect MCP in your coding agents (Cursor, Windsurf, VS Code, etc.) using the following steps:

  1. Connect Bito's AI Architect to your AI coding tools (Cursor, Windsurf, VS Code, etc.) in seconds with our automated installer.

    1. Follow quick MCP integration guide

  2. Open your IDE's MCP settings.

  3. In BitoAIArchitect MCP, remove the Bito MCP Access Token line.

Note: Sometime your changes in MCP settings will not take effect immediately. To fix this, you can try renaming the BitoAIArchitect MCP to something else. For example, BitoAIArchitect_test.

  1. Enable the BitoAIArchitect MCP.

  2. Click the Connect button next to Bito's AI Architect MCP. The secure authentication link of your organization's identity provider will open in browser.

  3. Sign in using your credentials.

  4. After successful authentication, return to your IDE.

  5. Bito's AI Architect MCP is now connected and ready to use.

How SSO authentication works

In your IDE, when you click "Connect" for Bito's AI Architect MCP, the MCP client generates a secure authorization request. Your browser opens and redirects to your identity provider (like Google or Okta). You authenticate with your credentials. Your identity provider verifies your identity and confirms you're authorized to access the application. It sends a secure token back to Bito, which verifies it and creates a session for you. Your IDE receives confirmation and establishes the MCP connection.

This entire process takes about 30 seconds the first time. The IDE stores your session securely, so you won't need to authenticate again unless your session expires (typically after 1 hour of inactivity) or you explicitly disconnect.

Fallback authentication (when SSO isn't configured yet)

If a workspace admin has enabled SSO but hasn't completed the configuration with an identity provider, you will see a different authentication flow. Instead of being redirected to your organization's identity provider login page, you'll be directed to Bito's standard authentication page at https://alpha.bito.ai/.

On this page, you need to enter your email address. Bito sends you a one-time code. You enter this code to verify your identity, then select which workspace you want to access. If you're a member of the workspace and have AI Architect enabled, you'll be authenticated successfully.

This fallback ensures your team can still work even if SSO configuration is in progress or experiencing issues. However, you lose the centralized access control benefits that SSO provides, so you should complete the full SSO configuration when possible.

Managing team access

Once SSO is configured, you can control team member access to AI Architect by managing workspace membership and seat assignments.

1. User already exists in the workspace with an assigned seat

If a user already exists in your Bito workspace and has a seat assigned, they can authenticate with AI Architect MCP through SSO immediately. No additional steps required, they simply connect using the SSO flow.

Learn more about seat management

2. Manually add new team members

To manually add a new team member:

  • Log in to Bito Cloud and navigate to Manage Users

  • Go to the IDE Code Review tab and click Add members

  • Enter their email address and click Add members

  • Assign them a seat

The team member can now authenticate with AI Architect MCP through SSO.

3. Automatically add users to the workspace after successful SSO login

When the autoAddUser flag is enabled in XMCP configuration, team members are automatically added to your workspace (if they don't already exist) after their first successful SSO login. For this to work, your workspace settings must allow adding users with the same email domain.

To enable the autoAddUser flag, contact the Bito team at [email protected].

Removing access

You have two options for removing someone's access, and they work differently.

  1. If you remove someone from your workspace in Bito, their access is revoked immediately for new authentication attempts. However, if they have an active session (they're already authenticated in their IDE), that session will continue to work until it expires. Sessions expire after 1 hour of inactivity by default.

  2. If you need to revoke access immediately, including active sessions, you should remove or disable their account in your identity provider (Google Workspace, Okta, etc.). This prevents them from authenticating at all, and their existing sessions will fail the next time they try to use AI Architect.

For employees leaving the company, the standard practice is to disable their account in your identity provider as part of your offboarding process. This automatically revokes their access to AI Architect along with your other business applications. If you want to preserve their workspace membership for record-keeping but remove their AI Architect access, you can unassign their seat instead.

Guide for GitLab

Integrate the AI Code Review Agent into your GitLab workflow.

Speed up code reviews by configuring the AI Code Review Agent with your GitLab repositories. In this guide, you'll learn how to set up the Agent to receive automated code reviews that trigger whenever you create a pull request, as well as how to manually initiate reviews using available commands.

The Free Plan offers AI-generated pull request summaries to provide a quick overview of changes. For advanced features like line-level code suggestions, consider upgrading to the Team Plan. For detailed pricing information, visit our Pricing page.

Get a 14-day FREE trial of Bito's AI Code Review Agent.

Video tutorial

Prerequisites

Before proceeding, ensure you've completed all necessary prerequisites.

1. Create a GitLab Personal Access Token:

For GitLab merge request code reviews, a token with api scope is required. Make sure that the token is created by a GitLab user who has the Maintainer access role.

View Guide

Important: Bito posts comments using the GitLab user account linked to the Personal Access Token used during setup. To display "Bito" instead of your name, create a separate user account (e.g., Bito Agent) and use its token for integration.

We recommend setting the token expiration to at least one year. This prevents the token from expiring early and avoids disruptions in the AI Code Review Agent's functionality.

Additionally, we highly recommend updating the token before expiry to maintain seamless integration and code review processes.

GitLab Personal Access Token

2. Authorizing a GitLab Personal Access Token for use with SAML single sign-on:

If your GitLab organization enforces SAML Single Sign-On (SSO), you must authorize your Personal Access Token through your Identity Provider (IdP); otherwise, Bito's AI Code Review Agent won't function properly.

For more information, please refer to these GitLab documentation:

  • https://docs.gitlab.com/ee/user/group/saml_sso/

  • https://docs.gitlab.com/ee/integration/saml.html

  • https://docs.gitlab.com/ee/integration/saml.html#password-generation-for-users-created-through-saml

Installation and configuration steps

Follow the step-by-step instructions below to install the AI Code Review Agent using Bito Cloud:

Step 1: Log in to Bito

Log in to Bito Cloud and select a workspace to get started.

Step 2: Open the Code Review Agents setup

Click Repositories under the CODE REVIEW section in the sidebar.

Step 3: Select your Git provider

Bito supports integration with the following Git providers:

  • GitHub

  • GitHub (Self-Managed)

  • GitLab

  • GitLab (Self-Managed)

  • Bitbucket

  • Bitbucket (Self-Managed)

Since we are setting up the Agent for GitLab, select GitLab to proceed.

Step 4: Connect Bito to GitLab

To enable merge request reviews, you’ll need to connect your Bito workspace to your GitLab account.

You can either connect using OAuth (recommended) for a seamless, one-click setup or manually enter your Personal Access Token.

To connect via OAuth, simply click the Connect with OAuth (Recommended) button. This will redirect you to the GitLab website, where you'll need to log in. Once authenticated, you'll be redirected back to Bito, confirming a successful connection.

If you prefer not to use OAuth, you can connect manually using a Personal Access Token.

Start by generating a Personal Access Token with api scope in your GitLab account. For guidance, refer to the instructions in the Prerequisites section.

Once generated, click the Alternatively, use Personal or Group Access Token button.

Now, enter the token into the Personal Access Token input field in Bito.

Click Validate to ensure the token is functioning properly.

If you've successfully connected via OAuth or manually validated your token, you can select your GitLab Group from the dropdown menu.

Click Connect Bito to GitLab to proceed.

Step 5: Enable AI Code Review Agent on repositories

After connecting Bito to your GitLab account, you'll see a list of repositories that Bito has access to.

Use the toggles in the Code Review Status column to enable or disable the Agent for each repository.

To customize the Agent’s behavior, you can edit existing configurations or create new Agents as needed.

Learn more

Step 6: Automated and manual merge request reviews

Once a repository is enabled, you can invoke the AI Code Review Agent in the following ways:

  1. Automated code review: By default, the Agent automatically reviews all new merge requests and provides detailed feedback.

  2. Manually trigger code review: To initiate a manual review, simply type /review in the comment box on the merge request and submit it. This action will start the code review process.

The AI-generated code review feedback will be posted as comments directly within your merge request, making it seamless to view and address suggestions right where they matter most.

Note: To enhance efficiency, the automated code reviews are only triggered for merge requests merging into the repository’s default branch. This prevents unnecessary processing and Advanced AI requests usage.

To review additional branches, you can use the Include Source/Target Branches filter. Bito will review merge requests when the source or target branch matches the list.

The Include Source/Target Branches filter applies only to automatically triggered reviews. Users should still be able to trigger reviews manually via the /review command.

The AI Code Review Agent automatically reviews code changes up to 5000 lines when a merge request is created. For larger changes, you can use the /review command.

It may take a few minutes to get the code review posted as a comment, depending on the size of the merge request.

Step 7: Specialized commands for code reviews

Bito also offers specialized commands that are designed to provide detailed insights into specific areas of your source code, including security, performance, scalability, code structure, and optimization.

  • /review security: Analyzes code to identify security vulnerabilities and ensure secure coding practices.

  • /review performance: Evaluates code for performance issues, identifying slow or resource-heavy areas.

  • /review scalability: Assesses the code's ability to handle increased usage and scale effectively.

  • /review codeorg: Scans for readability and maintainability, promoting clear and efficient code organization.

  • /review codeoptimize: Identifies optimization opportunities to enhance code efficiency and reduce resource usage.

By default, the /review command generates inline comments, meaning that code suggestions are inserted directly beneath the code diffs in each file. This approach provides a clearer view of the exact lines requiring improvement. However, if you prefer a code review in a single post rather than separate inline comments under the diffs, you can include the optional parameter: /review #inline_comment=False

For more details, refer to Available Commands.

Step 8: Chat with AI Code Review Agent

Ask questions directly to the AI Code Review Agent regarding its code review feedback. You can inquire about highlighted issues, request alternative solutions, or seek clarifications on suggested fixes.

To start the conversation, type your question in the comment box within the inline suggestions on your merge request, and then submit it. Typically, Bito AI responses are delivered in about 10 seconds. On GitHub and Bitbucket, you need to manually refresh the page to see the responses, while GitLab updates automatically.

Bito supports over 20 languages—including English, Hindi, Chinese, and Spanish—so you can interact with the AI in the language you’re most comfortable with.

Step 9: Configure Agent settings

Agent settings let you control how reviews are performed, ensuring feedback is tailored to your team’s needs. By adjusting the options, you can:

  • Make reviews more focused and actionable.

  • Apply your own coding standards.

  • Reduce noise by excluding irrelevant files or branches.

  • Add extra checks to improve code quality and security.

Learn more

Screenshots

Screenshot # 1

AI-generated merge request (MR) summary

Screenshot # 2

Changelist showing key changes and impacted files in a merge request.

Changelist in AI Code Review Agent's feedback.

Screenshot # 3

AI code review feedback posted as comments on the merge request.

Guide for Bitbucket

Integrate the AI Code Review Agent into your Bitbucket workflow.

Speed up code reviews by configuring the AI Code Review Agent with your Bitbucket repositories. In this guide, you'll learn how to set up the Agent to receive automated code reviews that trigger whenever you create a pull request, as well as how to manually initiate reviews using available commands.

The Free Plan offers AI-generated pull request summaries to provide a quick overview of changes. For advanced features like line-level code suggestions, consider upgrading to the Team Plan. For detailed pricing information, visit our Pricing page.

Get a 14-day FREE trial of Bito's AI Code Review Agent.

Video tutorial

Installation and configuration steps

Follow the step-by-step instructions below to install the AI Code Review Agent using Bito Cloud:

Step 1: Log in to Bito

Log in to Bito Cloud and select a workspace to get started.

Step 2: Open the Code Review Agents setup

Click Repositories under the CODE REVIEW section in the sidebar.

Step 3: Select your Git provider

Bito supports integration with the following Git providers:

  • GitHub

  • GitHub (Self-Managed)

  • GitLab

  • GitLab (Self-Managed)

  • Bitbucket

  • Bitbucket (Self-Managed)

Since we are setting up the Agent for Bitbucket, select Bitbucket to proceed.

Step 4: Connect Bito to Bitbucket

To enable pull request reviews, you’ll need to connect your Bito workspace to your Bitbucket account.

If your Bitbucket access control settings block external services from interacting with the Bitbucket server, whitelist all of Bito's gateway IP addresses to ensure Bito can access your repositories. The Agent response can come from any of these IPs.

  • List of IP addresses to whitelist:

    • 18.188.201.104

    • 3.23.173.30

    • 18.216.64.170

See the for more information.

Click Install Bito App for Bitbucket. This will redirect you to Bitbucket.

Now, authorize the Bito App to access your Bitbucket repositories.

Select your Bitbucket workspace from the Authorize for workspace dropdown menu and then click Grant access. Once completed, you will be redirected to Bito.

Note: You'll only see Bitbucket workspaces where you have Admin access. If no workspaces appear in the dropdown, it means your account doesn’t have admin access to any workspace. To connect a workspace, make sure you have admin access for it.

Step 5: Enable AI Code Review Agent on repositories

After connecting Bito to your Bitbucket account, you'll see a list of repositories that Bito has access to.

Use the toggles in the Code Review Status column to enable or disable the Agent for each repository.

To customize the Agent’s behavior, you can edit existing configurations or create new Agents as needed.

Learn more

Step 6: Automated and manual pull request reviews

Once a repository is enabled, you can invoke the AI Code Review Agent in the following ways:

  1. Automated code review: By default, the Agent automatically reviews all new pull requests and provides detailed feedback.

  2. Manually trigger code review: To initiate a manual review, simply type /review in the comment box on the pull request and click Add comment now to submit it. This action will start the code review process.

Note: After typing /review, add a space inside the comment box to ensure that /review is not highlighted as a Bitbucket slash command so that the comment can be posted correctly.

The AI-generated code review feedback will be posted as comments directly within your pull request, making it seamless to view and address suggestions right where they matter most.

Note: To enhance efficiency, the automated code reviews are only triggered for pull requests merging into the repository’s default branch. This prevents unnecessary processing and Advanced AI requests usage.

To review additional branches, you can use the Include Source/Target Branches filter. Bito will review pull requests when the source or target branch matches the list.

The Include Source/Target Branches filter applies only to automatically triggered reviews. Users should still be able to trigger reviews manually via the /review command.

The AI Code Review Agent automatically reviews code changes up to 5000 lines when a pull request is created. For larger changes, you can use the /review command.

It may take a few minutes to get the code review posted as a comment, depending on the size of the pull request.

Step 7: Specialized commands for code reviews

Bito also offers specialized commands that are designed to provide detailed insights into specific areas of your source code, including security, performance, scalability, code structure, and optimization.

  • /review security: Analyzes code to identify security vulnerabilities and ensure secure coding practices.

  • /review performance: Evaluates code for performance issues, identifying slow or resource-heavy areas.

  • /review scalability: Assesses the code's ability to handle increased usage and scale effectively.

  • /review codeorg: Scans for readability and maintainability, promoting clear and efficient code organization.

  • /review codeoptimize: Identifies optimization opportunities to enhance code efficiency and reduce resource usage.

By default, the /review command generates inline comments, meaning that code suggestions are inserted directly beneath the code diffs in each file. This approach provides a clearer view of the exact lines requiring improvement. However, if you prefer a code review in a single post rather than separate inline comments under the diffs, you can include the optional parameter: /review #inline_comment=False

For more details, refer to Available Commands.

Step 8: Chat with AI Code Review Agent

Ask questions directly to the AI Code Review Agent regarding its code review feedback. You can inquire about highlighted issues, request alternative solutions, or seek clarifications on suggested fixes.

To start the conversation, type your question in the comment box within the inline suggestions on your pull request, and then submit it. Typically, Bito AI responses are delivered in about 10 seconds. On GitHub and Bitbucket, you need to manually refresh the page to see the responses, while GitLab updates automatically.

Bito supports over 20 languages—including English, Hindi, Chinese, and Spanish—so you can interact with the AI in the language you’re most comfortable with.

Step 9: Configure Agent settings

Agent settings let you control how reviews are performed, ensuring feedback is tailored to your team’s needs. By adjusting the options, you can:

  • Make reviews more focused and actionable.

  • Apply your own coding standards.

  • Reduce noise by excluding irrelevant files or branches.

  • Add extra checks to improve code quality and security.

Learn more

Screenshots

Screenshot # 1

AI-generated pull request (PR) summary

Screenshot # 2

Changelist showing key changes and impacted files in a pull request.

Changelist in AI Code Review Agent's feedback.

Screenshot # 3

AI code review feedback posted as comments on the pull request.

Prerequisites

Key requirements for self-hosting the AI Code Review Agent.

Minimum System Requirements

A machine with the following minimum specifications is recommended for Docker image deployment and for obtaining optimal performance of the AI Code Review Agent.

Requirement
Minimum Specification

CPU Cores

4

RAM

8 GB

Hard Disk Drive

80 GB


Supported Operating Systems

  • Windows

  • Linux

  • macOS


OS Prerequisites

Operating System
Installation Steps

Linux

You will need:

  1. Bash (minimum version 4.x)

    • For Debian and Ubuntu systems

      sudo apt-get install bash

    • For CentOS and other RPM-based systems

      sudo yum install bash

  1. Docker (minimum version 20.x)

macOS

You will need:

  1. Bash (minimum version 4.x)

    brew install bash

  1. Docker (minimum version 20.x)

Windows

You will need:

  1. PowerShell (minimum version 5.x)

    • View Guide

    • Note: In PowerShell version 7.x, run Set-ExecutionPolicy Unrestricted command. It allows the execution of scripts without any constraints, which is essential for running scripts that are otherwise blocked by default security settings.

  1. Docker (minimum version 20.x)


Required Access Tokens

  • Bito Access Key: Obtain your Bito Access Key. View Guide

  • GitHub Personal Access Token (Classic): For GitHub PR code reviews, ensure you have a CLASSIC personal access token with repo access. We do not support fine-grained tokens currently. View Guide

GitHub Personal Access Token (Classic)
  • GitLab Personal Access Token: For GitLab PR code reviews, a token with API access is required. View Guide

GitLab Personal Access Token
  • Snyk API Token (Auth Token): For Snyk vulnerability reports, obtain a Snyk API Token. View Guide

Install/run via GitHub Actions

Seamlessly integrate automated code reviews into your GitHub Actions workflows.

Prerequisites

  • Bito Access Key: Obtain your Bito Access Key. View Guide

  • GitHub Personal Access Token (Classic): For GitHub PR code reviews, ensure you have a CLASSIC personal access token with repo access. We do not support fine-grained tokens currently. View Guide

GitHub Personal Access Token (Classic)

Installation and Configuration Steps:

  1. Enable GitHub Actions:

    • Login to your GitHub account.

    • Open your repository and click on the "Settings" tab.

    • Select "Actions" from the left sidebar, then click on "General".

    • Under "Actions permissions", choose "Allow all actions and reusable workflows" and click "Save".

  2. Set Up Environment Variables:

    • Still in the "Settings" tab, navigate to "Secrets and variables" > "Actions" from the left sidebar.

    • Configure the following under the "Secrets" tab:

      For each secret, click the New repository secret button, then enter the exact name and value of the secret in the form. Finally, click Add secret to save it.

      • Name: BITO_ACCESS_KEY

        • Secret: Enter your Bito Access Key here. Refer to the .

      • Name: GIT_ACCESS_TOKEN

Check the above "Prerequisites" section to learn more about creating the access tokens needed to configure the Agent.

  • Configure the following under the "Variables" tab:

    For each variable, click the New repository variable button, then enter the exact name and value of the variable in the form. Finally, click Add variable to save it.

    • Name: STATIC_ANALYSIS_TOOL

      • Value: Enter the following text string as value: fb_infer,astral_ruff,mypy

    • Name: GIT_DOMAIN

      • Value: Enter the domain name of your Enterprise or self-hosted GitHub deployment or skip this if you are not using Enterprise or self-hosted GitHub deployment.

      • Example of domain name: https://your.company.git.com

    • Name: EXCLUDE_BRANCHES

      • Value: Specify branches to exclude from the review by name or valid glob/regex patterns. The agent will skip the pull request review if the source or target branch matches the exclusion list.

      • Note: For more information, see Source or Target branch filter.

    • Name: EXCLUDE_FILES

      • Value: Specify files/folders to exclude from the review by name or glob/regex pattern. The agent will skip files/folders that match the exclusion list.

      • Note: For more information, see Files and folders filter.

    • Name: EXCLUDE_DRAFT_PR

      • Value: Enter True to disable automated review for draft pull requests, or False to enable it.

      • Note: For more information, see .

  1. Create the Workflow Directory:

    • In your repository, create a new directory path: .github/workflows.

  2. Add the Workflow File:

    • Download this test_cra.yml file from AI Code Review Agent's GitHub repo.

    • In your repository, upload this test_cra.yml file inside the .github/workflows directory either in your source branch of each PR or in a branch (e.g. main) from which all the source branches for PRs will be created.

    • Commit your changes.

Customizations for self-hosted GitHub

  1. Create a self-hosted Runner using Linux image and x64 architecture as described in the GitHub documentation.

  2. Create a copy of Bito's repository gitbito/codereviewagent main branch into your self-hosted GitHub organization e.g. "myorg" under the required name e.g. "gitbito-bitocodereview". In this example, now this repository will be accessible as "myorg/gitbito-bitocodereview".

  3. Update test_cra.ymlas below:

    • Change line from:

      • runs-on: ubuntu-latest

    • to:

      • runs-on: <label of the self-hosted GitHub Runner> e.g. self-hosted, linux etc.

  4. Update test_cra.ymlas below:

    • Replace all lines having below text:

      • uses: gitbito/codereviewagent@main

    • with:

      • uses: myorg/gitbito-bitocodereview@main

  5. Commit and push your changes in test_cra.yml .

Using the AI Code Review Agent

After configuring the GitHub Actions, you can invoke the AI Code Review Agent in the following ways:

Note: To improve efficiency, the AI Code Review Agent is disabled by default for pull requests involving the "main" branch. This prevents unnecessary processing and token usage, as changes to the "main" branch are typically already reviewed in release or feature branches. To change this default behavior and include the "main" branch, please contact support.

  1. Automated Code Review: The agent will automatically review new pull requests as soon as they are created and post the review feedback as a comment within your PR.

  2. Manually Trigger Code Review: To start the process, simply type /review in the comment box on the pull request and submit it. This command prompts the agent to review the pull request and post its feedback directly in the PR as a comment.

    Bito also offers specialized commands that are designed to provide detailed insights into specific areas of your source code, including security, performance, scalability, code structure, and optimization.

    • /review security: Analyzes code to identify security vulnerabilities and ensure secure coding practices.

    • /review performance: Evaluates code for performance issues, identifying slow or resource-heavy areas.

    • /review scalability: Assesses the code's ability to handle increased usage and scale effectively.

    • /review codeorg: Scans for readability and maintainability, promoting clear and efficient code organization.

    • /review codeoptimize: Identifies optimization opportunities to enhance code efficiency and reduce resource usage.

    By default, the /review command generates inline comments, meaning that code suggestions are inserted directly beneath the code diffs in each file. This approach provides a clearer view of the exact lines requiring improvement. However, if you prefer a code review in a single post rather than separate inline comments under the diffs, you can include the optional parameter: /review #inline_comment=False

    For more details, refer to Available Commands.

It may take a few minutes to get the code review posted as a comment, depending on the size of the pull request.

Screenshots

Screenshot # 1

AI-generated pull request (PR) summary

Screenshot # 2

Changelist showing key changes and impacted files in a pull request.

Changelist in AI Code Review Agent's feedback.

Screenshot # 3

AI code review feedback posted as comments on the pull request.

Excluding files, folders, or branches with filters

Customize which files, folders, and Git branches are reviewed when the Agent triggers automatically on pull requests.

The AI Code Review Agent offers powerful filters to exclude specific files and folders from code reviews and gives you precise control over which Git branches are included in automated reviews.

These filters can be configured at the Agent instance level, overriding the default behavior.

Exclude Files and Folders filter

A list of files/folders that the AI Code Review Agent will not review if they are present in the diff. You can specify the files/folders to exclude from the review by name or glob/regex pattern. The Agent will automatically skip any files or folders that match the exclusion list.

This filter applies to both manual reviews initiated through the /review command and automated reviews triggered via webhook.

By default, these files are excluded: *.xml, *.json, *.properties, .gitignore, *.yml, *.md

Examples

Note:

  • Patterns are case sensitive.

  • Don’t use double quotes, single quotes or comma in the pattern.

  • Users can pass both types of patterns - Unix files system based glob pattern or regex.

Exclusion Rule for Files & Folders
Applicable Pattern
Matched Examples
Not Matched Examples

Exclude all properties files in all folders and subfolders

*.properties

resource/config.properties, resource/server/server.properties

resource/config.yaml, resource/config.json

Exclude all files, folders and subfolders in folder starting with resources

resources/

resources/application.properties, resources/config/config.yaml

app/resources/file.txt, config/resources/service.properties

Exclude all files, folders and subfolders in folder src/com/resources

src/com/resources/

resources/application.properties, resources/config/config.yaml

app/resources/file.txt, config/resources/service.properties

Exclude all files, folders and subfolders in subfolder resource and in parent folder src

src/*/resource/*

src/com/resource/main.html,

src/com/resource/script/file.css, src/com/resource/app/script.js

src/resource/file.txt, src/com/config/file.txt, app/com/config/file.txt

Exclude non-css files from folder src/com/resource/ and subfolders

^src\/com\/resource\\/(?!.*\\.css$).*$

src/com/resource/main.html, src/com/resource/app/script.js,

src/com/config/file.txt

src/com/resource/script/file.css

Exclude specific file controller/webhook_controller.go

controller/webhook_controller.go

controller/webhook_controller.go

controller/controller.go, controller/webhook_service.go

Exclude non-css files from folder starting with config and its subfolders

^config\\/(?!.*\\.css$).*$

config/server.yml, config/util/conf.properties

config/profile.css, config/styles/main.css

Exclude all files & folders

*

resource/file.txt, config/file.properties, app/folder/

-

Exclude all files & folders starting with name bito in module folder

module/bito*

module/bito123, module/bitofile.js, module/bito/file.js

module/filebito.js, module/file2.txt, module/util/file.txt

Exclude single-character folder names

*/?/*

src/a/file.txt, app/b/folder/file.yaml

folder/file.txt, ab/folder/file.txt

Exclude all folders, subfolders and files in those folders except folder starting with service folder

^(?!service\\/).*$

config/file.txt, resources/file.yaml

service/file.txt, service/config/file.yaml

Exclude all files in all folders except .py, .go, and .java files

^(?!.*\\.(py|go|java)$).*$

config/file.txt, app/main.js

main.py, module/service.go, test/Example.java

Exclude non-css files from folder src/com/config and its subfolders

^config\\/(?!.*\\.css$).*$

config/server.yml, config/util/conf.properties

config/profile.css, config/styles/main.css

Include Source/Target Branches filter

This filter defines which pull requests trigger automated reviews based on their source or target branch, allowing you to focus on critical code and avoid unnecessary reviews or AI usage.

By default, pull requests merging into the repository’s default branch are subject to review. To extend review coverage, additional branches may be specified using explicit branch names or valid glob/regex patterns. When the source or target branch of a pull request matches one of the patterns on your inclusion list, Bito’s AI Code Review Agent will trigger an automated review.

This filter applies only to automatically triggered reviews. Users should still be able to trigger reviews manually via the /review command.

Watch video tutorial:

Examples

Note:

  • Patterns are case sensitive.

  • Don’t use double quotes, single quotes or comma in the pattern.

  • Users can pass both types of patterns - Unix files system based glob pattern or regex.

Inclusion Rules for Branch
Pattern
Matched Examples
Not Matched Examples

Include any branch that starts with name BITO-

BITO-*

BITO-feature, BITO-123

feature-BITO, development

Include any branch that does not start with BITO-

^(?!BITO-).*

feature-123, release-v1.0

BITO-feature, BITO-123

Include any branch which is not BITO

^(?!BITO$).*

feature-BITO, development

BITO

Include branches like release/v1.0 and release/v1.0.1

release/v\\d+\\.\\d+(\\.\\d+)?

release/v1.0, release/v1.0.1

release/v1, release/v1.0.x

Include any branch ending with -test

*-test

feature-test, release-test

test-feature, release-testing

Include the branch that has keyword main

main

main, main-feature, mainline

master, development

Include the branch named main

^main$

main

main-feature, mainline, master, development

Include any branch name that does not start with feature- or release-

^(?!release-|feature-).*$

hotfix-123, development

feature-123, release-v1.0

Include branches with names containing digits

.*\\d+.*

feature-123, release-v1.0

feature-abc, main

Include branches with names ending with test or testing

.*(test|testing)$

feature-test, bugfix-testing

testing-feature, test-branch

Include branches with names containing a specific substring test

*test*

feature-test, test-branch, testing

feature, release

Include branches with names containing exactly three characters

^.{3}$

abc, 123

abcd, ab

Include branch names starting with release, hotfix, or development but not starting with Bito or feature

^(?!Bito|feature)(release|hotfix|development).*$

release-v1.0, hotfix-123, development-xyz

Bito-release, feature-hotfix, main-release

Include all branches where name do not contains version like 1.0, 1.0.1, etc.

^(?!.\\b\\d+\\.\\d+(\\.\\d+)?\\b).*

feature-xyz, main

release-v1.0, hotfix-1.0.1

Include all branches which are not alphanumeric

^.[^a-zA-Z0-9].$

feature-!abc, release-@123

feature-123, release-v1.0

Include all branches which contains space

.*\\s.*

feature 123, release v1.0

feature-123, release-v1.0

Draft pull requests filter

A binary setting that enables/disables automated review of pull requests (PR) based on the draft status. Enter True to disable automated review for draft pull requests, or False to enable it.

The default value is True which skips automated review of draft PR.

How to configure the filters?

Bito Cloud (Bito-hosted Agent)

You can configure filters using the Agent configuration page. For detailed instructions, please refer to the Install/run Using Bito Cloud documentation page.

CLI or webhooks service (self-hosted Agent)

You can configure filters using the bito-cra.properties file. Check the options exclude_branches, exclude_files, and exclude_draft_pr for more details.

GitHub Actions (self-hosted Agent)

You can configure filters using the GitHub Actions repository variables: EXCLUDE_BRANCHES, EXCLUDE_FILES, and EXCLUDE_DRAFT_PR. For detailed instructions, please refer to the Install/Run via GitHub Actions documentation page.

Jira integration

Bring Jira issue requirements into every pull request and get validation results back automatically.

Note: The Jira integration is available on the Professional Plan.

Bito integrates with Jira to automatically validate pull request code changes against linked Jira ticket requirements, helping ensure your implementations align with the specified requirements in those tickets.

How it works

When you create a pull request, Bito automatically:

  1. Detects Jira ticket references in your pull request description, title, or branch name

  2. Crawls the linked Jira tickets to extract requirements from issue descriptions and related Stories/Epics

  3. Analyzes your code changes against these requirements

  4. Provides structured validation results directly in your pull request comments

Jira integration options in Bito

Bito supports two ways to connect with Jira, depending on where your Jira instance is hosted:

  1. Jira Cloud: for Jira sites hosted by Atlassian (e.g., https://mycompany.atlassian.net).

  2. Jira Data Center: for Jira instances hosted on your own company domain or servers (e.g., https://jira.mycompany.com).

Connect Bito with Jira Cloud (hosted by Atlassian)

1

Connect Bito to Jira

  1. Navigate to the Manage integrations page in your Bito dashboard

  2. In the Available integrations section, you will see Jira. Click Connect to proceed.

  3. Select the option Jira Cloud. You will be redirected to the official Jira website, where you need to grant Bito access to your Atlassian account.

  4. Click Accept to continue. If the integration is successful, you will be redirected back to Bito.

2

Agent-specific settings

After completing the initial setup, you can control Jira integration on a per-agent basis:

  1. Go to the Repositories page in your Bito dashboard.

  2. Find the Agent instance you want to connect with Jira and open its settings.

  3. Within the Agent settings screen, click on the Integrations tab.

  4. Locate the Functional validation option and enable this setting to activate automatic pull request validation against Jira tickets.

Note: The Functional validation feature must be enabled in your Bito agent settings for the integration to work.

Connect Bito with Jira Data Center (hosted on your own server)

1

Connect Bito to Jira

  1. Navigate to the Manage integrations page in your Bito dashboard

  2. In the Available integrations section, you will see Jira. Click Connect to proceed.

  3. Select the option Jira Data Center (self-managed).

  4. Provide connection details:

    • Domain URL: Enter the base URL for your Jira instance (e.g. https://jira.mycompany.com).

    • Personal Access Token: Enter a valid Personal Access Token with admin permissions. Read the official Jira documentation to learn how to create a Personal Access Token.

  5. Click Connect to Jira. You will be redirected to your self-hosted Jira website, where you need to grant Bito access to your Jira account.

  6. Click Allow to continue. If the integration is successful, you will be redirected back to Bito.

2

Agent-specific settings

After completing the initial setup, you can control Jira integration on a per-agent basis:

  1. Go to the Repositories page in your Bito dashboard.

  2. Find the Agent instance you want to connect with Jira and open its settings.

  3. Within the Agent settings screen, click on the .

  4. Locate the Functional validation option and enable this setting to activate automatic pull request validation against Jira tickets.

Linking Jira tickets to pull requests

Bito offers multiple ways to link your Jira tickets with pull requests. You can use any of these methods:

Method 1: Branch name

Name your source branch using the Jira issue key:

feature/QP-123-implement-user-authentication
bugfix/QP-456-fix-login-error

Method 2: Pull request description

Include the Jira ticket reference in your PR description:

This PR implements user authentication as specified in QP-123.

Related tickets: QP-123, QP-124

OR

This PR implements shopping cart functionality as specified in:
https://your-company.atlassian.net/browse/QP-3
https://your-company.atlassian.net/browse/QP-7

Method 3: Pull request title

Include the Jira issue key in your PR title:

QP-123: Implement user authentication feature
[QP-456] Fix login validation error

Understanding the validation results

When Bito completes its analysis, it adds a "Functional Validation by Bito" table to your pull request comments. This table contains four columns:

Source

Displays the Jira issue key (e.g., "QP-11", "QP-123") that references the specific Jira ticket being validated.

Requirement / Code Area

Shows a brief description of the requirement or task that needs to be completed, summarizing what needs to be done according to the Jira ticket.

Status

Indicates the completion status of each requirement:

  • Met: The requirement has been fully implemented in the pull request

  • Missed: The requirement has not been addressed in the pull request

  • Partial: The requirement has been partially implemented but still needs additional work

  • Conflict: A change contradicts another requirement (e.g., two requirements cannot both be satisfied by the current code).

  • Out‑of‑scope: The change is not in the requirements (the code change does not relate to any defined requirement).

Notes

Provides detailed information about the validation status:

  • For "Met" items: Explains what has been successfully implemented

  • For "Missed" items: Describes what is missing and needs to be addressed

  • For "Partial" items: Details what has been completed and what still remains to be done

  • For "Conflict" items: Describes why there is a contradiction between requirements and what might need to be resolved.

  • For "Out‑of‑scope" items: Explains why the change is considered outside the defined requirements.

Example validation output

Here's what a typical validation table looks like:

Benefits

  • Automated quality assurance: Ensure code changes meet specified requirements

  • Improved collaboration: Bridge the gap between project management and development

  • Reduced manual reviews: Bito AI automatically catches missing implementations during code review

  • Better traceability: Maintain clear links between requirements and code changes

By leveraging Bito's Jira integration, your development team can maintain higher code quality while ensuring that all requirements are properly addressed in every pull request.

Best practices

For developers

  • Always reference Jira tickets in your pull requests using one of the supported methods

  • Review the validation table and address any "Missed" or "Partial" items before merging

For teams

  • Ensure Jira tickets contain clear, detailed requirements

  • Use consistent naming conventions for branches and pull request titles

  • Enable functional validation for all relevant agents

Troubleshooting

Validation table not appearing:

  • Check that your Jira integration is properly configured in the Manage integrations page

  • Verify that Functional validation is enabled in your agent settings

  • Ensure your pull request contains valid Jira issue key references

Incorrect validation results:

  • Review your Jira ticket descriptions for clarity and completeness

  • Verify that linked Stories/Epics contain relevant requirements

  • Check that your code changes are in the expected areas

Confluence integration

Make sure every code change follows the requirements and guidance recorded in your Confluence pages.

Note: The Confluence integration is available only on the Enterprise Plan.

Bito integrates with Confluence to enhance functional validation by enriching pull request requirements with deeper context from linked documentation.

It fetches relevant details from Confluence pages linked in Jira issues or directly in pull request – such as edge cases, design decisions, or test scenarios – and incorporates them into structured validation results.

This improves accuracy when validating code changes and ensures that every pull request is aligned with the requirements.

How it works

When a pull request is opened, Bito automatically:

  1. Detects Confluence references. Bito looks for Confluence page links in the pull request description or in any linked Jira issues.

Note: If Jira integration is enabled, Bito finds the Confluence pages associated with the linked Jira tickets.

  1. Fetches documentation. Bito retrieves the content of those Confluence pages and extracts key information (requirements, design decisions, acceptance criteria, etc.).

  2. Validates code against the docs. It compares your code changes to the enriched context and generates structured validation feedback.

  3. Reports results in the PR. Bito posts a "Functional Validation" table directly in your pull request comments, showing how each documented requirement is met, missed, or partially implemented.

Integration steps

1

Connect Bito with Confluence

  1. In your Bito dashboard, go to the Manage integrations page.

  2. Under Available integrations, find Confluence and click Connect.

  3. Click Authorize with your Confluence account. You will be redirected to Atlassian's site to grant Bito access to your Confluence workspace. This uses OAuth to securely link your Confluence content.

  4. Sign in to your Atlassian account if prompted, then click Accept. After successful authorization, you will be returned to Bito.

2

Agent-specific settings

After completing the initial setup, you can control Confluence integration on a per-agent basis:

  1. Go to the Repositories page in your Bito dashboard.

  2. Find the Agent instance you want to connect with Confluence and open its settings.

  3. Within the Agent settings screen, click on the .

  4. Locate the Functional validation option and enable it to enhance pull request validation by incorporating relevant context from linked Confluence pages.

Note: The Functional validation feature must be enabled in your Bito agent settings for the integration to work.

Linking Confluence pages to pull requests

For Bito to fetch the right documentation, your pull requests must reference the relevant Confluence pages:

  • With Jira integration: Ensure your Jira issues link to the Confluence pages (for example, by using the Jira Issue macro on the Confluence page). When a Confluence page mentions a Jira issue key, Jira automatically creates a link to that page. Bito will follow those links to gather the documentation context.

  • Without Jira integration: Include a link to the Confluence page directly in the pull request description. Bito will use that URL to retrieve the page content for validation.

Note: Bito supports both full Confluence page URLs (with page ID) and short Confluence URLs.

Supported examples:

  • https://yourcompany.atlassian.net/wiki/spaces/SPACEKEY/pages/123456789/Page-Title

  • https://yourcompany.atlassian.net/wiki/x/AbCdE

Understanding the validation results

When Bito completes its analysis, it adds a "Functional Validation by Bito" table to your pull request comments. This table contains four columns:

Source

Displays the Jira issue key (e.g., "QP-11", "QP-123") that references the specific Jira ticket being validated.

Requirement / Code Area

Shows a brief description of the requirement or task that needs to be completed, summarizing what needs to be done according to the Jira ticket and Confluence page.

Status

Indicates the completion status of each requirement:

  • Met: The requirement has been fully implemented in the pull request

  • Missed: The requirement has not been addressed in the pull request

  • Partial: The requirement has been partially implemented but still needs additional work

  • Conflict: A change contradicts another requirement (e.g., two requirements cannot both be satisfied by the current code).

  • Out‑of‑scope: The change is not in the requirements (the code change does not relate to any defined requirement).

Notes

Provides detailed information about the validation status:

  • For "Met" items: Explains what has been successfully implemented

  • For "Missed" items: Describes what is missing and needs to be addressed

  • For "Partial" items: Details what has been completed and what still remains to be done

  • For "Conflict" items: Describes why there is a contradiction between requirements and what might need to be resolved.

  • For "Out‑of‑scope" items: Explains why the change is considered outside the defined requirements.

Example validation output

Here's what a typical validation table looks like:

Benefits

  • Improved traceability: Syncing code validation with Confluence documentation creates a clear audit trail from requirements to implementation.

  • Single source of truth: By pulling from Confluence (the team’s central documentation hub), Bito ensures developers review code against the definitive requirements. Teams spend less time context-switching between tools.

  • Aligned development: Automatic validation against documented scenarios helps catch missing features or edge cases early, reducing manual review effort and improving quality.

Troubleshooting

  • No "Functional validation" table in pull request: Check that Confluence is connected under Manage integrations and that the Functional Validation setting is enabled for your Agent. Also verify that your PR or its linked Jira issues actually reference the Confluence pages.

  • Missing or incorrect context: Make sure the Confluence pages contain the up-to-date requirements or test scenarios.

  • Authorization errors: If Bito can't access Confluence, try re-authorizing the integration. Ensure your Atlassian account has permission to read the relevant Confluence pages.

Agent settings

Learn how to customize the AI Code Review Agent.

Bito's AI Code Review Agent supports different configuration methods depending on the deployment environment:

  1. Bito-hosted – The agent runs on Bito's infrastructure and is configured through the Bito web UI.

  2. Self-hosted – The agent runs on user-managed infrastructure and is configured by editing the bito-cra.properties file.

The sections below provide configuration guidance for each setup.

Bito-hosted agent configuration

In Bito-hosted AI Code Review Agent, you can configure the agent through the Bito web UI.

To customize an existing agent, open the Code Review > Repositories page and click the Settings button next to the Agent instance to be modified.

The agent settings page allows configuration of options such as:

  • Agent name – Define a unique name for easy identification.

  • Review options – Choose the review mode (Essential or Comprehensive), set feedback language, and enable features like auto-review, incremental review, summaries, and change walkthroughs.

  • Custom guidelines – Create and apply custom code review rules tailored to your team’s standards directly from the dashboard.

  • Filters – Exclude specific files, folders, or branches from review to focus on relevant code.

  • Tools – Enable additional checks, such as secret scanning and static analysis.

  • Chat – Configure how the agent responds to follow-up questions in pull request comments and manage automatic replies.

These settings tailor the agent’s behavior to match team workflows and project needs. For detailed guidance, see Create or customize an Agent instance.

Learn more

Self-hosted agent configuration

In self-hosted deployments, configuration is managed by editing the bito-cra.properties file. This file defines how the agent operates and connects to required services.

Key configuration options include:

  • Mode

    • mode = cli: Processes a single pull request using a manual URL input.

    • mode = server: Runs as a webhook service and listens for incoming events from Git platforms.

  • Authentication

    • bito_cli.bito.access_key: Required for authenticating the agent with the Bito platform.

    • git.provider, git.access_token, etc.: Required for connecting to the appropriate Git provider (e.g., GitHub, GitLab, Bitbucket).

  • General feedback settings

    • code_feedback: Enables or disables general feedback comments in reviews.

  • Analysis tools

    • static_analysis: Enables static code analysis.

    • dependency_check: Enables open-source dependency scanning.

    • dependency_check.snyk_auth_token: Required when using Snyk for vulnerability detection.

  • Review format and scope

    • review_comments: Defines output style (e.g., single post or inline comments).

    • review_scope: Limits the review focus to specific concerns such as security, performance, or style.

  • Filters

    • include_source_branches and include_target_branches: Restrict reviews to pull requests that match specified source and target branch patterns.

    • exclude_files: Skips selected files based on glob patterns.

    • exclude_draft_pr: Skips draft pull requests when enabled (default: True).

Each property is documented in detail on the bito-cra.properties file documentation page.

Learn more

Installing on Visual Studio Code

It takes less than 2 minutes

Get up and running with Bito in just a few steps! Bito seamlessly integrates with Visual Studio Code, providing powerful AI-driven code reviews directly within your editor. Click the button below to quickly install the Bito extension and start optimizing your development workflow with context-aware AI Chat, and more.

Install on VS Code

Video guide

Watch the video below to learn how to download the Bito extension on VS Code.

Step-by-step instructions

  1. In Visual Studio Code, go to the extension tab and search for Bito.

  1. Install the extension. We recommend you restart the IDE after the installation is complete.

Starting with Bito version 1.3.4, the extension is only supported on VS Code versions 1.72 and higher. Bito does not support VS Code versions below 1.72, and earlier versions of Bito do not function properly on these older versions.

  1. After a successful install, the Bito logo appears in the Visual Studio Code pane.

  1. Click the Bito logo to launch the extension and complete the setup process. You will either need to create a new workspace if you are the first in your company to install Bito or join an existing workspace created by a co-worker. See Managing workspace members

Visual Studio Code Marketplace Link https://marketplace.visualstudio.com/items?itemName=Bito.bito

Setup Bito extension in VS Code running through SSH

SSH (Secure Shell) is a network protocol that securely enables remote access, system management, and file transfer between computers over unsecured networks.

Visual Studio Code IDE allows developers to access and collaborate on projects from any connected machine remotely. The corresponding extension [Remote -SSH] must be installed on the host machine's Visual Studio Code IDE to utilize this feature.

The Bito VS Code extension seamlessly integrates with Remote development via SSH, allowing developers to utilize Bito features and capabilities on their remote machines.

Remote SSH connection and setup

Please follow the instructions given in the links below:

  • https://code.visualstudio.com/docs/remote/ssh

  • https://learn.microsoft.com/en-us/windows-server/administration/openssh/openssh_install_firstuse

Video Guide:

Setup Bito extension in VS Code running through WSL

Running VS Code on WSL allows developers to work in a Linux-like environment directly from Windows. This kind of setup is to take advantage of development experience on both operating systems.

WSL provides access to Linux command-line tools, utilities, and applications, to enhance productivity and streamline the development process.

This setup ensures a consistent development environment across different systems, making it easier to develop, test, and deploy applications that will run on Linux servers.

WSL connection and setup

Please follow the instructions given in the links below:

  • https://code.visualstudio.com/docs/remote/wsl-tutorial

  • https://learn.microsoft.com/en-us/windows/wsl/install

Video Guide:

Installing on JetBrain IDEs

It takes less than 2 minutes

Get up and running with Bito in just a few steps! Bito seamlessly integrates with popular JetBrains IDEs such as IntelliJ IDEA, PyCharm, and WebStorm, providing powerful AI-driven code reviews directly within your editor. Click the button below to quickly install the Bito extension and start optimizing your development workflow with context-aware AI Chat, and more.

Install on JetBrains

Video guide

Watch the video below to learn how to download the Bito extension on JetBrains IDEs.

Step-by-step instructions

  1. In JetBrains IDEs such as IntelliJ, go to File -> Settings to open the Settings dialog, and click Plugins -> Marketplace tab in the settings dialog. Search for Bito.

Settings in IntelliJ IDE

2. Click "Install" to install the Bito extension. We recommend you restart the IDE after the installation is complete.

Starting with Bito version 1.3.4, the extension is only supported on JetBrains versions 2021.2.4 and higher. JetBrains version 2021.1.3 is no longer supported from Bito version 1.3.4 onward.

3. Bito panel will appear on the right-hand sidebar. Click it to complete the setup process. You will either need to create a new workspace if you are the first in your company to install Bito or join an existing workspace created by a co-worker. See Managing workspace members

Bito in IntelliJ right-hand side bar

The menu to invoke the settings dialog may differ for different IDEs of the JetBrains family. The screenshots highlighted above are for the IntelliJ IDEA. You can access the Bito extension directly from the JetBrains marketplace at https://plugins.jetbrains.com/plugin/18289-bito.

Open Bito in a new tab or window

Learn how to customize Bito’s view by switching from a side panel to a new tab or a separate window.

Overview

AI that Understands Your Code

Bito has created the ability for our AI to understand your codebase, which produces dramatically better results that are personalized to you. This can help you write code, refactor code, explain code, debug, and generate test cases – all with the benefits of AI knowing your entire code base.

Bito AI automatically figures out if you're asking about something in your code. If it's confident, it grabs the relevant parts of your code from our index and feeds them to the Large Language Models (LLMs) for accurate answers. But if it's unsure, Bito will ask you to confirm before proceeding.

To specifically ask questions related to your codebase, add the keyword "my code" in English, Cantonese, Japanese, Mandarin, Spanish, or Portuguese (more languages coming soon) to your questions in the Bito chatbox.

Example: in my code explain the file apiUser.js

Additional keywords for various languages are listed on the Available Keywords page.

For now, this feature is only available for our Team Plan which costs $15 per user per month. We have plans to release it for our Free Plan soon. But it will be limited to repos of 10MB indexable size.

Recent breakthroughs in Generative AI and Large Language Models (LLMs) have helped make many AI Coding Assistant tools available, including Bito, to help you develop software faster.

The major issue with these AI assistants, though, is that they have no idea about your entire codebase. Some tools take context from currently opened files in your IDE, while others enable you to manually enter code snippets in a chat-like interface and then ask questions about them.

But with Bito’s AI that understands your entire repository, this is a whole new capability. For example, what if you could ask questions like:

  • how can I add a button to mute and unmute the song to my code in my music player? By default, set this button to unmute. Also, use the same design as existing buttons in UI.

  • In my code list all the files and code changes needed to add column desc in table raw_data in dailyReport DB.

  • In my code suggest code refactoring for api.py and mention all other files that needs to be updated accordingly

  • Please write the frontend and backend code to take a user’s credentials, and authenticate the user. Use the authentication service in my code

This will definitely improve the way you build software.

How it Works?

Bito indexes your code locally using AI

When you open a project in Visual Studio Code or JetBrains IDEs, Bito lets you enable the indexing of code files from that project’s folder. Basically, this indexing mechanism leverages our new AI Stack that enables Bito to understand your entire codebase and answer any questions regarding it.

The index is stored locally on your system to provide better performance while maintaining the security/privacy of your private code.

It takes 12 minutes per each 10MB of code to understand your repo, as the index is being built locally.

How to Ask Questions?

Once indexing is complete, you can ask any question in the Bito chatbox. Bito uses AI to determine if you are asking about something in your codebase. If Bito is confident, it grabs the relevant parts of your code from our index and feeds them to the Large Language Models (LLMs) for accurate answers. But if it's unsure, Bito will ask you to confirm before proceeding.

In case you ask a general question (not related to your codebase), then Bito will directly send your request to our LLM without first looking for the appropriate local context.

However, if you want to ask a question about your code no matter what, then you can use specific keywords such as "my code", "my repo", "my project", "my workspace", etc., in your question.

The complete list of these keywords is given on our Available Keywords page.

Once Bito sees any input containing these keywords, it will use the index to identify relevant portions of code or content in your folder and use it for processing your question, query, or task.

Security of your code

As usual, security is top of mind at Bito, especially when it comes to your code. A fundamental approach we have taken is to keep all code on your machine, and not store any code, code snippets, indexes, or embedding vectors on Bito’s servers or our API partners. All code remains on your machine, Bito does not store it. In addition, none of your code is used for AI model training.

Learn more about Bito’s Privacy and Security Practices.

Using in Visual Studio Code

AI that understands your codebase in VS Code

This feature is only available for our Team Plan. Visit the pricing page or billing documentation to learn more about our paid plans.

  1. Open your project’s folder using Visual Studio Code.

  2. Bito uses AI to create an index of your project’s codebase. It enables Bito to understand the code and provide relevant answers. There are three ways to start the indexing process:

    • When you open a new project, a popup box will appear through which Bito asks you whether you want to enable indexing of this project or not. Click on the “Enable” button to start the indexing process. You can also skip this step by clicking the “Maybe later” button. You can always index the project later if you want.

  • In the bottom-left of Bito plug-in pane, hover your mouse cursor over this icon. You can also enable indexing from here by clicking on the “Click to enable it” text.

  • Another option is to open the "Manage Repos" tab by clicking the laptop icon in the top-right corner of the Bito plugin pane.

  • From here you can start the indexing process by clicking on the “Start Indexing” button. Here, you will also see the total indexable size of the repository. Read more about What is Indexable Size?

Bito usually takes around 12 minutes per each 10MB of code to understand your repo.

Bito will still work correctly if you don’t enable indexing of your project. However, in that case, Bito will only be able to provide general answers.

If you have previously indexed some projects using Bito then they will show in the “Other projects” section.

Index building is aborted if the user logs out or if the user's subscription is canceled (downgraded from a paid plan to a free plan).

  1. Let’s start the indexing process by using any of the above-mentioned methods.

  2. The status will now be updated to “Indexing in progress...” instead of “Not Indexed”. You will also see the real-time indexing progress for the current folder, based on the number of files indexed.

In case you close the VS Code while the indexing is in progress then don’t worry. The indexing will be paused and will automatically continue from where it left off when you reopen VS Code. Currently, the indexing will resume 5-10 minutes after reopening the IDE.

The progress indicator for the other folders is updated every 5 minutes.

  1. Once the indexing is complete, the status will be updated from “Indexing in progress...” to “Indexed”, and will look like this.

  2. Now you can ask any question regarding your codebase by adding the keyword "my code" to your AI requests in the Bito chatbox. Bito is ready to answer them!

Example: in my code explain the file apiUser.js

Additional keywords for various languages are listed on the Available Keywords page. Also, here are some Example Questions.

  1. In case you ever want to delete an index then you can do that by clicking on this three dots button and then clicking the “Delete” button.

Index deletion is allowed even if the index is in progress or in a paused state.

  1. A warning popup box will open in the bottom of Bito’s plugin pane. You can either click on the “Delete” button to delete the project’s index from your system or click on the “Cancel” button to go back.

A Quick Example from a Real Project

For the sake of this tutorial, we’ve created a simple “Music Player using JavaScript”.

Here’s how it looks:

We have added a bunch of songs to this project. The song details like name, artist, image, and the music file name are stored in a file called music-list.js

Question # 1

Let’s ask Bito to list names of all song artists used in my code

As you can see, Bito gave the correct answer by utilizing its understanding of our repository.

Similarly, we can ask any coding-related question like find bugs, improve code, add new features, etc.

Question # 2

Our music player is working fine, but we don’t have any option to mute/unmute the song.

Let’s ask Bito to add this feature.

Here’s the question I used:

In my code how can i add a button to mute and unmute the song? By default, set this button to unmute. Also, use the same design as existing buttons in UI.

After adding the code suggested by Bito, here’s how the music player looks when it starts (unmuted).

And when muted:

Using in JetBrains IDEs

AI that understands your codebase in JetBrains IDEs (e.g., PyCharm)

This feature is only available for our Team Plan. Visit the pricing page or billing documentation to learn more about our paid plans.

  1. Open your project’s folder using a JetBrains IDE. For this guide, we are using PyCharm.

  2. Bito uses AI to create an index of your project’s codebase. It enables Bito to understand the code and provide relevant answers. There are three ways to start the indexing process:

    • When you open a new project, a popup box will appear through which Bito asks you whether you want to enable indexing of this project or not. Click on the “Enable” button to start the indexing process. You can also skip this step by clicking the “Maybe later” button. You can always index the project later if you want.

  • In the bottom-left of Bito plug-in pane, hover your mouse cursor over this icon. You can also enable indexing from here by clicking on the “Click to enable it” text.

  • Another option is to open the "Manage Repos" tab by clicking the laptop icon in the top-right corner of the Bito plugin pane.

  • From here you can start the indexing process by clicking on the “Start Indexing” button given in front of your current project. Here, you will also see the total indexable size of the repository. Read more about What is Indexable Size?

Bito usually takes around 12 minutes per each 10MB of code to understand your repo.

Bito will still work correctly if you don’t enable indexing of your project. However, in that case, Bito will only be able to provide general answers.

If you have previously indexed some projects using Bito then they will show in the “Other projects” section.

Index building is aborted if the user logs out or if the user's subscription is canceled (downgraded from a paid plan to a free plan).

  1. Let’s start the indexing process by using any of the above-mentioned methods.

  2. The status will now be updated to “Indexing in progress...” instead of “Not Indexed”. You will also see the real-time indexing progress for the current folder, based on the number of files indexed.

In case you close the JetBrains IDE (e.g., PyCharm) while the indexing is in progress then don’t worry. The indexing will be paused and will automatically continue from where it left off when you reopen the IDE. Currently, the indexing will resume 5-10 minutes after reopening the IDE.

The progress indicator for the other folders is updated every 5 minutes.

  1. Once the indexing is complete, the status will be updated from “Indexing in progress...” to “Indexed”, and will look like this.

  2. Now you can ask any question regarding your codebase by adding the keyword "my code" to your AI requests in the Bito chatbox. Bito is ready to answer them!

Example: in my code explain the file apiUser.js

Additional keywords for various languages are listed on the Available Keywords page. Also, here are some Example Questions.

  1. In case you ever want to delete an index then you can do that by clicking on this three dots button and then clicking the “Delete” button.

Index deletion is allowed even if the index is in progress or in a paused state.

  1. A warning popup box will open in the bottom of Bito’s plugin pane. You can either click on the “Delete” button to delete the project’s index from your system or click on the “Cancel” button to go back.

A Quick Example from a Real Project

For the sake of this tutorial, we’ve created a clone of popular game “Wordle” using Python.

Here’s how it looks:

We have stored the list of words in files that are inside the “word_files” folder. A word is selected from these files randomly at the start of the game that the player has to guess.

Question # 1

Let’s ask Bito to understand my code and briefly write about what this game is all about and how to play it

Bito correctly described the game by just looking at its source code.

Question # 2

Our game (PyWordle) is working fine, but there is no count down timer to make it a bit more challenging.

So, let’s ask Bito to add this feature.

Here’s the question I used:

suggest code for main.py "class PyWordle" to add a count down timer for this game in my code. I'm using "self" in functions and variable names, so suggest the code accordingly. The player will lose the game if the time runs out. Set the time limit to 2 minutes (format like 02:00). The timer will start when the game starts. Also reset the timer when the game restarts, such as when player closes the "you won / you lost" popup. Display this real-time count down timer on the right-side of where the player score is displayed. Use the similar design as the player score UI. Also tell me exactly where to add your code. Make sure all of this functionality is working.

Bito suggested the code which looks good. But, it was a bit incomplete and needs some improvements. So, I further asked a series of questions to Bito (one-by-one) to fix the remaining issues.

After adding the code suggested by Bito, here's how the PyWordle game looks now. As you can see the countdown timer is accurately added where we want it to be added.

FAQs

Answers to Popular Questions

How many repositories can Bito index?

Bito can index unlimited repositories for workspaces that have subscribed to our Team Plan. This feature is also coming soon for our Free Plan. But it will be limited to 10MB maximum indexable size of repository.

Why is the index creation taking a long time?

Bito takes time to thoroughly read your entire repository and understand it. This is completely normal. If your repository is a bit large, then it can take several hours to get indexed.

Bito usually takes around 12 minutes per each 10MB of code to understand your repo.

Why is the answer not complete?

There is a limit on the amount of memory/context that can be used at a time to answer the question, so the answers sometimes may not cover all the code. To solve for this, restrict the questions by providing additional criteria like:

  • In my code explain message_tokens in ai/request.js

Where can I see the status of my Index?

Open your project in VS Code or JetBrains IDEs. From the Bito plugin pane, click the laptop icon located in the top-right corner.

On this tab, you will see the status of your current project as well as the status of any other project that you indexed previously.

List of Indexing Statuses:

  • Not Indexed: A new project that you have not started indexing yet.

  • Indexing in progress: A project that is currently being indexed.

  • Indexing is paused: A project that was previously being indexed but is now paused for some reason. Generally, if you close the IDE while the project is being indexed, its status will change from "Indexing in progress" to "Indexing is paused".

  • Indexed: A project that has already been indexed, and Bito is ready to answer any questions about it.

What happens if my IDE got closed while indexing is in progress?

In case you close the Visual Studio Code or JetBrains IDE (e.g., PyCharm) while the indexing is in progress then don’t worry. The indexing will be paused and will automatically continue from where it left off when you reopen the IDE. Currently, the indexing will resume 5-10 minutes after reopening the IDE.

How to delete project index from IDE?

  1. To delete an index, navigate to the "Manage repos" tab.

  2. Next, click on the three dots button located in front of your project’s name, and then select the "Delete" option.

  3. A warning popup box will appear at the bottom of Bito's plugin pane. You can choose to click the "Delete" button to remove the project's index from your system, or click the "Cancel" button to go back.

How to fix indexing issues in Visual Studio Code and JetBrains IDEs (e.g., IntelliJ IDEA, PyCharm, etc.)?

Before getting started, please ensure that you have allowed your project sufficient time to be indexed. Bito typically requires approximately 12 minutes for every 10MB of code to understand your repository.

If for some reason you are struggling to index your project’s folder while using Visual Studio Code or JetBrains IDEs, then follow the below steps to delete the folder that contains all the indexes and try to re-index your project.

  1. Close all JetBrains IDEs and VS Code instances where Bito is installed.

  2. Go to your users directory. For example, on Windows it will be something like C:\Users\<your username>

  3. Now, find .bito folder and delete it. (Note: All configuration settings and project indexes created by Bito will be deleted. You will also be logged out from Bito IDE plugin)

If Windows is installed on a drive other than “C”, you will need to locate the .bito folder on that drive instead.

  1. Once you have deleted the .bito folder, open your project in the IDE again.

  2. After restarting the IDE, you will need to enter your email ID and a 6-digit code to log in. Once you're logged in, select the workspace that has an active paid subscription.

  3. After that, when Bito asks if you wish to index the folder, you can select "Maybe later".

  4. Then, navigate to the "Manage repos" tab in the Bito plugin pane, where you should see the folder name listed under the "Current project" along with its size, indicating that it is not indexed. Since you have deleted the .bito folder, the "Other projects" section will no longer display any entries.

  5. Finally, click on "Start Indexing" and it should begin indexing the folder.

For testing purposes, we suggest using a folder with a small size and avoid changing the folder in IDE until indexing is completed and the folder icon turns green.

By the way, you can continue using Bito while indexing is in progress in the background.

Installation guide

AI Code Reviews in CLI lets you run fast, high-quality AI-powered code reviews directly from your terminal. It works on macOS, Linux, and Windows, and installation typically takes a few minutes.

This guide walks you through installation steps.

Prerequisites

1

Bito API Key (aka Bito Access Key)

You'll need a Bito account and a Bito Access Key to authenticate AI Code Reviews in CLI. You can sign up for a Bito account at https://alpha.bito.ai, and create an access key from Settings -> Advanced Settings

  • View Guide

Installation guide

1

Download and install the CLI

macOS and Linux:

Open a terminal and run the following command:

curl -fsSL https://bitoreview.bito.ai/install.sh | bash

Windows:

Open PowerShell 7 and run the following command:

irm https://bitoreview.bito.ai/install.ps1 | iex

Note: For Windows, AI Code Reviews in CLI currently supports PowerShell 7 only. If you don't have it installed, you can download it from the Microsoft Store:

Tip: If you encounter execution policy errors, run PowerShell 7 as Administrator or allow script execution temporarily.


What gets installed:

The installer will:

  1. Download the CLI binary for your platform

  2. Install it in a user-local directory:

    • macOS/Linux: ~/.bitoreview/bin/

    • Windows: %USERPROFILE%\.bitoreview\bin\

  3. Add the binary to your PATH so the bitoreview command is available globally

  4. Install bito-wingman (the AI engine) if it is not already present

  5. Create a br alias for quick access

  6. Automatically configures the usage guidelines globally for Claude Code and Windsurf (if detected). For other supported IDEs (such as Cursor, VS Code, etc.), you need to add the guidelines manually at the project level. See the commands given below in Add guidelines section.

2

Add guidelines

The guidelines file is a set of instructions that tells your AI coding agent (Claude Code, Cursor, etc.) how to correctly run bitoreview command when you ask it to do a code review. It defines the expected workflow, such as always using --prompt-only for structured JSON output, waiting for the review to complete before responding, grouping issues by severity, and validating problems in the actual code before suggesting fixes. Without these guidelines, the AI coding agent may not know how to use Bito's AI Code Reviews in CLI.

Global configuration (auto-applied during install)

During setup, the installer automatically adds the usage guidelines globally for the following AI coding agents if they are detected on your system:

AI Coding Agent
Guidelines file location

Project-level configuration (manual, per-project)

For all other supported IDEs such as Cursor, VS Code (GitHub Copilot), Junie, and JetBrains AI Assistant, you need to add the guidelines manually inside each project directory where you want them to apply.

Navigate to your project root, then run the relevant command:

Cursor:

  • macOS / Linux:

  • Windows:

Windsurf:

  • macOS / Linux:

  • Windows:

VS Code (GitHub Copilot):

  • macOS / Linux:

  • Windows:

Junie:

  • macOS / Linux:

  • Windows:

JetBrains AI Assistant:

  • macOS / Linux:

  • Windows:

3

Reload your terminal environment

To make the CLI available immediately, restart your terminal or reload your shell configuration.

macOS / Linux:

Restart your terminal or run:

Windows:

  • Restart PowerShell 7 or

  • Run refreshenv if Chocolatey is installed

4

Verify installation

Confirm that the CLI is installed correctly:

bitoreview --version

The installer also creates a shortcut alias:

br --version

Both commands should return the same version.

5

Authentication setup

To run code reviews, the CLI requires a valid Bito API key (aka Bito Access Key).

Get Bito API key:

You can sign up for a Bito account at , and create an access key from


Configure the Bito API key:

You can configure authentication in multiple ways.

  • Method 1: Interactive setup (recommended) - You'll be prompted to paste your securely.

  • Method 2: Direct CLI setup - Useful for automation or scripted setups.

  • Method 3: Environment variable - Useful for CI/CD pipelines, shared machines, temporary or project-specific credentials


Verify your Bito API key:

To confirm your Bito API key is configured correctly, run:


Bito API key resolution priority

If multiple API keys are configured, the CLI resolves them in the following order:

  1. Command-line flag: --api-key YOUR_KEY

  2. Environment variable: BITO_API_KEY

  3. Stored configuration file: ~/.bitowingman/env

This makes it easy to override credentials per command, project, or environment.

6

Next steps

You’re now ready to run AI-powered code reviews from your terminal.

  • How to use? – Run your first code review

  • – Complete reference of CLI commands

  • – Common issues and how to resolve them

How to use?

Get up and running in minutes. This guide walks you through running your first code review from the terminal and shows common workflows you can adopt right away.

Prerequisites

Before you begin, make sure you have:

  • ✅ Installed the CLI (Installation guide)

  • ✅ Configured your Bito API key (aka Bito Access Key)

  • ✅ A Git repository with code changes (committed or uncommitted)

Run your first code review

Review all changes (default)

From your project's root directory, run:

bitoreview review

Command format:

bitoreview review [files...] [options]

Options:

Flag
Description

-t, --type <type>

Review type: • all - Review both uncommitted and committed changes • uncommitted - Review only working directory changes Example: bitoreview review --type uncommitted

-t, --type <type> --base <branch-name>

Review type: • committed - Review only committed changes against the specified base branch. --base option is mandatory with this type. Example: bitoreview review --type committed --base main

-i, --interactive

Enable interactive fix application

--plain

Plain text output (no colors)

--prompt-only

Minimal output optimized for AI agents

--focus <area>

Focus area (see Focus Areas)

--mode <mode>

essential (HIGH only) or comprehensive (all)

--severity <level>

Filter by severity: high, medium, low

--base <branch>

Base branch for comparison

--base-commit <commit>

Specific commit for comparison

--scm <type>

Override SCM: git, svn, hg, p4, plain

-c, --config <path>

Custom config file path

--api-key <key>

Pass API key directly

--cwd <path>

Set working directory

-d, --debug

Enable debug output

-v, --verbose

Enable verbose logging

--max-retries <num>

Retry attempts (default: 2)

--no-color

Disable colored output

For complete reference of CLI commands, refer to Available commands.

Review only uncommitted changes

Use this while actively coding, before committing:

bitoreview review --type uncommitted

Review only committed changes

Review commits that haven't been pushed yet:

bitoreview review --type committed --base <branch-name>

--base option is mandatory with this type. Example: bitoreview review --type committed --base main

Review specific files

Limit the review scope to specific files:

bitoreview review src/api/*.js src/utils/helper.js

Review changes against a specific branch

Compare your current branch with another branch (for example, main):

bitoreview review --base main

Review changes against a specific commit

Compare your current code with a specific commit by providing its hash:

bitoreview review --base-commit abc123

Note: replace abc123 with your actual commit hash.

Short alias for bitoreview command

You can use br as a shortcut:

br review
br review --type uncommitted

Review modes

1

Essential mode (fast, critical issues only)

  • Only shows HIGH severity issues

  • Ideal for CI/CD pipelines and pre-commit hooks

  • Quick, focused feedback

bitoreview review --mode essential
2

Comprehensive mode (full analysis)

  • Shows all severity levels (HIGH, MEDIUM, LOW)

  • Thorough analysis for pull requests and code audits

  • This is the default mode.

Focus areas

Use --focus <area> to concentrate the review on specific aspects:

Focus area
Description

security

SQL injection, authentication, data validation, XSS

performance

Bottlenecks, memory leaks, optimization opportunities

bugs

Logic errors, edge cases, runtime errors

best-practices

Code style, design patterns, maintainability

tests

Test coverage, test quality, testability

documentation

Comments, documentation, code clarity

Example:

bitoreview review --focus security --mode essential

Severity levels

Level
Description

high

Must-fix: crashes, security vulnerabilities, breaking changes

medium

Should-fix: best practice violations, moderate issues

low

Nice-to-have: formatting, minor refactoring suggestions

Filter by minimum severity:

bitoreview review --severity high

Output formats

1

Interactive mode (default)

Rich terminal UI with:

  • Colored output

  • Tables for metrics and issues

  • Real-time progress spinners

bitoreview review
2

Plain text mode

No colors, suitable for logs and CI/CD:

bitoreview review --plain

Save to file:

bitoreview review --plain > review-report.txt
3

Prompt-only mode

Minimal output optimized for AI agents:

bitoreview review --prompt-only

Interactive fix application

Enable interactive mode to review and apply suggested fixes one by one:

bitoreview review --interactive
# or
bitoreview review -i

Interactive prompts

For each fixable issue, you'll see:

Option
Action

y (yes)

Apply this fix

n (no)

Skip this fix

s (skip)

Same as 'no'

a (all)

Apply all remaining fixes without prompting

q (quit)

Exit interactive mode

Backup files

When fixes are applied, backup files are automatically created with the .bitoreview-backup extension.

Multi-SCM support

The CLI automatically detects your version control system:

SCM
Detection

Git

.git directory

SVN

.svn directory

Mercurial

.hg directory

Perforce

.p4config file

Plain files

No VCS required

Override SCM detection

bitoreview review --scm git
bitoreview review --scm svn
bitoreview review --scm hg
bitoreview review --scm p4
bitoreview review --scm plain

Review types across SCMs

Review type
Git
SVN
Mercurial
Perforce

uncommitted

Working tree

Working copy

Working dir

Pending changes

committed

Committed

Revisions

Changesets

Submitted

all

Both

Both

Both

Both

Combine review options for precision

You can mix options to match your workflow:

# Quick security check before commit
bitoreview review --type uncommitted --focus security --mode essential

# High-severity performance issues vs main branch
bitoreview review --base main --focus performance --severity high

# Full review of selected files
bitoreview review src/auth/*.js --mode comprehensive

Configuration

Customize settings to match your project's needs and workflow preferences.

Configuration methods

AI Code Reviews in CLI can be configured in two ways, with each method overriding the previous:

  1. Built-in defaults - Sensible defaults that work for most projects

  2. CLI flags - Per-command overrides (highest priority)

For complete reference of review options, refer to Available commands.

Environment variables

Variable
Description

BITO_API_KEY

Bito API key (aka Bito Access key) for authentication

Getting help

View help directly from the CLI:

# Show help
bitoreview --help
bitoreview review --help
bitoreview config --help

# Show version
bitoreview --version

Still running into issues? 👉 Visit the Troubleshooting guide to find solutions for common installation, configuration, and runtime problems, along with tips for resolving frequent errors quickly.

Functional validation tab
Functional validation tab
View Guide
View Guide
View Guide
Bitbucket documentation
  • Secret: Enter your GitHub Personal Access Token (Classic) with repo access. We do not support fine-grained tokens currently. For more information, see the Prerequisites section.

  • guide for obtaining your Bito Access Key
    Draft pull requests filter
    AI that understands your code

    Note: guidelines file auto-sync daily (and on every Claude Code session start)

    Learn more about available Agent skills.

    Note: Agent skills auto-sync daily (and on every Claude Code session start)

    alpha.bito.ai

    Claude Code

    ~/.claude/CLAUDE.md

    Windsurf

    ~/.codeium/windsurf/memories/global_rules.md

    Note: replace YOUR_API_KEY_HERE with your actual Bito API key.

    Note: replace YOUR_API_KEY_HERE with your actual Bito API key.

    https://alpha.bito.ai
    Settings -> Advanced Settings
    View Guide
    Bito API key
    Available commands
    Troubleshooting
    Install PowerShell 7
    cd /path/to/your/project
    curl -sSL "https://mcp-setup.bito.ai/BitoAIArchitectGuidelines.md" -o CLAUDE.md
    cd /path/to/your/project
    curl -sfL "https://mcp-setup.bito.ai/BitoAIArchitectGuidelines.md" -o .cursorrules
    cd /path/to/your/project
    mkdir -p .windsurf/rules
    curl -sfL "https://mcp-setup.bito.ai/BitoAIArchitectGuidelines.md" -o .windsurf/rules/bitoai-architect.md
    cd /path/to/your/project
    mkdir -p .github
    curl -sfL "https://mcp-setup.bito.ai/BitoAIArchitectGuidelines.md" -o .github/copilot-instructions.md
    cd /path/to/your/project
    mkdir -p .junie
    curl -sfL "https://mcp-setup.bito.ai/BitoAIArchitectGuidelines.md" -o .junie/guidelines.md
    cd /path/to/your/project
    mkdir -p .aiassistant/rules
    curl -sfL "https://mcp-setup.bito.ai/BitoAIArchitectGuidelines.md" -o .aiassistant/rules/bitoai-architect.md
    cd /path/to/your/project
    curl -fsSL https://bitoreview.bito.ai/bito_cli_review_guidelines.md -o .cursorrules
    cd C:\path\to\your\project
    irm 'https://bitoreview.bito.ai/bito_cli_review_guidelines.md' | Out-File -FilePath .cursorrules
    cd /path/to/your/project
    mkdir -p .windsurf/rules
    curl -fsSL https://bitoreview.bito.ai/bito_cli_review_guidelines.md -o .windsurf/rules/bitoai-review.md
    cd C:\path\to\your\project
    New-Item -ItemType Directory -Path .windsurf\rules -Force
    irm 'https://bitoreview.bito.ai/bito_cli_review_guidelines.md' | Out-File -FilePath .windsurf\rules\bitoai-review.md
    cd /path/to/your/project
    mkdir -p .github
    curl -fsSL https://bitoreview.bito.ai/bito_cli_review_guidelines.md -o .github/copilot-instructions.md
    cd C:\path\to\your\project
    New-Item -ItemType Directory -Path .github -Force
    irm 'https://bitoreview.bito.ai/bito_cli_review_guidelines.md' | Out-File -FilePath .github\copilot-instructions.md
    cd /path/to/your/project
    mkdir -p .junie
    curl -fsSL https://bitoreview.bito.ai/bito_cli_review_guidelines.md -o .junie/guidelines.md
    cd C:\path\to\your\project
    New-Item -ItemType Directory -Path .junie -Force
    irm 'https://bitoreview.bito.ai/bito_cli_review_guidelines.md' | Out-File -FilePath .junie\guidelines.md
    cd /path/to/your/project
    mkdir -p .aiassistant/rules
    curl -fsSL https://bitoreview.bito.ai/bito_cli_review_guidelines.md -o .aiassistant/rules/bitoai-review.md
    cd C:\path\to\your\project
    New-Item -ItemType Directory -Path .aiassistant\rules -Force
    irm 'https://bitoreview.bito.ai/bito_cli_review_guidelines.md' | Out-File -FilePath .aiassistant\rules\bitoai-review.md
    # Bash
    source ~/.bashrc
    
    # Zsh (macOS default)
    source ~/.zshrc
    bitoreview config set-api-key
    bitoreview config set-api-key YOUR_API_KEY_HERE
    export BITO_API_KEY=YOUR_API_KEY_HERE
    bitoreview config show-api-key
    bitoreview review --mode comprehensive

    Click Accept to continue. If the integration is successful, you will be redirected back to Bito.

    Provide connection details:
    • Domain URL: Enter the base URL for your Jira instance (e.g. https://jira.mycompany.com).

    • Personal Access Token: Enter a valid Personal Access Token with admin permissions. Read the official Jira documentation to learn how to create a Personal Access Token.

  • Click Connect to Jira. You will be redirected to your self-hosted Jira website, where you need to grant Bito access to your Jira account.

  • Click Allow to continue. If the integration is successful, you will be redirected back to Bito.

  • Jira Analysis Enabled

    Trigger on-demand analysis using @bito, /bito, or #bito in comments. Alternatively, add the labels bito, bito-analyse, or bito-analyze to the ticket.

    Jira Auto Analysis Enabled

    Automatically triggers analysis when an Epic or Story is created or updated.

    Start with Jira Analysis Enabled if you want to try it manually first, then enable auto-analysis when you're ready to run it on all new tickets.

    Manage integrations
    Manage integrations

    Log in to the Keycloak administration console and follow these steps:

    1. In the left menu, select Clients, and click on Create client.

    2. Select SAML as the Client type, name the client, and paste the Client ID you copied above in the Client ID field.

    3. Click Next.

    4. From the Service Provider Information screen of the Descope setup wizard, copy SP ACS URL.

    5. Now in Keycloak administration console, paste the SP ACS URL to the Valid redirect URIs and the Master SAML Processing URL fields.

    6. Click Save.

    7. Scroll down, enable the Sign assertions toggle and click Save.

    8. In the top menu, select Keys and disable the Client signature required toggle.

    9. In the top menu, select Client scopes, and click on the newly created client.

    10. Select Add predefined mapper.

    11. Select x500 email, x500 givenName and x500 surname, and click Add.

    12. In the left menu, select Realm settings.

    13. Copy the SAML 2.0 Identity Provider Metadata link address.

    14. Now in Descope setup wizard, open Identity Provider Information screen.

    15. Paste the SAML 2.0 Identity Provider Metadata link address you copied from Keycloak administration console in the SAML 2.0 Identity Provider Metadata field.

    16. Click Continue.

    17. In the SSO Domains screen, click Continue.

    18. In the Testing screen, click Save & Test.

    19. If the configuration is done correctly, you will see SSO test completed successfully.

    20. Click Done, and you will be redirected back to Bito.

    21. In Bito Cloud, dashboard, you will see Setup completed for Single Sign-On (SSO) integration.

    list

    GitLab

  • Bitbucket

  • So, you'll need an account on one of these Git providers to index your repositories with AI Architect.

    • View Guide

  • GitLab Personal Access Token: To use GitLab repositories with AI Architect, a token with API access is required.

    • View Guide

  • Bitbucket Access Token: To use Bitbucket repositories with AI Architect, you need API Token or HTTP Access Token depending on your Bitbucket setup.

    1. Bitbucket Cloud (API Token): You must provide both your token and email address.

    2. Bitbucket Self-Hosted (HTTP Access Token): You must provide both your token and username.

  • . AI Architect uses best-in-class AI models to index your codebase. You can optionally also provide an OpenAI API key.

    With an Anthropic API key, indexing costs are typically $1.00–$1.50 per MB of indexable code (source files only; binaries, archives, and images are skipped).

    Open PowerShell or Command Prompt as Administrator
  • Run the following command:

    1. Set up your Ubuntu username and password when prompted.

    Install Docker Desktop

    Configuration for Windows (WSL2):

    If you're using Windows with WSL2, you need to enable Docker integration with your WSL distribution:

    1. Open Docker Desktop

    2. Go to Settings > Resources > WSL Integration

    3. Enable integration for your WSL distribution (e.g., Ubuntu)

    4. Click Apply

    During the setup process given below, if you choose Kubernetes as your deployment method, you must have an existing Kubernetes cluster set up and running.

    Ensure your Kubernetes cluster have the following required tools:

    • kubectl (Kubernetes command-line tool)

    • helm (Kubernetes package manager)

    For testing and development:

    For testing purposes, you can create a local Kubernetes cluster using KIND (Kubernetes in Docker). KIND allows you to run Kubernetes clusters in Docker containers.

    Install KIND:

    • macOS:

    • Linux:

    Setting up a test cluster with KIND

    Create a KIND cluster with proper port mappings for service access:

    Verify cluster

    Select AI Architect deployment method:

    Choose how you want to deploy Bito's AI Architect. We support two deployment methods:

    1. Docker Compose: Deploys AI Architect using Docker Compose.

    2. Kubernetes: Deploys AI Architect to an existing Kubernetes cluster. Choose this option if you have an existing Kubernetes cluster running and want to leverage Kubernetes for orchestration, scaling, and management.

      • Note: The setup script will automatically deploy AI Architect services to your Kubernetes cluster in the bito-ai-architect namespace.

    You'll need to provide the following details when prompted:

    • Bito API Key (required) - Enter your Bito Access key and press Enter.

    • Git provider (required):

      You'll be prompted to choose your Git provider:

      1. GitLab

      2. GitHub

      3. Bitbucket

      Enter the number corresponding to your Git provider and press Enter.

    • Is your Git provider self-hosted or cloud-based?

      • Type y for enterprise/self-hosted instances (like https://github.company.com) and enter your custom domain URL

      • Type n for standard cloud providers (github.com, gitlab.com, bitbucket.org)

    • Git Access Token (required) - Enter personal access token for your Git provider and press Enter.

    • Configure LLM API keys (required) - Choose which AI model provider(s) to configure:

      1. Anthropic

      2. OpenAI

      Enter the number corresponding to your AI model provider, then provide your API key when prompted.

      After adding a provider, you'll be asked:

    • Generate a secure MCP access token? - You'll be asked if you want Bito to create a secure token to prevent unauthorized access to your MCP server:

      • Type y to generate a secure access token (recommended)

      • Type n to skip token generation

    • Configure SSO? - Optionally enable Single Sign-On (SSO) authentication. Choose between Bito authentication (OAuth via your Bito workspace) or Enterprise IdP (SAML/OIDC via your corporate identity provider). See for more details.

    file is structured:

    After updating the .bitoarch-config.yaml file, you have two options to proceed with adding your repositories for indexing:

    1. Auto Configure (recommended)

      • Automatically saves the repositories and starts indexing

      • If needed, edit the repo list before selecting this option

    2. Manual Setup

      • You have to manually update the configuration file and then start the indexing. Below we have provided complete details of the manual process.

    Once you select an option, your Bito MCP URL and Bito MCP Access Token will be displayed. Make sure to store them in a safe place, you'll need them later when configuring MCP server in your AI coding agent (e.g., Claude Code, Cursor, Windsurf, GitHub Copilot (VS Code), etc.).

    To manually apply the configuration, run this command:

    CPU

    6-8 cores

    RAM

    8-12 GB

    Disk

    SSD with adequate IOPS Note: Ensure sufficient disk space is available, as all configured repositories will be cloned to this disk during setup.

    CIS_PROVIDER_MEMORY_LIMIT=1g
    CIS_MANAGER_MEMORY_LIMIT=2g
    CIS_CONFIG_MEMORY_LIMIT=512m
    MYSQL_MEMORY_LIMIT=2g
    CIS_TRACKER_MEMORY_LIMIT=512m
    
    
    CIS_PROVIDER_CPU_LIMIT=1.0
    CIS_MANAGER_CPU_LIMIT=2.0
    CIS_CONFIG_CPU_LIMIT=0.5
    MYSQL_CPU_LIMIT=1.0
    CIS_TRACKER_CPU_LIMIT=0.5
    curl -fsSL https://aiarchitect.bito.ai/install.sh | bash
    bitoarch index-repos
    bitoarch index-status
    bitoarch mcp-info
    bitoarch rotate-mcp-token <new-token>

    Enterprise IdP

    Enterprise IdP

    OAuth flow federated to your corporate SAML/OIDC identity provider (e.g., Okta, Azure AD, Google Workspace).

    Max concurrent sessions

    2

    Maximum number of concurrent sessions per user

    curl -fsSL https://aiarchitect.bito.ai/uninstall.sh | bash

    Installing dependencies:

    The AI Architect setup process will automatically check for required tools on your system. If any dependencies are missing (such as jq, which is needed for JSON processing), you'll be prompted to install them. Simply type y and press Enter to proceed with the installation.

    For versions older than 1.4.0, configuration file can be found in installation directory.

    Note: Indexing process will take approximately 3-10 minutes per repository. Smaller repos take less time.

    Example output:

    Configured Repositories:
      Total: 3
    
    Repository Index Status:
    State: ⏳ running
      Progress: 0 / 1 completed
      In Progress: 1
    
    Workspace Index Progress:
    State: ⏳ running
      Progress: 1 / 2 completed
      In Progress: 1
    
    Overall Status: in-progress

    What each section represents:

    • Configured Repositories: Shows how many repositories are added in your config file for indexing.

    • Repository Index Status: Shows the indexing progress for each individual repository.

    • Workspace Index Progress: Shows the status of indexes that combine and process information across multiple repositories.

    • Overall Status: Provides a single summary indicating whether indexing is still running, completed successfully, or failed.

    Replace <new-token> with your new secure token value.

    Important: After rotating the token, you'll need to update it in all AI coding agents (Claude Code, Cursor, Windsurf, etc.) where you've configured this MCP server.

    View Guide
    Bito Enterprise Plan
    Guide for Junie (JetBrains)
    Guide for JetBrains AI Assistant
    wsl --install
    brew install kind kubectl helm
    # KIND
    curl -Lo ./kind https://kind.sigs.k8s.io/dl/v0.20.0/kind-linux-amd64
    chmod +x ./kind
    sudo mv ./kind /usr/local/bin/kind
    
    # kubectl
    curl -LO "https://dl.k8s.io/release/$(curl -L -s https://dl.k8s.io/release/stable.txt)/bin/linux/amd64/kubectl"
    chmod +x kubectl
    sudo mv kubectl /usr/local/bin/
    
    # Helm
    curl https://raw.githubusercontent.com/helm/helm/main/scripts/get-helm-3 | bash
    kind create cluster --name bito-ai-architect --config - <<EOF
    kind: Cluster
    apiVersion: kind.x-k8s.io/v1alpha4
    nodes:
    - role: control-plane
      extraPortMappings:
      - containerPort: 80
        hostPort: 80
      - containerPort: 443
        hostPort: 443
    EOF
    kubectl cluster-info --context kind-bito-ai-architect
    kubectl get nodes
    repository:
      configured_repos:
        - namespace: your-org/repo-name-1
        - namespace: your-org/repo-name-2
        - namespace: your-org/repo-name-3
    bitoarch add-repos

    Note: Before creating a KIND cluster, verify Docker has sufficient resources:

    Required: Minimum 4 CPUs and 8GB RAM

    If resources are insufficient, increase Docker Desktop resources (Preferences → Resources) and restart Docker.

    Note: Services use ClusterIP for secure, internal-only access. External access is configured via Ingress Controller on ports 80/443.

    If you have a Kubernetes cluster:

    1. Ensure it's running

    2. Verify the current Kubernetes context: kubectl config current-context

    Note: Refer to the for details on how to obtain these.

    Replace <Your-Bito-Workspace-ID> with your actual Bito workspace ID, which you can find after logging into your Bito account at alpha.bito.ai
    Replace <Your-Bito-Workspace-ID> with your actual Bito workspace ID, which you can find after logging into your Bito account at alpha.bito.ai
    {
      "mcpServers": {
        "BitoAIArchitect": {
          "command": "cmd",
          "args": [
            "/c",
            "npx",
            "-y",
            "mcp-remote",
            "<Your-Bito-MCP-URL>"
          ]
        }
      }
    }
    • Replace <Your-Bito-MCP-URL> with the Bito MCP URL you received after completing the AI Architect setup.

      • For the Bito-hosted AI Architect, use the following URL format: https://mcp.bito.ai/<Your-Bito-Workspace-ID>/mcp

        Replace <Your-Bito-Workspace-ID> with your actual Bito workspace ID, which you can find after logging into your Bito account at

    Use in IDE
    Use in CLI
    How to install Bito extension on VS Code
    Manage integrations
    alpha.bito.ai

    Installation

    Installation guide

    Press Enter to continue.

    "Do you want to configure another provider?"
    • Type y to add additional providers (recommended for better coverage and fallback options).

    • Type n when you're done adding LLM providers.

    Press Enter to continue.

    Press Enter to continue.

    Check connectivity: kubectl cluster-info

    If you don't have a Kubernetes cluster:

    1. Select Docker Compose (option 1)

    View Guide
    View Guide
    SSO Authentication
    Prerequisites section
    docker info --format 'CPUs={{.NCPU}} Mem={{.MemTotal}}'

    Quickstart

    This guide will help you set up and start using Bito's AI-powered tools. Whether you're looking to enhance feedback of your coding agents with AI Architect or automate code reviews with our AI Code Review Agent, you'll find everything you need below.

    AI Architect

    1

    Install AI Architect

    Bito-hosted

    1. and connect your Git provider.

    2. Provide your repository list to Bito

    3. Bito indexes your repositories and builds a knowledge graph

    4. Bito will provide you with MCP server URL and access token

    Self-hosted

    1. Download and install AI Architect with a single command.

    2. Configure AI Architect with your Git and LLM credentials.

    3. Configure your repositories

    4. Start indexing to build knowledge graph of your codebase

    2

    Connect Bito's AI Architect with your tools

    AI Architect integrates with the tools you already use — from AI coding agents to project management and communication platforms.

    AI Code Reviews in Git

    1

    Sign up for Bito

    Create your account at to get started.

    2

    Chat session history

    Bito automatically saves the chat session History. The session history is stored locally on your computer. You can return to any chat session and continue the AI conversation from where you left off. Bito will automatically maintain and restore the memory of the loaded chat session.

    You can "Delete" any saved chat session or share a permalink to the session with your coworkers.

    Here is the video overview of accessing and managing the session history.

    Get your MCP server URL and access token

    Quick MCP integration with AI coding agents (Claude Code, Cursor, etc.)

    Using the Bito MCP URL and Bito MCP Access Token, you can connect AI Architect to your AI coding tools through an automated installer.

    The installer will automatically configure AI Architect for all compatible AI coding tools on your system.

    Quick MCP Integration Guide →


    Integrating with Jira

    AI Architect integrates directly with your Jira workspace to bring codebase intelligence into the planning phase. When an Epic or Story is created, AI Architect automatically analyzes your codebase and past tickets to generate a structured plan — covering feasibility assessment, technical design, and story breakdown — directly inside Jira.

    Jira integration guide →


    Integrating with Linear

    Connect AI Architect with Linear to bring codebase-aware planning into your Linear workspace. AI Architect can analyze your codebase in the context of Linear issues to help teams move faster from planning to implementation.

    Linear integration guide →


    Integrating with Slack

    Bring AI Architect's codebase intelligence directly into your Slack workspace. Ask questions, get technical context, and collaborate on planning.

    Slack integration guide →


    Integrating with chat agents

    AI Architect works with popular chat-based AI tools so you can query your codebase knowledge graph conversationally.

    • Guide for Claude.ai (Web) →

    • Guide for Claude Desktop →

    • Guide for ChatGPT (Web & Desktop) →


    Integrating with Bito's AI Code Review Agent

    AI Architect can work alongside Bito's AI Code Review Agent to provide richer, codebase-aware feedback on pull requests — combining live code review with deep knowledge of your system's architecture and history.

    AI Code Review Agent integration guide →

    Connect your Git provider

    Select your preferred Git platform and follow the guided setup to install the agent:

    • GitHub

    • GitHub (Self-Managed)

    • GitLab

    • GitLab (Self-Managed)

    Once installed, the agent will be linked to your repositories and ready to assist.

    3

    Review pull requests

    The AI agent will automatically review new pull requests and leave inline comments with suggestions. You can also manually trigger a review by commenting /review on any pull request.

    See full list of available commands

    4

    Chat with the agent

    You can reply to comments posted by the Bito AI agent in a pull request to ask follow-up questions or request clarification. The agent will respond with context-aware answers to help you understand the feedback better.

    Learn more

    5

    Configure agent settings

    To customize your agent, go to Repositories and click the Settings button next to the relevant agent. From there, you can choose the review feedback mode, enable or disable automatic reviews, define custom guidelines to align with your team’s standards, and more.

    Learn more

    curl -fsSL https://aiarchitect.bito.ai/install.sh | bash
    Log in to Bito Cloud
    Complete installation guide →
    Complete installation guide →
    alpha.bito.ai

    Getting started

    Deploy the AI Code Review Agent in Bito Cloud or opt for self-hosted service.

    The AI Code Review Agent supports two deployment options:

    • Bito Cloud (fully managed)

    • Self-hosted service (run on your own infrastructure)

    Each option comes with its own set of benefits and considerations.

    This guide walks you through both options to help you determine which deployment model best fits your team’s needs.

    Bito Cloud

    provides a managed environment for running the AI Code Review Agent, offering a seamless, hassle-free experience. This option is ideal for teams looking for quick deployment and minimal operational overhead.

    Pros:

    • Simplicity: Enjoy a straightforward setup with a single-click installation process, making it easy to get started without technical hurdles.

    • Maintenance-Free: Bito Cloud takes care of all necessary updates and maintenance, ensuring your Agent always operates on the latest software version without any effort on your part.

    • Scalability: The platform is designed to easily scale, accommodating project growth effortlessly and ensuring reliable performance under varying loads.

    Cons:

    • Handling of Pull Request Diffs: For analysis purposes, diffs from pull requests are temporarily stored on our servers.


    Self-hosted service

    AI Code Review Agent offers a higher degree of control and customization, suited for organizations with specific requirements or those who prefer to manage their own infrastructure.

    Pros:

    • Full Control: Self-hosting provides complete control over the deployment environment, allowing for extensive customization and the ability to integrate with existing systems as needed.

    • Privacy and Security: Keeping the AI Code Review Agent within your own infrastructure can enhance data security and privacy, as all information remains under your direct control.

    Cons:

    • Setup Complexity: Establishing a self-hosted environment requires technical know-how and can be more complex than using a managed service, potentially leading to longer setup times.

    • Maintenance Responsibility: The responsibility of maintaining and updating the software falls entirely on your team, which includes ensuring the system is scaled appropriately to handle demand.

    Install/run as a self-hosted service

    Deploy the AI Code Review Agent on your machine.

    The self-hosted AI Code Review Agent offers a more private and customizable option for teams looking to enhance their code review processes within their own infrastructure, while maintaining complete control over their data. This approach is ideal for organizations with specific compliance, security, or customization requirements.

    Understanding CLI vs webhooks service

    When setting up the AI Code Review Agent, you have the flexibility to choose between two primary modes of operation: CLI and webhooks service.

    • CLI allows developers to manually initiate code reviews directly from terminal. This mode is ideal for quick, on-demand code reviews without the need for continuous monitoring or integration.

    • Webhooks service transforms the Agent into a persistent service that automatically triggers code reviews based on specific events, such as pull requests or comments on pull requests. This mode is suitable for teams looking to automate their code review processes.

    For more details, visit the page.

    Deployment Options

    Based on your needs and the desired integration level with your development workflow, choose one of the following options to install and run the AI Code Review Agent:

    1. : Ideal for developers seeking a simple, interactive way to conduct code reviews from the command line.

    2. : Perfect for teams looking to automate code reviews through external events, enhancing their CI/CD workflow.

    3. : A great option for GitHub users to seamlessly integrate automated code reviews into their GitHub Actions workflows.

    CLI vs webhooks service

    From one-time reviews to continuous automated reviews.

    On your machine or in a Private Cloud, you can run the AI Code Review Agent via either CLI or webhooks service. This guide will teach you about the key differences between CLI and webhooks service and when to use each mode.

    Difference Between CLI and webhooks service

    The main difference between CLI and webhooks service lies in their operational approach and purpose. In CLI, the docker container is used for a one-time code review. This mode is ideal for isolated, single-instance analyses where a quick, direct review of the code is needed.

    On the other hand, webhooks service is designed for continuous operation. When set in webhooks service mode, the AI Code Review Agent remains online and active at a specified URL. This continuous operation allows it to respond automatically whenever a pull request is opened in a repository. In this scenario, the git provider notifies the server, triggering the AI Code Review Agent to analyze the pull request and post its review as a comment directly on it.

    When to Use CLI and When to Use webhooks service

    Selecting the appropriate mode for code review with the AI Code Review Agent depends largely on the nature and frequency of your code review needs.

    CLI: Ideal for Specific, One-Time Reviews

    CLI mode is best suited for scenarios requiring immediate, one-time code reviews. It's particularly effective for:

    • Conducting quick assessments of specific pull requests.

    • Performing periodic, scheduled code analyses.

    • Reviewing code in environments with limited or no continuous integration support.

    • Integrating with batch processing scripts for ad-hoc analysis.

    CLI mode stands out for its simplicity and is perfect for standalone tasks where a single, direct execution of the code review process is all that's needed.

    Webhooks service: For Continuous, Automated Reviews

    Webhooks service, on the other hand, is the go-to choice for continuous code review processes. It excels in:

    • Continuously monitoring all pull requests in a repository.

    • Providing instant feedback in collaborative projects.

    • Seamlessly integrating with CI/CD pipelines for automated reviews.

    • Performing automated code quality checks in team environments.

    Webhooks service is indispensable in active development environments where consistent monitoring and immediate feedback are critical. It automates the code review process, integrating seamlessly into the workflow and eliminating the need for manual initiation of code reviews.

    Installing on Windsurf

    It takes less than 2 minutes

    Get up and running with Bito in just a few steps! Bito seamlessly integrates with Windsurf, providing powerful AI-driven code reviews directly within your editor. Click the button below to quickly install the Bito extension and start optimizing your development workflow with context-aware AI Chat, and more.

    Install on Windsurf

    Installation Steps

    Step 1: Open Windsurf IDE

    Launch Windsurf IDE on your computer.

    Step 2: Access the extensions marketplace

    From the top menu, click View -> Extensions to open the Extensions marketplace.

    Step 3: Search for Bito and install the extension

    1. In the Extensions search bar at the top, type "Bito"

    2. Look for the official Bito extension in the search results. The extension should be published by "Bito"

    3. Click the Install button and wait for the installation to complete (this usually takes just a few seconds).

    Step 4: Sign in to Bito

    Once installed, you'll need to authenticate:

    1. Click "Sign up or Sign-in"

    2. Bito authentication screen will display.

    3. Log in with your Bito account credentials (or create a new account)

    Step 6: Verify installation

    To confirm Bito is working correctly:

    1. You should see the Bito icon in your Windsurf IDE sidebar

    2. Click on it to open the Bito panel

    3. You should now have access to all Bito features

    4. Try asking Bito a simple question to test the connection

    Appearance settings

    The IDE customization settings are accessible through the new toolbar dropdown menu titled "Extension Settings".

    Light and Dark Themes

    In Visual Studio Code and JetBrains IDEs, you can choose between a light or dark theme for the Bito panel to match your coding environment preference. For VS Code users, Bito also offers an adaptive theme mode in which the Bito panel and font colors automatically adjust based on your selected VS Code theme, creating a seamless visual experience.

    You can set the desired theme through the Theme dropdown.

    Theme Screenshots

    “Always Light” Theme

    “Always Dark” Theme

    “Light” or “Dark” Theme - Matching IDE

    “Adaptive” Theme

    Theme adapted from “Noctis Lux”:

    Theme adapted from “Solarized Light”:

    Theme adapted from “Tomorrow Night Blue”:

    Theme adapted from “barn-cat”:


    Font Size Control

    Take control of your code readability! Within the Bito extension settings, you can now adjust the font size for a comfortable viewing experience.

    You can set the desired font size through the Font Size text field. However, if you check the Font Size (Match with IDE Font) checkbox, it will override the set font size with the Editor font size.

    Troubleshooting

    Solutions to common issues when using AI Code Reviews in CLI.

    Enable debug output

    bitoreview review --debug
    # or
    bitoreview review -d

    Enable verbose logging

    bitoreview review --verbose
    # or
    bitoreview review -v

    Common issues

    Issue: "API key not found"

    Issue: "Wingman binary not found"

    Re-run the CLI installer to reinstall wingman:

    • macOS/Linux (Terminal):

    • Windows (PowerShell):

    Issue: Slow reviews on large codebases

    • Use --mode essential for faster feedback

    • Focus on specific files: bitoreview review src/changed-file.js

    • Use --type uncommitted to limit scope

    Issue: Too many low-priority issues

    Performance expectations

    Codebase size
    Approximate time

    Privacy and security in AI Architect

    Your code stays yours — understand how Bito protects your data

    Security and privacy are fundamental to how operates. Bito doesn't store your code and we don't use your code for AI model training.

    This document explains how AI Architect handles your code and data across different deployment modes.

    Code storage: Bito-hosted vs. Self-hosted

    The way AI Architect handles your code depends on your deployment choice:

    Integrate the AI Code Review Agent into the CI/CD pipeline

    Automate code reviews in your Continuous Integration/Continuous Deployment (CI/CD) pipeline—compatible with all CI/CD tools, including Jenkins, Argo CD, GitLab CI/CD, and more.

    lets you integrate the into your CI/CD pipeline for automated code reviews. This document provides a step-by-step guide to help you configure and run the script successfully.

    Installation and Configuration Steps

    FAQs

    Answers to popular questions about the AI Code Review Agent.

    How do I whitelist Bito's gateway IP address for my on-premise Git platform?

    To ensure the operates smoothly with your GitHub (Self-Managed), GitLab (Self-Managed), or Bitbucket (Self-Managed), please whitelist all of Bito's gateway IP addresses in your firewall to allow incoming traffic from Bito. This will enable Bito to access your self-hosted repository.

    List of IP addresses to whitelist:

    Example Questions

    What Types of Questions Can be Asked?

    You can try asking any question you may have in mind regarding your codebase. In most cases, Bito will give you an accurate answer. Bito uses AI to determine if you are asking about something in your codebase.

    However, if you want to ask a question about your code no matter what, then you can use our pre-defined keywords such as "my code", "my repo", "my project", "my workspace", etc., in your question.

    The complete list of these keywords is given on our page.

  • Using in educational settings to demonstrate code review practices.

  • Experimenting with different code review configurations.

  • Reviewing code on local setups or for personal projects.

  • Performing a final check before pushing code to a repository.

  • Conducting real-time security scans on new pull requests.

  • Ensuring adherence to coding standards in every pull request.

  • Streamlining the code review process in large-scale projects.

  • Maintaining consistency in code review across multiple projects.

  • Enhancing workflows in remote or distributed development teams.

  • Offering prompt feedback in agile development settings.

  • Note: Bito’s IDE plugin supports Windsurf version 1.11.0 and later. Please ensure your Windsurf installation is updated to this version or newer before installing the plugin.

    You can also use keyboard shortcut to open the Extensions view:

    • Windows/Linux: Press Ctrl+Shift+X

    • Mac: Press Cmd+Shift+X

    Bitbucket
    Bitbucket (Self-Managed)
    Bito Cloud
    Install/run using Bito Cloud
    Self-hosted
    Install/run as a self-hosted service

    Before proceeding, ensure you've completed all necessary prerequisites for self-hosted AI Code Review Agent.

    CLI vs webhooks service
    Install/run via CLI
    Install/run via webhooks service
    Install/run via GitHub Actions
    Bito-hosted AI Architect

    Your code is not stored on Bito's servers.

    When you use Bito-hosted AI Architect, Bito stores only summaries and indexes of your code — not the code itself. These indexes help AI Architect understand your repository structure, key functionalities, service calls, design patterns, variable naming conventions, and architectural relationships across microservices.

    How it works:

    • AI Architect analyzes your code to build a knowledge graph

    • Only metadata and summaries are stored on Bito's servers (e.g., "this repo contains authentication services," "this module calls these other services")

    • The actual code is never persisted in Bito's cloud

    When code access is needed:

    • If you ask a question that requires viewing actual code, AI Architect authenticates with your Git provider using your credentials

    • It fetches the specific file on-demand

    • Extracts the necessary information

    • Passes it back to you through the MCP server

    • The code is not retained after the request

    Code caching

    For performance optimization, Bito temporarily caches individual code files for up to 10 minutes during analysis. You have full control over this behavior — you can configure the cache duration or disable caching entirely through your settings.

    Self-hosted AI Architect

    Your code remains entirely in your data center.

    When you deploy AI Architect on-premises in your own infrastructure, all code and indexes are stored locally. Bito receives no code or code-related information. We only receive anonymous metadata about usage to confirm the product is working properly — no details about what your code does or contains.

    Performance considerations

    Bito-hosted AI Architect adds a few seconds to requests that require actual code access because the code must be fetched on-demand from your Git provider. This slight latency is the trade-off for keeping your code off Bito's servers. In practice, this difference is not material to user experience.

    Code security and encryption

    • All requests to and from AI Architect are transmitted over HTTPS and fully encrypted

    • Your Git credentials are used only to authenticate and fetch code when needed

    • Code accessed during analysis is handled securely and not logged or stored beyond the temporary cache window

    No AI model training

    Your code is never used for AI model training. Bito doesn't train on, learn from, or retain any of your code snippets or queries for model improvement purposes.

    Privacy and third parties

    Bito uses leading AI providers (such as Anthropic, OpenAI, etc.) via their APIs to power AI Architect features. None of your code or AI requests are stored by these partners. All AI providers we work with maintain commitments to not use API data for model training or retain user data beyond the immediate request processing.

    Metadata and usage analytics

    To ensure AI Architect is working correctly and to improve the product, Bito collects:

    • Anonymous usage metrics

    • Feature usage statistics

    • Error logs (without code content)

    This information helps us understand how AI Architect is being used and identify areas for improvement.

    Compliance and certifications

    Bito maintains SOC 2 Type II compliance and follows industry-leading security practices. For detailed information about our security posture and certifications, visit our Trust Center.

    For our full privacy practices, see our Privacy Policy.

    Questions?

    If you have questions about how AI Architect handles your code or data, contact the Bito team at [email protected]. We're committed to transparency about security and privacy practices.

    Bito's AI Architect

    18.188.201.104

  • 3.23.173.30

  • 18.216.64.170

  • The agent response can come from any of these IPs.

    How can I prevent the AI Code Review Agent from stopping due to token expiry?

    You should set a longer expiration period for your GitHub Personal Access Token (Classic), GitLab Personal Access Token, or Bitbucket Personal Access Token. We recommend setting the expiration to at least one year. This prevents the token from expiring early and avoids disruptions in the AI Code Review Agent's functionality.

    Additionally, we highly recommend updating the token before expiry to maintain seamless integration and code review processes.

    For more details on how to create tokens, follow these guides:

    • GitHub Personal Access Token (Classic): View Guide

    • GitLab Personal Access Token: View Guide

    • Bitbucket Personal Access Token: View Guide

    Why does Bito need access to my Git account?

    Bito requires certain permissions to analyze pull requests and provide AI-powered code reviews. It never stores your code and only accesses the necessary data to deliver review insights.

    What permissions does Bito need?

    Bito requires:

    1. Read access to code and metadata: To analyze PRs and suggest improvements

    2. Read and write access to issues and pull requests: To post AI-generated review comments

    3. Read access to organization members: To provide better review context

    I don’t have admin permissions. Can I still use Bito?

    If you don’t have admin access, you’ll need your administrator to install Bito on your organization’s Git account. Once installed, you can use it for PR reviews on allowed repositories. GitHub also sends a notification to the organization owner to request the organization owner to install the app.

    Does Bito store my code?

    No, Bito does not store or train models on your code. It only analyzes pull request data in real-time and provides suggestions directly within the PR.

    Can I choose which repositories Bito has access to?

    Yes, after installation, you can select specific repositories instead of granting access to all. You can also manage repository access later through our web dashboard.

    What happens after I install the Bito App?

    Once installed, you’ll be redirected to Bito, where you can:

    1. Select repositories for AI-powered reviews

    2. Customize review settings to fit your workflow

    3. Open a pull request to start receiving AI-driven suggestions

    Where can I get help if I have issues installing Bito?

    Contact [email protected] for any assistance.

    AI Code Review Agent
    Here are some popular use cases (with example questions):

    Code Explanation

    • What a particular code file does

      • In my code what does code in sendgrid/sendemail.sh do?

    • What a particular function in my code does

      • In my repo explain what function message_tokens do

    Code Translation

    • In my project rewrite the code of signup.php file in nodejs

    Code Refactoring

    • In my workspace suggest code refactoring for api.py and mention all other files that need to be updated accordingly

    Fix Bugs

    • In my code find runtime error possibilities in script.js

    • Find logical errors in scraper.py in my code

    Detect Code Smells

    • In my code detect code smells in /app/cart.php and give solution

    Generate Documentation

    • Generate documentation for search.ts in my workspace in markdown format

    Generate Unit tests

    • In my code write unit tests for index.php

    • In my code generate test code for code coverage of cache.c

    Summarize Recent Code Changes

    • summarize recent code changes in my code

    Code Search using natural language

    • Any function to compute tokens in my project?

    • Any code or script to send emails in my workspace?

    • In my repo list all the line numbers where $alexa array is used in index.php.

    Give details of making modifications

    • In my code list all the files and code changes needed to add column desc in table raw_data in dailyReport DB.

    Available Keywords
    Logo
    Theme adapted from “Noctis Lux”
    Theme adapted from “Solarized Light”
    Theme adapted from “Tomorrow Night Blue”
    Theme adapted from “barn-cat”

    Small (<5 files)

    30-60 seconds

    Medium (5-20 files)

    1-3 minutes

    Large (20+ files)

    3-8 minutes

    # Set your API key
    bitoreview config set-api-key YOUR_KEY
    
    # Verify it's set
    bitoreview config show-api-key
    curl -fsSL https://bitoreview.bito.ai/install.sh | bash
    irm https://bitoreview.bito.ai/install.ps1 | iex
    # Filter to high severity only
    bitoreview review --severity high
    
    # Or use essential mode
    bitoreview review --mode essential
    based on your Git provider, and follow the step-by-step instructions to install the AI Code Review Agent using Bito Cloud. Be sure to review the prerequisites and the installation/configuration steps provided in the documentation.
  • Download the bito-action-script folder from GitHub, which includes a shell script (bito-actions.sh) and a configuration file (bito_action.properties).

  • You can integrate the AI Code Review Agent into your CI/CD pipeline in two ways, depending on your preference:

    • Option 1: Using the bito_action.properties File

      • Configure the following properties in the bito_action.properties file located in the downloaded bito-action-script folder.

    Property Name
    Description

    agent_instance_url

    The URL of the Agent instance provided after configuring the AI Code Review Agent with Bito Cloud.

    agent_instance_secret

    The secret key for the Agent instance obtained after configuring the AI Code Review Agent with Bito Cloud.

    pr_url

    URL of your pull request on GitLab, GitHub, or BitBucket.

    • Run the following command:

      • ./bito_actions.sh bito_action.properties

      • Note: When using the properties file, make sure to provide all the three parameters in .properties file

    • Option 2: Using Runtime Values

      • Provide all necessary values directly on the command line:

        • ./bito_actions.sh agent_instance_url=<agent_instance_url> agent_instance_secret=<secret> pr_url=<pr_url>

        • Replace <agent_instance_url>, <secret>, and <pr_url> with your specific values.

      • Note: You can also override the values given in the .properties file or provide values that are not included in the file. For example, you can configure agent_instance_url and agent_instance_secret in the bito_action.properties file, and only pass pr_url on the command line during runtime.

        • ./bito_actions.sh bito_action.properties pr_url=<pr_url>

    1. Incorporate the AI Code Review Agent into your CI/CD pipeline by adding the appropriate commands to your build or deployment scripts. This integration will automatically trigger code reviews as part of the pipeline, enhancing your development workflow by enforcing code quality checks with every change.

    Bito Cloud
    AI Code Review Agent
    Select the appropriate Git provider guide from this link

    Install AI Architect (Bito-hosted)

    Deploy AI Architect on Bito's managed infrastructure for instant setup and effortless maintenance.

    This guide walks you through setting up Bito-hosted . You'll connect your Git account (GitHub, GitLab, or Bitbucket) to index your repositories, then use the MCP server credentials to integrate AI Architect with your coding agents. This enables your agents to access codebase-aware context and provide more accurate, relevant answers.

    Bito-hosted vs. Self-hosted AI Architect

    Bito offers two deployment options for AI Architect:

    AI Code Review Agent (with AI Architect vs without AI Architect)

    From single-repo reviews to system-wide insights

    The becomes significantly more powerful when paired with .

    Below is a clear explanation of how the agent behaves in each setup and why AI Architect unlocks much deeper, system-level insights.

    AI Code Review Agent without AI Architect

    The standard AI Code Review Agent analyzes code at the repository level.

    Overview

    On-demand, context-aware AI code reviews for GitHub, GitLab, and Bitbucket.

    Bito’s is the first agent built with Bito’s AI Agent framework and engine. It is an automated AI assistant (powered by best-in-class AI models) that will review your team’s code; it spots bugs, issues, code smells, and security vulnerabilities in Pull/Merge Requests (PR/MR) and provides high-quality suggestions to fix them.

    It seamlessly integrates with Git providers such as GitHub, GitLab, and Bitbucket, automatically posting recommendations directly as comments within the corresponding Pull Request. It includes real-time recommendations from Static Code Analysis and OSS vulnerability tools such as fbinfer, Dependency-Check, etc. and can include high severity suggestions from other 3rd party tools you use such as Snyk.

    The AI Code Review Agent acts as a set of specialized engineers each analyzing different aspects of your PR. They analyze aspects such as Performance, Code Structure, Security, Optimization, and Scalability. By combining and filtering the results, the Agent can provide you with much more detailed and insightful code reviews, bringing you a better quality code review and helping you save time.

    The AI Code Review Agent helps engineering teams merge code faster while also keeping the code clean and up to standard, making sure it runs smoothly and follows best practices.

    Request changes comments

    Block merges until code issues are fixed.

    Bito’s Request changes comments feature helps enforce code quality by blocking merges until all AI-generated review comments are resolved—fully supported in GitHub, GitLab, and Bitbucket.

    When enabled, Bito identifies actionable issues in pull requests and posts them as formal “Request changes” review comments. If your repository uses branch protection rules that require all review conversations to be resolved before merging, Bito’s flagged comments will automatically block the pull request until addressed.

    This ensures developers don’t accidentally merge incomplete or unreviewed code.

    Overview

    Get instant feedback on your code changes directly within your code editor.

    Unlock the power of AI-driven code reviews in VS Code, Cursor, Windsurf, and all JetBrains IDEs (including IntelliJ IDEA, PyCharm, WebStorm, and more) with Bito's . This tool provides real-time, human-like feedback on your code changes, catching common issues before you submit a pull request.

    The AI Code Review Agent helps you improve your code as you develop, so you don't have to wait for days to get feedback. This accelerates development cycles, boosts team productivity, and ensures higher code quality.

    You can start using the Agent immediately—no setup is required!

    Vim/Neovim Plugin

    Vim/ Neovim Plugin for Bito Using Bito CLI

    We are excited to announce that one of our users has developed a dedicated Vim and Neovim plugin for Bito, integrating it seamlessly with your favorite code editor. This plugin enhances your coding experience by leveraging the power of Bito's AI capabilities directly within Vim and Neovim.

    Installation

    To get started with "vim-bitoai," follow these steps:

    Step 1: Install Bito CLI

    Make sure you have Bito CLI installed on your system. If you haven't installed it, you can find detailed instructions in the Bito CLI repository at.

    Step 2: Install the Plugin

  • Replace <pr_url> with your specific values.

  • How it works

    1. Enable comment resolution rules in your Git provider

    GitHub:

    • Go to your repository → Settings → Branches

    • Create or edit a branch protection rule (e.g., for main)

    • Enable:

      • ✅ Require a pull request before merging

      • ✅ Require conversation resolution before merging

    GitLab:

    • Go to your project → Settings → Merge requests

    • Under Merge checks, enable:

      • ✅ All threads must be resolved

    • Click Save changes button.

    Bitbucket:

    • Go to your repository → Repository settings → Branch restrictions

    • Click Add a branch restriction button.

    • Under Select branches, define the target branches where this restriction should apply. Pull requests merging into these branches will be blocked until all "Request changes" comments are resolved. You can choose one of two options:

      • By branch name or pattern: Enter a specific branch name (e.g., main) or use a wildcard pattern to cover multiple branches. For example, using an asterisk * applies the restriction across all branches, while release/* applies it to every release branch.

      • By branch type: Select a branch type (e.g., development, release) from the dropdown menu.

    • Switch to Merge settings tab.

    • Under Merge checks, enable:

      • ✅ No changes are requested

    • Under Merge conditions, enable:

      • ✅ Prevent a merge with unresolved merge checks

      • Note: This setting is only available if your organization uses Bitbucket Cloud Premium. It will block anyone from merging the PR if there are unresolved "request change" comments. On Standard Bitbucket Cloud, this option is unavailable; users will see a warning if they attempt to merge with unresolved "request change" comments, but the merge will still be allowed.

    • Click Save button.

    2. Turn on “Request changes comments” in Bito

    • Go to Repositories in the Bito dashboard.

    • Click on Settings for your desired AI Code Review Agent instance.

    • Enable the toggle: “Request changes comments”

    • Save changes

    When this is on, Bito will flag actionable AI feedback as formal review comments requiring resolution. Informational or minor suggestions will remain as regular comments.

    3. What happens in a pull request

    • Bito runs an AI code review on your pull request or merge request.

    • Actionable issues are posted as change requests.

    • Your Git provider treats these comments according to your configured merge rules.

    • If comment resolution is required, the merge is blocked until the flagged issues are resolved.

    Example workflow

    1. Developer opens a pull request or merge request.

    2. Bito reviews the code and posts a “request change” comment on a problematic line.

    3. The Git provider blocks the merge due to unresolved comments or threads.

    4. Developer fixes the issue and marks the thread as resolved.

    5. Merge becomes possible once all conditions are met.

    Why use this feature?

    • Enforces follow-up on critical AI-detected issues.

    • Works natively with GitHub, GitLab, and Bitbucket workflows.

    • Ensures only reviewed and clean code gets merged.

    • Helps maintain consistent code quality at scale.

    Note: Request change comments usually have to be resolved by the person who posted them. Since here these comments are posted by Bito, the user must comment /resolve in the pull request to resolve them.

    Open your terminal and navigate to your Vim or Neovim plugin directory. Then, clone the "vim-bitoai" repository using the following command:

    Step 3: Configure the Plugin

    Open your Vim or Neovim configuration file and add the following lines:

    Save the configuration file and restart your editor or run :source ~/.vimrc (for Vim) or :source ~/.config/nvim/init.vim (for Neovim) to load the changes.

    Step 4: Verify the Installation

    Open Vim or Neovim, and you should now have the "vim-bitoai" plugin installed and ready to use.

    Usage

    You can use its powerful features once you have installed the "vim-bitoai" plugin. Here are some of the available commands:

    • BitoAiGenerate: Generates code based on a given prompt.

    • BitoAiGenerateUnit: Generates unit test code for the selected code block.

    • BitoAiGenerateComment: Generates comments for methods, explaining parameters and output.

    • BitoAiCheck: Performs a check for potential issues in the code and suggests improvements.

    • BitoAiCheckSecurity: Checks the code for security issues and provides recommendations.

    • BitoAiCheckStyle: Checks the code for style issues and suggests style improvements.

    • BitoAiCheckPerformance: Analyzes the code for performance issues and suggests optimizations.

    • BitoAiReadable: Organizes the code to enhance readability and maintainability.

    • BitoAiExplain: Generates an explanation for the selected code.

    To execute a command, follow these steps:

    1. Open a file in Vim or Neovim that you want to work on.

    2. Select the code block you want to act on. You can use visual mode or manually specify the range using line numbers.

    3. Execute the desired command by running the corresponding command in command mode. For example, to generate code based on a prompt, use the : BitoAiGenerate command. Note: Some commands may prompt you for additional information or options.

    4. The plugin will communicate with the Bito CLI and execute the command, providing the output directly within your editor.

    By leveraging the "vim-bitoai" plugin, you can directly harness the power of Bito's AI capabilities within your favorite Vim or Neovim editor. This integration lets you streamline your software development process, saving time and effort in repetitive tasks and promoting efficient coding practices.

    Customization

    The "vim-bitoai" plugin also offers customization options tailored to your specific needs. Here are a few variables you can configure in your Vim or Neovim configuration file:

    • g:bito_buffer_name_prefix: Sets the prefix for the buffer name in the Bito history. By default, it is set to 'bito_history_'.

    • g:vim_bito_path: Specifies the path to the Bito CLI executable. If the Bito CLI is not in your system's command path, you can provide the full path to the executable.

    • g:vim_bito_prompt_{command}: Allows you to customize the prompt for a specific command. Replace {command} with the desired command.

    To define a custom prompt, add the following line to your Vim or Neovim configuration file and replace your prompt with the desired prompt text:

    Remember to restart your editor or run the appropriate command to load the changes.

    We encourage you to explore the "vim-bitoai" plugin and experience the benefits of seamless integration between Bito and your Vim or Neovim editor. Feel free to contribute to the repository or provide feedback to help us further improve this plugin and enhance your coding experience.

    https://github.com/gitbito/CLI
    git clone https://github.com/zhenyangze/vim-bitoai.git
    
    " Vim Plug
    Plug 'zhenyangze/vim-bitoai'
    
    " NeoBundle
    NewBundle 'zhenyangze/vim-bitoai'
    
    " Vundle
    Plugin 'zhenyangze/vim-bitoai'
    if !exists("g:vim_bito_prompt_{command}")
        let g:vim_bito_prompt_{command}="your prompt"
    endif

    Bito-hosted (Fully managed by Bito — no infrastructure setup required)

  • Self-hosted (Run AI Architect on your own infrastructure for maximum control)

  • Bito-hosted
    Self-hosted

    Infrastructure

    Bito manages indexes and infrastructure on our secure servers

    You host AI Architect in your own environment

    Code storage

    We don't store your code after indexing — only repository metadata is retained. Code is fetched at runtime as needed.

    Full control over your data and indexes

    For information on self-hosted deployment, visit the self-hosted installation guide.

    Installation steps

    1

    Connect your Git provider

    Log in to Bito Cloud and select a workspace to get started.

    Use the Bito UI to connect your Git provider account (GitHub, GitLab, or Bitbucket). This enables Bito to clone your repositories and fetch code at runtime when needed.

    2

    Submit repositories for indexing

    Contact the Bito team at with a list of repositories you want to index. Include the repository names and paths.

    3

    Bito creates your indexes

    Bito will:

    • Clone your repositories

    4

    Receive your MCP connection details

    Once your indexes are ready, Bito will provide you with:

    • Bito MCP URL

    Code retrieval at runtime

    Bito-hosted AI Architect includes smart code retrieval (getCode MCP tool) that works behind the scenes. When you ask questions about specific code — like "show me the authenticate method in the Auth class" — AI Architect automatically fetches the relevant code at runtime using your Git credentials.

    This means you get detailed, accurate code references without storing any code on Bito's servers. Code is fetched on-demand and never persisted.

    Need help?

    If you have questions about the setup process or need to modify your indexed repositories, reach out to the Bito team at [email protected]. We're here to help you get the most out of AI Architect.

    AI Architect
    It creates a within-repo knowledge graph by building:
    • Abstract Syntax Trees (ASTs)

    • Symbol indexes

    • Local dependency relationships

    This allows it to perform strong, context-aware code reviews within a single repository, including:

    • Identifying issues in the diff

    • Understanding dependencies inside the repo

    • Checking for consistency and correctness within that project

    • Suggesting improvements based on local patterns

    However, the agent’s visibility stops at the repository boundary. It cannot detect effects on other services or codebases.

    AI Code Review Agent powered by AI Architect

    When AI Architect is enabled, the AI Code Review Agent gains a complete view of your entire engineering ecosystem.

    AI Architect builds a cross-repository knowledge graph that maps:

    • All services

    • Shared libraries

    • Modules and components

    • Inter-service dependencies

    • Upstream and downstream call chains

    With this system-level understanding, the agent can perform much deeper analysis.

    Key capabilities unlocked by AI Architect

    1. Cross-repository awareness

    The agent understands how code in one repo interacts with code in others — crucial for microservices and distributed systems.

    2. Cross-repo impact analysis

    During a pull request review, the agent can identify:

    • What breaks downstream if you change an interface

    • Which services call the function you updated

    • Which teams or repos depend on your changes

    • Whether the update introduces architecture-wide risks

    3. Architecture-level checks

    The agent evaluates your changes not just for correctness, but for their alignment with the overall system design.

    4. Early problem detection across the entire codebase

    Ripple effects, breaking changes, or dependency violations that traditionally appear only in staging or after deployment can now be flagged directly during review.


    Side-by-side comparison

    Capability
    Without AI Architect
    With AI Architect

    Scope

    Single repository

    Entire system (multi-repo)

    Knowledge graph

    Repo-only

    Cross-repository, system-wide

    AI Code Review Agent
    AI Architect
    It ensures a secure and confidential experience without compromising on reliability. Bito neither reads nor stores your code, and none of your code is used for AI model training. Learn more about our Privacy & Security practices.

    By accessing Bito's AI that Understands Your Code feature, the AI Code Review Agent can analyze relevant context from your entire repository, providing better context-aware analysis and suggestions. This tailored approach ensures a more personalized and contextually relevant code review experience.

    To comprehend your code and its dependencies, we use Symbol Indexing, Abstract Syntax Trees (AST), and Embeddings. Each step feeds into the next, starting from locating specific code snippets with Symbol Indexing, getting their structural context with AST parsing, and then leveraging embedding vectors for broader semantic insights. This approach ensures a detailed understanding of the code's functionality and its dependencies. For more information, see How does Bito’s “AI that understands your code” work?

    The AI Code Review Agent is built using Bito Dev Agents, an open framework and engine to build custom AI Agents for software developers that understands code, can connect to your organization’s data and tools, and can be discovered and shared via a global registry.

    Start free trialGet a demo

    Why use an AI Agent for code review?

    In many organizations, senior developers spend approximately half of their time reviewing code changes in PRs to find potential issues. The AI Code Review Agent can help save this valuable time.

    AI Code Review Agent speeds up PR merges by 89%, reduces regressions by 34%, and delivers 87% human-grade feedback.

    However, it's important to remember that the AI Code Review Agent is designed to assist, not replace, senior software engineers. It takes care of many of the more mundane issues involved in code review, so senior engineers can focus on the business logic and how new development is aligned with your organization’s business goals.

    Pricing details

    The Free Plan offers AI-generated pull request summaries to provide a quick overview of changes. For advanced features like line-level code suggestions, consider upgrading to the Team Plan. For detailed pricing information, visit our Pricing page.

    Get a 14-day FREE trial of Bito's AI Code Review Agent.

    Learn more

    Get a 14-day FREE trial of Bito's AI Code Review Agent.

    We also support GitHub (Self-Managed) and GitLab (Self-Managed).

    AI Code Review Agent
    Prerequisites
    1. Install the latest Bito IDE extension for VS Code, JetBrains, Cursor, or Windsurf.

    2. A workspace subscribed to the Bito Team Plan. Read documentation on how to upgrade.

    1. The root of your project must use a supported Version Control System such as Git, Perforce, or SVN, and be opened in the supported IDE.

    How to use the Agent in IDE?

    1. Open the Bito IDE extension.

    2. Login to your workspace subscribed to the Bito Team Plan.

    3. Type @codereview in the chat box to open a menu and select from the following actions:

      • localchanges: Review only the changes you’ve made in your local workspace that haven’t been staged yet. This is useful for quickly checking your current edits before moving them forward.

      • stagedchanges: Review the changes you’ve staged in Git but haven’t committed yet. This helps ensure only clean, well-reviewed updates get committed.

      • uncommittedchanges: Review all modifications that exist locally but aren’t yet committed—both staged and unstaged. Ideal for a full review of your current working directory.

      • path: Review a specific file or multiple files by providing their paths. This allows you to target critical files without running a review across your entire project.

      • commitId: Review one commit or a range of commits by referencing their commit IDs. Perfect for validating code history, checking incremental updates, or reviewing PR-related commits.

    1. After that, choose between Essential and Comprehensive review modes:

      • In Essential mode, only critical issues are posted.

      • In Comprehensive mode, Bito also includes minor suggestion and potential nitpicks.

    2. Submit to get the code review feedback.

    Start code review from context menu

    You can also invoke the AI Code Review Agent directly from the context menu by right-clicking in the code editor and selecting commands under the "Bito Code Review Agent" menu.

    This provides faster, on-the-go access to code reviews right where you work.

    Reviewing the feedback

    Once the AI code review is complete, you'll receive a notification in the IDE. You can view the feedback in the Bito Panel, which includes a list of issues and their fixes.

    Each item will contain the following details:

    • Issue description: Description of the identified issue.

    • Fix description: Recommended approach or steps to resolve the issue.

    • File path: The file containing the issue.

    • Code suggestion: The AI-generated code fix for the issue.

    Code review session history

    To view past code reviews, click the Session history icon in the top-right corner of the Bito Panel. This opens the Session history tab, which lists all your previous code review sessions.

    From the list, click any session to open it and view the complete code review details along with the AI suggestions.

    AI Code Review Agent
    Install on VS Code
    Install on JetBrains
    Install on Cursor
    Install on Windsurf

    Supported review options based on your Version Control System (VCS):

    • If your project uses Git, all five review options are available.

    • If your project uses a non-Git VCS (e.g., Perforce, SVN), only two review options are available:

    Each code suggestion includes an Apply button. Click it to open the diff view, where you can review the changes and choose to accept or undo them.

    Overview

    The context layer for your entire software development lifecycle, from planning in Jira to generating code in your IDE to codebase-aware reviews in Git.

    Bito's AI Architect builds a knowledge graph of your codebase (from repos to modules to APIs) and operational history (context from issue trackers such as Jira). This gives your team a shared, always-current understanding of the system, and makes that understanding available wherever engineering decisions are made:

    • In issue trackers (Jira) for feasibility analysis, technical design, and cross-repo impact assessment.

    • In coding agents (Claude Code, Cursor, Windsurf, GitHub Copilot, and more) for grounded code generation, accelerated onboarding, and production issue triage.

    • (GitHub, GitLab, Bitbucket) for codebase-aware AI code reviews

    This fundamentally changes the game for enterprises with many microservices or large, complex codebases.

    Key capabilities of the AI Architect include:

    • Technical design and planning — AI Architect analyzes your Jira tickets and posts a complete implementation plan directly in comments section: feasibility assessment, story breakdown, effort estimates, risk flags, and dependency mapping.

    • Grounded 1-shot production-ready code — The AI Architect learns all your services, endpoints, code usage examples, and architectural patterns. The agent automatically feeds those to your coding agent (Claude Code, Cursor, Codex, any MCP client) to provide it the necessary information to quickly and efficiently create production ready code.

    The AI Architect builds the knowledge graph by analyzing all your repositories (whether you have 50 or 5,000 repos) to learn about your codebase architecture, microservices, modules, API endpoints, design patterns, and more.

    How you can use AI Architect

    AI Architect is designed to be flexible and can power multiple use cases across different AI coding tools and workflows.

    1

    Installation

    • (Fully managed by Bito — no infrastructure setup required)

    Why use the AI Architect?

    Most AI coding tools struggle with accuracy in real-world codebases because they

    1. Don’t fully understand the breadth and depth of your codebase. They read some of the code in your existing repository, but they don’t have a complete graph of your internal APIs, endpoints, libraries, etc. On top of that, if you are accessing a monorepo or many services not available on your machine locally, they have no context or get confused trying to access them. Bito’s AI Architect has built a knowledge graph to provide this information in a cheap and efficient way to your coding agent so it can accomplish the task with grounded and complete information.

    2. They don’t fully understand how all of your services and modules interact with each other when you are trying to understand your overall system versus just one component. The AI Architect’s graph contains a mapping of all the dependencies, allowing to provide sophisticated analysis – how you would expect an Architect too.

    How AI Architect differs from Embeddings?

    Traditional embeddings work like a search engine — they retrieve code snippets or documents similar to a given query.

    They can find related content but can’t understand how different parts of your system work together.

    The AI Architect, on the other hand:

    • Builds a knowledge graph that captures relationships between repositories, modules, APIs, and libraries.

    • Provides precise answers and implementations, not just search results.

    • Understands context and intent — how and why something is implemented in your codebase.

    Getting started

    1. with our team.

    2. Lastly, email if you have any additional questions.

    Demos of different ways to use AI Architect

    Guide for Claude.ai (Web)

    Integrate Claude.ai with AI Architect for more accurate, codebase-aware AI assistance.

    Use Bito's AI Architect with Claude.ai (Web) to enhance your AI-powered coding experience.

    Once connected via MCP (Model Context Protocol), Claude.ai can leverage AI Architect's deep contextual understanding of your project, enabling more accurate code suggestions, explanations, and code insights.

    Prerequisites

    1. Follow the . Upon successful setup, you will receive a Bito MCP URL and Bito MCP Access Token that you need to enter in your coding agent.

      • Note: The Bito MCP URL must be publicly accessible. Localhost or private network URLs (for example, http://localhost or internal IP addresses) are not supported and will not work.

    2. . You will need to copy/paste the content from this file later when configuring AI Architect.

      • Note: This file contains best practices, usage instructions, and prompting guidelines for the Bito AI Architect MCP server. The setup will work without this file, but including it helps AI tools interact more effectively with the Bito AI Architect MCP server.

    3. A paid Claude.ai subscription - MCP integrations require one of the following:

      • Claude Pro

      • Claude Max

      • Claude Team

    OAuth authentication

    Claude.ai uses OAuth 2.1 with PKCE for secure authentication, so you don't need to manually manage access tokens. Your email will be collected during the OAuth consent flow for tracking purposes.

    How OAuth authentication works:

    1. You add the MCP server URL in Claude.ai Integrations settings

    2. Claude.ai initiates an OAuth flow

    3. Your browser opens a consent page hosted by Bito

    4. You enter your email and approve the connection

    Benefits:

    • No manual token management

    • Secure browser-based authentication

    • Automatic token refresh

    • Email collected during consent (no separate header needed)

    OAuth Callback URL: https://claude.ai/api/mcp/auth_callback

    Set up AI Architect

    1

    Open Claude.ai integrations

    1. Go to and sign in with your paid account

    Troubleshooting Claude.ai

    "Integrations" option not visible:

    • Verify you have a paid Claude subscription (Pro, Max, Team, or Enterprise)

    • Free tier accounts do not have MCP access

    • Contact Anthropic support if you have a paid plan but don't see the option

    OAuth authorization fails:

    • Ensure pop-ups are allowed for claude.ai

    • Check that your Workspace ID is correct

    • Verify your organization has OAuth enabled for the MCP server

    • Try clearing browser cache and cookies, then retry

    Connection shows "Disconnected":

    • Click the server entry and select "Reconnect"

    • OAuth tokens may have expired - re-authorize when prompted

    • Check if your Bito workspace is still active

    Tools not appearing in conversation:

    • Ensure the MCP server shows "Connected" status

    • Try starting a fresh conversation

    • Some tools may require specific prompts to activate

    Available commands

    Invoke the AI Code Review Agent manually or within a workflow.

    The AI Code Review Agent offers a suite of commands tailored to developers' needs. You can manually trigger a code review by entering any of these commands in the comment box below a pull/merge request on GitHub, GitLab, or Bitbucket and submitting the comment. Alternatively, if you are using the self-hosted version, you can configure these commands in the bito-cra.properties file for automated code reviews.

    It may take a few minutes to get the code review posted as a comment, depending on the size of the pull/merge request.

    /review

    This command provides a broad overview of your code changes, offering suggestions for improvement across various aspects but without diving deep for secure coding or performance optimizations or scalability improvements etc. This makes it ideal for catching general code quality issues that might not necessarily be critical blockers but can enhance readability, maintainability, and overall code health.

    Think of it as a first-pass review to identify potential areas for improvement before delving into more specialized analyses.

    Review Scope

    Five specialized commands are available to perform detailed analyses on specific aspects of your code. Details for each command are given below.

    1. /review security

    2. /review performance

    3. /review scalability

    Combining general feedback with specialized review scopes

    If you'd like to receive general code quality feedback alongside specialized analyses, include the general keyword in your review command.

    For example, to receive feedback on general code quality, performance, and security, use:

    • Example: /review general,performance,security

    This ensures a holistic review encompassing both general code quality and specific areas of concern.

    /review security

    This command performs an in-depth analysis of your code to identify vulnerabilities that could allow attackers to steal data, gain unauthorized access, or disrupt your application. This includes checking for weaknesses in input validation, output encoding, authentication, authorization, and session management. It also looks for proper encryption of sensitive data, secure coding practices, and potential misconfigurations that could expose your system.

    /review performance

    This command evaluates the current performance of the code by pinpointing slow or resource-intensive areas and identifying potential bottlenecks. It helps developers understand where the code may be underperforming against expected benchmarks or standards. It is particularly useful for identifying slow processes that could benefit from further investigation and refinement.

    This includes checking how well your code accesses data and manages tasks like database interactions and memory usage.

    /review scalability

    This command analyzes your code to identify potential roadblocks to handling increased usage or data. It checks how well the codebase supports horizontal scaling and whether it is compatible with load balancing strategies. It also ensures the code can handle concurrent requests efficiently and avoids bottlenecks from single points of failure. The command further examines error handling and retry mechanisms to promote system resilience under pressure.

    /review codeorg

    This command scans your code for readability, maintainability, and overall clarity. This includes checking for consistent formatting, clear comments, well-defined functions, and efficient use of data structures. It also looks for opportunities to reduce code duplication, improve error handling, and ensure the code is written for future growth and maintainability.

    /review codeoptimize

    This command helps identify specific parts of the code that can be made more efficient through optimization techniques. It suggests refactoring opportunities, algorithmic improvements, and areas where resource usage can be minimized. This command is essential for enhancing the overall efficiency of the code, making it faster and less resource-heavy.

    Control code review workflow

    These commands allow you to manage the AI Code Review Agent's behavior directly within your pull requests across GitHub, GitLab, and Bitbucket.

    /pause

    Pauses automatic AI reviews on the current pull request.

    Use case: Useful when significant changes are underway, and you want to prevent the AI from reviewing incomplete code.

    Example: Add a comment with /pause to the pull request.

    /resume

    Resumes the automatic AI reviews that were previously paused on the pull request.

    Use case: Once your code changes are ready for review, use this command to re-enable the AI's automatic analysis.

    Example: Add a comment with /resume to the pull request.

    /resolve

    Marks all Bito-posted review comments as resolved.

    Use case: After addressing the issues highlighted by the AI, use this command to clean up the comment threads.

    Example: Add a comment with /resolve to the pull request.

    /abort

    Cancels all in-progress AI code reviews on the current pull request.

    Use case: If an AI review is no longer needed or was initiated by mistake, this command stops the process.

    Example: Add a comment with /abort to the pull request.

    Display Code Review in a Single Post

    By default, the /review command generates inline comments, placing code suggestions directly beneath the corresponding lines in each file for clearer guidance on improvements. If you prefer a single consolidated code review instead of separate inline comments, use the #inline_comment parameter and set its value to False.

    Example: /review #inline_comment=False

    Example: /review scalability #inline_comment=False

    Custom instructions

    Custom Instructions allows you to enrich with additional context that's relevant to your engineering workflow. By providing supplementary documentation, you help AI Architect develop a more complete understanding of your project ecosystem.

    By default, AI Architect builds a knowledge graph using multiple inputs such as your codebase, issue tracking systems, documentation tools, and observability data. While this provides strong coverage, there is often still important context that lives outside these systems or is not easily discoverable.

    Custom instructions allow you to fill that gap by providing documents that describe your system in a more complete way.

    Table of contents

    Agent skills

    AI Architect comes with a set of Agent Skills — each one built to handle a specific engineering task like feasibility analysis, epic planning, or production triage. You can trigger them in Jira before coding starts, inside your coding agent while you're building, or in Slack.

    Agent skills are structured instruction files that enhance your AI coding assistant with specialized capabilities. In coding agents, skills are installed automatically by the and are discovered dynamically from a skills/manifest.json file. Whereas, in Jira, skills are available from Bito Cloud.

    Every skill has full context of your codebase and your team's Jira history, so the output reflects how your system actually works.

    Install/run via CLI

    CLI mode is best suited for immediate, one-time code reviews.

    1. Prerequisites: Before proceeding, ensure you've completed all necessary AI Code Review Agent.

    2. Start Docker: Ensure Docker is running on your machine.

    3. Repository Download:

    AST + symbol analysis

    ✅

    ✅ (plus cross-repo linking)

    Dependency visibility

    Local to repo

    Full call chains across repos

    Impact analysis

    Local only

    Upstream + downstream, multi-repo

    Architecture checks

    Limited

    System-level validation

    Ripple-effect detection

    ❌

    ✅

    Multi-service understanding

    ❌

    ✅

    /review codeorg

  • /review codeoptimize

  • You can provide comma-separated values to perform multiple types of code analysis simultaneously.

    Example: /review performance,security,codeoptimize

    Note: The /resolve command is currently supported in GitLab and Bitbucket.

    Note: The /review command defaults to #inline_comment=True, so you can omit this parameter when its value is True.

    Highlighting the security vulnerability detected and the proposed solution.
    Highlighting the performance issue detected and the proposed solution.
    Highlighting the scalability issue detected and the proposed solution.
    Highlighting the code structure issue detected and the proposed solution.
    Precise code optimization advice pinpointing exact lines in a file.

    Create optimized indexes for semantic search

  • Remove the cloned code from our servers (only index data is retained)

  • Bito MCP Access Token

    Use these credentials to connect AI Architect to your AI coding agents (Cursor, Claude Code, Windsurf, GitHub Copilot, etc.).

    Once connected, AI Architect provides codebase-aware context to your coding agent, enabling more accurate answers.

    Maintenance

    Fully managed by Bito

    Requires infrastructure setup and maintenance

    [email protected]
  • uncommittedchanges

  • path

  • Unsupported options will be hidden automatically.

    Get a 14-day FREE trial of Bito's AI Code Review Agent.
    Add to Slack
  • Watch demo video

  • Consistent design adherence — Code generated aligns with your architecture patterns and coding conventions.

  • Spec-driven development — Automatically generate highly detailed, implementation-ready technical requirement documents (TRDs) and low-level designs (LLDs) with a deep, context-aware understanding of your codebase, services, and design patterns, ensuring architectural integrity and consistency at a granular level.

    • Watch demo video

  • Triaging production issues — Easily and quickly find root causes to production issues based on errors/logs/etc.

    • Watch demo video

  • Faster onboarding — New engineers or AI agents can quickly understand how a system or component system structure.

  • Enhanced documentation and diagramming — Through its internal understanding of interconnections between modules and APIs.

  • Smarter code reviews — Reviews with system-wide awareness of dependencies and impacts.

  • Self-hosted (Run AI Architect on your own infrastructure for maximum control)

    2

    Integrate with your tools

    • Jira

    Enables system-aware reasoning, allowing AI agents to generate or review code with full architectural understanding.

    Bito provides the AI Architect in a completely secure fashion, with the AI Architect available on-prem if you desire with no code ever being sent to Bito. No AI is trained on your code and your code is not stored.

    In pull requests
    Watch demo video
    Bito-hosted
    Try Bito's AI Architect
    Get a demo
    [email protected]
  • Claude Enterprise

  • Claude.ai receives secure tokens automatically

  • Your email is tracked for usage analytics (collected during OAuth consent)

  • Click on your profile icon (bottom-left corner)

  • Select Settings

  • Navigate to Integrations section

  • 2

    Add Bito AI Architect MCP server

    1. Click "+ Add Custom Integration"

    2. Enter the integration details:

      • Name: BitoAIArchitect

      • URL: <Your-Bito-MCP-URL>

    1. Click "Connect" or "Add"

    3

    Complete OAuth authorization

    1. A new browser window/tab will open showing the Bito Authorization page

    2. Review the requested permissions

    3. Enter your email address (required for tracking/identification)

    4. Click "Authorize" or "Allow"

    5. The window will close and you'll be returned to Claude.ai

    4

    Verify connection

    1. Return to Claude.ai Settings → Integrations

    2. BitoAIArchitect should show as "Connected" with a green indicator

    3. Start a new conversation and try:

    Note: Free tier accounts do not have access to MCP Integrations.

    AI Architect installation instructions
    Download BitoAIArchitectGuidelines.md file
    claude.ai

    Why use custom instructions?

  • What to include in custom instructions?

  • How it works?

  • Impact on AI Architect's capabilities

  • Best practices

  • Getting started

  • Why use custom instructions?

    Use Custom Instructions to add important context that enhances AI Architect's understanding of your projects and systems:

    • Fill knowledge gaps: Add context that doesn't exist in your existing systems

    • Synthesize information: Consolidate knowledge that spans multiple sources

    • Capture tribal knowledge: Document institutional understanding that lives in people's heads

    • Provide domain expertise: Include specialized knowledge, business rules, or industry-specific context

    What to include in custom instructions?

    Custom Instructions can contain any context that helps AI Architect better understand and assist with your projects. Consider including:

    Domain knowledge

    • Industry-specific terminology and concepts

    • Business rules and constraints

    • Regulatory or compliance requirements

    • User personas and use cases

    Operational context

    • Service ownership and team structures

    • Communication channels and escalation paths

    • Deployment processes and environments

    • Access patterns and security considerations

    Architecture decisions

    • Design principles and patterns used

    • Technology choices and rationale

    • Cross-service dependencies not visible in code

    • Integration points with external systems

    Standards and guidelines

    • Coding conventions specific to your team

    • Testing strategies and requirements

    • Review and approval processes

    • Performance benchmarks and targets

    Tribal knowledge

    • Historical context for major decisions

    • Common pitfalls and how to avoid them

    • Undocumented workarounds or solutions

    • Best practices learned from experience

    How it works?

    When you provide a custom instructions document:

    1. Bito processes your document and extracts relevant information

    2. The extracted context is intelligently integrated into the knowledge graph

    3. AI Architect uses this enriched knowledge to provide more accurate and contextual assistance

    Impact on AI Architect's capabilities

    With custom instructions, AI Architect can:

    • Avoid known issues and apply documented best practices

    • Answer questions using your project-specific context

    • Generate code that follows your team's conventions and standards

    • Understand terminology, patterns, and concepts unique to your domain

    • Provide recommendations that account for your constraints and requirements

    Best practices

    Start with high-impact information

    Focus on context that significantly affects how AI Architect should understand your systems and processes:

    • Critical constraints or requirements

    • Frequently misunderstood concepts

    • Context that connects different parts of your architecture

    Organize for clarity

    Structure your document logically:

    • Use clear headings and sections

    • Group related information together

    • Include examples where helpful

    • Keep explanations concise but complete

    Be specific and actionable

    Provide concrete information rather than vague statements:

    • ✅ "Use library X for date handling to ensure timezone consistency"

    • ❌ "Be careful with dates"

    Document the "Why"

    Explain reasoning and context behind decisions:

    • Why certain approaches are preferred

    • Why specific constraints exist

    • Why particular patterns are used

    Getting started

    1

    Create your document

    Prepare a markdown document (.md file) containing custom instructions:

    • Start with your most important information

    • Organize content with clear structure

    • Use plain language and specific examples

    2

    Submit to Bito Team

    Send your custom instructions document to :

    • The Bito team will integrate the document into your workspace's knowledge graph

    Note: Custom instructions feature is available exclusively on Bito's Enterprise plan. To use this feature, provide your custom instructions in markdown document (.md file) to the Bito team at [email protected], and we'll integrate it into your knowledge graph.

    Refer to the Knowledge graph documentation for details on how AI Architect builds and maintains its knowledge.

    AI Architect's knowledge graph
    All available skills
    Skill
    Trigger phrases
    Description

    bito-codebase-explorer

    "explain this service", "how does X work", "what does Y depend on", "show me the architecture", "onboard me"

    Explore and explain the codebase at any depth for any audience — executive summary to line-level traces

    bito-epic-to-plan

    "how would we build this", "turn this epic into tasks", "implementation plan for", "make this sprint-ready"

    Convert an approved epic/PRD into a sprint-ready plan with 3 architectural approaches, then granular tickets

    How to invoke skills

    In Jira

    Agent skills can be triggered on demand on Epic or Story by commenting:

    Integrating with Jira

    In Slack

    Agent skills are also available directly in Slack via the Bito AI Assistant app. Mention @Bito in any channel and describe what you need. It will activate the right skill automatically.

    Integrating with Slack

    In your coding agent

    Once AI Architect is connected via MCP, skills are available in compatible coding agents. Describe what you need in natural language and the agent activates the right skill automatically — or invoke one directly by name. You can type / in the chatbox to see the list of available skills and select one interactively.

    Integrating with coding agents

    Skills installation locations:

    IDE
    Location
    Format

    Claude Code

    ~/.claude/skills/bito-{name}/SKILL.md

    Markdown with YAML frontmatter

    Cursor

    ~/.cursor/rules/bito-{name}.mdc

    .mdc with alwaysApply: false

    install scripts
    @bito turn this epic into tasks
    @bito technical plan for this PRD
    @Bito is this feasible
    @Bito turn this plan into agent specs
    @Bito execute this agent spec
    GitHub repository to your machine.
  • Extract and Navigate:

    • Extract the downloaded .zip file to a preferred location.

    • Navigate to the extracted folder and then to the “cra-scripts” subfolder.

    • Note the full path to the “cra-scripts” folder for later use.

    1. Open Command Line:

      • Use Bash for Linux and macOS.

      • Use PowerShell for Windows.

    2. Set Directory:

      • Change the current directory in Bash/PowerShell to the “cra-scripts” folder.

      • Example command: cd [Path to cra-scripts folder]

      • Adjust the path based on your extraction location.

    1. Configure Properties:

      • Open the bito-cra.properties file in a text editor from the “cra-scripts” folder. Detailed information for each property is provided on Agent Configuration: bito-cra.properties File page.

      • Set mandatory properties:

        • mode = cli

        • pr_url

        • bito_cli.bito.access_key

        • git.provider

        • git.access_token

    • Optional properties (can be skipped or set as needed):

      • git.domain

      • code_feedback

      • static_analysis

      • dependency_check

      • dependency_check.snyk_auth_token

      • review_scope

      • exclude_branches

      • exclude_files

      • exclude_draft_pr

    1. Run the Agent:

      • On Linux/macOS in Bash: Run ./bito-cra.sh bito-cra.properties

      • On Windows in PowerShell: Run ./bito-cra.ps1 bito-cra.properties

    1. Final Steps:

      • The script may prompt values of mandatory/optional properties if they are not preconfigured.

      • Upon completion, a code review comment is automatically posted on the Pull Request specified in the pr_url property.

    Screenshots

    Screenshot # 1

    Screenshot # 2

    Changelist in AI Code Review Agent's feedback.

    Screenshot # 3

    prerequisites for self-hosted
    Download the AI Code Review Agent

    Note: Valid values for git.provider are GITHUB, GITLAB, or BITBUCKET.

    Note: Detailed information for each property is provided on page.

    Check the guide to learn more about creating the access tokens needed to configure the Agent.

    This step might take time initially as it pulls the Docker image and performs the code review.

    Note: To improve efficiency, the AI Code Review Agent is disabled by default for pull requests involving the "main" branch. This prevents unnecessary processing and token usage, as changes to the "main" branch are typically already reviewed in release or feature branches. To change this default behavior and include the "main" branch, please .

    AI-generated pull request (PR) summary

    Changelist showing key changes and impacted files in a pull request.

    AI code review feedback posted as comments on the pull request.

    Getting Started

    Key Features

    Supported Programming Languages and Tools

    Agent Configuration: bito-cra.properties File

    FAQs

    Guide for ChatGPT (Web & Desktop)

    Integrate ChatGPT with AI Architect for more accurate, codebase-aware AI assistance.

    Use Bito's AI Architect with ChatGPT (Web & Desktop) to enhance your AI-powered coding experience.

    Once connected via MCP (Model Context Protocol), ChatGPT can leverage AI Architect's deep contextual understanding of your project, enabling more accurate code suggestions, explanations, and code insights.

    Note: This guide covers setup for both the web interface (chat.openai.com) and the ChatGPT desktop app. The configuration is identical for both platforms.

    Prerequisites

    1. Follow the . Upon successful setup, you will receive a Bito MCP URL and Bito MCP Access Token that you need to enter in your coding agent.

      • Note: When using Bito AI Architect MCP with ChatGPT (Web), the Bito MCP URL must be publicly accessible. Localhost or private network URLs (for example, http://localhost or internal IP addresses) are not supported and will not work.

    2. . You will need to copy/paste the content from this file later when configuring AI Architect.

      • Note: This file contains best practices, usage instructions, and prompting guidelines for the Bito AI Architect MCP server. The setup will work without this file, but including it helps AI tools interact more effectively with the Bito AI Architect MCP server.

    3. A paid ChatGPT subscription - MCP connectors require one of the following:

      • ChatGPT Plus

      • ChatGPT Pro

      • ChatGPT Team

    OAuth authentication

    ChatGPT uses OAuth 2.1 with PKCE for secure MCP server authentication via the Connectors feature in Developer Mode.

    How OAuth authentication works:

    1. You enable Developer Mode and add the MCP server URL in Connectors settings

    2. ChatGPT initiates an OAuth flow

    3. Your browser opens a consent page hosted by Bito

    4. You enter your email and approve the connection

    Benefits:

    • No manual token management

    • Secure browser-based authentication

    • Automatic token refresh

    • Email collected during consent (no separate header needed)

    Set up AI Architect

    1

    Enable Developer mode

    1. Go to (or open the ChatGPT desktop app) and sign in

    Troubleshooting ChatGPT

    "Connectors" or Developer Mode option not visible:

    • Verify you have a paid ChatGPT subscription (Plus, Pro, Team, Enterprise, or Edu)

    • Free tier accounts do not have connector access

    • The feature may be rolling out gradually - check back later if recently subscribed

    OAuth authorization fails:

    • Ensure pop-ups are allowed for chatgpt.com

    • Check that your Workspace ID is correct

    • Verify your organization has OAuth enabled for the MCP server

    • Try using an incognito/private browser window

    "Error fetching OAuth configuration":

    • Verify the MCP server URL is correct and accessible

    • Ensure the server supports OAuth 2.1 with dynamic client registration

    • Check that code_challenge_methods_supported includes S256 in the authorization server metadata

    Connection shows "Error" or "Disconnected":

    • Click the connection and select "Reconnect"

    • OAuth tokens may have expired - re-authorize when prompted

    • Check if your Bito workspace is still active

    Tools not working in conversation:

    • Ensure the MCP connection shows "Connected" status

    • Try starting a fresh conversation

    • Explicitly mention "use BitoAIArchitect" in your prompt if tools don't activate automatically

    • Check that you're using the connector in a mode that supports tools (not all chat modes do)

    Try AI code reviews using Test Mode

    Experience AI-powered code analysis on any pull request — no admin access needed.

    Bito offers Test Mode to help you quickly explore our AI Code Review Agent without requiring administrator permissions for your Git repositories. Whether you're evaluating Bito for your team or simply want to see it in action before a full setup, Test Mode gives you immediate access using just a personal access token.

    You can point Bito at any pull request you have access to and receive instant AI-generated feedback.

    What you get:

    • Instant access to AI-powered code reviews

    • Support for GitHub, GitLab, and Bitbucket (cloud and self-hosted)

    • 10 complimentary pull request analyses

    Who can use Test Mode?

    Test Mode is designed for first-time evaluators. You can access it when:

    • Your Bito account is on a trial subscription (or eligible for a trial, meaning you haven't used any trials before)

    • Your workspace has a clean slate (no previous Git repository connections)

    Getting started

    1

    Log in to Bito

    with a fresh user account and create a new workspace

    2

    Test Mode dashboard

    After completing your first test review, you'll have access to a dashboard showing:

    • Number of test reviews remaining (out of 10 total)

    • History of analyzed pull requests

    • Quick-start button for new reviews

    Starting new test review

    To analyze another pull request, click "New code review" button in the upper-right corner of your review history table.

    Upgrading to full Git integration

    Once you've used all 10 test reviews, you'll need to complete full Git integration to continue using Bito's AI Code Review Agent.

    Why upgrade?

    Full Git integration unlocks powerful features not available in Test Mode:

    Advanced configuration:

    • Default branch settings: Customize which branch is used for code reviews

    • Custom guidelines: Define your own review rules and coding standards

    • Filters: Exclude draft PRs, files, or branches from review to focus on relevant code.

    Unlimited reviews:

    • No review limits — analyze every pull request

    • Automatic reviews on new PRs

    • Incremental reviews on PR updates

    • Complete team analytics and insights

    How to upgrade

    From your Test Mode dashboard, click "Complete Git integration" and follow the setup wizard to connect your Git repositories.

    For detailed setup instructions, see:

    FAQs

    Q: Can I use Test Mode if I've previously used Bito? A: Test Mode is only available to users who haven't previously used a trial and haven't set up Git integration in their workspace.

    Q: What happens after I use all 10 test reviews? A: You'll need to complete full Git integration to continue reviewing pull requests.

    Q: Can I test on private repositories? A: Yes, as long as your personal access token has the correct permissions to access the repository.

    Q: Does Test Mode work with self-hosted Git instances? A: Yes, Test Mode supports GitHub Enterprise, GitLab Self-Managed, and Bitbucket Server. You'll need to provide your Git domain URL and configure network access (whitelist Bito IP addresses) if needed.

    Q: Will my code be stored or used for training? A: No. Bito does not store your code, and your code is never used for AI model training. Learn more about our .

    Q: What's the difference between Essential and Comprehensive review modes? A: Essential mode focuses on critical issues and completes faster, while Comprehensive mode provides deeper analysis with more detailed feedback. You can try both to see which fits your needs.

    Keyboard shortcuts

    Bito UI in Visual Studio Code and JetBrains IDEs is entirely keyboard accessible. You can navigate Bito UI with standard keyboard actions such as TAB, SHIFT+TAB, ENTER, and ESC keys. Additionally, you can use the following shortcuts for quick operations.

    The following video demonstrates important keyboard shortcuts.

    General

    Command
    Shortcuts

    Question & Answers

    The following keyboard shortcuts work after the Q/A block is selected.

    Command
    Keyboard Shortcut

    Change Default Keyboard Shortcuts

    Bito has carefully selected the keyboard shortcuts after thorough testing. However, it's possible that Bito selected key combination may conflict with IDE or other extensions shortcut. You can change the Bito default shortcut keys to avoid such conflicts.

    Visual Studio Code Editor

    1. To Open the Keyboards Shortcuts editor in VS Code, navigate to the menu under File > Preferences > Keyboard Shortcuts. (Code > Preferences > Keyboard Shortcuts on macOS)

    1. Search for default available commands, keybindings, or Bito extension-specific commands in VSCode keyboard shortcut editor.

    1. Finding a conflict in Key binding → Search for the key and take necessary action, e.g., Remove or Reset.

    1. Add a new key binding or map the existing Bito extension command. Provide the necessary information (Command ID) to add the new key binding.

    JetBrains

    JetBrains Document:

    1. File > settings > keymaps > configure keymaps

    1. Bito extension shortcuts can be overwritten by going into the File > Settings > Keymaps > configure keymaps > to the action you want to assign. It will also overwrite the Bito shortcut if there are conflicts.

    2. Bito extension keyboard shortcuts can be changed from the IntelliJ settings. File > Settings > Keymaps > configure keymaps > plugins > Bito > action you want to change by right click.

    3. Bito extension Keyboard shortcuts can be deleted from the IntelliJ settings. File > Settings > Keymaps > configure keymaps > plugins > Bito > action you want to delete by right click.

    Guide for Bitbucket (Self-Managed)

    Integrate the AI Code Review Agent into your self-hosted Bitbucket workflow.

    Speed up code reviews by configuring the with your Bitbucket (Self-Managed) server. In this guide, you'll learn how to set up the Agent to receive automated code reviews that trigger whenever you create a pull request, as well as how to manually initiate reviews using .

    Video tutorial

    Managing Index Size

    Exclude unnecessary files and folders from repo to index faster!

    What is Indexable Size?

    Indexable size is size of all code files, excluding following from the folder:

    • Directory/File based filtering

    You'll be notified once the integration is complete

    [email protected]

    bito-scope-to-plan

    "plan this story", "create tickets for this", "technical plan for this PRD"

    Auto-scaling planning — full multi-workstream plans for epics, focused single-workstream plans for stories

    bito-feasibility

    "is this feasible", "go/no-go on", "what's the blast radius", "trade-off analysis"

    Go/no-go feasibility and impact analysis — viability, blast radius, effort, dependencies, risks, alternatives

    bito-spike

    "spike on", "investigate whether", "explore options for", "proof of concept for"

    Time-boxed technical investigation — delivers findings and recommendations, not a plan

    bito-feature-plan

    "plan a feature", "design implementation for"

    Detailed org-specific implementation plan for a complex feature using cross-repo context

    bito-prd

    "write a PRD", "product requirements for"

    Comprehensive Product Requirements Document grounded in real system context

    bito-trd

    "write a TRD", "technical requirements for"

    Technical Requirements Document analyzing existing architecture, dependencies, and patterns

    bito-production-triage

    "production issue", "incident triage", "debug outage"

    Diagnose production incidents — cross-repo context, blast radius mapping, structured remediation plan

    bito-commit-review

    "review my changes", "pre-commit review", "check my changes"

    Pre-commit code review analyzing all changes (staged and unstaged) for issues and cross-repo impact

    bito-plan-to-agent-spec

    "turn this plan into agent specs", "make this implementable by an agent", "generate coding specs from this plan"

    Transform a technical implementation plan into self-contained workstream agent specs with file paths, pattern references, verification gates, and a dependency contract

    bito-agent-spec-executor

    "execute this agent spec", "implement this workstream spec", "run this agent spec"

    Execute a single workstream agent spec step by step with verification gates, then run a two-stage review (spec compliance + code quality)

    Windsurf

    ~/.codeium/windsurf/memories/bito-{name}.md

    Plain markdown

    VS Code (Copilot)

    {User}/prompts/bito-{name}.prompt.md

    .prompt.md with applyTo

    Junie

    ~/.junie/skills/bito-{name}/SKILL.md

    Agent Configuration: bito-cra.properties File
    Required Access Tokens
    contact support
    How to install Bito extension on JetBrains IDEs
    Chat Session History
    Coding agents via MCP
    AI Code Review Agent
  • ChatGPT Enterprise

  • ChatGPT Edu

  • ChatGPT receives secure tokens automatically

  • Your email is tracked for usage analytics (collected during OAuth consent)

  • Click on your profile icon (bottom-left corner)

  • Select Settings

  • Go to Apps and Connectors (or just Connectors)

  • Scroll down and click "Advanced Settings"

  • Toggle "Developer Mode" to ON

  • 2

    Create Bito AI Architect Connector

    1. In the Connectors section, click "Create" or "+ Add Connector"

    2. Fill in the connector details:

      • Connector Name: BitoAIArchitect

      • Description: Repository intelligence and architecture analysis for your organization

      • MCP Server URL: <Your-Bito-MCP-URL>

    1. Click "Create" or "Save"

    3

    Complete OAuth authorization

    1. Click on the newly created BitoAIArchitect connector

    2. Click "Connect" to initiate the OAuth flow

    3. A browser window opens showing the Bito Authorization page

    4. Review the requested permissions

    5. Enter your email address (required for tracking)

    6. Click "Authorize" or "Allow"

    7. Return to ChatGPT - the connection is now active

    4

    Verify connection

    1. Return to ChatGPT Settings → Connectors

    2. BitoAIArchitect should show as "Connected"

    3. Start a new conversation

    4. In the composer, click "Use Connectors" or look for the connector tools

    5. Try asking:

    5

    Using Bito AI Architect in ChatGPT

    Once connected, you can use BitoAIArchitect in several ways:

    • Direct prompts: Ask questions about your repositories

    • Deep Research: BitoAIArchitect tools appear in "Deep Research" mode

    • Connectors menu: Select BitoAIArchitect from the "Use Connectors" option

    Note: Free tier accounts do not have access to MCP connectors.

    Note: Full MCP support (including write/modify actions) is available for Team, Enterprise, and Edu plans. Plus and Pro users have read/fetch permissions via Developer Mode.

    AI Architect installation instructions
    Download BitoAIArchitectGuidelines.md file
    chatgpt.com
    Access Test Mode
    • Click "Do a test code review" option at the bottom of the Git setup wizard

    3

    Enter pull request details

    1. Pull request URL

      Enter the complete URL of the pull request you want Bito to review.

      • Example: https://github.com/username/repository/pull/123

    1. Personal Access Token

      Generate a personal access token from your Git platform to authorize Bito to read the pull request:

      1. For GitHub:

        1. Create GitHub classic Token with

    1. Validate your token

      Click "Validate" to verify that your personal access token is working correctly. This ensures Bito can access the pull request before proceeding.

    1. Choose your review depth

      Select the level of analysis you want:

      • Essential: Focuses on the most critical issues (faster review)

      • Comprehensive: Provides deeper analysis with more detailed feedback (more thorough review)

    4

    Start code review

    Click Do a test code review to start the AI code review.

    Tools: Enable additional checks, such as secret scanning.
  • Automation: Configure auto-reviews, batching, and summary settings

  • And much more.

  • Guide for Bitbucket

  • Guide for Bitbucket (Self-Managed)

  • When you analyze your first pull request in Test Mode, Bito automatically activates your 14-day trial, giving you access to code review capabilities.

    Log in to Bito Cloud
    Guide for GitHub
    Guide for GitHub (Self-Managed)
    Guide for GitLab
    Guide for GitLab (Self-Managed)
    privacy and security practices

    Expands and Collapse the "Shortcut" panel

    WINDOWS: CTRL + ⬆️ / ⬇️ MAC: CTRL + SHIFT+ ⬆️ / ⬇️

    Toggle the diff view (when Diff View is applicable)

    CTRL + D

    Expand/Collapse the code block in the question.

    WINDOWS: CTRL + ⬆️ / ⬇️ MAC: CTRL + SHIFT+ ⬆️ / ⬇️

    Regenerate the answer

    CTRL + L

    Modify the prompt for the selected Q&A. Bito copies the prompt in the chatbox that you can modify as needed.

    CTRL + U

    Open Bito Panel: Toggle Bito Panel on and off in the JetBrains IDE. In the Visual Studio Code, the shortcut opens the Bito panel if not already opened.

    SHIFT + CTRL + O

    Puts cursor in the chatbox when Bito panel is in focus.

    SPACEBAR (Or start typing your question directly)

    Execute the chat command

    ENTER

    Add a new line in the chatbox

    CTRL + ENTER or SHIFT + ENTER

    Modify the most recently executed prompt. This copies the last prompt in the chatbox for any edits.

    Navigate between the Questions/Answers block.

    Note: You must select the Q/A container with TAB/SHIFT+TAB.

    ⬆️ / ⬇️

    Copy the answer to the clipboard.

    CTRL + C

    Insert the answer in the code editor

    CTRL + I

    https://www.jetbrains.com/help/idea/configuring-keyboard-and-mouse-shortcuts.html

    CTRL + M

    Prerequisites

    Before proceeding, ensure you've completed all necessary prerequisites.

    1. Create a Bitbucket Personal Access Token:

    For Bitbucket pull request code reviews, a token with Project Admin permission is required. Make sure that the token is created by a Bitbucket user who has the Admin privileges.

    You can use the Create Token button that appears once you provide the Hosted Bitbucket URL and your Bitbucket username.

    Or directly visit the URL of your self-hosted Bitbucket.

    To create a token for your user account:

    1. Go to Profile picture > Manage account > HTTP access tokens.

    2. Select Create token.

    3. Set the token name, permissions, and expiry.

    View Bitbucket documentation

    2. Authorizing a Bitbucket Personal Access Token for use with SAML single sign-on:

    If your Bitbucket organization enforces SAML Single Sign-On (SSO), you must authorize your Personal Access Token through your Identity Provider (IdP); otherwise, Bito's AI Code Review Agent won't function properly.

    For more information, please refer to Bitbucket SAML SSO documentation.

    Installation and configuration steps

    Follow the step-by-step instructions below to install the AI Code Review Agent using Bito Cloud:

    Step 1: Log in to Bito

    Log in to Bito Cloud and select a workspace to get started.

    Step 2: Open the Code Review Agents setup

    Click Repositories under the CODE REVIEW section in the sidebar.

    Step 3: Select your Git provider

    Bito supports integration with the following Git providers:

    • GitHub

    • GitHub (Self-Managed)

    • GitLab

    • GitLab (Self-Managed)

    • Bitbucket

    • Bitbucket (Self-Managed)

    Since we are setting up the Agent for Bitbucket (Self-Managed) server, select Bitbucket (Self-Managed) to proceed.

    Step 4: Connect Bito to Bitbucket

    To enable pull request reviews, you’ll need to connect your Bito workspace to your Bitbucket (Self-Managed) server.

    You need to enter the details for the below mentioned input fields:

    • Hosted Bitbucket URL: This is the domain portion of the URL where your Bitbucket Enterprise server is hosted (e.g., https://bitbucket.mycompany.com). Please check with your Bitbucket administrator for the correct URL.

    • Bitbucket username: This is your Bitbucket username used for login. Please check it from your user profile page or ask your Admin.

    • Personal Access Token: Generate a Bitbucket Personal Access Token with Project Admin permission in your Bitbucket (Self-Managed) account. Ensure you have Bitbucket Admin privileges. Enter the token into the Personal Access Token input field. You can use the Create Token button that appears once you provide the Hosted Bitbucket URL and your Bitbucket username.

      For guidance, refer to the instructions in the section.

    Click Validate to ensure the token is functioning properly.

    If the token is successfully validated, click Connect Bito to Bitbucket to proceed.

    Step 5: Enable AI Code Review Agent on repositories

    After connecting Bito to your Bitbucket self-managed server, you'll see a list of repositories that Bito has access to.

    Use the toggles in the Code Review Status column to enable or disable the Agent for each repository.

    Step 6: Automated and manual merge request reviews

    Once a repository is enabled, you can invoke the AI Code Review Agent in the following ways:

    1. Automated code review: By default, the Agent automatically reviews all new pull requests and provides detailed feedback.

    2. Manually trigger code review: To initiate a manual review, simply type /review in the comment box on the pull request and submit it. This action will start the code review process.

    The AI-generated code review feedback will be posted as comments directly within your pull request, making it seamless to view and address suggestions right where they matter most.

    Step 7: Specialized commands for code reviews

    Bito also offers specialized commands that are designed to provide detailed insights into specific areas of your source code, including security, performance, scalability, code structure, and optimization.

    • /review security: Analyzes code to identify security vulnerabilities and ensure secure coding practices.

    • /review performance: Evaluates code for performance issues, identifying slow or resource-heavy areas.

    • /review scalability: Assesses the code's ability to handle increased usage and scale effectively.

    • /review codeorg: Scans for readability and maintainability, promoting clear and efficient code organization.

    • /review codeoptimize: Identifies optimization opportunities to enhance code efficiency and reduce resource usage.

    By default, the /review command generates inline comments, meaning that code suggestions are inserted directly beneath the code diffs in each file. This approach provides a clearer view of the exact lines requiring improvement. However, if you prefer a code review in a single post rather than separate inline comments under the diffs, you can include the optional parameter: /review #inline_comment=False

    For more details, refer to Available Commands.

    Step 8: Chat with AI Code Review Agent

    Ask questions directly to the AI Code Review Agent regarding its code review feedback. You can inquire about highlighted issues, request alternative solutions, or seek clarifications on suggested fixes.

    To start the conversation, type your question in the comment box within the inline suggestions on your pull request, and then submit it. Typically, Bito AI responses are delivered in about 10 seconds. On GitHub and Bitbucket, you need to manually refresh the page to see the responses, while GitLab updates automatically.

    Bito supports over 20 languages—including English, Hindi, Chinese, and Spanish—so you can interact with the AI in the language you’re most comfortable with.

    Step 9: Configure Agent settings

    Agent settings let you control how reviews are performed, ensuring feedback is tailored to your team’s needs. By adjusting the options, you can:

    • Make reviews more focused and actionable.

    • Apply your own coding standards.

    • Reduce noise by excluding irrelevant files or branches.

    • Add extra checks to improve code quality and security.

    Learn more

    The Free Plan offers AI-generated pull request summaries to provide a quick overview of changes. For advanced features like line-level code suggestions, consider upgrading to the Team Plan. For detailed pricing information, visit our Pricing page.

    Get a 14-day FREE trial of Bito's AI Code Review Agent.

    AI Code Review Agent
    available commands

    Important: Bito posts comments using the Bitbucket user account linked to the Personal Access Token used during setup. To display "Bito" instead of your name, create a separate user account (e.g., Bito Agent) and use its token for integration.

    If your network blocks external services from interacting with the Bitbucket server, whitelist all of Bito's gateway IP addresses in your firewall to ensure Bito can access your self-hosted repositories. The Agent response can come from any of these IPs.

    • List of IP addresses to whitelist:

    Important: Bito posts comments using the Bitbucket user account linked to the Personal Access Token used during setup. To display "Bito" instead of your name, create a separate user account (e.g., Bito Agent) and use its token for integration.

    To customize the Agent’s behavior, you can edit existing configurations or create new Agents as needed.

    Note: To enhance efficiency, the automated code reviews are only triggered for pull requests merging into the repository’s default branch. This prevents unnecessary processing and Advanced AI requests usage.

    To review additional branches, you can use the . Bito will review pull requests when the source or target branch matches the list.

    The Include Source/Target Branches filter applies only to automatically triggered reviews. Users should still be able to trigger reviews manually via the /review command.

    The AI Code Review Agent automatically reviews code changes up to 5000 lines when a pull request is created. For larger changes, you can use the /review command.

    It may take a few minutes to get the code review posted as a comment, depending on the size of the pull request.

  • logs, node_modules, dist, target, bin, package-lock.json, data.json, build, .gradle, .idea, gradle, extension.js, vendor.js, ngsw.json, polyfills.js, ngsw-worker.js, runtime.js, runtime-main.js, service-worker.js, bundle.js, bundle.css

  • Extension based filtering

    • bin, exe, dll, log, aac, avif, bmp, cda, gif ,mp3, mp4, mpeg, weba, webm, webp, oga, ogv, png, jpeg, jpg, bmp, wpa, tif, tiff, svg, ico, wav, mov, avi, doc, docx, ppt, pptx, xls, xlsx, ods, odp, odt, pdf, epub, rar, tar, zip, vsix, 7z, bz, bz2, gzip, jar, war, gz, tgz, woff, woff2, eot, ttf, map, apk, app, ipa, lock, tmp, logs, gmo, pt

  • Hidden files are filtered i.e., files starting with "."

  • All Empty files are filtered.

  • All Binary files are also filtered.

  • Is there any limit on repository size?

    For workspaces that have upgraded to Bito's Team Plan, we have set the indexable size limit to 120MB per repo. However, once we launch the "AI that Understands Your Code" feature for our Free Plan users, they will be restricted to repositories with an indexable size limit of 10MB.

    Learn more about indexable size above and see which files and folders are excluded by default.

    You can reduce your repo's indexable size by excluding certain files and folders from indexing using .bitoignore file and remain within the limit.

    What if a repo hits 120MB limit?

    If a repo hits 120MB limit, then the below error message will be displayed in the "Manage repos" tab and the repo's index status will be changed to "Not Indexed".

    To fix this issue, follow our instructions regarding how to use .bitoignore file and reduce your repo's size and bring it under the max limit of 120MB.

    After that, you must delete the index and then restart the indexing by clicking on the "Start Indexing" button shown for the repo folder. You can also follow our step-by-step guides to Start Indexing in Visual Studio Code and Start Indexing in JetBrains IDEs.

    What is .bitoignore and how to use it?

    A .bitoignore file is a plain text file where each line contains a pattern or rules that tells Bito which files or directories to ignore and not index. In other words, it's a way to reduce your repo's indexable size. You can also see which files/folders are excluded by default.

    There are two ways to use .bitoignore file:

    1. Create a .bitoignore file inside the folder where indexes created by Bito are stored. e.g. <user-home-directory>/.bito/localcodesearch/.bitoignore

      • On Windows, this path will be something like: C:\Users\<your username>\.bito\localcodesearch\.bitoignore

      • Note: The custom ignore rules you set in this .bitoignore file will be applied to all the repositories where you have enabled indexing.

    2. Create a .bitoignore file inside your repository's root folder.

    Changes to the .bitoignore file are taken into account at the beginning of the indexing process, not during or after the indexing itself.

    Therefore, to implement changes made to the .bitoignore file, you'll need to delete the index and then restart the indexing by clicking on the "Start Indexing" button shown for the repo folder. You can also follow our step-by-step guides to Start Indexing in Visual Studio Code and Start Indexing in JetBrains IDEs.

    Common .bitoignore Patterns

    Understanding these patterns/rules is crucial for effectively managing the files and directories that Bito indexes and excludes in your projects.

    Sample Rule
    Description

    # this is a comment.

    Any line that starts with a # symbol is considered as a comment and will not be processed.

    *

    (Wildcard character) Ignores all files

    **

    (Wildcard character) Match any number of directories.

    Negation ! (exclamation mark)

    When a pattern starts with ! it negates the pattern, meaning it explicitly includes files or directories that would otherwise be ignored. For example, have a look at this sample .bitoignore file:

    Engine/**
    !Engine/Build/BatchFiles/**

    Here !Engine/Build/BatchFiles/** pattern includes all files in the Engine/Build/BatchFiles directory and its subdirectories, even though Engine/** pattern would ignore them.

    .bitoignore Examples

    Exclude Files/Folders

    Exclude Everything Except Specific Files

    To exempt a file, ensure that the negation pattern ! appears afterward, thereby overriding any broader exclusions.

    # Ignore specific file named "config.ini"
    config.ini
    
    # Ignore all files with a '.bak' extension
    *.bak
    
    # Ignore all files with a '.kunal' extension
    *.kunal
    
    # Exclude directories
    backup
    temp/
    dist/vendor
    # Ignore all files except C++, header and python files
    *
    !*.cpp
    !*.h
    !*.py

    Sorry, we don’t currently support repos of this size. Please use .bitoignore to reduce the size of the repo you want Bito to index.

    If a .gitignore file is available in your repo then Bito will also use that to ignore files & folders from indexing process. Both .bitoignore and .gitignore files can work together without any issues.

    At present, Bito considers only those .gitignore files that are placed in the project root directory and .bitoignore files that are placed either in <user-home-directory\.bito\localcodesearch> or <project-root-directory>

    Please note that any changes to the .bitoignore or .gitignore file will take a minimum of 3 to 5 minutes to trigger new indexing.

    Avoid Ambiguous Patterns: Negation patterns can become confusing when they potentially match multiple files. Target specific files or folders rather than using wildcards in negation patterns.

    For example, it is better to use patterns like !Engine/Build/BatchFiles/script.bat instead of !Engine/Build/BatchFiles/**

    What repositories are available in my organization?
    • Replace <Your-Bito-MCP-URL> with the Bito MCP URL you received after completing the AI Architect setup.

      • For the Bito-hosted AI Architect, use the following URL format: https://mcp.bito.ai/<Your-Bito-Workspace-ID>/mcp

        Replace <Your-Bito-Workspace-ID> with your actual Bito workspace ID, which you can find after logging into your Bito account at

    Code review analytics

    Get in-depth insights into your code review process.

    The user-friendly Code Review Analytics dashboards help you track key metrics such as pull requests reviewed, issues found, lines of code reviewed, and understand individual contributions.

    This helps you identify trends and optimize your development workflow.

    Code Review Analytics dashboard

    Bito provides four distinct analytical views to help you understand your code review performance from multiple perspectives:

    1. Overview: High-level workspace metrics and trends

    2. : Individual contributor performance and patterns

    3. : Repository and language-specific insights

    4. : Detailed pull request and issue tracking

    "Overview" dashboard

    The provides a comprehensive high-level view of your workspace's code review performance, showing pull requests reviewed, issues found, and their categorization.

    Key metrics:

    • Code Requests Reviewed - This Month: Total number of code reviews completed by Bito, including both pull requests from git workflows and IDE-based reviews

    • Lines Reviewed - This Month: Total lines of code analyzed across all pull request diffs

    • Repositories Reviewed - This Month: Number of unique repositories that received code review coverage

    "Submitter Analytics" dashboard

    The helps you gain insights into individual contributor patterns and performance with user-level statistics and visualizations.

    Key metrics:

    • Pull Requests Reviewed - This Month: Number of pull requests reviewed for each developer. It helps you identify most active team members.

      • Shows top 30 contributors by pull request count

      • Remaining contributors aggregated under 'Other'

    "Repository Analytics" dashboard

    The helps you understand repository-level performance and language-specific trends across your codebase.

    Key metrics:

    • Pull Requests Reviewed - This Month: Review activity across repositories (top 30 shown, remainder grouped as 'Other'). It identifies which codebases receive most attention.

    • Lines of Code Reviewed (Repo) - This Month: Lines of code reviewed by Bito in each repository (top 30 displayed individually). It helps you understand where development effort is concentrated.

    • Lines of Code Reviewed (Language) - This Month: Breakdown of reviewed code by programming language. It is useful for resource allocation and expertise planning.

    "PR Analytics" dashboard

    The helps you dive deep into individual pull request performance with detailed pull request and issue-level analytics.

    The dashboard organizes pull requests into three tabs:

    1. "Reviewed (Feedback)" tab

    • Shows pull requests where Bito provided actionable feedback

    • These pull requests contain issues that require your attention

    • Click any pull request to access comprehensive details including every feedback item with its category (Security, Performance, Linter, Functionality, etc.), affected programming language, and direct links to the specific code location within the pull request for quick reference.

    2. "Reviewed (No Feedback)" tab

    • Shows pull requests that Bito reviewed but found no actionable issues

    • Indicates clean code submissions

    3. "Skipped" tab

    • Shows pull requests that Bito didn't review due to configuration settings or other constraints

    • Includes skip reasons for transparency

    Benefits for technical leadership

    The detailed code review analytics reports enables tech leads and reviewers to:

    • Trace patterns: Identify recurring issues across pull requests

    • Spot trends: Recognize systematic problems in code quality

    • Connect insights: Link high-level analytics to specific code examples

    Best practices for using analytics

    1. Regular review cadence

    • Check metrics for trend monitoring

    • Review for team performance discussions

    • Analyze for strategic planning

    2. Filtering for insights

    • Use date filters to compare time periods

    • Filter by specific teams or repositories during retrospectives

    • Focus on high-activity contributors or repositories for targeted improvements

    3. Export and sharing

    • Export monthly reports for stakeholder updates

    • Share repository-specific insights with relevant teams

    • Use PowerPoint exports for executive presentations

    • Archive PDF reports for compliance or historical analysis

    4. Action-oriented analysis

    • Identify submitters who might benefit from additional code review training

    • Focus attention on repositories with high issue density

    • Address language-specific patterns through targeted workshops

    • Use acceptance rate trends to validate review effectiveness

    Available commands

    This page provides a complete reference for all commands and options available in AI Code Reviews in CLI. Use it to understand what each command does, when to use it, and how to combine options for common workflows.

    Command structure

    bitoreview <command> [options]

    For convenience, you can also use the short alias br instead of bitoreview:

    br <command> [options]

    Commands overview

    Command
    Description

    review command

    The review command is the core of the CLI. It analyzes your code changes and highlights issues related to bugs, security, performance, and overall code quality.

    Basic syntax

    Examples

    Review scope options

    --type, -t <type>

    Specify which changes to review.

    Supported values:

    • all (default) - Review both committed and uncommitted changes

    • uncommitted - Review only working directory changes

    • committed --base <branch-name> - Review only committed changes against the specified base branch.

    Examples:

    --base <branch>

    Compare changes against a specific branch.

    Example:

    --base-commit <commit>

    Compare changes against a specific commit hash.

    Example:

    Review quality options

    --mode <mode>

    Control the depth and breadth of the review.

    Supported values:

    • essential - Shows only HIGH severity issues for rapid feedback

    • comprehensive (default) - Shows all severity levels for thorough analysis

    Examples:

    --focus <area>

    Concentrate the review on specific code quality aspects.

    Supported values:

    • security - SQL injection, XSS, authentication, data validation

    • performance - Memory leaks, inefficient algorithms, bottlenecks

    • bugs - Logic errors, edge cases, runtime issues

    Examples:

    --severity <level>

    Filter issues by minimum severity level.

    Supported values:

    • high - Critical issues that must be fixed

    • medium - Important issues that should be addressed

    • low - Minor suggestions and style improvements

    Examples:

    Output options

    --interactive, -i

    Enable interactive mode to review and apply fixes one by one.

    Example:

    --plain

    Output plain text without colors or formatting, suitable for logs and CI/CD.

    Example:

    --prompt-only

    Minimal output optimized for AI agent integration.

    Example:

    --no-color

    Disable colored output (similar to --plain but retains structure).

    Example:

    SCM options

    --scm <type>

    Override automatic SCM detection.

    Supported values:

    • git - Git repository

    • svn - Subversion repository

    • hg - Mercurial repository

    Example:

    Configuration options

    --config, -c <path>

    Use a custom configuration file path instead of .bitoreview.yaml in the project root.

    Example:

    --api-key <key>

    Provide API key directly via command line (overrides environment and config file).

    Example:

    --cwd <path>

    Set the working directory for the review.

    Example:

    Debugging options

    --debug, -d

    Enable debug output for troubleshooting.

    Example:

    --verbose, -v

    Enable verbose logging for detailed information.

    Example:

    --max-retries <number>

    Set the number of retry attempts for API calls (default: 2).

    Example:

    config command

    Manage configuration and API keys.

    Set API key

    Interactive mode (prompts for key):

    Direct mode (provide key in command):

    Show API key

    Display your configured API key (masked for security).

    Global options

    --help, -h

    Display help for any command.

    Examples:

    --version

    Show the installed CLI version.

    Example:

    Option combinations

    AI Code Reviews in CLI allows you to combine multiple options for precise control:

    Guide for GitHub (Self-Managed)

    Integrate the AI Code Review Agent into your self-hosted GitHub Enterprise workflow.

    Speed up code reviews by configuring the with your self-managed GitHub Enterprise server. In this guide, you'll learn how to set up the Agent to receive automated code reviews that trigger whenever you create a pull request, as well as how to manually initiate reviews using .

    Video tutorial

    coming soon...

    Create or customize an Agent instance

    Customize the AI Code Review Agent to match your workflow needs.

    provides immediate access to the . To get you started quickly, Bito offers a Default Agent instance—pre-configured and ready to deliver AI-powered code reviews for pull requests and code changes within supported IDEs such as VS Code and JetBrains.

    While the Default Agent is ready for use right away, Bito also gives you the option to create new Agent instances or customize existing ones to suit your specific requirements. This flexibility ensures that the Agent can adapt to a range of workflows and project needs.

    For example, you might configure one Agent to disable automatic code reviews for certain repositories, another to exclude specific Git branches from review, and yet another to filter out particular files or folders.

    This guide will walk you through how to create or customize an Agent instance, unlocking its full potential to streamline your code reviews.

    Repo level settings

    Configure repository-specific Code Review Agent settings using the .bito.yaml file.

    Repo-level Agent settings let you control how the behaves for each repository.

    By placing a .bito.yaml file in the root of your repository, you can define custom review preferences that apply only to that repository.

    Bito automatically detects the presence of a .bito.yaml file in a repository and applies its configuration to override the global Agent settings defined by admins in the Bito Cloud UI.

    This gives developers fine-grained control while admins maintain global oversight and billing management.

    todo.txt

    Ignores a specific file named todo.txt

    *.txt

    Ignores all files ending with .txt

    *.*

    Ignores all files with any extension.

    Engine/ or Engine/**

    Ignores all files in the Engine directory and their subdirectories (contents).

    subdirectory1/example.html

    Ignore the file named example.html, specifically located in the directory named subdirectory1.

    !contacts.txt

    (Negation Rule) Explicitly tracks contacts.txt, even if all .txt files are ignored.

    !Engine/Batch/Builds

    (Negation Rule) Tracks the Builds directory inside Engine/Batch, overriding a broader exclusion.

    !Engine/Batch/Builds/**

    (Negation Rule) Tracks the Builds directory and all of its subdirectories inside Engine/Batch, overriding a broader exclusion.

    !.java

    (Negation Rule) Ensures that all .java files are included, overriding any previous ignore rules that might apply to them.

    !subdirectory1/*.txt

    (Negation Rule) Track files with the .txt extension located specifically in the subdirectory1 directory, even if other rules might otherwise ignore .txt files.

    BitoUtil?.java

    The ? (question mark) matches any single character in a filename or directory name.

    alpha.bito.ai
    18.188.201.104
  • 3.23.173.30

  • 18.216.64.170

  • Prerequisites
    Learn more
    Include Source/Target Branches filter
    Submitters - This Month: Count of unique developers (based on Git handles) whose pull requests were reviewed by Bito
  • Issues Found - This Month: Total number of issues identified across all reviewed code

  • Issues Categories - This Month: Visual breakdown of issues by primary categories (Security, Performance, Functionality, etc.)

    • Note: When issues span multiple categories, Bito assigns the most relevant primary category

  • Merged PRs - This Month: Number of Bito-reviewed pull requests that were subsequently merged or closed

  • Issues Evaluated for Acceptance Rate - This Month: Issues in merged pull requests evaluated for potential fixes

  • Acceptance Rate (Merged PRs) - This Month: Percentage of agent-identified issues that were potentially addressed

    • Calculated based on code changes detected in related hunks when pull requests were merged

    • Available for reviews conducted on or after August 8th, 2024

    • Note: This is an approximation based on code change detection

  • Pull Requests Skipped - This Month: Pull requests excluded from review due to:

    • Matching exclusion filters in agent configuration

    • Empty diffs

    • Invalid Bito plan status

  • Skip Reason - This Month: Breakdown of why specific pull requests were skipped

  • Lines of Code Reviewed - This Month: Lines of code reviewed by Bito per developer. It is useful for understanding workload distribution.
    • Displays contributors with minimum 100 lines reviewed

    • Top 30 contributors shown individually

    • Remaining contributors grouped under 'Other'

  • Issues Reported Per 1K Lines - This Month: Issue density normalized by code volume for developers with at least 1,000 lines of code, enabling fair comparison across different contribution levels. It helps identify patterns in code quality by developer

  • Issue Distribution by Category - This Month: Breakdown of issues by type for each developer, showing both total count and percentage. Categories with fewer than 5 issues are excluded, with bar height representing total issues and width showing percentage distribution. It helps identify individual strengths and areas for improvement.

  • Issues Reported Per 1K Lines (Repo) - This Month: Issue density for repositories with at least 1,000 lines of changes. It identifies repositories that may need additional attention

  • Issues Reported Per 1K Lines (Language) - This Month: Issue rates across different programming languages (minimum 100 lines required). It helps you identify language-specific training needs.

  • Issue Distribution by Category × Language - This Month: Issues categorized by both type and programming language, with visualization showing total count (bar height) and percentage distribution (bar width). Categories with fewer than 5 issues excluded. It reveals language-specific issue patterns.

  • Issue Distribution by Category × Repo - This Month: Issues analyzed across category and repository dimensions, excluding categories with fewer than 5 issues. The visualization shows total issues (bar height) and percentage distribution (bar width). It identifies repository-specific issue trends.

  • Useful for tracking reviews that generated value
    Targeted mentoring: Provide specific guidance based on actual code issues
  • Process improvement: Adjust development practices based on concrete data

  • Use
    for issue tracking and mentoring

    Use the Filters button (top-right) to customize your view. You can also export the data to PowerPoint or PDF using the Share menu button (top-right).

    Use the Filters button (top-right) to customize your view. You can also export the data to PowerPoint or PDF using the Share menu button (top-right).

    Use the Filters button (top-right) to customize your view. You can also export the data to PowerPoint or PDF using the Share menu button (top-right).

    Use the Filter button (top-left) to customize views by:

    • Specific submitters

    • Date ranges

    • Pull request status

    Submitter Analytics
    Repository Analytics
    PR Analytics
    Overview dashboard
    Submitter Analytics dashboard
    Repository Analytics dashboard
    PR Analytics dashboard
    Overview
    Submitter Analytics
    Repository Analytics
    PR Analytics

    Display the installed CLI version

  • --base option is mandatory with this type.

  • best-practices - Code style, design patterns, maintainability

  • tests - Test coverage, test quality, testability

  • documentation - Comments, documentation quality, code clarity

  • p4 - Perforce repository

  • plain - No version control (analyze files directly)

  • review

    Analyze code changes and generate AI-powered feedback

    config

    Manage configuration settings and API keys

    --help

    Display help information

    --version

    bitoreview review [files...] [options]
    # Review all changes
    bitoreview review
    
    # Review specific files
    bitoreview review src/app.js src/utils/helper.js
    
    # Review files using glob patterns
    bitoreview review "src/**/*.js"
    
    # Review only uncommitted changes
    bitoreview review --type uncommitted
    
    # Run a fast, security-focused review
    bitoreview review --focus security --mode essential
    bitoreview review --type uncommitted
    bitoreview review --type committed --base main
    bitoreview review --base main
    bitoreview review --base develop
    bitoreview review --base-commit abc123
    # Quick review
    bitoreview review --mode essential
    
    # Thorough review
    bitoreview review --mode comprehensive
    bitoreview review --focus security
    bitoreview review --focus performance --mode essential
    # Show only high severity issues
    bitoreview review --severity high
    
    # Show medium and high severity
    bitoreview review --severity medium
    bitoreview review --interactive
    # or
    bitoreview review -i
    bitoreview review --plain
    bitoreview review --plain > review-report.txt
    bitoreview review --prompt-only
    bitoreview review --no-color
    bitoreview review --scm git
    bitoreview review --scm plain
    bitoreview review --config .bitoreview-custom.yaml
    bitoreview review -c config/bitoreview.yaml
    bitoreview review --api-key YOUR_API_KEY_HERE
    bitoreview review --cwd /path/to/project
    bitoreview review --debug
    bitoreview review -d
    bitoreview review --verbose
    bitoreview review -v
    bitoreview review --max-retries 5
    bitoreview config set-api-key [key]
    bitoreview config set-api-key
    bitoreview config set-api-key YOUR_API_KEY_HERE
    bitoreview config show-api-key
    bitoreview --help
    bitoreview review --help
    bitoreview config --help
    bitoreview --version
    # Fast pre-commit security check
    bitoreview review --type uncommitted --focus security --mode essential
    
    # Comprehensive performance review against main
    bitoreview review --base main --focus performance
    
    # High-severity bugs only in specific files
    bitoreview review src/critical/*.js --focus bugs --severity high
    
    # Plain text output for CI/CD with retries
    bitoreview review --plain --max-retries 3
  • Authentication: Select "OAuth"

  • What repositories are available in my organization?

    Note:

    • Replace <Your-Bito-MCP-URL> with the Bito MCP URL you received after completing the AI Architect setup.

      • For the Bito-hosted AI Architect, use the following URL format: https://mcp.bito.ai/<Your-Bito-Workspace-ID>/mcp

        Replace <Your-Bito-Workspace-ID> with your actual Bito workspace ID, which you can find after logging into your Bito account at

    repo
    access
    . Fine-grained tokens are not supported.
  • For GitLab:

    1. Create GitLab token with api scope Learn more

  • For Bitbucket:

    1. Depending on your Bitbucket setup, you may need one of the following:

      • For Bitbucket Cloud use API Token. Learn more

      • For Bitbucket Enterprise (Self-Hosted) use HTTP Access Token.

    2. Required scopes:

      • read:pullrequest:bitbucket

      • write:pullrequest:bitbucket

    3. Enter both your Bitbucket email address and the personal access token in Bito

  • For Self-managed GitHub, GitLab, and Bitbucket:

    If you're using self-managed Git instances (GitHub Enterprise, GitLab Self-Managed, or Bitbucket Server):

    1. Select your Git provider

    2. Enter your Git domain URL (e.g., https://bitbucket.example.com)

    3. Configure Network Access

      • If your network restricts external services from accessing your Git server, add these Bito IP addresses to your allowed IP list:

  • 18.188.201.104
    3.23.173.30
    18.216.64.170

    Feel free to experiment with both approaches on different pull requests to find what works best for your needs.

    Learn more
    Prerequisites

    Before proceeding, ensure you've completed all necessary prerequisites.

    1. Create a GitHub Personal Access Token (classic):

    For GitHub pull request code reviews, ensure you have a CLASSIC personal access token with repo scope. We do not support fine-grained tokens currently.

    View Guide

    GitHub Personal Access Token (classic)

    2. Authorizing a GitHub Personal Access Token for use with SAML single sign-on:

    If your GitHub organization enforces SAML Single Sign-On (SSO), you must authorize your Personal Access Token (classic) through your Identity Provider (IdP); otherwise, Bito's AI Code Review Agent won't function properly.

    For detailed instructions, please refer to the GitHub documentation.

    Installation and configuration steps

    Follow the step-by-step instructions below to install the AI Code Review Agent using Bito Cloud:

    Step 1: Log in to Bito

    Log in to Bito Cloud and select a workspace to get started.

    Step 2: Open the Code Review Agents setup

    Click Repositories under the CODE REVIEW section in the sidebar.

    Step 3: Select your Git provider

    Bito supports integration with the following Git providers:

    • GitHub

    • GitHub (Self-Managed)

    • GitLab

    • GitLab (Self-Managed)

    • Bitbucket

    • Bitbucket (Self-Managed)

    Since we are setting up the Agent for self-managed GitHub Enterprise server, select GitHub (Self-Managed) to proceed.

    Step 4: Register & install the Bito App for GitHub

    To enable pull request reviews, you need to register and install the Bito’s AI Code Review Agent app on your self-managed GitHub Enterprise server.

    You need to enter the details for the below mentioned input fields:

    • Hosted GitHub URL: This is the domain portion of the URL where you GitHub Enterprise Server is hosted (e.g., https://yourcompany.github.com). Please check with your GitHub administrator for the correct URL.

    • Personal Access Token: Generate a Personal Access Token (classic) with “repo” scope in your GitHub (Self-Managed) account and enter it into the Personal Access Token input field. We do not support fine-grained tokens currently. For guidance, refer to the instructions in the Prerequisites section.

    Click Validate to ensure the login credentials are working correctly. If the credentials are successfully validated, click the Install Bito App for GitHub button. This will redirect you to your GitHub (Self-Managed) server.

    Before proceeding, you’ll be asked to enter your GitHub App name — this is the name that will appear in your GitHub Apps list and during installations. Choose a clear, recognizable name (for example, “Bito Code Reviewer”).

    Now select where you want to install the app:

    • Choose All repositories to enable Bito for every repository in your account.

    • Or, select Only select repositories and pick specific repositories using the dropdown menu.

    Click Install & Authorize to proceed. Once completed, you will be redirected to Bito.

    Step 5: Enable AI Code Review Agent on repositories

    After connecting Bito to your self-managed GitHub Enterprise server, you'll see a list of repositories that Bito has access to.

    Use the toggles in the Code Review Status column to enable or disable the Agent for each repository.

    Step 6: Automated and manual pull request reviews

    Once a repository is enabled, you can invoke the AI Code Review Agent in the following ways:

    1. Automated code review: By default, the Agent automatically reviews all new pull requests and provides detailed feedback.

    2. Manually trigger code review: To initiate a manual review, simply type /review in the comment box on the pull request and submit it. This action will start the code review process.

    The AI-generated code review feedback will be posted as comments directly within your pull request, making it seamless to view and address suggestions right where they matter most.

    Step 7: Specialized commands for code reviews

    Bito also offers specialized commands that are designed to provide detailed insights into specific areas of your source code, including security, performance, scalability, code structure, and optimization.

    • /review security: Analyzes code to identify security vulnerabilities and ensure secure coding practices.

    • /review performance: Evaluates code for performance issues, identifying slow or resource-heavy areas.

    • /review scalability: Assesses the code's ability to handle increased usage and scale effectively.

    • /review codeorg: Scans for readability and maintainability, promoting clear and efficient code organization.

    • /review codeoptimize: Identifies optimization opportunities to enhance code efficiency and reduce resource usage.

    By default, the /review command generates inline comments, meaning that code suggestions are inserted directly beneath the code diffs in each file. This approach provides a clearer view of the exact lines requiring improvement. However, if you prefer a code review in a single post rather than separate inline comments under the diffs, you can include the optional parameter: /review #inline_comment=False

    For more details, refer to Available Commands.

    Step 8: Chat with AI Code Review Agent

    Ask questions directly to the AI Code Review Agent regarding its code review feedback. You can inquire about highlighted issues, request alternative solutions, or seek clarifications on suggested fixes.

    To start the conversation, type your question in the comment box within the inline suggestions on your pull request, and then submit it. Typically, Bito AI responses are delivered in about 10 seconds. On GitHub and Bitbucket, you need to manually refresh the page to see the responses, while GitLab updates automatically.

    Bito supports over 20 languages—including English, Hindi, Chinese, and Spanish—so you can interact with the AI in the language you’re most comfortable with.

    Step 9: Configure Agent settings

    Agent settings let you control how reviews are performed, ensuring feedback is tailored to your team’s needs. By adjusting the options, you can:

    • Make reviews more focused and actionable.

    • Apply your own coding standards.

    • Reduce noise by excluding irrelevant files or branches.

    • Add extra checks to improve code quality and security.

    Learn more

    Screenshots

    Screenshot # 1

    Screenshot # 2

    Changelist in AI Code Review Agent's feedback.

    Screenshot # 3

    The Free Plan offers AI-generated pull request summaries to provide a quick overview of changes. For advanced features like line-level code suggestions, consider upgrading to the Team Plan. For detailed pricing information, visit our Pricing page.

    Get a 14-day FREE trial of Bito's AI Code Review Agent.

    AI Code Review Agent
    available commands

    Supported versions:

    • GitHub Enterprise Server: 3.0 and above

    If your network blocks external services from interacting with the GitHub server, whitelist all of Bito's gateway IP addresses in your firewall to ensure Bito can access your self-hosted repositories. The Agent response can come from any of these IPs.

    • List of IP addresses to whitelist:

    Bito app uses these permissions:

    • Read access to metadata

    • Read and write access to code, issues, and pull requests

    To customize the Agent’s behavior, you can edit existing configurations or create new Agents as needed.

    Note: To enhance efficiency, the automated code reviews are only triggered for pull requests merging into the repository’s default branch. This prevents unnecessary processing and Advanced AI requests usage.

    To review additional branches, you can use the . Bito will review pull requests when the source or target branch matches the list.

    The Include Source/Target Branches filter applies only to automatically triggered reviews. Users should still be able to trigger reviews manually via the /review command.

    The AI Code Review Agent automatically reviews code changes up to 5000 lines when a pull request is created. For larger changes, you can use the /review command.

    It may take a few minutes to get the code review posted as a comment, depending on the size of the pull request.

    AI-generated pull request (PR) summary

    Changelist showing key changes and impacted files in a pull request.

    AI code review feedback posted as comments on the pull request.

    Creating or customizing AI Code Review Agents

    Once Bito is connected to your GitHub/GitLab/Bitbucket account, you can easily create a new Agent or customize an existing one to suit your workflow.

    1. To create a new Agent, navigate to the Code Review > Repositories dashboard and click the New Agent button to open the Agent configuration form.

    1. If you’d like to customize an existing agent, simply go to the same Code Review > Repositories dashboard and click the Settings button next to the Agent instance you wish to modify.

    Once you have selected an Agent to customize, you can modify its settings in the following areas:

    1. General settings

    Agent name

    Assign a unique alphanumeric name to your Agent. This name acts as an identifier and allows you to invoke the Agent in supported clients using the @<agent_name> command.

    2. Customization options

    Bito provides six tabs for in-depth Agent customization.

    These include:

    1. Review

    2. Custom Guidelines

    3. Filters

    4. Tools

    5. Chat

    6. Functional Validation

    Let's have a look at each tab in detail.

    a. Review

    In this tab, you can configure how and when the Agent performs reviews:

    • Review language: Select the output language for code review feedback. Bito supports over 20 languages, including English, Hindi, Chinese, and Spanish. The AI code review feedback will be posted on the pull requests in the selected language.

    • Review feedback mode: Choose between Essential and Comprehensive review modes and tailor review request settings to fit your team's unique workflow requirements.

      • In Essential mode, only critical issues are posted as inline comments, and other issues appear in the main review summary under "Additional issues".

      • In Comprehensive mode, Bito also includes minor suggestion and potential nitpicks as inline comments.

    • Automatic review: Toggle to enable or disable automatic reviews when a pull request is created and ready for review.

    • Automatic incremental review: Toggle to enable or disable reviews for new commits added to a pull request. Only changes since the last review are assessed.

      • Batch time: Specifies how long the AI Code Review Agent waits before running an incremental review after new commits are pushed. The value can range from 0m (review immediately) to 24h (review after 24 hours). Lower values result in more frequent incremental reviews.

        Examples:

    • Request changes comments: Enable this option to get Bito feedback as "Request changes" review comments. Depending on your organization's Git settings, you may need to resolve all comments before merging.

    • Draft pull requests: By default, the Agent excludes draft pull requests from automated reviews. Disable this toggle to include drafts.

    • Automatic summary: Toggle to enable automatic generation of AI summaries for changes, which are appended to the pull request description.

    • Change Walkthrough: Enable this option to generate a table of changes and associated files, posted as a comment on the pull request.

    • Allow config file settings: Enabling this setting will allow Agent Settings to be overridden at a repository level by placing a .bito.yaml file in the root folder of that repository.

    • Auto-apply agent rules: Automatically detect and apply best-practice guidelines from agent configuration files like CLAUDE.md, AGENTS.md, .cursor/rules, .windsurf/rules, or GEMINI.md. When enabled, Bito uses these files to guide its code review.

    • Generate interaction diagrams: When enabled, Bito will post interaction diagrams during code reviews to visualize architecture and impacted changes.

    • Adaptive learning: When enabled, Bito prioritizes future suggestions based on how developers responded to past Bito reviews.

      • Filter unaddressed suggestions: When enabled, Bito will reduce recommending suggestions that are consistently unaddressed. Critical suggestions may still be made.

    b. Custom Guidelines

    Create, apply, and manage custom code review guidelines to align the AI agent’s reviews with your team’s specific coding standards.

    The agent will follow your guidelines when reviewing pull requests.

    Learn more

    c. Filters

    Use filters to customize which files, folders, and Git branches are reviewed when the Agent triggers automatically on pull requests:

    • Exclude Files and Folders: A list of files/folders that the AI Code Review Agent will not review if they are present in the diff. You can specify the files/folders to exclude from the review by name or glob/regex pattern. The Agent will automatically skip any files or folders that match the exclusion list. This filter applies to both manual reviews initiated through the /review command and automated reviews.

    • Include Source/Target Branches: This filter defines which pull requests trigger automated reviews based on their source or target branch, allowing you to focus on critical code and avoid unnecessary reviews or AI usage. By default, pull requests merging into the repository’s default branch are subject to review. To review additional branches, you can use the Include Source/Target Branches filter. Bito will review pull requests when the source or target branch matches the list. This filter applies only to automatically triggered reviews. Users should still be able to trigger reviews manually via the /review command.

    • Exclude Labels: Specify pull request (PR) labels to exclude from review by name or glob/regex pattern. The agent will skip any PRs tagged with these labels in GitHub or GitLab.

    d. Tools

    Enhance the Agent’s reviews by enabling additional tools for static analysis, security checks, and secret detection:

    • Secret Scanner: Enable this tool to detect and report secrets left in code changes.

    e. Chat

    You can chat with the AI Code Review Agent to ask follow-up questions, request alternative solutions, or get clarification on review comments. From this tab, you can manage how the agent responds to these interactions.

    • Auto reply: Enable Bito to automatically reply to user questions posted as comments on its code review suggestions—no need to tag @bitoagent or @askbito.

    f. Functional Validation

    Automatically validate pull requests against Jira tickets. Ticket references are detected in the PR description, title, or branch name.

    Learn more

    If you are editing an existing agent, click Save to apply the changes.

    3. Select repositories for code review

    1. If you are creating a new agent instance, click Select repositories after configuration to choose the Git repositories the agent will review.

    1. To enable code review for a specific repository, simply select its corresponding checkbox. You can also enable repositories later, after the Agent has been created. Once done, click Save and continue to save the new Agent configuration.

    1. When you save the configuration, your new Agent instance will be added and available on the Code Review > Repositories page.

    Connecting your Bito workspace to GitHub, GitLab, or Bitbucket
    AI Code Review Agent

    For more information and examples, see .

    Why use repo-level settings

    Large organizations often have different review needs across projects.

    Centralized (agent-level) settings don’t scale well — especially when each repo has its own coding standards, branch structure, or tooling.

    Repo-level configuration helps by:

    • Enabling custom review behavior per repository.

    • Allowing custom guidelines flexibility at the repo level.

    • Keeping settings version-controlled and transparent.

    How it works

    1. Add a .bito.yaml file to the root of your repository. To get started, download a sample .bito.yaml file.

    2. Add the supported configuration fields (key-value pairs) to specify how the Code Review Agent should behave for that repository.

    3. When the Code Review Agent runs, Bito automatically detects the file and applies those settings for that repository.

    Enabling repo-level overrides

    Admins can manage this from the Agent Settings panel.

    • Setting name: Allow config file settings

    • Description: Enabling this allows repositories to override Agent Settings by placing a .bito.yaml file in the repo root.

    Supported settings in .bito.yaml file

    You can override the following Code Review Agent settings:

    suggestion_mode

    Controls how detailed the review comments are. Choose between Essential and Comprehensive review modes:

    • In Essential mode, only critical issues are posted as inline comments, and other issues appear in the main review summary under "Additional issues".

    • In Comprehensive mode, Bito also includes minor suggestion and potential nitpicks as inline comments.

    Valid values: essential or

    post_description

    Automatically create summary of changes and append to your existing pull request summary. Valid values: true or false

    post_changelist

    Adds a walkthrough section to pull request comments. Valid values: true or false

    include_source_branches

    Source branches defined using comma-separated GLOB or regex patterns for which Bito automatically reviews pull requests. Example: "feature/*, release/*, main"

    Sample .bito.yaml file

    Download .bito.yaml file

    From GitHub:

    You can download a sample .bito.yaml configuration file directly from Bito’s official GitHub repository.

    This file includes all supported configuration fields with example values to help you get started quickly.

    1. Go to the Bito GitHub repository.

    2. Open the .bito.yaml file.

    3. Click the Download raw file button to download it.

    From Bito Cloud UI:

    You can also download the sample .bito.yaml configuration file from the Bito Cloud UI.

    • Go to Repositories dashboard.

    • Click the Download settings file button given in the Agent panel.

    Rules and limits

    • The .bito.yaml file is read from the source branch of the pull request.

    • If a repo defines custom guidelines, agent-level guidelines are ignored for that repository.

    • If any property in the .bito.yaml file contains an invalid value, the entire configuration file will be rejected and default Agent Settings will be used instead.

    • If a property is missing in the .bito.yaml file, the corresponding value from the global Agent Settings will be used instead.

    AI Code Review Agent
    suggestion_mode: comprehensive       # 'essential' = only major issues, 'comprehensive' = everything
    post_description: true                # Include summary description in PR comment
    post_changelist: true                 # Include walkthrough of changes
    
    include_source_branches: feature/**,bugfix/**
    include_target_branches: main,develop
    exclude_files: docs/**,README.md
    
    exclude_draft_pr: true            # Don't review draft PRs
    secret_scanner_feedback: true      # Enable secret scanning feedback
    linters_feedback: true             # Enable linting / static analysis
    
    custom_guidelines:
      general:
        - name: "Global Checks"
          path: "./guidelines/global_checks.txt"
        - name: "Security Rules"
          path: "./guidelines/security.txt"
        - name: "Legacy Style Guide"
          path: "./guidelines/legacy.txt"
        - name: "Performance Checks"
          path: "./guidelines/perf.txt"
        - name: "Code Style"
          path: "./guidelines/style.txt"
      per_language:
        python:
          name: "Python Best Practices"
          path: "./guidelines/py.txt"
        javascript:
          name: "JS Style Guide"
          path: "./guidelines/js.txt"
        typescript:
          name: "TS Checks"
          path: "./guidelines/ts.txt"
        java:
          name: "Java Coding Standards"  
          Path: "./guidelines/java.txt"  
    

    Note: Repo-level overrides are applied only if your workspace admin has enabled “Allow config file settings” in . This option is required for repo-level overrides to take effect and is turned on by default.

    Note: Only workspace admins can toggle this setting from the Bito dashboard (cannot be changed via .bito.yaml file).

    Note: Web browsers such as Google Chrome do not allow downloading files that begin with a dot .. As a result, when you download the sample settings file, it will be saved with a different name (for example, agent.yaml or bito.yaml). To use it correctly, rename the file to .bito.yaml before adding it to your repository.

    Note: By default, files that start with a dot . are hidden in most file explorers.

    To view hidden files:

    • Windows: In File Explorer, go to the top menu bar, click View, then enable Hidden items.

    Note: On macOS, the Finder app may not allow naming a file starting with a dot (e.g., .bito.yaml). In that case, open Terminal and use the following command to rename the file (replace filename.yaml with your actual file name):

    mv filename.yaml .bito.yaml

    Integrating with Linear

    Connect Bito's AI Architect with Linear for feasibility analysis, technical design, and cross-repo impact assessment.

    Planning is where engineering teams lose the most time. This is where starts.

    Senior engineers and tech leads spend hours on work that should take minutes — reading through old issues to understand what went wrong before, figuring out what a one-line ticket actually requires, mapping out which services will be affected and which ones have been fragile in the past.

    AI Architect automates this work inside Linear. When an issue is created, AI Architect posts a detailed implementation plan directly as a comment on the ticket. Feasibility analysis, story breakdown, risk warnings, historical patterns from your team's own issues — all generated in minutes, right where your team plans.

    Agent Configuration: bito-cra.properties File

    Setting up your agent: understanding the bito-cra.properties file

    The bito-cra.properties file offers a comprehensive range of options for configuring the , enhancing its flexibility and adaptability to various workflow requirements.

    bito-cra.properties Available Options

    Property Name
    Supported Values
    read:workspace:bitbucket
  • read:repository:bitbucket

  • read:user:bitbucket

  • Learn more
    alpha.bito.ai
    18.188.201.104
  • 3.23.173.30

  • 18.216.64.170

  • Read access to organization members

    Learn more
    Include Source/Target Branches filter
  • 10s → waits 10 seconds before running the review

  • 12m → waits 12 minutes before running the review

  • 1h10m → waits 1 hour and 10 minutes before running the review

  • Learn more
    Learn more
    Excluding Files, Folders, or Branches with Filters
    comprehensive

    macOS: Press Command + Shift + . in Finder.

  • Linux: Run ls -a in your terminal.

  • include_target_branches

    Target branches defined using comma-separated GLOB or regex patterns for which Bito automatically reviews pull requests. Example: "feature/*, release/*, main"

    exclude_files

    Comma-separated file path GLOB patterns to exclude from code reviews. Example: "*.md, *.yaml, config/*"

    exclude_draft_pr

    Excludes draft pull requests from automatic reviews. Valid values: true or false

    secret_scanner_feedback

    Enables or disables secret scanning feedback. Bito detects and reports secrets left in code changes. Valid values: true or false

    linters_feedback

    Run Linting tools during code reviews. Valid values: true or false

    custom_guidelines

    Adds repo-defined coding guidelines, supporting both general and language-specific configurations. Provide the name and path to review guidelines that you want bito to follow. These files must exist in your source branch at review time. We accept up to 3 general guidelines and 1 language specific guideline per language. Example:

    dependency_check.enabled

    Run Dependency Check analysis during code reviews.

    Valid values: true or false

    repo_level_guidelines_enabled

    When enabled, Bito will automatically detect and use best-practice guidelines from agent configuration files such as CLAUDE.md, AGENTS.md, GEMINI.md, .cursor/rules, or .windsurf/rules during code reviews. Valid values: true or false

    sequence_diagram_enabled

    When enabled, Bito will generate interaction diagrams during code reviews to visualize the architecture and impacted components in the submitted changes. Currently, it is supported for GitHub and GitLab. Valid values: true or false

    static_analysis.fb_infer.enabled

    Run Static Analysis tools during code reviews for providing better feedback. Valid values: true or false

    labels_excluded

    Comma-separated list of labels that, if present on a pull request or merge request, skip automatic review. This is case-sensitive by default. For example, if we mention "Bug" in the repo-level .bito.yaml file and the tagged label is "bug", we won't match it. Users can use regex to make it case-insensitive, e.g., (?i)^bug$ or (?i)bug. Example: "wip, do-not-review, chore, size/*"

    post_as_request_changes

    Enable this option to get Bito feedback as "Request changes" review comments. Depending on your Git provider settings, you may need to resolve all comments before merging. For GitHub, this will automatically enable auto-approve for resolved PRs. Valid values: true or false

    functional_validation_enabled

    Enable this option to automatically validate pull requests against Jira ticket referenced in PR description, title, or branch name. Jira Integration must be completed from Bito dashboard for this to work. Valid values: true or false

    Agent Settings
    custom_guidelines:
      general:
        - name: "Global Checks"
          path: "./guidelines/global_checks.txt"
        - name: "Security Rules"
          path: "./guidelines/security.txt"
        - name: "Legacy Style Guide"
          path: "./guidelines/legacy.txt"
        - name: "Performance Checks"
          path: "./guidelines/perf.txt"
        - name: "Code Style"
          path: "./guidelines/style.txt"
      per_language:
        python:
          name: "Python Best Practices"
          path: "./guidelines/py.txt"
        javascript:
          name: "JS Style Guide"
          path: "./guidelines/js.txt"
        typescript:
          name: "TS Checks"
          path: "./guidelines/ts.txt"
        java:
          name: "Java Coding Standards"  
          Path: "./guidelines/java.txt"
    What gets posted on your issue

    When AI Architect analyzes a Linear issue, it produces a structured Markdown implementation plan that covers:

    • Feasibility assessment — Is this viable given your current architecture? Which services are involved, and how stable are they? What's the blast radius if something goes wrong?

    • Story breakdown — A full decomposition into actionable tasks with acceptance criteria, dependencies, and recommended execution order.

    • Effort estimates — Both traditional and agentic estimates, with a breakdown of where AI tooling saves the most time and where it doesn't.

    • Proactive risk detection — Race conditions in concurrent flows, memory leak patterns, regression-prone areas, API rate-limiting gaps, security concerns. Each risk comes with a suggested mitigation drawn from your team's actual history.

    • Historical pattern insights — AI Architect references past issues to flag problems your team has already encountered.

    • Open questions — Technical decisions that need to be made before implementation begins, so they don't surface mid-sprint.

    The plan is in Markdown. Engineers can paste it directly into Cursor, Claude Code, or any other coding agent to start implementation with full architectural context already loaded.

    Prerequisites

    Before setting up the Linear integration, make sure the following are in place for your workspace:

    • The AI Architect feature is enabled.

    • Linear analysis is enabled.

    If either of these isn't active yet, contact the Bito team at [email protected] to enable them.

    Setup

    1

    Enable AI Architect for your workspace

    AI Architect can be set up using one of the following deployment options:

    Bito-hosted

    AI Architect is managed and maintained by Bito.

    • Follow the to get started.

    • If AI Architect isn't already active for your workspace, contact the Bito team at to enable it.

    Self-hosted

    AI Architect is deployed and managed within your own infrastructure.

    • Follow the to set up and configure AI Architect for your workspace.

    2

    Connect Linear

    1. Navigate to the page in your Bito dashboard.

    3

    Select your Linear teams

    After connecting, Bito will display a list of teams from your Linear site that Bito has access to.

    To enable or disable teams, go to page and select your deployment type.

    4

    Enable the feature flags

    Two flags control how AI Architect behaves on your Linear issues. Contact the Bito team at to enable them.

    Flag
    What it enables

    How to trigger AI Architect in Linear

    Automatic analysis

    When enabled, AI Architect listens for new or updated issues in your selected teams and posts an implementation plan automatically — no action needed from the issue creator.

    On-demand analysis

    Trigger analysis manually on any issue by adding one of the following in a Linear comment:

    Or by adding one of these labels to the issue:

    Auto triage

    By default, when auto-analysis is enabled, AI Architect generates a plan for every new or updated issue in your selected Linear teams. Auto triage adds a layer of intelligence before that happens: it evaluates whether an issue actually needs a detailed implementation plan, and skips generating one if it doesn't.

    This keeps your issues clean and avoids generating plans for work that is already well-defined or straightforward enough to implement without one.

    How auto triage works

    When an issue is created or updated, AI Architect reads the full ticket — title, description, and comments — and assigns a complexity score from 1 to 10.

    Score
    What happens

    Below threshold (default: 7)

    Plan is skipped. An optional comment is posted on the issue.

    At or above threshold

    Implementation plan is generated as usual.

    When an issue is below the threshold, AI Architect posts the following comment:

    AI Architect — This issue doesn't appear to need a detailed implementation plan based on its scope and complexity. If you'd like one anyway, type @Bito with what you want (example: @Bito technical plan)

    Supported attachment formats

    When evaluating a ticket, AI Architect can read attachments in the following formats:

    • .pdf

    • .docx

    • .xlsx

    • .csv

    • .json

    • .yaml

    • .zip

    Configuration

    The following settings control how auto triage behaves for your workspace. Contact the Bito team at [email protected] to configure these.

    Setting
    Options
    Description

    Complexity threshold

    Default: 7

    Minimum score required for a plan to be generated.

    Auto analysis type

    plan / comment

    Whether to generate a full plan or post a guidance comment when an issue is created or updated.

    What AI Architect knows about your team

    AI Architect draws on multiple sources when it analyzes an issue:

    Your codebase — All your repositories, services, API endpoints, modules, and design patterns are indexed into a knowledge graph. AI Architect understands how your system fits together, not just what individual files contain.

    Your Linear history — AI Architect analyzes your team's past issues and categorizes recurring patterns: race conditions across subsystems, services with instability histories, security and credential issues, error handling gaps, API rate-limiting problems. This context is applied to every new issue so your team doesn't repeat what's already been learned.

    Other context sources — AI Architect also incorporates insights from Jira tickets, Confluence documents, observability data, and any custom instructions you provide.

    Learn how Bito builds the knowledge graph

    Agent skills power the Linear integration

    AI Architect works through purpose-built agentic skills. The same skills that run on Jira issues are used for Linear, delivering full feature parity:

    bito-epic-to-plan — Converts a high-level issue or PRD into a sprint-ready plan with multiple architectural approaches, then granular tasks with effort estimates and acceptance criteria.

    bito-scope-to-plan — Auto-scales its output — a full multi-workstream plan for complex issues, a focused single-workstream plan for simpler ones.

    See all available skills

    Disconnecting Linear

    To disconnect, navigate to the Manage integrations page and disconnect Linear from there. Bito will automatically clean up the integration — removing the webhook from your Linear workspace, clearing your team selection, and revoking stored credentials.

    Error messages

    The following messages may appear if something goes wrong with your Linear integration.

    Situation
    Message

    Integration is no longer valid (token revoked or expired)

    "Your Linear integration is no longer valid. To continue, please disconnect and reconnect your Linear workspace."

    Bito's access in Linear was revoked by an admin

    "Access for the Bito Linear app was revoked. Please disconnect and reconnect the integration to avoid disruptions."

    Connecting user wasn't a Linear workspace admin

    "Insufficient permissions. Creating webhooks in Linear requires the 'admin' OAuth scope, which is granted only when a Linear workspace admin completes the connection. Ensure the connecting user is a workspace admin and try again."

    AI Architect
    @bito
    /bito
    #bito
    bito
    bito-analyse
    bito-analyze

    Requires the Linear Auto Analysis Enabled flag to be enabled for your workspace. Contact the Bito team at to enable it.

    You can download the plan (as a Markdown file) and use it in your agentic tools (Cursor, Claude Code, etc.) to further refine it or begin implementation.

    You can use @bito, /bito, or #bito to ask Bito to update the analysis, refine the plan based on new information, or focus on a specific concern.

    Example:

    Requires the Linear Analysis Enabled flag to be enabled for your workspace. Contact the Bito team at to enable it.

    Explicit triggers always win. Even if auto-analysis is turned off, using @bito in a comment or applying a trigger label will force an analysis to run.

    Note: Only events from your selected Linear teams are processed. Events from unselected teams are filtered out before reaching auto triage.

    Once a plan or skip notification has been posted on an issue, auto triage will not re-trigger automatically on subsequent updates. To request a new plan, use @bito, /bito, or #bito directly on the issue.

    Note: AI Architect can perform live web research to incorporate up-to-date technical context into its evaluation and plan generation.

    SVG files are supported as images only. Binary image attachments (.png, .jpg, .gif, .webp) are not yet supported, full image support is coming soon.

    Is Mandatory?
    Description

    mode

    • cli

    • server

    Yes

    Whether to run the Docker container in CLI mode for a one-time code review or as a webhooks service to continuously monitor for code review requests.

    pr_url

    Pull request URL in GitLab, GitHub and Bitbucket

    Yes, if the mode is CLI.

    The pull request provides files with changes and the actual code modifications. When the mode is set to server, the pr_url is received either through a webhook call or via a REST API call.

    This release only supports webhook calls; other REST API calls are not yet supported.

    code_feedback

    • True

    • False

    Note: This file is only available for people who are using the self-hosted version of AI Code Review Agent.

    AI Code Review Agent

    No

    Setting it to True activates general code review comments to identify functional issues. If set to False, general code review will not be conducted.

    bito_cli.bito.access_key

    A valid Bito Access Key generated through Bito's web UI.

    Learn More

    Yes

    Bito Access Key is an alternative to standard email and OTP authentication.

    git.provider

    • GITLAB

    • GITHUB

    • BITBUCKET

    Yes, if the mode is CLI.

    The name of git repository provider.

    git.access_token

    A valid Git access token provided by GITLAB or GITHUB or BITBUCKET

    Yes

    You can use a personal access token in place of a password when authenticating to GitHub/GitLab/BitBucket in the command line or with the API.

    git.domain

    A URL where Git is hosted.

    No

    It is used to enter the custom URL of self-hosted GitHub/GitLab Enterprise.

    static_analysis

    • True

    • False

    No

    Enable or disable static code analysis, which is used to uncover functional issues in the code.

    static_analysis_tool

    • fb_infer

    • astral_ruff

    • mypy

    No

    Comma-separated list of static analysis tools to run (e.g., fb_infer,astral_ruff,mypy).

    linters_feedback

    • True

    • False

    No

    Enables feedback from linters like ESLint, golangci-lint, and Astral Ruff.

    secret_scanner_feedback

    • True

    • False

    No

    Enables detection of secrets in code. For example, passwords, API keys, sensitive information, etc.

    dependency_check

    • True

    • False

    No

    This feature is designed to identify security vulnerabilities in open-source dependency packages, specifically for JS/TS/Node.JS and GoLang. Without this input, reviews for security vulnerabilities will not be conducted.

    dependency_check.snyk_auth_token

    A valid authentication token for accessing Snyk's cloud-based security database.

    No

    If not provided, access to Snyk's cloud-based security database for checking security vulnerabilities in open-source dependency packages will not be available.

    code_context

    • True

    • False

    No

    Enables enhanced code context awareness.

    server_port

    A valid and available TCP port number.

    No

    This is applicable when the mode is set to server. If not specified, the default value is 10051.

    review_comments

    • 1

    • 2

    No

    Set the value to 1 to display the code review in a single post, or 2 to show code review as inline comments, placing suggestions directly beneath the corresponding lines in each file for clearer guidance on improvements.

    The default value is 2.

    review_scope

    • security

    • performance

    • scalability

    • codeorg

    • codeoptimize

    No

    Specialized commands to perform detailed analyses on specific aspects of your code. You can provide comma-separated values to perform multiple types of code analysis simultaneously. Learn more

    include_source_branches

    Glob/regex pattern.

    No

    Comma-separated list of branch patterns (glob/regex) to allow as pull request sources.

    include_target_branches

    Glob/regex pattern.

    No

    Comma-separated list of branch patterns (glob/regex) to allow as pull request targets.

    exclude_files

    Glob/regex pattern.

    No

    A list of files/folders that the AI Code Review Agent will not review if they are present in the diff.

    By default, these files are excluded: *.xml, *.json, *.properties, .gitignore, *.yml, *.md Learn more

    exclude_draft_pr

    • True

    • False

    No

    A binary setting that enables/disables automated review of pull requests (PR) based on the draft status. The default value is True which skips automated review of draft PR. Learn more

    cra_version

    • latest

    • Any specific version tag

    No

    Sets the agent version to run (latest or a specific version tag).

    post_as_request_changes

    • True

    • False

    No

    Posts feedback as 'Request changes' review comments. Depending on your organization's Git settings, you may need to resolve all comments before merging.

    support_email

    Email address

    No

    Contact email shown in error messages.

    suggestion_mode

    • essential

    • comprehensive

    No

    Controls AI suggestion verbosity. Available options are essential and comprehensive.

    In Essential mode, only critical issues are posted as inline comments, and other issues appear in the main review summary under "Additional issues".

    In Comprehensive mode, Bito also includes minor suggestion and potential nitpicks as inline comments.

    In the Available integrations section, locate Linear and click Connect.

    1. From next screen, click Authorize with your Linear account. This allows you to securely connect Bito to your Linear workspace using OAuth.

    1. You will be redirected to Linear's authorization page. Sign in to Linear if prompted, then grant Bito access to your Linear workspace. Click Authorize to continue. Once authorized, Bito completes the connection automatically and redirects you back to the Bito dashboard.

    For example, if you have selected Self-hosted AI Architect, then on the next screen click Configure AI Architect.

    A settings screen will appear. From there, open the Linear tab, where you can select the Linear teams you want Bito to listen to and enable them using the toggle switch.

    Only issues and comments from selected Linear teams will trigger AI Architect analysis, events from unselected teams are ignored.

    • You can update your team selection at any time.

    • Saving an empty selection effectively pauses Bito for that workspace without fully disconnecting.

    Linear Analysis Enabled

    Trigger on-demand analysis using @bito, /bito, or #bito in comments. Alternatively, add the labels bito, bito-analyse, or bito-analyze to the issue.

    Linear Auto Analysis Enabled

    Automatically triggers analysis when a Linear issue is created or updated.

    Generic / unknown failure

    "Something went wrong. Please try again later. If the issue persists, check your Linear settings or contact support."

    @bito analyze technical feasibility
    Bito-hosted installation guide
    [email protected]
    self-hosted installation guide
    Manage integrations
    Set up AI Architect
    [email protected]
    [email protected]
    [email protected]

    The user who completes this step must be a Linear workspace admin. Linear's OAuth requires admin permissions to allow Bito to register the necessary webhooks on your behalf.

    If a non-admin connects, the setup will fail and you will see the following error:

    "Insufficient permissions. Creating webhooks in Linear requires the 'admin' OAuth scope, which is granted only when a Linear workspace admin completes the connection. Ensure the connecting user is a workspace admin and try again."

    Teams in Linear are the equivalent of projects in Jira, they are the persistent scoping unit for which events Bito will act on.

    Start with Linear Analysis Enabled if you want to try it manually first, then enable auto-analysis when you're ready to run it on all new issues.

    Install/run via webhooks service

    The webhooks service is best suited for continuous, automated reviews.

    Prerequisites

    Minimum System Requirements

    A machine with the following minimum specifications is recommended for Docker image deployment and for obtaining optimal performance of the AI Code Review Agent.

    Requirement
    Minimum Specification

    Supported Operating Systems

    • Windows

    • Linux

    • macOS


    OS Prerequisites

    Operating System
    Installation Steps

    Required Access Tokens

    • Bito Access Key: Obtain your Bito Access Key.

    • GitHub Personal Access Token (Classic): For GitHub PR code reviews, ensure you have a CLASSIC personal access token with repo access. We do not support fine-grained tokens currently.

    • GitLab Personal Access Token: For GitLab PR code reviews, a token with API access is required.

    • Snyk API Token (Auth Token): For Snyk vulnerability reports, obtain a Snyk API Token.


    Installation and Configuration Steps

    1. Prerequisites: Before proceeding, ensure you've completed all necessary AI Code Review Agent.

    2. Server Requirement: Ensure you have a server with a domain name or IP address.

    3. Start Docker: Initialize Docker on your server.

    • Note the full path to the “cra-scripts” folder for later use.

    1. Open Command Line:

      • Use Bash for Linux and macOS.

      • Use PowerShell for Windows.

    1. Configure Properties:

      • Open the bito-cra.properties file in a text editor from the “cra-scripts” folder. Detailed information for each property is provided on page.

      • Set mandatory properties:

    1. Run the Agent:

      • On Linux/macOS in Bash:

        • Run ./bito-cra.sh service start bito-cra.properties

    1. Provide Missing Property Values: The script may prompt for values of mandatory/optional properties if they are not preconfigured.

    2. Copy Webhook Secret: During the script execution, a webhook secret is generated and displayed in the shell. Copy the secret displayed under "Use below as Gitlab and Github Webhook secret:" for use in GitHub or GitLab when setting up the webhook.

    Webhook Setup Guide

    :

    • Login to your account.

    • Navigate to the main page of the repository. Under your repository name, click Settings.

    • In the left sidebar, click Webhooks.

    :

    • Login to your account.

    • Select the repository where the webhook needs to be configured.

    • On the left sidebar, select Settings > Webhooks.

    :

    • Login to your account.

    • Navigate to the main page of the repository. Under your repository name, click Repository Settings.

    • In the left sidebar, click Webhooks.


    Using the AI Code Review Agent

    After configuring the webhook, you can invoke the AI Code Review Agent in the following ways:

    1. Automated Code Review: If the webhook is configured to be triggered on the Pull requests event (for GitHub) or Merge request event (for GitLab), the agent will automatically review new pull requests as soon as they are created and post the review feedback as a comment within your PR.

    2. Manually Trigger Code Review: To start the process, simply type /review in the comment box on the pull request and submit it. If the webhook is configured to be triggered on the Issue comments event (for GitHub) or Comments event (for GitLab), this action will initiate the code review process. The /review command prompts the agent to review the pull request and post its feedback directly in the PR as a comment.

    Screenshots

    Screenshot # 1

    Screenshot # 2

    Screenshot # 3


    How to update the self-hosted AI Code Review Agent

    Please follow these steps:

    1. Update the Agent's repository:

      • Pull the latest changes from the repository by running the following command in your terminal, ensuring you are inside the repository folder:

      • git pull origin main


    Stop Docker Container

    To stop the Docker container running as a service, use the below command.

    • On Linux/macOS in Bash: Run ./bito-cra.sh service stop

    • On Windows in PowerShell: Run ./bito-cra.ps1 service stop


    Check Status

    To check the status of Docker container running as a service, use the below command.

    • On Linux/macOS in Bash: Run ./bito-cra.sh service status

    • On Windows in PowerShell: Run ./bito-cra.ps1 service status

    Clone the repository: Clone the AI Code Review Agent GitHub repository to your server using the following command:
    • git clone https://github.com/gitbito/CodeReviewAgent.git

    • Note: It is recommended to clone the repository instead of downloading the .zip file. This approach allows you to easily update the Agent later using the git pull command.

  • Open the repository folder:

    • Navigate to the repository folder and then to the “cra-scripts” subfolder.

  • Set Directory:
    • Change the current directory in Bash/PowerShell to the “cra-scripts” folder.

    • Example command: cd [Path to cra-scripts folder]

    • Note: Adjust the path based on where you cloned the repository on your system.

    mode = server

  • bito_cli.bito.access_key

  • git.access_token

  • Optional properties (can be skipped or set as needed):

    • git.provider

    • git.domain

    • code_feedback

    • static_analysis

    • dependency_check

    • dependency_check.snyk_auth_token

    • server_port

    • review_scope

    • exclude_branches

    • exclude_files

    • exclude_draft_pr

  • Note: It will provide the Git Webhook secret in encrypted format.

  • On Windows in PowerShell:

    • Install OpenSSL

      • Reference-1: https://wiki.openssl.org/index.php/Binaries

      • Reference-2:

    • Run ./bito-cra.ps1 service start bito-cra.properties

    • Note: It will provide the Git Webhook secret in encrypted format.

  • Click Add webhook.

  • Under Payload URL, enter the URL of the webhook endpoint. This is the server's URL to receive webhook payloads.

    • Note: The GitHub Payload URL should follow this format: https://<domain name/ip-address>/api/v1/github_webhooks, where https://<domain name/ip-address> should be mapped to Bito's AI Code Review Agent container, which runs as a service on a configured TCP port such as 10051. Essentially, you need to append the string "/api/v1/github_webhooks" (without quotes) to the URL where the AI Code Review Agent is running.

    • For example, a typical webhook URL would be https://cra.example.com/api/v1/github_webhooks

  • Select the Content type “application/json” for JSON payloads.

  • In Secret token, enter the webhook secret token that you copied above. It is used to validate payloads.

  • Click on Let me select individual events to select the events that you want to trigger the webhook. For code review select these:

    • Issue comments - To enable Code Review on-demand by issuing a command in the PR comment.

    • Pull requests - To auto-trigger Code Review when a pull request is created.

    • Pull request review comments - So, you can share feedback on the review quality by answering the feedback question in the code review comment.

  • To make the webhook active immediately after adding the configuration, select Active.

  • Click Add webhook.

  • Select Add new webhook.
  • In URL, enter the URL of the webhook endpoint. This is the server's URL to receive webhook payloads.

    • Note: The GitLab webhook URL should follow this format: https://<domain name/ip-address>/api/v1/gitlab_webhooks, where https://<domain name/ip-address> should be mapped to Bito's AI Code Review Agent container, which runs as a service on a configured TCP port such as 10051. Essentially, you need to append the string "/api/v1/gitlab_webhooks" (without quotes) to the URL where the AI Code Review Agent is running.

    • For example, a typical webhook URL would be https://cra.example.com/api/v1/gitlab_webhooks

  • In Secret token, enter the webhook secret token that you copied above. It is used to validate payloads.

  • In the Trigger section, select the events to trigger the webhook. For code review select these:

    • Comments - for on-demand code review.

    • Merge request events - for automatic code review when a merge request is created.

    • Emoji events - So, you can share feedback on the review quality using emoji reactions.

  • Select Add webhook.

  • Click Add webhook.
  • Under URL, enter the URL of the webhook endpoint. This is the server's URL to receive webhook payloads.

    • Note: The BitBucket Payload URL should follow this format: https://<domain name/ip-address>/api/v1/bitbucket_webhooks, where https://<domain name/ip-address> should be mapped to Bito's AI Code Review Agent container, which runs as a service on a configured TCP port such as 10051. Essentially, you need to append the string "/api/v1/bitbucket_webhooks" (without quotes) to the URL where the AI Code Review Agent is running.

    • For example, a typical webhook URL would be https://cra.example.com/api/v1/bitbucket_webhooks

  • In Secret token, enter the webhook secret token that you copied above. It is used to validate payloads.

  • In the Triggers section, select the events to trigger the webhook. For code review select these:

    • Pull Request > Comment created - for on-demand code review.

    • Pull Request > Created - for automatic code review when a merge request is created.

  • Select Save.

  • Bito also offers specialized commands that are designed to provide detailed insights into specific areas of your source code, including security, performance, scalability, code structure, and optimization.

    • /review security: Analyzes code to identify security vulnerabilities and ensure secure coding practices.

    • /review performance: Evaluates code for performance issues, identifying slow or resource-heavy areas.

    • /review scalability: Assesses the code's ability to handle increased usage and scale effectively.

    • /review codeorg: Scans for readability and maintainability, promoting clear and efficient code organization.

    • /review codeoptimize: Identifies optimization opportunities to enhance code efficiency and reduce resource usage.

    By default, the /review command generates inline comments, meaning that code suggestions are inserted directly beneath the code diffs in each file. This approach provides a clearer view of the exact lines requiring improvement. However, if you prefer a code review in a single post rather than separate inline comments under the diffs, you can include the optional parameter: /review #inline_comment=False

    For more details, refer to Available Commands.

    Restart the Docker container:

    • To restart the Docker container running as a service, use the below command.

    • On Linux/macOS in Bash: Run ./bito-cra.sh service restart bito-cra.properties

    • On Windows in PowerShell: Run ./bito-cra.ps1 service restart bito-cra.properties

    CPU Cores

    4

    RAM

    8 GB

    Hard Disk Drive

    80 GB

    Linux

    You will need:

    1. Bash (minimum version 4.x)

      • For Debian and Ubuntu systems

        sudo apt-get install bash

      • For CentOS and other RPM-based systems

        sudo yum install bash

    1. Docker (minimum version 20.x)

    macOS

    You will need:

    1. Bash (minimum version 4.x)

      brew install bash

    1. Docker (minimum version 20.x)

    Windows

    You will need:

    1. PowerShell (minimum version 5.x)

      • View Guide

      • Note: In PowerShell version 7.x, run Set-ExecutionPolicy Unrestricted command. It allows the execution of scripts without any constraints, which is essential for running scripts that are otherwise blocked by default security settings.

    1. Docker (minimum version 20.x)

    Note: Valid values for git.provider are GITHUB or GITLAB.

    Note: Detailed information for each property is provided on Agent Configuration: bito-cra.properties File page.

    Check the Required Access Tokens guide to learn more about creating the access tokens needed to configure the Agent.

    This step might take time initially as it pulls the Docker image and performs the code review.

    Note: To improve efficiency, the AI Code Review Agent is disabled by default for pull requests involving the "main" branch. This prevents unnecessary processing and token usage, as changes to the "main" branch are typically already reviewed in release or feature branches. To change this default behavior and include the "main" branch, please contact support.

    It may take a few minutes to get the code review posted as a comment, depending on the size of the pull request.

    AI-generated pull request (PR) summary

    Changelist showing key changes and impacted files in a pull request.

    AI code review feedback posted as comments on the pull request.

    View Guide
    View Guide
    View Guide
    View Guide
    prerequisites for self-hosted
    Agent Configuration: bito-cra.properties File
    GitHub Webhook Setup Guide
    GitHub
    GitLab Webhook Setup Guide
    GitLab
    BitBucket Webhook Setup Guide
    BitBucket
    https://github.com/gitbito/CodeReviewAgent
    GitHub Personal Access Token (Classic)
    GitLab Personal Access Token
    Changelist in AI Code Review Agent's feedback.

    Supported programming languages and tools

    Supports key languages & tools, including fbInfer, Dependency Check, and Snyk.

    Supported Programming Languages

    AI Code Review

    The understands code changes in pull requests by analyzing relevant context from your entire repository, resulting in more accurate and helpful code reviews. The agent provides either Basic Code Understanding or Advanced Code Understanding based on the programming languages used in the code diff. Learn more about all the supported languages in the table below.

    Basic Code Understanding is providing the surrounding code for the diff to help AI better understand the context of the diff.

    Advanced Code Understanding is providing detailed information holistically to the LLM about the changes the diff is making—from things such as global variables, libraries, and frameworks (e.g., Lombok in Java, React for JS/TS, or Angular for TS) being used, the specific functions/methods and classes the diff is part of, to the upstream and downstream impact of a change being made. Using advanced code traversal and understanding techniques, such as symbol indexes, embeddings, and abstract syntax trees, Bito deeply tries to understand what your changes are about and the impact and relevance to the greater codebase, like a senior engineer does when doing code review. .

    Languages
    AI Code Review
    Basic Code Understanding
    Advanced Code Understanding


    Static Code Analysis and Open Source Vulnerabilities Check

    For custom SAST tools configuration to support specific languages in the , please reach out to us at

    Languages
    Static Code Analysis / Linters
    Open Source Vulnerabilities Check


    Supported Tools and Platforms

    Tool
    Type
    Supported/Integrated


    Supported output languages for code review feedback

    Bito supports posting code review feedback in over 20 languages. You can choose your preferred language in the . Supported languages include the following:

    1. Arabic (عربي)

    2. Bulgarian (български)

    3. Chinese (Simplified) (简体中文)

    4. Chinese (Traditional) (繁體中文)

    https://slproweb.com/products/Win32OpenSSL.html
    View Guide
    View Guide
    View Guide

    YES

    YES

    C

    YES

    YES

    YES

    C++

    YES

    YES

    YES

    C#

    YES

    YES

    YES

    Dart

    YES

    YES

    YES

    Delphi

    YES

    YES

    YES

    Go

    YES

    YES

    YES

    Groovy

    YES

    YES

    YES

    HTML/CSS

    YES

    YES

    YES

    Java

    YES

    YES

    YES

    JavaScript

    YES

    YES

    YES

    JavaScript Framework

    YES

    YES

    YES

    Kotlin

    YES

    YES

    YES

    Lua

    YES

    YES

    YES

    Objective-C

    YES

    YES

    YES

    PHP

    YES

    YES

    YES

    PowerShell

    YES

    YES

    YES

    Python

    YES

    YES

    YES

    R

    YES

    YES

    YES

    Ruby

    YES

    YES

    YES

    Rust

    YES

    YES

    YES

    Scala

    YES

    YES

    YES

    SCSS

    YES

    YES

    YES

    SQL

    YES

    YES

    YES

    Swift

    YES

    YES

    YES

    Terraform

    YES

    YES

    YES

    TypeScript

    YES

    YES

    YES

    TypeScript Framework

    YES

    YES

    YES

    Vue.js

    YES

    YES

    YES

    Visual Basic .NET

    YES

    YES

    YES

    Others

    YES

    YES

    YES

    C

    YES (using Facebook Infer)

    NO

    C++

    YES (using Facebook Infer)

    NO

    C#

    NO

    NO

    Dart

    NO

    NO

    Delphi

    NO

    NO

    Go

    YES (using golangci-lint)

    YES

    Groovy

    NO

    NO

    HTML/CSS

    NO

    NO

    Java

    YES (using Facebook Infer)

    NO

    JavaScript

    YES (using ESLint)

    YES

    Kotlin

    NO

    NO

    Lua

    NO

    NO

    Objective-C

    YES (using Facebook Infer)

    NO

    PHP

    NO

    NO

    PowerShell

    NO

    NO

    Python

    YES (using Astral Ruff and Mypy)

    NO

    R

    NO

    NO

    Ruby

    NO

    NO

    Rust

    NO

    NO

    Scala

    NO

    NO

    SCSS

    NO

    NO

    SQL

    NO

    NO

    Swift

    NO

    NO

    Terraform

    NO

    NO

    TypeScript

    YES (using ESLint)

    YES

    Vue.js

    NO

    NO

    Visual Basic .NET

    NO

    NO

    Others

    NO

    NO

    Bitbucket

    Code Repository

    YES

    detect-secrets

    Secrets scanner (e.g., passwords, API keys, sensitive information)

    YES

    ESLint

    Linter for JavaScript and TypeScript

    YES

    Facebook Infer

    Static Code Analysis for Java, C, C++, and Objective-C

    YES

    GitHub cloud

    Code Repository

    YES

    GitHub (Self-Managed)

    Code Repository

    YES, supports version 3.0 and above.

    GitLab cloud

    Code Repository

    YES

    GitLab (Self-Managed)

    Code Repository

    YES, supports version 15.5 and above.

    golangci-lint

    Linter for Go

    YES

    Mypy

    Static Type Checker for Python

    YES

    OWASP dependency Check

    Security

    YES

    Snyk

    Security

    YES

    Whispers

    Secrets scanner (e.g., passwords, API keys, sensitive information)

    YES

    Czech (čeština)

  • Dutch (Nederlands)

  • English (English)

  • French (français)

  • German (Deutsch)

  • Hebrew (עִברִית)

  • Hindi (हिंदी)

  • Hungarian (magyar)

  • Italian (italiano)

  • Japanese (日本語)

  • Korean (한국어)

  • Malay (Melayu)

  • Polish (polski)

  • Portuguese (português)

  • Russian (русский)

  • Spanish (español)

  • Turkish (Türkçe)

  • Vietnamese (Tiếng Việt)

  • Assembly

    YES

    YES

    YES

    Bash/Shell

    Assembly

    NO

    NO

    Bash/Shell

    NO

    Astral Ruff

    Linter for Python

    YES

    Azure DevOps

    Code Repository

    Coming soon

    For requests to add support for specific programming languages, please reach out to us at [email protected]

    AI Code Review Agent
    Read more here about our approach
    AI Code Review Agent
    [email protected]
    agent settings

    YES

    NO