diff --git a/code-reviews/changelogs.md b/code-reviews/changelogs.md index 77683662..148a86b7 100644 --- a/code-reviews/changelogs.md +++ b/code-reviews/changelogs.md @@ -9,6 +9,16 @@ footer_nav: true Stay up to date with the latest changes to kluster.ai Code Reviews. This page lists new features, improvements, and bug fixes in reverse chronological order. Entries are grouped by month so you can quickly find what changed and when. +## April 2026 + +::timeline:: + +- title: Custom AI rules support for code reviews + sub_title: "2026-04-06" + content: Added the ability to include project and global AI rules (such as AGENTS.md and CLAUDE.md) as part of code review. Supported in VS Code-based IDEs, MCP integrations, and JetBrains. + +::/timeline:: + ## March 2026 ::timeline:: diff --git a/code-reviews/configuration/rules.md b/code-reviews/configuration/rules.md index a93c1a89..53f0f1b0 100644 --- a/code-reviews/configuration/rules.md +++ b/code-reviews/configuration/rules.md @@ -27,6 +27,9 @@ To accommodate different workflows, Code Reviews supports two types of rules: ![Connect to GitHub](/images/code-reviews/configuration/rules/rules-01.webp) + !!! note + Rule extraction and project-specific learned rules are currently available for GitHub repositories only. Azure DevOps, GitLab, and Bitbucket repositories do not support automatic rule extraction at this time. + 3. Click **Add review rule** to create custom rules. ![Add review rule button](/images/code-reviews/configuration/rules/rules-02.webp) diff --git a/code-reviews/faq.md b/code-reviews/faq.md index 8aa2b7bb..13baf840 100644 --- a/code-reviews/faq.md +++ b/code-reviews/faq.md @@ -179,11 +179,11 @@ Depending on repository size, repo reviews take several minutes. You'll receive ### Can I run repo reviews on private repositories? -Yes. Repo reviews work with both public and private repositories on GitHub, GitLab, and Bitbucket. The connection is secure and respects your repository permissions. +Yes. Repo reviews work with both public and private repositories on GitHub, GitLab, Bitbucket, and Azure DevOps. The connection is secure and respects your repository permissions. ### Where can I access repo reviews? -Repo reviews are available in the web dashboard at [platform.kluster.ai/repo-reviews](https://platform.kluster.ai/repo-reviews){target=\_blank} and via `kluster-cli`. After connecting your GitHub, GitLab, or Bitbucket repository, you can run `kluster review repo start` to trigger analysis and `kluster review repo show` to check results from terminal. See [Repo reviews from CLI](/code-reviews/cli/repo-reviews/). +Repo reviews are available in the web dashboard at [platform.kluster.ai/repo-reviews](https://platform.kluster.ai/repo-reviews){target=\_blank} and via `kluster-cli`. After connecting your GitHub, GitLab, Bitbucket, or Azure DevOps repository, you can run `kluster review repo start` to trigger analysis and `kluster review repo show` to check results from terminal. See [Repo reviews from CLI](/code-reviews/cli/repo-reviews/). ### What do the Fix with AI, Snooze, and Ignore actions do? diff --git a/code-reviews/get-started/pick-your-workflow.md b/code-reviews/get-started/pick-your-workflow.md index fc192bd3..a08486a4 100644 --- a/code-reviews/get-started/pick-your-workflow.md +++ b/code-reviews/get-started/pick-your-workflow.md @@ -98,7 +98,7 @@ Use repo reviews to catch problems that slip through PR-level reviews: Repo reviews complement your existing review workflow. Run them periodically to surface issues that already exist in your codebase—problems that would otherwise remain hidden until they cause production incidents. -**Available on**: Web dashboard and `kluster-cli` (requires GitHub, GitLab, or Bitbucket connection). +**Available on**: Web dashboard and `kluster-cli` (requires GitHub, GitLab, Bitbucket, or Azure DevOps connection). !!! note "Usage limits" Pro plans include 1 repo review per month. Enterprise plans include higher limits. [Contact us](https://www.kluster.ai/contact){target=\_blank} to learn more. diff --git a/code-reviews/pr-reviews/.nav.yml b/code-reviews/pr-reviews/.nav.yml index 03b79340..8f3d6c6e 100644 --- a/code-reviews/pr-reviews/.nav.yml +++ b/code-reviews/pr-reviews/.nav.yml @@ -1,6 +1,6 @@ -title: ':custom-git: PR Reviews' nav: - 'Quickstart': quickstart.md - ':simple-github: GitHub': github.md - ':simple-gitlab: GitLab': gitlab.md - ':simple-bitbucket: Bitbucket': bitbucket.md + - ':material-microsoft-azure-devops: Azure DevOps': azure-devops.md diff --git a/code-reviews/pr-reviews/azure-devops.md b/code-reviews/pr-reviews/azure-devops.md new file mode 100644 index 00000000..f39345db --- /dev/null +++ b/code-reviews/pr-reviews/azure-devops.md @@ -0,0 +1,110 @@ +--- +title: Azure DevOps PR Reviews Setup +description: Connect the kluster.ai bot to Azure DevOps to automatically review every pull request. Set up the integration with a personal access token in a few steps. +categories: PR Reviews +--- + +# Azure DevOps + +Connect the [kluster.ai](https://www.kluster.ai/){target=\_blank} Code Review solution to your Azure DevOps repositories to automatically review every pull request. The setup uses a token-based integration that requires a personal access token and your organization URL before the bot can begin reviewing your pull requests. + +Before connecting, an administrator in your Azure DevOps organization must complete a one-time consent step directly from the kluster.ai platform. After that, any team member with the right permissions can generate a token and finish the setup. + +Once connected, the bot reviews every new pull request and every new commit pushed to an open pull request. No additional configuration is needed. + +--8<-- 'text/code-reviews/pr-reviews-tip.md' + +!!! warning "Custom rules not supported" + [Custom rules](/code-reviews/configuration/rules/) — including learned rules extracted from repositories — are not currently supported for Azure DevOps. Reviews use the default kluster analysis without project-specific rule customization. + +## Prerequisites + +Before getting started, ensure you have: + +- A [kluster.ai](https://platform.kluster.ai/signup){target=\_blank} account. +- An Azure DevOps account with at least **Basic** access to the projects you want to review. +- A personal access token with the required scopes. See [Create a personal access token](#create-a-personal-access-token) for instructions. + +## Admin consent + +Before anyone in your organization can connect kluster to Azure DevOps, an administrator or organization owner must grant consent. This is a one-time step per organization that applies to both PR reviews and repo reviews. + +The admin consent step appears as step 1 when you begin the Azure DevOps connection flow on the kluster.ai platform (see [Connect Azure DevOps](#connect-azure-devops)). If you are the organization admin, click **Open** to review and accept the required permissions. If you are not, click **Copy link** and share it with your organization admin to complete the consent. + +!!! note + Admin consent only needs to be completed once. After the admin accepts, all team members in the organization can connect their projects without repeating this step. + +## Create a personal access token + +The kluster.ai bot requires an Azure DevOps personal access token to access your repositories and post review comments. Tokens are created through your Azure DevOps user settings. + +!!! tip "Use a dedicated service account" + Reviews posted by the bot are attributed to the token owner. To avoid reviews appearing under a personal account, create a dedicated Azure DevOps account for kluster and generate the personal access token from that account. + +1. Sign in to the Azure DevOps account that will be associated with the kluster.ai bot reviews. +2. Click your profile icon in the top-right corner and select **Personal access tokens** under the Security section. Alternatively, navigate directly to `https://dev.azure.com/{organization}/_usersSettings/tokens`. +3. Click **New Token**. Enter a descriptive name (for example, "kluster.ai PR Reviews"), select your organization, and set an expiration date that aligns with your security policy. +4. Under **Scopes**, select **Custom defined** and enable the following permissions: + + | Category | Scope | Description | + |:--------------------:|:----------------------:|:-------------------------------------------------:| + | Code | **Read, write & manage** | Access repository content for code review. | + | Work Items | **Read, write & manage** | Access work items linked to pull requests. | + + !!! tip + If you prefer not to configure individual scopes, you can select **Full access** instead. + +5. Click **Create**, then copy the token immediately. The token value is only displayed once and cannot be retrieved later. + +## Connect Azure DevOps + +With a [personal access token](#create-a-personal-access-token) ready, you can set up the Azure DevOps integration from the [PR Reviews](https://platform.kluster.ai/pr-bot-installation){target=\_blank} page on the kluster.ai platform. + +1. Navigate to [PR Reviews](https://platform.kluster.ai/pr-bot-installation){target=\_blank} in the kluster.ai platform. The PR Bot Installation page displays the Azure DevOps integration with two setup steps: **Admin consent required** and **Enter your Azure DevOps credentials**. + +2. **Complete admin consent** (one-time per organization). If you are the organization admin, click **Open** to review and accept the required permissions on the Azure DevOps site. If you are not an admin, click **Copy link** and share it with your organization admin. Once consent is granted, proceed to the next step. + +3. **Enter your Azure DevOps credentials**. Provide your organization URL (for example, `https://dev.azure.com/kluster-ai`) and your personal access token. Click **Save & Install**. + + ![PR Bot Installation page showing Azure DevOps setup with Save & Install button](/images/code-reviews/pr-reviews/pr-reviews-azure-devops-01.webp) + +4. After the credentials are validated, a message confirms that the Azure DevOps integration is **Installed** and is ready to review your pull requests automatically. + + ![Azure DevOps integration showing Installed status on kluster.ai](/images/code-reviews/pr-reviews/pr-reviews-azure-devops-02.webp) + +## What happens after setup + +Once the integration is connected, the kluster.ai bot begins reviewing pull requests automatically. No further action is required. + +### On new pull requests + +When a pull request is opened, the bot analyzes all changes using ultra-deep analysis and posts its feedback: + +- A **summary comment** titled **kluster.ai PR Review Summary**, which includes a description of the changes, the review result (All Clear or a list of detected issues), and a prior review warning if no IDE or CLI reviews were performed on the branch. + + ![Example of a kluster.ai PR Review Summary comment on an Azure DevOps pull request](/images/code-reviews/pr-reviews/pr-reviews-azure-devops-04.webp) + +- **Inline comments** on specific lines where issues were found. Each inline comment includes a severity badge (for example, `semantic · high`), a description, a detailed explanation, a recommended action, and quick issue actions to ignore the finding or copy an AI prompt for fixing it. + + ![Example of a kluster.ai inline comment on an Azure DevOps pull request](/images/code-reviews/pr-reviews/pr-reviews-azure-devops-03.webp) + + When clicking **Ignore issue** or **Copy AI prompt**, you are taken to the kluster.ai platform. From there, you can access the ignore menu to dismiss the finding or view the prompt needed to feed an AI agent for fixing the issue, which is automatically copied to your clipboard. + +!!! warning "Bot comments appear under the token owner's name" + In Azure DevOps, the bot's comments are attributed to the user who created the personal access token. This is why a dedicated service account is recommended in the [Create a personal access token](#create-a-personal-access-token) section. + +### On new commits + +When new commits are pushed to an open pull request, the bot re-runs its analysis on the updated changes and updates its comments accordingly. + +### Prior review detection + +If kluster was used during development on the branch (via IDE or CLI), the bot's summary comment includes review statistics, such as the number of reviews performed, issues found, and issues left unfixed. If no prior reviews were detected, the bot includes a note encouraging earlier use of kluster in the development workflow. + +## Next steps + +- **[PR Reviews quickstart](/code-reviews/pr-reviews/quickstart/)**: Learn how the bot works across all supported platforms. +- **[GitHub integration](/code-reviews/pr-reviews/github/)**: Connect the kluster.ai bot to GitHub via OAuth and the GitHub App. +- **[GitLab integration](/code-reviews/pr-reviews/gitlab/)**: Connect the kluster.ai bot to GitLab via access token. +- **[Bitbucket integration](/code-reviews/pr-reviews/bitbucket/)**: Connect the kluster.ai bot to Bitbucket via API token. +- **[Review modes](/code-reviews/review-modes/)**: Understand all available review types. diff --git a/code-reviews/pr-reviews/bitbucket.md b/code-reviews/pr-reviews/bitbucket.md index 5ce072e3..c2937d07 100644 --- a/code-reviews/pr-reviews/bitbucket.md +++ b/code-reviews/pr-reviews/bitbucket.md @@ -103,4 +103,5 @@ If kluster was used during development on the branch (via IDE or CLI), the bot's - **[PR Reviews quickstart](/code-reviews/pr-reviews/quickstart/)**: Learn how the bot works across all supported platforms. - **[GitHub integration](/code-reviews/pr-reviews/github/)**: Connect the kluster.ai bot to GitHub via OAuth and the GitHub App. - **[GitLab integration](/code-reviews/pr-reviews/gitlab/)**: Connect the kluster.ai bot to GitLab via access token. +- **[Azure DevOps integration](/code-reviews/pr-reviews/azure-devops/)**: Connect the kluster.ai bot to Azure DevOps via personal access token. - **[Review modes](/code-reviews/review-modes/)**: Understand all available review types. diff --git a/code-reviews/pr-reviews/github.md b/code-reviews/pr-reviews/github.md index 2069bcb5..a16bd8da 100644 --- a/code-reviews/pr-reviews/github.md +++ b/code-reviews/pr-reviews/github.md @@ -80,4 +80,5 @@ If kluster was used during development on the branch (via IDE or CLI), the bot's - **[PR Reviews quickstart](/code-reviews/pr-reviews/quickstart/)**: Learn how the bot works across all supported platforms. - **[GitLab integration](/code-reviews/pr-reviews/gitlab/)**: Connect the kluster.ai bot to GitLab via access token. - **[Bitbucket integration](/code-reviews/pr-reviews/bitbucket/)**: Connect the kluster.ai bot to Bitbucket via API token. +- **[Azure DevOps integration](/code-reviews/pr-reviews/azure-devops/)**: Connect the kluster.ai bot to Azure DevOps via personal access token. - **[Review modes](/code-reviews/review-modes/)**: Understand all available review types. diff --git a/code-reviews/pr-reviews/gitlab.md b/code-reviews/pr-reviews/gitlab.md index 563f1500..1c3be3a0 100644 --- a/code-reviews/pr-reviews/gitlab.md +++ b/code-reviews/pr-reviews/gitlab.md @@ -91,4 +91,5 @@ If kluster was used during development on the branch (via IDE or CLI), the bot's - **[PR Reviews quickstart](/code-reviews/pr-reviews/quickstart/)**: Learn how the bot works across all supported platforms. - **[GitHub integration](/code-reviews/pr-reviews/github/)**: Connect the kluster.ai bot to GitHub via OAuth and the GitHub App. - **[Bitbucket integration](/code-reviews/pr-reviews/bitbucket/)**: Connect the kluster.ai bot to Bitbucket via API token. +- **[Azure DevOps integration](/code-reviews/pr-reviews/azure-devops/)**: Connect the kluster.ai bot to Azure DevOps via personal access token. - **[Review modes](/code-reviews/review-modes/)**: Understand all available review types. diff --git a/code-reviews/pr-reviews/quickstart.md b/code-reviews/pr-reviews/quickstart.md index e3c574e7..29d36b49 100644 --- a/code-reviews/pr-reviews/quickstart.md +++ b/code-reviews/pr-reviews/quickstart.md @@ -1,6 +1,6 @@ --- title: PR Reviews Quickstart -description: Automatically review every pull request with the kluster.ai bot. Get summary reports and inline comments on GitHub, GitLab, and Bitbucket. +description: Automatically review every pull request with the kluster.ai bot. Get summary reports and inline comments on GitHub, GitLab, Bitbucket, and Azure DevOps. categories: PR Reviews --- @@ -83,4 +83,12 @@ Every PR review runs at the **ultra-deep** analysis level automatically. This is [:octicons-arrow-right-24: Set up Bitbucket](/code-reviews/pr-reviews/bitbucket/) +- :material-microsoft-azure-devops: **Azure DevOps** + + --- + + Connect using an Azure DevOps personal access token. An admin must first grant consent on the Azure site. + + [:octicons-arrow-right-24: Set up Azure DevOps](/code-reviews/pr-reviews/azure-devops/) + \ No newline at end of file diff --git a/code-reviews/repo-reviews/quickstart.md b/code-reviews/repo-reviews/quickstart.md index 5649e4c7..edce7cc9 100644 --- a/code-reviews/repo-reviews/quickstart.md +++ b/code-reviews/repo-reviews/quickstart.md @@ -26,13 +26,13 @@ Learn how to run system-wide codebase analysis with [kluster.ai](https://www.klu Before getting started, ensure you have: - **A kluster.ai account**: Sign up on the [kluster.ai platform](https://platform.kluster.ai/signup){target=\_blank} if you don't have one. -- **A connected repository**: You'll need to connect your GitHub, GitLab, or Bitbucket repository through the dashboard. +- **A connected repository**: You'll need to connect your GitHub, GitLab, Bitbucket, or Azure DevOps repository through the dashboard. ## How repo reviews work Repo reviews analyze your entire codebase as a system instead of reviewing individual changes. When multiple parts of your code interact, issues emerge that don't show up in PR-level reviews. -1. **Connect your repository**: Link your GitHub, GitLab, or Bitbucket repository to kluster.ai. +1. **Connect your repository**: Link your GitHub, GitLab, Bitbucket, or Azure DevOps repository to kluster.ai. 2. **Scan starts automatically**: Wait for the deep analysis to complete. 3. **Review the findings**: Examine issues grouped by severity and type. @@ -46,13 +46,16 @@ Go to the [Repo Reviews dashboard](https://platform.kluster.ai/repo-reviews){tar ![Repo Reviews dashboard with Connect Repository button](/images/code-reviews/repo-reviews/repo-reviews-setup-1.webp) -Select your Git provider (GitHub, GitLab, or Bitbucket): +Select your Git provider (GitHub, GitLab, Bitbucket, or Azure DevOps): -![Select Git provider modal](/images/code-reviews/repo-reviews/repo-reviews-setup-2.webp) +![Select Git provider dialog showing GitHub, GitLab, Bitbucket, and Azure DevOps](/images/code-reviews/repo-reviews/repo-reviews-setup-2.webp) !!! note "Trouble connecting to GitHub?" If your organization uses OAuth app access restrictions, you may need an org admin to approve the kluster.ai OAuth app before it can access your repositories. Refer to GitHub's guide on [approving OAuth apps for your organization](https://docs.github.com/en/organizations/managing-oauth-access-to-your-organizations-data/approving-oauth-apps-for-your-organization){target=\_blank} for details. +!!! note "Connecting to Azure DevOps?" + Azure DevOps requires a one-time admin consent step before connecting. When you select Azure DevOps as your provider, the connection dialog shows an **Admin consent required** step. If you are the organization admin, click **Open** to accept the required permissions. If not, click **Copy link** and share it with your admin. This only needs to be done once for both PR reviews and repo reviews. See [Azure DevOps setup](/code-reviews/pr-reviews/azure-devops/#admin-consent) for details. + Then choose the repository you want to analyze: ![Select repository from dropdown](/images/code-reviews/repo-reviews/repo-reviews-setup-3.webp) diff --git a/code-reviews/review-modes.md b/code-reviews/review-modes.md index a507aa0b..abde4486 100644 --- a/code-reviews/review-modes.md +++ b/code-reviews/review-modes.md @@ -73,7 +73,7 @@ Common issues found by repo reviews include: Repo reviews complement PR-level reviews by revealing problems that already exist in your system—issues that would remain hidden until something breaks. -**Available on**: Web dashboard and kluster-cli (requires GitHub, GitLab, or Bitbucket connection) +**Available on**: Web dashboard and kluster-cli (requires GitHub, GitLab, Bitbucket, or Azure DevOps connection) [:octicons-arrow-right-24: Get started with repo reviews](/code-reviews/repo-reviews/quickstart/) diff --git a/images/code-reviews/pr-reviews/pr-reviews-azure-devops-01.webp b/images/code-reviews/pr-reviews/pr-reviews-azure-devops-01.webp new file mode 100644 index 00000000..af2dce37 Binary files /dev/null and b/images/code-reviews/pr-reviews/pr-reviews-azure-devops-01.webp differ diff --git a/images/code-reviews/pr-reviews/pr-reviews-azure-devops-02.webp b/images/code-reviews/pr-reviews/pr-reviews-azure-devops-02.webp new file mode 100644 index 00000000..76c9a129 Binary files /dev/null and b/images/code-reviews/pr-reviews/pr-reviews-azure-devops-02.webp differ diff --git a/images/code-reviews/pr-reviews/pr-reviews-azure-devops-03.webp b/images/code-reviews/pr-reviews/pr-reviews-azure-devops-03.webp new file mode 100644 index 00000000..116eaa3d Binary files /dev/null and b/images/code-reviews/pr-reviews/pr-reviews-azure-devops-03.webp differ diff --git a/images/code-reviews/pr-reviews/pr-reviews-azure-devops-04.webp b/images/code-reviews/pr-reviews/pr-reviews-azure-devops-04.webp new file mode 100644 index 00000000..c773df63 Binary files /dev/null and b/images/code-reviews/pr-reviews/pr-reviews-azure-devops-04.webp differ diff --git a/images/code-reviews/repo-reviews/repo-reviews-setup-2.webp b/images/code-reviews/repo-reviews/repo-reviews-setup-2.webp index e4645ab9..3a4c5846 100644 Binary files a/images/code-reviews/repo-reviews/repo-reviews-setup-2.webp and b/images/code-reviews/repo-reviews/repo-reviews-setup-2.webp differ