Codium-ai PR-Agent 本地部署与使用指南
前言
Codium-ai PR-Agent 是一款基于人工智能的代码审查助手,能够帮助开发团队自动化处理 Pull Request 的审查工作。本文将详细介绍如何在本地环境中部署和使用 PR-Agent,包括 Docker 方式、pip 包安装以及源码运行三种方法。
准备工作
在开始部署前,您需要准备以下两个关键凭证:
-
OpenAI API 密钥:需要具备 GPT-4 或 gpt-3.5-turbo 模型的访问权限。如果您希望使用其他语言模型,也可以准备相应平台的 API 密钥。
-
Git 平台个人访问令牌:根据您使用的 Git 平台(GitHub、GitLab、BitBucket 或 Gitea),需要生成具有仓库访问权限的个人访问令牌。
使用 Docker 运行 PR-Agent
Docker 是最简单快捷的部署方式,适合大多数用户。以下是针对不同 Git 平台的运行命令示例:
GitHub 平台
docker run --rm -it \
-e OPENAI.KEY=<您的OpenAI密钥> \
-e GITHUB.USER_TOKEN=<您的GitHub令牌> \
codiumai/pr-agent:latest \
--pr_url <PR链接> review
如果是企业版 GitHub,需要额外指定 API 地址:
-e GITHUB.BASE_URL=https://github.mycompany.com/api/v3
GitLab 平台
docker run --rm -it \
-e OPENAI.KEY=<您的OpenAI密钥> \
-e CONFIG.GIT_PROVIDER=gitlab \
-e GITLAB.PERSONAL_ACCESS_TOKEN=<您的GitLab令牌> \
codiumai/pr-agent:latest \
--pr_url <PR链接> review
自托管 GitLab 实例需要指定 URL:
-e GITLAB.URL=<您的GitLab实例地址>
环境变量配置文件
为了简化配置,您可以创建一个 .env 文件:
CONFIG__GIT_PROVIDER="gitlab"
GITLAB__URL="<您的URL>"
GITLAB__PERSONAL_ACCESS_TOKEN="<您的令牌>"
OPENAI__KEY="<您的密钥>"
然后通过以下命令运行:
docker run --rm -it --env-file .env codiumai/pr-agent:latest <工具> <工具参数>
使用 pip 包安装
对于 Python 开发者,可以通过 pip 直接安装 PR-Agent:
pip install pr-agent
安装后,可以通过以下 Python 脚本使用:
from pr_agent import cli
from pr_agent.config_loader import get_settings
def main():
# 配置参数
provider = "github" # 可选: github/gitlab/bitbucket/azure_devops
user_token = "您的Git令牌"
openai_key = "您的OpenAI密钥"
pr_url = "PR链接"
command = "/review" # 支持/review, /describe, /ask等命令
# 设置配置
get_settings().set("CONFIG.git_provider", provider)
get_settings().set("openai.key", openai_key)
get_settings().set("github.user_token", user_token)
# 执行命令
cli.run_command(pr_url, command)
if __name__ == '__main__':
main()
从源码运行
对于需要自定义开发的用户,可以从源码运行:
- 克隆仓库并安装依赖:
git clone <仓库地址>
cd pr-agent
pip install -e .
- 配置密钥文件:
cp pr_agent/settings/.secrets_template.toml pr_agent/settings/.secrets.toml
chmod 600 pr_agent/settings/.secrets.toml
# 编辑.secrets.toml文件
- 运行各种命令:
python3 -m pr_agent.cli --pr_url <PR链接> review
python3 -m pr_agent.cli --pr_url <PR链接> ask "您的问题"
python3 -m pr_agent.cli --pr_url <PR链接> describe
常见问题解决
-
Docker 运行错误:大多数情况下是由于 API 密钥或令牌配置错误导致。请仔细检查:
- OpenAI API 密钥是否正确
- Git 平台令牌是否具有足够权限
- 如果是企业版,URL 配置是否正确
-
Rust 相关错误:在从源码安装时,如果遇到 Rust 相关错误,需要先安装 Rust 工具链。
-
模型切换问题:如果需要使用 Azure OpenAI 或其他语言模型,需要额外配置相关参数。
总结
Codium-ai PR-Agent 提供了多种灵活的部署方式,无论是通过 Docker 快速体验,还是通过 pip 包集成到现有 Python 项目,亦或是从源码进行二次开发,都能满足不同用户的需求。通过本文的指导,您应该能够顺利地在本地环境中部署和使用这款强大的代码审查助手。
atomcodeClaude Code 的开源替代方案。连接任意大模型,编辑代码,运行命令,自动验证 — 全自动执行。用 Rust 构建,极致性能。 | An open-source alternative to Claude Code. Connect any LLM, edit code, run commands, and verify changes — autonomously. Built in Rust for speed. Get StartedRust0152- DDeepSeek-V4-ProDeepSeek-V4-Pro(总参数 1.6 万亿,激活 49B)面向复杂推理和高级编程任务,在代码竞赛、数学推理、Agent 工作流等场景表现优异,性能接近国际前沿闭源模型。Python00
LongCat-Video-Avatar-1.5最新开源LongCat-Video-Avatar 1.5 版本,这是一款经过升级的开源框架,专注于音频驱动人物视频生成的极致实证优化与生产级就绪能力。该版本在 LongCat-Video 基础模型之上构建,可生成高度稳定的商用级虚拟人视频,支持音频-文本转视频(AT2V)、音频-文本-图像转视频(ATI2V)以及视频续播等原生任务,并能无缝兼容单流与多流音频输入。00
auto-devAutoDev 是一个 AI 驱动的辅助编程插件。AutoDev 支持一键生成测试、代码、提交信息等,还能够与您的需求管理系统(例如Jira、Trello、Github Issue 等)直接对接。 在IDE 中,您只需简单点击,AutoDev 会根据您的需求自动为您生成代码。Kotlin03
Intern-S2-PreviewIntern-S2-Preview,这是一款高效的350亿参数科学多模态基础模型。除了常规的参数与数据规模扩展外,Intern-S2-Preview探索了任务扩展:通过提升科学任务的难度、多样性与覆盖范围,进一步释放模型能力。Python00
skillhubopenJiuwen 生态的 Skill 托管与分发开源方案,支持自建与可选 ClawHub 兼容。Python0112