Deutsch | English | Español | français | 日本語 | 한국어 | Português | Русский | 中文
Un asistente automatizado de revisión de código basado en LLM. Monitorea cambios en PR/MR a través de Webhooks de GitHub/GitLab, utiliza IA para analizar el código y publica comentarios de revisión automáticamente en PR/MR, con soporte para múltiples canales de notificación.
Ver video demostrativo en Bilibili
Debido a limitaciones de GitHub, no es posible incrustar reproductores de video directamente.
/github_webhook
, /gitlab_webhook
): La IA analiza cada archivo modificado para identificar problemas específicos. Los comentarios se publican en PR/MR de manera estructurada (ej: ubicación de líneas, clasificación de problemas, gravedad, análisis y recomendaciones). El modelo de IA genera resultados en formato JSON que se convierten en comentarios independientes./github_webhook_general
, /gitlab_webhook_general
): La IA realiza un análisis global de cada archivo modificado y genera un comentario resumen en Markdown por archivo./admin
) y API (/config/*
) para gestionar:
# 使用官方镜像
docker run -d -p 8088:8088 \
-e ADMIN_API_KEY="your-key" \
-e OPENAI_API_BASE_URL="https://api.openai.com/v1" \
-e OPENAI_API_KEY="your-key" \
-e OPENAI_MODEL="gpt-4o" \
-e REDIS_HOST="your-redis-host" \
-e REDIS_PASSWORD="your-redis-pwd"
--name ai-code-review-helper \
dingyufei/ai-code-review-helper:latest
📌 Variables de entorno requeridas:
ADMIN_API_KEY
- Contraseña del panel de administración (valor predeterminado: change_this_unified_secret_key)OPENAI_API_KEY
- Clave API del servicio de IAREDIS_HOST
- Dirección de Redis
ADMIN_API_KEY
: Requerido. Clave secreta para proteger las interfaces de administración. Valor predeterminado: change_this_unified_secret_key
(debe modificarse).OPENAI_API_KEY
: Requerido. Clave API de OpenAI.OPENAI_MODEL
: (Predeterminado: gpt-4o
) Modelo de OpenAI a utilizar.OPENAI_API_BASE_URL
: (Opcional) URL base de la API de OpenAI (formato: http(s)://xxxx/v1). Valor predeterminado: https://api.openai.com/v1WECOM_BOT_WEBHOOK_URL
: (Opcional) URL de Webhook para bots de WeCom.REDIS_HOST
: Requerido. Dirección del servidor Redis. Sin configuración o conexión fallida, el servicio no iniciará.REDIS_PORT
: (Predeterminado: 6379
) Puerto del servidor Redis.REDIS_PASSWORD
: (Opcional) Contraseña de Redis.REDIS_DB
: (Predeterminado: 0
) Número de base de datos Redis.REDIS_SSL_ENABLED
: (Predeterminado: true
) Habilita SSL para conexiones Redis. Establecer false
para desactivar.SERVER_HOST
, SERVER_PORT
, GITHUB_API_URL
, GITLAB_INSTANCE_URL
disponibles en registros o código fuente.)/admin
):
ADMIN_API_KEY
./config/*
) para gestión programática de configuraciones, con autenticación mediante cabecera X-Admin-API-Key
.Persistencia de configuración:
ADMIN_API_KEY
, OPENAI_API_KEY
, REDIS_HOST
)./admin
) o API, incluyendo Webhook Secret y Access Token con permisos para comentar en PR/MR.application/json
./github_webhook
, /gitlab_webhook
):
/github_webhook_general
, /gitlab_webhook_general
):
# 1. 克隆仓库
git clone https://github.com/dingyufei615/ai-code-review-helper.git
cd ai-code-review-helper
# 2. 创建并激活虚拟环境
python -m venv venv
source venv/bin/activate # Windows: venv\Scripts\activate
# 3. 安装依赖
pip install -r requirements.txt
# 4. 配置环境变量 (参考 .env.example 或 配置 部分)
# 5. 启动服务
python -m api.ai_code_review_helper
# 6. 运行测试 (可选)
python -m unittest discover tests
ADMIN_API_KEY
fuerte y proteger Tokens/Secrets.El 90% de este código fue desarrollado con Aider + Gemini. Se aceptan Pull Requests e Issues.