Obrigado pelo interesse em contribuir para o Gmail CLI! Este documento define os padrões que garantem a qualidade e a consistência do projeto, tanto para desenvolvedores humanos quanto para Agentes de IA.
- Linguagem: Python 3.10+
- Gerenciador de Pacotes: Poetry
- CLI Framework: Typer
- UI Library: Rich
- Linting/Formatting: Black, Isort, Flake8
Se você é um Agente de IA (Co-Pilot, Devin, etc.) trabalhando neste repositório, siga estas Regras de Ouro:
- Type Hints Obrigatórios: Todo o código novo deve ter type hints completos.
- Docstrings Google-Style: Documente todas as funções e classes.
- Sem Segredos: Nunca commite chaves de API ou tokens. Verifique o
.gitignore. - Consistência: Siga o padrão de commit abaixo rigorosamente.
Adotamos um padrão estrito para manter o histórico limpo e descritivo.
- Idioma: Português Brasileiro (PT-BR).
- Estrutura: Título conciso + Lista de alterações.
<tipo>: <título curto no imperativo> (#<issue_id>)
- <detalhe da alteração 1>
- <detalhe da alteração 2>
- <detalhe da alteração 3>
Exemplo: feat: adiciona login (#1)
feat: Nova funcionalidade.fix: Correção de bug.docs: Alterações na documentação.style: Formatação, falta de ponto e vírgula, etc.refactor: Refatoração de código (sem mudança de funcionalidade).test: Adição ou correção de testes.chore: Atualização de build, configs, etc.
feat: implementa comando de busca de e-mails
- Adiciona serviço de integração com Gmail API em services/gmail.py
- Cria comando 'search' no Typer com suporte a paginação
- Implementa flag --json para saída estruturada
- Adiciona testes unitários para o parser de query
Utilize os templates fornecidos ao abrir Issues ou PRs:
- Bug Report: Para relatar erros.
- Feature Request: Para sugerir melhorias.
- Pull Request: Preencha o checklist de verificação.
- Instale as dependências:
poetry install
- Ative o shell:
poetry shell
- Rode os testes (em breve):
pytest