Skip to content

Frequently Asked Questions

👉 What is BeeCR?

BeeCR is an AI-based code-review assistant for GitLab, developed by the CVisionLab. It integrates with GitLab using webhooks or CI/CD to provide automated code reviews.

👉 Which programming languages are supported?

BeeCR supports a wide range of programming languages, including but not limited to Python, JavaScript, Java, Kotlin, Swift, C#, C++, Ruby, and PHP. The AI model is designed to understand and review code in these languages effectively.

👉 Can I use BeeCR on-premises?

Yes, BeeCR is offered in both models: SaaS and on-premises.

👉 How does BeeCR integrate with GitLab?

BeeCR integrates with GitLab through webhooks or CI/CD (template for legacy GitLab or component for GitLab 17+).

👉 How does BeeCR access my GitLab project?

BeeCR accesses your GitLab project using an Access Token. You need to set up a project or group token with at least developer-level permissions and the "api" scope.

💡 Tip: We recommend creating a project or group token with a descriptive name, such as BeeCR Code Reviewer, because code review comments will be authored by the GitLab Bot under this name.

The way to pass the token depends on the chosen integration method:

  • For the webhook, set the header BEECR-GITLAB-TOKEN in webhook settings.
  • For integration via CI/CD template or component, set the CI/CD environment variable in GitLab project's settings.

👉 What events should trigger BeeCR webhook to review code?

BeeCR webhook can be triggered by two types of events in GitLab:

  • Merge Request events: Automatically reviews changes when a Merge Request is created or updated.
  • Comment events: Reviews changes when a comment containing the trigger word /beecr is made.

👉 How can I configure BeeCR webhook?

BeeCR webhook can be configured in multiple ways:

  1. Via HTTP headers in webhook settings.
  2. Via query parameters in the webhook URL.
  3. Via the configuration file .beecr.yml in the root of your repository.
  4. Via the BeeCR API server's settings (if you are using BeeCR on-premises).

We recommend setting all secrets (API keys and tokens) via headers and all other parameters via the configuration file .beecr.yml.

👉 How to pass extra instructions to BeeCR?

You can pass extra instructions to BeeCR in two ways:

  • Configuration File: Add a key instructions in the .beecr.yml configuration file in your repository root. For example:
    .beecr.yml
    instructions: "Do not focus on code style, highlight only errors."
    
  • Merge Request Comments: Include the /beecr keyword in your comments along with additional instructions. For example:
    /beecr Check only security issues.
    

👉 Which files will be reviewed?

BeeCR reviews files that are part of a Merge Request in your GitLab project.

The files to be reviewed depend on your configuration. You can specify target files using regular expressions. By default, BeeCR reviews files containing source code written in popular programming languages, including Python, C/C++, C#, Java, Kotlin, Swift, PHP, Go, Bash/Shell, and JavaScript/TypeScript.

For more detailed information about target file configuration, see:

👉 What should I do if I have a strict firewall?

If you have a strict firewall, you need to add the IP address 34.88.129.98 to your whitelist. BeeCR will send requests from this IP address, so whitelisting it will ensure proper communication.

👉 How can I install BeeCR on-premises?

BeeCR can be installed on-premises using three different methods:

  1. Docker: This is the simplest method, suitable for most users. You can use Docker to run BeeCR on-premises. This method involves using Docker Compose to set up and manage the BeeCR containers. The Deploy on-premises server (via Docker) tutorial provides a comprehensive guide to this process.
  2. Installation Script: This method is suitable for users who don't want to use containerized deployment for some reasons. It involves running an installation script that automates the setup process. You can follow the step-by-step guide in the Deploy on-premises server (via installation script) tutorial.
  3. Manual Setup: This method is intended for advanced users who want more control over the installation and configuration process. It requires manually setting up the environment and installing the necessary components. Detailed instructions can be found in the Deploy on-premises server (manually) tutorial.

👉 How can I use a custom OpenAI address?

If you are using the on-premises version of BeeCR, you can specify a custom OpenAI API host. This is useful when using a self-hosted or enterprise version of OpenAI's API.

You can redefine the OpenAI host in the following ways:

  • Header BEECR-OPENAI-HOST in webhook settings.
  • Query parameter openai-host in webhook URL.
  • Property openai-host in the YAML configuration file .beecr.yml in the root of your repository.
  • Via the OPENAI_HOST API server's parameter.

👉 Are there example reviews?

Yes, we provide several examples that demonstrate code reviews generated by BeeCR directly in the GitLab interface. You can find these examples in our Examples section.

👉 How do I contact support?

You can contact the BeeCR support team via email at beecr@cvisionlab.com or through Telegram at @cvision_support_bot.