Ir para o conteúdo

Como Contribuir

Contribua para o desenvolvimento do Create Agents AI seguindo as diretrizes abaixo. Toda colaboração é bem-vinda!


🚦 Requisitos para Contribuição

  • Python 3.12+ e Poetry instalados
  • Conhecimento básico de Clean Architecture e SOLID
  • Familiaridade com Git e GitHub
  • Seguir o padrão de código, testes e documentação do projeto

🛠️ Passo a Passo para Contribuir

  1. Fork o repositório no GitHub
  2. Clone seu fork localmente:
    git clone https://github.com/seu-usuario/Create-Agents-AI.git
    cd Create-Agents-AI
    
  3. Crie uma branch descritiva:
    git checkout -b feature/nome-da-sua-feature
    
  4. Implemente sua melhoria ou correção seguindo os padrões do projeto
  5. Adicione ou atualize testes (unitários, integração, etc.)
  6. Garanta que todos os checks passem:
    poetry run pre-commit run --all-files
    poetry run pytest --cov=src
    
  7. Atualize a documentação se necessário (ex: novos parâmetros, exemplos, etc.)
  8. Faça commit seguindo o padrão Conventional Commits (ex: feat:, fix:, docs:)
  9. Envie seu Pull Request (PR) para o branch develop com uma descrição clara
  10. Aguarde revisão e responda a eventuais comentários dos mantenedores

✅ Checklist de Qualidade para PR

  • Código segue Clean Architecture e SOLID
  • Testes automatizados cobrindo a nova funcionalidade/correção
  • Documentação atualizada (código e Markdown)
  • Sem warnings/lints (Black, Ruff, isort, yamllint, mdformat)
  • Commits claros e atômicos
  • PR descreve claramente o que foi feito e por quê

📝 Padrão de Commits

Utilize o padrão Conventional Commits:

  • feat: Nova funcionalidade
  • fix: Correção de bug
  • docs: Mudança apenas na documentação
  • test: Adição/melhoria de testes
  • refactor: Refatoração sem alterar comportamento
  • chore: Tarefas de manutenção

Exemplo:

git commit -m "feat: adicionar suporte ao provedor XYZ"

📚 Exemplos de Contribuição

  • Adicionar nova ferramenta (Tool) customizada
  • Corrigir bug em adapter de provedor
  • Melhorar cobertura de testes
  • Atualizar exemplos na documentação
  • Sugerir melhorias de performance ou segurança

🐞 Reportar Bugs e Sugerir Melhorias

  1. Abra uma issue
  2. Descreva o problema/sugestão com detalhes, passos para reproduzir e contexto
  3. Inclua logs, prints ou exemplos de código se possível

📖 Dicas para Documentação

  • Sempre documente novas funções, classes e parâmetros com docstrings
  • Atualize os arquivos Markdown relevantes em docs/ (ex: exemplos, API, FAQ)
  • Use português claro, técnico e acessível
  • Inclua exemplos de uso sempre que possível

🤝 Contato e Suporte


Obrigado por contribuir! Seu apoio torna o projeto melhor para toda a comunidade.