Compare commits

..

6 Commits

7 changed files with 58 additions and 35 deletions

View File

@ -27,17 +27,6 @@ PR-Agent aims to help efficiently review and handle pull requests, by providing
</a>
</div>
[//]: # (### [Documentation]&#40;https://qodo-merge-docs.qodo.ai/&#41;)
[//]: # ()
[//]: # (- See the [Installation Guide]&#40;https://qodo-merge-docs.qodo.ai/installation/&#41; for instructions on installing PR-Agent on different platforms.)
[//]: # ()
[//]: # (- See the [Usage Guide]&#40;https://qodo-merge-docs.qodo.ai/usage-guide/&#41; for instructions on running PR-Agent tools via different interfaces, such as CLI, PR Comments, or by automatically triggering them when a new PR is opened.)
[//]: # ()
[//]: # (- See the [Tools Guide]&#40;https://qodo-merge-docs.qodo.ai/tools/&#41; for a detailed description of the different tools, and the available configurations for each tool.)
## Table of Contents
- [News and Updates](#news-and-updates)
@ -53,6 +42,12 @@ PR-Agent aims to help efficiently review and handle pull requests, by providing
## News and Updates
## May 17, 2025
- v0.29 was [released](https://github.com/qodo-ai/pr-agent/releases)
- `Qodo Merge Pull Request Benchmark` was [released](https://qodo-merge-docs.qodo.ai/pr_benchmark/). This benchmark evaluates and compares the performance of LLMs in analyzing pull request code.
- `Recent Updates and Future Roadmap` page was added to the [Qodo Merge Docs](https://qodo-merge-docs.qodo.ai/recent_updates/)
## Apr 30, 2025
A new feature is now available in the `/improve` tool for Qodo Merge 💎 - Chat on code suggestions.
@ -69,22 +64,6 @@ New tool for Qodo Merge 💎 - `/scan_repo_discussions`.
Read more about it [here](https://qodo-merge-docs.qodo.ai/tools/scan_repo_discussions/).
## Apr 14, 2025
GPT-4.1 is out. And it's quite good on coding tasks...
https://openai.com/index/gpt-4-1/
<img width="512" alt="image" src="https://github.com/user-attachments/assets/a8f4c648-a058-4bdc-9825-2a4bb71a23e5" />
## March 28, 2025
A new version, v0.28, was released. See release notes [here](https://github.com/qodo-ai/pr-agent/releases/tag/v0.28).
This version includes a new tool, [Help Docs](https://qodo-merge-docs.qodo.ai/tools/help_docs/), which can answer free-text questions based on a documentation folder.
`/help_docs` is now being used to provide immediate automatic feedback to any user who [opens an issue](https://github.com/qodo-ai/pr-agent/issues/1608#issue-2897328825) on PR-Agent's open-source project
## Overview
<div style="text-align:left;">
@ -113,6 +92,7 @@ Supported commands per platform:
| | [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/) 💎 | ✅ | | | |
| | [Repo Statistics](https://qodo-merge-docs.qodo.ai/tools/repo_statistics/) 💎 | ✅ | | | |
| | [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) | ✅ | ✅ | ✅ | ✅ |

View File

@ -48,6 +48,7 @@ PR-Agent and Qodo Merge offers extensive pull request functionalities across var
| | [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/) 💎 | ✅ | | | |
| | [Repo Statistics](https://qodo-merge-docs.qodo.ai/tools/repo_statistics/) 💎 | ✅ | | | |
| | [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) | ✅ | ✅ | ✅ | ✅ |

View File

@ -7,11 +7,12 @@ This page summarizes recent enhancements to Qodo Merge (last three months).
It also outlines our development roadmap for the upcoming three months. Please note that the roadmap is subject to change, and features may be adjusted, added, or reprioritized.
=== "Recent Updates"
- **Qodo Merge Pull Request Benchmark** - evaluating the performance of LLMs in analyzing pull request code ([Learn more](https://qodo-merge-docs.qodo.ai/pr_benchmark/))
- **Chat on Suggestions**: Users can now chat with Qodo Merge code suggestions ([Learn more](https://qodo-merge-docs.qodo.ai/tools/improve/#chat-on-code-suggestions))
- **Scan Repo Discussions Tool**: A new tool that analyzes past code discussions to generate a `best_practices.md` file, distilling key insights and recommendations. ([Learn more](https://qodo-merge-docs.qodo.ai/tools/scan_repo_discussions/))
- **Enhanced Models**: Qodo Merge now defaults to a combination of top models (Claude Sonnet 3.7 and Gemini 2.5 Pro) and incorporates dedicated code validation logic for improved results. ([Details 1](https://qodo-merge-docs.qodo.ai/usage-guide/qodo_merge_models/), [Details 2](https://qodo-merge-docs.qodo.ai/core-abilities/code_validation/))
- **Chrome Extension Update**: Qodo Merge Chrome extension now supports single-tenant users. ([Learn more](https://qodo-merge-docs.qodo.ai/chrome-extension/options/#configuration-options/))
- **Help Docs Tool**: The help_docs tool can answer free-text questions based on any git documentation folder. ([Learn more](https://qodo-merge-docs.qodo.ai/tools/help_docs/))
- **Repo Statistics Tool**: A new tool that provides repository statistics on time to merge and time to first comment. ([Learn more](https://qodo-merge-docs.qodo.ai/tools/repo_statistics/))
=== "Future Roadmap"
- **Smart Update**: Upon PR updates, Qodo Merge will offer tailored code suggestions, addressing both the entire PR and the specific incremental changes since the last feedback.

View File

@ -3,7 +3,7 @@
Here is a list of Qodo Merge tools, each with a dedicated page that explains how to use it:
| Tool | Description |
| ---------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------- |
|------------------------------------------------------------------------------------------|---------------------------------------------------------------------------------------------------------------------------------------------|
| **[PR Description (`/describe`](./describe.md))** | Automatically generating PR description - title, type, summary, code walkthrough and labels |
| **[PR Review (`/review`](./review.md))** | Adjustable feedback about the PR, possible issues, security concerns, review effort and more |
| **[Code Suggestions (`/improve`](./improve.md))** | Code suggestions for improving the PR |
@ -20,5 +20,6 @@ Here is a list of Qodo Merge tools, each with a dedicated page that explains how
| **💎 [CI Feedback (`/checks ci_job`](./ci_feedback.md))** | Automatically generates feedback and analysis for a failed CI job |
| **💎 [Implement (`/implement`](./implement.md))** | Generates implementation code from review suggestions |
| **💎 [Scan Repo Discussions (`/scan_repo_discussions`](./scan_repo_discussions.md))** | Generates `best_practices.md` file based on previous discussions in the repository |
| **💎 [Repo Statistics (`/repo_statistics`](./repo_statistics.md))** | Provides repository statistics on time to merge and time to first comment |
Note that the tools marked with 💎 are available only for Qodo Merge users.

View File

@ -0,0 +1,44 @@
`Platforms supported: GitHub`
## Overview
The `repo_statistics` tool analyzes statistics from merged pull requests over the past 12 months prior to Qodo Merge installation.
It calculates key metrics that help teams establish a baseline of their PR workflow efficiency.
!!! note "Active repositories are needed"
The tool is designed to work with real-life repositories, as it relies on actual discussions to generate meaningful insights.
At least 30 merged PRs are required to generate meaningful statistical data.
### Metrics Analyzed
- **Time to merge:** The median and average time it takes for PRs to be merged after opening
- **Time to first comment:** The median and average time it takes to get the first comment on a PR
### Usage
The tool can be invoked manually by commenting on any PR:
```
/repo_statistics
```
In response, the bot will comment with the statistical data.
Note that the scan can take several minutes to complete, since up to 100 PRs are scanned.
!!! info "Automatic trigger"
Upon adding the Qodo Merge bot to a repository, the tool will automatically scan the last 365 days of PRs and send them to MixPanel, if enabled.
## Example usage
![repo statistics comment](https://codium.ai/images/pr_agent/repo_statistics_comment.png){width=640}
MixPanel optional presentation:
![repo statistics mixpanel](https://codium.ai/images/pr_agent/repo_statistics_mixpanel.png){width=640}
### Configuration options
- Use `/repo_statistics --repo_statistics.days_back=X` to specify the number of days back to scan for discussions. The default is 365 days.
- Use `/repo_statistics --repo_statistics.minimal_number_of_prs=X` to specify the minimum number of merged PRs needed to generate the statistics. The default is 30 PRs.

View File

@ -41,6 +41,7 @@ nav:
- 💎 Similar Code: 'tools/similar_code.md'
- 💎 Implement: 'tools/implement.md'
- 💎 Scan Repo Discussions: 'tools/scan_repo_discussions.md'
- 💎 Repo Statistics: 'tools/repo_statistics.md'
- Core Abilities:
- 'core-abilities/index.md'
- Auto best practices: 'core-abilities/auto_best_practices.md'

View File

@ -32,11 +32,6 @@ age: 35
expected_output = {'name': 'John Smith', 'age': 35}
assert try_fix_yaml(review_text) == expected_output
# The function removes the last line(s) of the YAML string and successfully parses the YAML string.
def test_remove_last_line(self):
review_text = "key: value\nextra invalid line\n"
expected_output = {"key": "value"}
assert try_fix_yaml(review_text) == expected_output
# The YAML string is empty.
def test_empty_yaml_fixed(self):