Skip to main content
Glama
README.md
# PR Reviewer 🔍

Um assistente inteligente para análise de Pull Requests que integra GitHub com Notion para documentação automatizada de revisões.

## 🌟 Características

- Análise automática de Pull Requests do GitHub
- Integração com Notion para documentação estruturada
- Interface MCP (Model-Controller-Provider) para processamento eficiente
- Suporte a análise detalhada de mudanças de código
- Geração automática de documentação no Notion

## 🚀 Começando

### Pré-requisitos

- Python 3.8 ou superior
- Conta no GitHub com token de acesso
- Conta no Notion com permissões de API
- Tokens de acesso configurados

### Instalação

1. Clone o repositório:
```bash
git clone [seu-repositorio]
cd pr_reviewer
```

2. Crie e ative um ambiente virtual:
```bash
python -m venv .venv
source .venv/bin/activate  # Linux/Mac
# ou
.venv\Scripts\activate  # Windows
```

3. Instale as dependências:
```bash
pip install -r requirements.txt
```

4. Configure as variáveis de ambiente:
Crie um arquivo `.env` com as seguintes variáveis:
```env
NOTION_API_KEY=seu_token_do_notion
NOTION_PAGE_ID=id_da_pagina_notion
GITHUB_TOKEN=seu_token_do_github
```

## 💻 Uso

Para iniciar o analisador de PRs:

```bash
python pr_analyzer.py
```

O serviço irá:
1. Inicializar o servidor MCP para análise de PRs
2. Estabelecer conexão com a API do GitHub
3. Configurar a integração com o Notion
4. Aguardar solicitações de análise de PRs
5. Gerar documentação automaticamente no Notion

## 🛠️ Arquitetura

O projeto é estruturado em dois componentes principais:

- `pr_analyzer.py`: Core da aplicação que gerencia o servidor MCP e coordena as análises
- `github_integration.py`: Módulo responsável pela integração com a API do GitHub

### Componentes

#### PR Analyzer
- Inicializa o servidor FastMCP
- Gerencia a integração com o Notion
- Registra ferramentas para análise de PRs
- Processa as solicitações de análise

#### GitHub Integration
- Gerencia a comunicação com a API do GitHub
- Recupera informações de Pull Requests
- Processa mudanças de código

## 📝 Licença

Este projeto está sob a licença MIT. Veja o arquivo `LICENSE` para mais detalhes.

## 👥 Contribuição

Contribuições são bem-vindas! Por favor, sinta-se à vontade para submeter PRs.

1. Faça um Fork do projeto
2. Crie sua Feature Branch (`git checkout -b feature/AmazingFeature`)
3. Commit suas mudanças (`git commit -m 'Add some AmazingFeature'`)
4. Push para a Branch (`git push origin feature/AmazingFeature`)
5. Abra um Pull Request

## 📞 Suporte

Se você encontrar algum problema ou tiver sugestões, por favor abra uma issue no repositório.