From 9e238dd991b954506d80396caaf92ef0bd56a0bc Mon Sep 17 00:00:00 2001 From: Hussam Lawen Date: Tue, 3 Jun 2025 14:57:46 +0300 Subject: [PATCH 01/11] Update fetching_ticket_context.md --- .../core-abilities/fetching_ticket_context.md | 132 +++++++++++------- 1 file changed, 79 insertions(+), 53 deletions(-) diff --git a/docs/docs/core-abilities/fetching_ticket_context.md b/docs/docs/core-abilities/fetching_ticket_context.md index 73096040..a087a1f9 100644 --- a/docs/docs/core-abilities/fetching_ticket_context.md +++ b/docs/docs/core-abilities/fetching_ticket_context.md @@ -9,9 +9,8 @@ This integration enriches the review process by automatically surfacing relevant **Ticket systems supported**: -- [GitHub](https://qodo-merge-docs.qodo.ai/core-abilities/fetching_ticket_context/#github-issues-integration) -- [Jira (💎)](https://qodo-merge-docs.qodo.ai/core-abilities/fetching_ticket_context/#jira-integration) -- [Linear (💎)](https://qodo-merge-docs.qodo.ai/core-abilities/fetching_ticket_context/#linear-integration) +- GitHub +- Jira (💎) **Ticket data fetched:** @@ -76,17 +75,13 @@ The recommended way to authenticate with Jira Cloud is to install the Qodo Merge Installation steps: -1. Go to the [Qodo Merge integrations page](https://app.qodo.ai/qodo-merge/integrations) - -2. Click on the Connect **Jira Cloud** button to connect the Jira Cloud app - -3. Click the `accept` button.
+1. Click [here](https://auth.atlassian.com/authorize?audience=api.atlassian.com&client_id=8krKmA4gMD8mM8z24aRCgPCSepZNP1xf&scope=read%3Ajira-work%20offline_access&redirect_uri=https%3A%2F%2Fregister.jira.pr-agent.codium.ai&state=qodomerge&response_type=code&prompt=consent) to install the Qodo Merge app in your Jira Cloud instance, click the `accept` button.
![Jira Cloud App Installation](https://www.qodo.ai/images/pr_agent/jira_app_installation1.png){width=384} -4. After installing the app, you will be redirected to the Qodo Merge registration page. and you will see a success message.
+2. After installing the app, you will be redirected to the Qodo Merge registration page. and you will see a success message.
![Jira Cloud App success message](https://www.qodo.ai/images/pr_agent/jira_app_success.png){width=384} -5. Now Qodo Merge will be able to fetch Jira ticket context for your PRs. +3. Now Qodo Merge will be able to fetch Jira ticket context for your PRs. **2) Email/Token Authentication** @@ -286,6 +281,80 @@ This following steps will help you check if the token is working correctly, and print(f"Error fetching JIRA ticket details: {e}") ``` +### Multi-JIRA Server Configuration 💎 + +Qodo Merge supports connecting to multiple JIRA servers using different authentication methods. + +=== "Email/Token (Basic Auth)" + + Configure multiple servers using Email/Token authentication: + + - `jira_servers`: List of JIRA server URLs + - `jira_api_token`: List of API tokens (for Cloud) or passwords (for Data Center) + - `jira_api_email`: List of emails (for Cloud) or usernames (for Data Center) + - `jira_base_url`: Default server for ticket IDs like `PROJ-123`, Each repository can configure (local config file) its own `jira_base_url` to choose which server to use by default. + + **Example Configuration:** + ```toml + [jira] + # Server URLs + jira_servers = ["https://company.atlassian.net", "https://datacenter.jira.com"] + + # API tokens/passwords + jira_api_token = ["cloud_api_token_here", "datacenter_password"] + + # Emails/usernames (both required) + jira_api_email = ["user@company.com", "datacenter_username"] + + # Default server for ticket IDs + jira_base_url = "https://company.atlassian.net" + ``` + +=== "PAT Auth" + + Configure multiple servers using Personal Access Token authentication: + + - `jira_servers`: List of JIRA server URLs + - `jira_api_token`: List of PAT tokens + - `jira_api_email`: Not needed (can be omitted or left empty) + - `jira_base_url`: Default server for ticket IDs like `PROJ-123`, Each repository can configure (local config file) its own `jira_base_url` to choose which server to use by default. + + **Example Configuration:** + ```toml + [jira] + # Server URLs + jira_servers = ["https://server1.jira.com", "https://server2.jira.com"] + + # PAT tokens only + jira_api_token = ["pat_token_1", "pat_token_2"] + + # Default server for ticket IDs + jira_base_url = "https://server1.jira.com" + ``` + + **Mixed Authentication (Email/Token + PAT):** + ```toml + [jira] + jira_servers = ["https://company.atlassian.net", "https://server.jira.com"] + jira_api_token = ["cloud_api_token", "server_pat_token"] + jira_api_email = ["user@company.com", ""] # Empty for PAT + ``` + +=== "Jira Cloud App" + + For Jira Cloud instances using App Authentication: + + 1. Install the Qodo Merge app on each JIRA Cloud instance you want to connect to + 2. Set the default server for ticket ID resolution: + + ```toml + [jira] + jira_base_url = "https://primary-team.atlassian.net" + ``` + + Full URLs (e.g., `https://other-team.atlassian.net/browse/TASK-456`) will automatically use the correct connected instance. + + ### How to link a PR to a Jira ticket To integrate with Jira, you can link your PR to a ticket using either of these methods: @@ -305,46 +374,3 @@ Name your branch with the ticket ID as a prefix (e.g., `ISSUE-123-feature-descri [jira] jira_base_url = "https://.atlassian.net" ``` - -## Linear Integration 💎 - -### Linear App Authentication - -The recommended way to authenticate with Linear is to connect the Linear app through the Qodo Merge portal. - -Installation steps: - -1. Go to the [Qodo Merge integrations page](https://app.qodo.ai/qodo-merge/integrations) - -2. Navigate to the **Integrations** tab - -3. Click on the **Linear** button to connect the Linear app - -4. Follow the authentication flow to authorize Qodo Merge to access your Linear workspace - -5. Once connected, Qodo Merge will be able to fetch Linear ticket context for your PRs - -### How to link a PR to a Linear ticket - -Qodo Merge will automatically detect Linear tickets using either of these methods: - -**Method 1: Description Reference:** - -Include a ticket reference in your PR description using either: -- The complete Linear ticket URL: `https://linear.app/[ORG_ID]/issue/[TICKET_ID]` -- The shortened ticket ID: `[TICKET_ID]` (e.g., `ABC-123`) - requires linear_base_url configuration (see below). - -**Method 2: Branch Name Detection:** - -Name your branch with the ticket ID as a prefix (e.g., `ABC-123-feature-description` or `feature/ABC-123/feature-description`). - -!!! note "Linear Base URL" - - For shortened ticket IDs or branch detection (method 2), you must configure the Linear base URL in your configuration file under the [linear] section: - - ```toml - [linear] - linear_base_url = "https://linear.app/[ORG_ID]" - ``` - - Replace `[ORG_ID]` with your Linear organization identifier. \ No newline at end of file From e561f0358cd9991b3639014774d10da9f970b2ad Mon Sep 17 00:00:00 2001 From: Hussam Lawen Date: Tue, 3 Jun 2025 15:08:09 +0300 Subject: [PATCH 02/11] Update fetching_ticket_context.md --- .../core-abilities/fetching_ticket_context.md | 60 +++++++++++++++++-- 1 file changed, 55 insertions(+), 5 deletions(-) diff --git a/docs/docs/core-abilities/fetching_ticket_context.md b/docs/docs/core-abilities/fetching_ticket_context.md index a087a1f9..140870ea 100644 --- a/docs/docs/core-abilities/fetching_ticket_context.md +++ b/docs/docs/core-abilities/fetching_ticket_context.md @@ -9,8 +9,9 @@ This integration enriches the review process by automatically surfacing relevant **Ticket systems supported**: -- GitHub -- Jira (💎) +- [GitHub](https://qodo-merge-docs.qodo.ai/core-abilities/fetching_ticket_context/#github-issues-integration) +- [Jira (💎)](https://qodo-merge-docs.qodo.ai/core-abilities/fetching_ticket_context/#jira-integration) +- [Linear (💎)](https://qodo-merge-docs.qodo.ai/core-abilities/fetching_ticket_context/#linear-integration) **Ticket data fetched:** @@ -75,13 +76,17 @@ The recommended way to authenticate with Jira Cloud is to install the Qodo Merge Installation steps: -1. Click [here](https://auth.atlassian.com/authorize?audience=api.atlassian.com&client_id=8krKmA4gMD8mM8z24aRCgPCSepZNP1xf&scope=read%3Ajira-work%20offline_access&redirect_uri=https%3A%2F%2Fregister.jira.pr-agent.codium.ai&state=qodomerge&response_type=code&prompt=consent) to install the Qodo Merge app in your Jira Cloud instance, click the `accept` button.
+1. Go to the [Qodo Merge integrations page](https://app.qodo.ai/qodo-merge/integrations) + +2. Click on the Connect **Jira Cloud** button to connect the Jira Cloud app + +3. Click the `accept` button.
![Jira Cloud App Installation](https://www.qodo.ai/images/pr_agent/jira_app_installation1.png){width=384} -2. After installing the app, you will be redirected to the Qodo Merge registration page. and you will see a success message.
+4. After installing the app, you will be redirected to the Qodo Merge registration page. and you will see a success message.
![Jira Cloud App success message](https://www.qodo.ai/images/pr_agent/jira_app_success.png){width=384} -3. Now Qodo Merge will be able to fetch Jira ticket context for your PRs. +5. Now Qodo Merge will be able to fetch Jira ticket context for your PRs. **2) Email/Token Authentication** @@ -281,6 +286,7 @@ This following steps will help you check if the token is working correctly, and print(f"Error fetching JIRA ticket details: {e}") ``` + ### Multi-JIRA Server Configuration 💎 Qodo Merge supports connecting to multiple JIRA servers using different authentication methods. @@ -355,6 +361,8 @@ Qodo Merge supports connecting to multiple JIRA servers using different authenti Full URLs (e.g., `https://other-team.atlassian.net/browse/TASK-456`) will automatically use the correct connected instance. + + ### How to link a PR to a Jira ticket To integrate with Jira, you can link your PR to a ticket using either of these methods: @@ -374,3 +382,45 @@ Name your branch with the ticket ID as a prefix (e.g., `ISSUE-123-feature-descri [jira] jira_base_url = "https://.atlassian.net" ``` + +## Linear Integration 💎 + +### Linear App Authentication + +The recommended way to authenticate with Linear is to connect the Linear app through the Qodo Merge portal. + +Installation steps: + +1. Go to the [Qodo Merge integrations page](https://app.qodo.ai/qodo-merge/integrations) + +2. Navigate to the **Integrations** tab + +3. Click on the **Linear** button to connect the Linear app + +4. Follow the authentication flow to authorize Qodo Merge to access your Linear workspace + +5. Once connected, Qodo Merge will be able to fetch Linear ticket context for your PRs + +### How to link a PR to a Linear ticket + +Qodo Merge will automatically detect Linear tickets using either of these methods: + +**Method 1: Description Reference:** + +Include a ticket reference in your PR description using either: +- The complete Linear ticket URL: `https://linear.app/[ORG_ID]/issue/[TICKET_ID]` +- The shortened ticket ID: `[TICKET_ID]` (e.g., `ABC-123`) - requires linear_base_url configuration (see below). + +**Method 2: Branch Name Detection:** + +Name your branch with the ticket ID as a prefix (e.g., `ABC-123-feature-description` or `feature/ABC-123/feature-description`). + +!!! note "Linear Base URL" + For shortened ticket IDs or branch detection (method 2), you must configure the Linear base URL in your configuration file under the [linear] section: + + ```toml + [linear] + linear_base_url = "https://linear.app/[ORG_ID]" + ``` + + Replace `[ORG_ID]` with your Linear organization identifier. From a9d6a615fdd9c8e91de0dc6c7363279d2e109e27 Mon Sep 17 00:00:00 2001 From: Hussam Lawen Date: Tue, 3 Jun 2025 15:11:00 +0300 Subject: [PATCH 03/11] Update fetching_ticket_context.md --- .../core-abilities/fetching_ticket_context.md | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/docs/docs/core-abilities/fetching_ticket_context.md b/docs/docs/core-abilities/fetching_ticket_context.md index 140870ea..24d53c3d 100644 --- a/docs/docs/core-abilities/fetching_ticket_context.md +++ b/docs/docs/core-abilities/fetching_ticket_context.md @@ -416,11 +416,11 @@ Include a ticket reference in your PR description using either: Name your branch with the ticket ID as a prefix (e.g., `ABC-123-feature-description` or `feature/ABC-123/feature-description`). !!! note "Linear Base URL" - For shortened ticket IDs or branch detection (method 2), you must configure the Linear base URL in your configuration file under the [linear] section: - - ```toml - [linear] - linear_base_url = "https://linear.app/[ORG_ID]" - ``` - - Replace `[ORG_ID]` with your Linear organization identifier. + For shortened ticket IDs or branch detection (method 2), you must configure the Linear base URL in your configuration file under the [linear] section: + + ```toml + [linear] + linear_base_url = "https://linear.app/[ORG_ID]" + ``` + + Replace `[ORG_ID]` with your Linear organization identifier. From 4977db55780d2930be22d1d5b15028823e19ae22 Mon Sep 17 00:00:00 2001 From: ofir-frd Date: Thu, 5 Jun 2025 07:59:35 +0300 Subject: [PATCH 04/11] docs: remove duplicate note about /add_docs not being triggered automatically --- docs/docs/tools/documentation.md | 3 --- 1 file changed, 3 deletions(-) diff --git a/docs/docs/tools/documentation.md b/docs/docs/tools/documentation.md index 47222f51..77920f41 100644 --- a/docs/docs/tools/documentation.md +++ b/docs/docs/tools/documentation.md @@ -46,9 +46,6 @@ pr_commands = [ The `pr_commands` list defines commands that run automatically when a PR is opened. Since this is under the [github_app] section, it only applies when using the Qodo Merge GitHub App in GitHub environments. -!!! note -By default, /add_docs is not triggered automatically. You must explicitly include it in pr_commands to enable this behavior. - ## Configuration options - `docs_style`: The exact style of the documentation (for python docstring). you can choose between: `google`, `numpy`, `sphinx`, `restructuredtext`, `plain`. Default is `sphinx`. From ac72d6f6c2a289843cd79573c70f1c9e9825a17a Mon Sep 17 00:00:00 2001 From: Hussam Lawen Date: Thu, 5 Jun 2025 10:37:51 +0300 Subject: [PATCH 05/11] Update atlassian-connect.json --- pr_agent/servers/atlassian-connect.json | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/pr_agent/servers/atlassian-connect.json b/pr_agent/servers/atlassian-connect.json index 9330ae12..29fa0f7a 100644 --- a/pr_agent/servers/atlassian-connect.json +++ b/pr_agent/servers/atlassian-connect.json @@ -30,5 +30,9 @@ "url": "/webhook" } ] + }, + "links": { + "privacy": "https://qodo.ai/privacy-policy", + "terms": "https://qodo.ai/terms" } } From c190b93c4ff00043d631a162e2744c81da83d23a Mon Sep 17 00:00:00 2001 From: kebhr <42484226+kebhr@users.noreply.github.com> Date: Thu, 5 Jun 2025 19:37:46 +0900 Subject: [PATCH 06/11] chore: add APAC region endpoints for Bedrock Anthropic Claude models --- pr_agent/algo/__init__.py | 3 +++ 1 file changed, 3 insertions(+) diff --git a/pr_agent/algo/__init__.py b/pr_agent/algo/__init__.py index a2b35e71..2dcb652a 100644 --- a/pr_agent/algo/__init__.py +++ b/pr_agent/algo/__init__.py @@ -101,6 +101,9 @@ MAX_TOKENS = { "bedrock/us.anthropic.claude-3-5-sonnet-20241022-v2:0": 100000, "bedrock/us.anthropic.claude-3-7-sonnet-20250219-v1:0": 200000, "bedrock/us.anthropic.claude-sonnet-4-20250514-v1:0": 200000, + "bedrock/apac.anthropic.claude-3-5-sonnet-20241022-v2:0": 100000, + "bedrock/apac.anthropic.claude-3-7-sonnet-20250219-v1:0": 200000, + "bedrock/apac.anthropic.claude-sonnet-4-20250514-v1:0": 200000, 'claude-3-5-sonnet': 100000, 'groq/meta-llama/llama-4-scout-17b-16e-instruct': 131072, 'groq/meta-llama/llama-4-maverick-17b-128e-instruct': 131072, From 865798ef3fa6ea1b9727b591952e3624d0bf5ca8 Mon Sep 17 00:00:00 2001 From: "y.marinov" Date: Thu, 5 Jun 2025 16:01:18 +0300 Subject: [PATCH 07/11] Fix wrong parameters for gitea get_file_content method --- pr_agent/git_providers/gitea_provider.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pr_agent/git_providers/gitea_provider.py b/pr_agent/git_providers/gitea_provider.py index 8805d8f4..39f136ba 100644 --- a/pr_agent/git_providers/gitea_provider.py +++ b/pr_agent/git_providers/gitea_provider.py @@ -409,7 +409,7 @@ class GiteaProvider(GitProvider): def _get_file_content_from_base(self, filename: str) -> str: return self.repo_api.get_file_content( owner=self.owner, - repo=self.base_ref, + repo=self.repo, commit_sha=self.base_sha, filepath=filename ) @@ -417,7 +417,7 @@ class GiteaProvider(GitProvider): def _get_file_content_from_latest_commit(self, filename: str) -> str: return self.repo_api.get_file_content( owner=self.owner, - repo=self.base_ref, + repo=self.repo, commit_sha=self.last_commit.sha, filepath=filename ) From 37781c59e71a744993a0e11ad5c34e5d414c78e5 Mon Sep 17 00:00:00 2001 From: "y.marinov" Date: Thu, 5 Jun 2025 16:02:55 +0300 Subject: [PATCH 08/11] Add forgejo statuses check in gitea get_diff_files method --- pr_agent/git_providers/gitea_provider.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pr_agent/git_providers/gitea_provider.py b/pr_agent/git_providers/gitea_provider.py index 39f136ba..d7dd2462 100644 --- a/pr_agent/git_providers/gitea_provider.py +++ b/pr_agent/git_providers/gitea_provider.py @@ -471,11 +471,11 @@ class GiteaProvider(GitProvider): if status == 'added': edit_type = EDIT_TYPE.ADDED - elif status == 'removed': + elif status == 'removed' or status == 'deleted': edit_type = EDIT_TYPE.DELETED elif status == 'renamed': edit_type = EDIT_TYPE.RENAMED - elif status == 'modified': + elif status == 'modified' or status == 'changed': edit_type = EDIT_TYPE.MODIFIED else: self.logger.error(f"Unknown edit type: {status}") From fa435cfc1e929bee5b27711bd8b66bf3df01b7e6 Mon Sep 17 00:00:00 2001 From: Peter Dave Hello Date: Fri, 6 Jun 2025 01:15:54 +0800 Subject: [PATCH 09/11] Add Google Gemini 2.5 Pro Preview 06-05 Reference: - https://blog.google/products/gemini/gemini-2-5-pro-latest-preview --- pr_agent/algo/__init__.py | 2 ++ 1 file changed, 2 insertions(+) diff --git a/pr_agent/algo/__init__.py b/pr_agent/algo/__init__.py index a2b35e71..e3f4c2ba 100644 --- a/pr_agent/algo/__init__.py +++ b/pr_agent/algo/__init__.py @@ -61,6 +61,7 @@ MAX_TOKENS = { 'vertex_ai/gemini-1.5-pro': 1048576, 'vertex_ai/gemini-2.5-pro-preview-03-25': 1048576, 'vertex_ai/gemini-2.5-pro-preview-05-06': 1048576, + 'vertex_ai/gemini-2.5-pro-preview-06-05': 1048576, 'vertex_ai/gemini-1.5-flash': 1048576, 'vertex_ai/gemini-2.0-flash': 1048576, 'vertex_ai/gemini-2.5-flash-preview-04-17': 1048576, @@ -73,6 +74,7 @@ MAX_TOKENS = { 'gemini/gemini-2.5-flash-preview-05-20': 1048576, 'gemini/gemini-2.5-pro-preview-03-25': 1048576, 'gemini/gemini-2.5-pro-preview-05-06': 1048576, + 'gemini/gemini-2.5-pro-preview-06-05': 1048576, 'codechat-bison': 6144, 'codechat-bison-32k': 32000, 'anthropic.claude-instant-v1': 100000, From 4fdbcdf86a998302d5d4d5c135bb4e69cb29ac4c Mon Sep 17 00:00:00 2001 From: ofir-frd Date: Fri, 6 Jun 2025 15:25:34 +0300 Subject: [PATCH 10/11] docs: add Gitea support to feature compatibility table --- README.md | 2 +- docs/docs/index.md | 88 ++++++++++++++++++++++++---------------------- 2 files changed, 47 insertions(+), 43 deletions(-) diff --git a/README.md b/README.md index c9ba9eb4..6a930b51 100644 --- a/README.md +++ b/README.md @@ -107,7 +107,7 @@ Supported commands per platform: | | ⮑ [Ask on code lines](https://qodo-merge-docs.qodo.ai/tools/ask/#ask-lines) | ✅ | ✅ | | | | | | [Help Docs](https://qodo-merge-docs.qodo.ai/tools/help_docs/?h=auto#auto-approval) | ✅ | ✅ | ✅ | | | | | [Update CHANGELOG](https://qodo-merge-docs.qodo.ai/tools/update_changelog/) | ✅ | ✅ | ✅ | ✅ | | -| | [PR Documentation](https://qodo-merge-docs.qodo.ai/tools/documentation/) 💎 | ✅ | ✅ | | | | +| | [Add Documentation](https://qodo-merge-docs.qodo.ai/tools/documentation/) 💎 | ✅ | ✅ | | | | | | [Analyze](https://qodo-merge-docs.qodo.ai/tools/analyze/) 💎 | ✅ | ✅ | | | | | | [Auto-Approve](https://qodo-merge-docs.qodo.ai/tools/improve/?h=auto#auto-approval) 💎 | ✅ | ✅ | ✅ | | | | | [CI Feedback](https://qodo-merge-docs.qodo.ai/tools/ci_feedback/) 💎 | ✅ | | | | | diff --git a/docs/docs/index.md b/docs/docs/index.md index 79a06e5d..46f49ff2 100644 --- a/docs/docs/index.md +++ b/docs/docs/index.md @@ -26,48 +26,52 @@ To search the documentation site using natural language: PR-Agent and Qodo Merge offers extensive pull request functionalities across various git providers: -| | | GitHub | GitLab | Bitbucket | Azure DevOps | -| ----- | ------------------------------------------------------------------------------------------------------- |:------:|:------:|:---------:|:------------:| -| TOOLS | [Review](https://qodo-merge-docs.qodo.ai/tools/review/) | ✅ | ✅ | ✅ | ✅ | -| | [Describe](https://qodo-merge-docs.qodo.ai/tools/describe/) | ✅ | ✅ | ✅ | ✅ | -| | [Improve](https://qodo-merge-docs.qodo.ai/tools/improve/) | ✅ | ✅ | ✅ | ✅ | -| | [Ask](https://qodo-merge-docs.qodo.ai/tools/ask/) | ✅ | ✅ | ✅ | ✅ | -| | ⮑ [Ask on code lines](https://qodo-merge-docs.qodo.ai/tools/ask/#ask-lines) | ✅ | ✅ | | | -| | [Update CHANGELOG](https://qodo-merge-docs.qodo.ai/tools/update_changelog/) | ✅ | ✅ | ✅ | ✅ | -| | [Help Docs](https://qodo-merge-docs.qodo.ai/tools/help_docs/?h=auto#auto-approval) | ✅ | ✅ | ✅ | | -| | [Ticket Context](https://qodo-merge-docs.qodo.ai/core-abilities/fetching_ticket_context/) 💎 | ✅ | ✅ | ✅ | | -| | [Utilizing Best Practices](https://qodo-merge-docs.qodo.ai/tools/improve/#best-practices) 💎 | ✅ | ✅ | ✅ | | -| | [PR Chat](https://qodo-merge-docs.qodo.ai/chrome-extension/features/#pr-chat) 💎 | ✅ | | | | -| | [Suggestion Tracking](https://qodo-merge-docs.qodo.ai/tools/improve/#suggestion-tracking) 💎 | ✅ | ✅ | | | -| | [CI Feedback](https://qodo-merge-docs.qodo.ai/tools/ci_feedback/) 💎 | ✅ | | | | -| | [PR Documentation](https://qodo-merge-docs.qodo.ai/tools/documentation/) 💎 | ✅ | ✅ | | | -| | [Custom Labels](https://qodo-merge-docs.qodo.ai/tools/custom_labels/) 💎 | ✅ | ✅ | | | -| | [Analyze](https://qodo-merge-docs.qodo.ai/tools/analyze/) 💎 | ✅ | ✅ | | | -| | [Similar Code](https://qodo-merge-docs.qodo.ai/tools/similar_code/) 💎 | ✅ | | | | -| | [Custom Prompt](https://qodo-merge-docs.qodo.ai/tools/custom_prompt/) 💎 | ✅ | ✅ | ✅ | | -| | [Test](https://qodo-merge-docs.qodo.ai/tools/test/) 💎 | ✅ | ✅ | | | -| | [Implement](https://qodo-merge-docs.qodo.ai/tools/implement/) 💎 | ✅ | ✅ | ✅ | | -| | [Scan Repo Discussions](https://qodo-merge-docs.qodo.ai/tools/scan_repo_discussions/) 💎 | ✅ | | | | -| | [Auto-Approve](https://qodo-merge-docs.qodo.ai/tools/improve/?h=auto#auto-approval) 💎 | ✅ | ✅ | ✅ | | -| | | | | | | -| USAGE | [CLI](https://qodo-merge-docs.qodo.ai/usage-guide/automations_and_usage/#local-repo-cli) | ✅ | ✅ | ✅ | ✅ | -| | [App / webhook](https://qodo-merge-docs.qodo.ai/usage-guide/automations_and_usage/#github-app) | ✅ | ✅ | ✅ | ✅ | -| | [Tagging bot](https://github.com/Codium-ai/pr-agent#try-it-now) | ✅ | | | | -| | [Actions](https://qodo-merge-docs.qodo.ai/installation/github/#run-as-a-github-action) | ✅ | ✅ | ✅ | ✅ | -| | | | | | | -| CORE | [PR compression](https://qodo-merge-docs.qodo.ai/core-abilities/compression_strategy/) | ✅ | ✅ | ✅ | ✅ | -| | Adaptive and token-aware file patch fitting | ✅ | ✅ | ✅ | ✅ | -| | [Multiple models support](https://qodo-merge-docs.qodo.ai/usage-guide/changing_a_model/) | ✅ | ✅ | ✅ | ✅ | -| | [Local and global metadata](https://qodo-merge-docs.qodo.ai/core-abilities/metadata/) | ✅ | ✅ | ✅ | ✅ | -| | [Dynamic context](https://qodo-merge-docs.qodo.ai/core-abilities/dynamic_context/) | ✅ | ✅ | ✅ | ✅ | -| | [Self reflection](https://qodo-merge-docs.qodo.ai/core-abilities/self_reflection/) | ✅ | ✅ | ✅ | ✅ | -| | [Static code analysis](https://qodo-merge-docs.qodo.ai/core-abilities/static_code_analysis/) 💎 | ✅ | ✅ | | | -| | [Global and wiki configurations](https://qodo-merge-docs.qodo.ai/usage-guide/configuration_options/) 💎 | ✅ | ✅ | ✅ | | -| | [PR interactive actions](https://www.qodo.ai/images/pr_agent/pr-actions.mp4) 💎 | ✅ | ✅ | | | -| | [Impact Evaluation](https://qodo-merge-docs.qodo.ai/core-abilities/impact_evaluation/) 💎 | ✅ | ✅ | | | -| | [Code Validation 💎](https://qodo-merge-docs.qodo.ai/core-abilities/code_validation/) | ✅ | ✅ | ✅ | ✅ | -| | [Auto Best Practices 💎](https://qodo-merge-docs.qodo.ai/core-abilities/auto_best_practices/) | ✅ | | | | -| | [Incremental Update 💎](https://qodo-merge-docs.qodo.ai/core-abilities/incremental_update/) | ✅ | | | | +| | | GitHub | GitLab | Bitbucket | Azure DevOps | Gitea | +| ----- |---------------------------------------------------------------------------------------------------------------------|:------:|:------:|:---------:|:------------:|:-----:| +| [TOOLS](https://qodo-merge-docs.qodo.ai/tools/) | [Describe](https://qodo-merge-docs.qodo.ai/tools/describe/) | ✅ | ✅ | ✅ | ✅ | ✅ | +| | [Review](https://qodo-merge-docs.qodo.ai/tools/review/) | ✅ | ✅ | ✅ | ✅ | ✅ | +| | [Improve](https://qodo-merge-docs.qodo.ai/tools/improve/) | ✅ | ✅ | ✅ | ✅ | ✅ | +| | [Ask](https://qodo-merge-docs.qodo.ai/tools/ask/) | ✅ | ✅ | ✅ | ✅ | | +| | ⮑ [Ask on code lines](https://qodo-merge-docs.qodo.ai/tools/ask/#ask-lines) | ✅ | ✅ | | | | +| | [Help Docs](https://qodo-merge-docs.qodo.ai/tools/help_docs/?h=auto#auto-approval) | ✅ | ✅ | ✅ | | | +| | [Update CHANGELOG](https://qodo-merge-docs.qodo.ai/tools/update_changelog/) | ✅ | ✅ | ✅ | ✅ | | +| | [Add Documentation](https://qodo-merge-docs.qodo.ai/tools/documentation/) 💎 | ✅ | ✅ | | | | +| | [Analyze](https://qodo-merge-docs.qodo.ai/tools/analyze/) 💎 | ✅ | ✅ | | | | +| | [Auto-Approve](https://qodo-merge-docs.qodo.ai/tools/improve/?h=auto#auto-approval) 💎 | ✅ | ✅ | ✅ | | | +| | [CI Feedback](https://qodo-merge-docs.qodo.ai/tools/ci_feedback/) 💎 | ✅ | | | | | +| | [Custom Prompt](https://qodo-merge-docs.qodo.ai/tools/custom_prompt/) 💎 | ✅ | ✅ | ✅ | | | +| | [Generate Custom Labels](https://qodo-merge-docs.qodo.ai/tools/custom_labels/) 💎 | ✅ | ✅ | | | | +| | [Generate Tests](https://qodo-merge-docs.qodo.ai/tools/test/) 💎 | ✅ | ✅ | | | | +| | [Implement](https://qodo-merge-docs.qodo.ai/tools/implement/) 💎 | ✅ | ✅ | ✅ | | | +| | [Scan Repo Discussions](https://qodo-merge-docs.qodo.ai/tools/scan_repo_discussions/) 💎 | ✅ | | | | | +| | [Similar Code](https://qodo-merge-docs.qodo.ai/tools/similar_code/) 💎 | ✅ | | | | | +| | [Ticket Context](https://qodo-merge-docs.qodo.ai/core-abilities/fetching_ticket_context/) 💎 | ✅ | ✅ | ✅ | | | +| | [Utilizing Best Practices](https://qodo-merge-docs.qodo.ai/tools/improve/#best-practices) 💎 | ✅ | ✅ | ✅ | | | +| | [PR Chat](https://qodo-merge-docs.qodo.ai/chrome-extension/features/#pr-chat) 💎 | ✅ | | | | | +| | [Suggestion Tracking](https://qodo-merge-docs.qodo.ai/tools/improve/#suggestion-tracking) 💎 | ✅ | ✅ | | | | +| | | | | | | | +| [USAGE](https://qodo-merge-docs.qodo.ai/usage-guide/) | [CLI](https://qodo-merge-docs.qodo.ai/usage-guide/automations_and_usage/#local-repo-cli) | ✅ | ✅ | ✅ | ✅ | ✅ | +| | [App / webhook](https://qodo-merge-docs.qodo.ai/usage-guide/automations_and_usage/#github-app) | ✅ | ✅ | ✅ | ✅ | ✅ | +| | [Tagging bot](https://github.com/Codium-ai/pr-agent#try-it-now) | ✅ | | | | | +| | [Actions](https://qodo-merge-docs.qodo.ai/installation/github/#run-as-a-github-action) | ✅ | ✅ | ✅ | ✅ | | +| | | | | | | | +| [CORE](https://qodo-merge-docs.qodo.ai/core-abilities/) | [Adaptive and token-aware file patch fitting](https://qodo-merge-docs.qodo.ai/core-abilities/compression_strategy/) | ✅ | ✅ | ✅ | ✅ | | +| | [Auto Best Practices 💎](https://qodo-merge-docs.qodo.ai/core-abilities/auto_best_practices/) | ✅ | | | | | +| | [Chat on code suggestions](https://qodo-merge-docs.qodo.ai/core-abilities/chat_on_code_suggestions/) | ✅ | ✅ | | | | +| | [Code Validation 💎](https://qodo-merge-docs.qodo.ai/core-abilities/code_validation/) | ✅ | ✅ | ✅ | ✅ | | +| | [Dynamic context](https://qodo-merge-docs.qodo.ai/core-abilities/dynamic_context/) | ✅ | ✅ | ✅ | ✅ | | +| | [Fetching ticket context](https://qodo-merge-docs.qodo.ai/core-abilities/fetching_ticket_context/) | ✅ | ✅ | ✅ | | | +| | [Global and wiki configurations](https://qodo-merge-docs.qodo.ai/usage-guide/configuration_options/) 💎 | ✅ | ✅ | ✅ | | | +| | [Impact Evaluation](https://qodo-merge-docs.qodo.ai/core-abilities/impact_evaluation/) 💎 | ✅ | ✅ | | | | +| | [Incremental Update 💎](https://qodo-merge-docs.qodo.ai/core-abilities/incremental_update/) | ✅ | | | | | +| | [Interactivity](https://qodo-merge-docs.qodo.ai/core-abilities/interactivity/) | ✅ | ✅ | | | | +| | [Local and global metadata](https://qodo-merge-docs.qodo.ai/core-abilities/metadata/) | ✅ | ✅ | ✅ | ✅ | | +| | [Multiple models support](https://qodo-merge-docs.qodo.ai/usage-guide/changing_a_model/) | ✅ | ✅ | ✅ | ✅ | | +| | [PR compression](https://qodo-merge-docs.qodo.ai/core-abilities/compression_strategy/) | ✅ | ✅ | ✅ | ✅ | | +| | [PR interactive actions](https://www.qodo.ai/images/pr_agent/pr-actions.mp4) 💎 | ✅ | ✅ | | | | +| | [RAG context enrichment](https://qodo-merge-docs.qodo.ai/core-abilities/rag_context_enrichment/) | ✅ | | ✅ | | | +| | [Self reflection](https://qodo-merge-docs.qodo.ai/core-abilities/self_reflection/) | ✅ | ✅ | ✅ | ✅ | | +| | [Static code analysis](https://qodo-merge-docs.qodo.ai/core-abilities/static_code_analysis/) 💎 | ✅ | ✅ | | | | !!! note "💎 means Qodo Merge only" All along the documentation, 💎 marks a feature available only in [Qodo Merge](https://www.codium.ai/pricing/){:target="_blank"}, and not in the open-source version. From c635887949e7abbb6fd04a03cc76fa1d9b59d78a Mon Sep 17 00:00:00 2001 From: ofir-frd Date: Fri, 6 Jun 2025 15:40:47 +0300 Subject: [PATCH 11/11] docs: remove none-existing webpage and update documentation admonition styles to allow collapsible format --- docs/docs/core-abilities/fetching_ticket_context.md | 4 ++-- docs/docs/core-abilities/rag_context_enrichment.md | 2 +- docs/docs/tools/describe.md | 2 +- docs/docs/tools/improve.md | 4 ++-- docs/docs/tools/review.md | 6 +++--- docs/mkdocs.yml | 1 - 6 files changed, 9 insertions(+), 10 deletions(-) diff --git a/docs/docs/core-abilities/fetching_ticket_context.md b/docs/docs/core-abilities/fetching_ticket_context.md index 24d53c3d..d31f4b1b 100644 --- a/docs/docs/core-abilities/fetching_ticket_context.md +++ b/docs/docs/core-abilities/fetching_ticket_context.md @@ -195,7 +195,7 @@ This following steps will help you check if the basic auth is working correctly, 2. run the following Python script (after replacing the placeholders with your actual values): -??? example "Script to validate basic auth" +???- example "Script to validate basic auth" ```python from jira import JIRA @@ -251,7 +251,7 @@ This following steps will help you check if the token is working correctly, and 2. run the following Python script (after replacing the placeholders with your actual values): -??? example "Script to validate PAT token" +??? example- "Script to validate PAT token" ```python from jira import JIRA diff --git a/docs/docs/core-abilities/rag_context_enrichment.md b/docs/docs/core-abilities/rag_context_enrichment.md index 05ebbaff..0fc64620 100644 --- a/docs/docs/core-abilities/rag_context_enrichment.md +++ b/docs/docs/core-abilities/rag_context_enrichment.md @@ -27,7 +27,7 @@ In order to enable the RAG feature, add the following lines to your configuratio enable_rag=true ``` -!!! example "RAG Arguments Options" +???+ example "RAG Arguments Options" diff --git a/docs/docs/tools/describe.md b/docs/docs/tools/describe.md index 143fd2d6..25b3c6fc 100644 --- a/docs/docs/tools/describe.md +++ b/docs/docs/tools/describe.md @@ -73,7 +73,7 @@ enable_pr_diagram = true ## Configuration options -!!! example "Possible configurations" +???+ example "Possible configurations"
diff --git a/docs/docs/tools/improve.md b/docs/docs/tools/improve.md index 6adfec83..70cec345 100644 --- a/docs/docs/tools/improve.md +++ b/docs/docs/tools/improve.md @@ -586,7 +586,7 @@ Note: Chunking is primarily relevant for large PRs. For most PRs (up to 600 line ## Configuration options -??? example "General options" +???+ example "General options"
@@ -646,7 +646,7 @@ Note: Chunking is primarily relevant for large PRs. For most PRs (up to 600 line
-??? example "Params for number of suggestions and AI calls" +???+ example "Params for number of suggestions and AI calls" diff --git a/docs/docs/tools/review.md b/docs/docs/tools/review.md index b94d6394..6e61d12d 100644 --- a/docs/docs/tools/review.md +++ b/docs/docs/tools/review.md @@ -51,7 +51,7 @@ extra_instructions = "..." ## Configuration options -!!! example "General options" +???+ example "General options"
@@ -76,7 +76,7 @@ extra_instructions = "..."
-!!! example "Enable\\disable specific sub-sections" +???+ example "Enable\\disable specific sub-sections" @@ -105,7 +105,7 @@ extra_instructions = "..."
-!!! example "Adding PR labels" +???+ example "Adding PR labels" You can enable\disable the `review` tool to add specific labels to the PR: diff --git a/docs/mkdocs.yml b/docs/mkdocs.yml index 74f98fb8..6210ed1c 100644 --- a/docs/mkdocs.yml +++ b/docs/mkdocs.yml @@ -16,7 +16,6 @@ nav: - Introduction: 'usage-guide/introduction.md' - Enabling a Wiki: 'usage-guide/enabling_a_wiki.md' - Configuration File: 'usage-guide/configuration_options.md' - - AWS Secrets Manager: 'usage-guide/aws_secrets_manager.md' - Usage and Automation: 'usage-guide/automations_and_usage.md' - Managing Mail Notifications: 'usage-guide/mail_notifications.md' - Changing a Model: 'usage-guide/changing_a_model.md'