Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
26 changes: 26 additions & 0 deletions .github/ISSUE_TEMPLATE/bug_report.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,26 @@
---
name: Bug Report
about: Reportar um bug no SOPA
title: '[BUG] '
labels: bug
assignees: ''

---

**Descreva o bug**
Uma descrição clara e concisa do bug.

**Reproduzir**
Passos para reproduzir o comportamento:
1. Vá para '...'
2. Clique em '....'
3. Veja o erro

**Ambiente:**
- Camada: [ex: Kernel Rust, AI Python]
- Versão: [ex: v1.0.0]

**Impacto na Segurança**
- [ ] Afeta cálculo de Φ
- [ ] Afeta protocolos KARNAK
- [ ] Pode causar instabilidade
17 changes: 17 additions & 0 deletions .github/ISSUE_TEMPLATE/feature_request.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,17 @@
---
name: Feature Request
about: Sugerir uma ideia para o SOPA
title: '[FEATURE] '
labels: enhancement
assignees: ''

---

**Descreva a solução que você gostaria**
Uma descrição clara e concisa do que você quer que aconteça.

**Impacto Ético**
- [ ] Promove não-maleficência
- [ ] Aumenta beneficência
- [ ] Respeita autonomia
- [ ] Promove justiça
15 changes: 15 additions & 0 deletions .github/PULL_REQUEST_TEMPLATE.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
## Descrição
Descrição clara das mudanças incluídas neste PR.

## Checklist
- [ ] Meu código segue as diretrizes de estilo do projeto
- [ ] Executei testes localmente
- [ ] Documentei novas funcionalidades
- [ ] Verifiquei impacto ético
- [ ] Verifiquei impacto na segurança

## Impacto Ético
- [ ] Promove não-maleficência
- [ ] Aumenta beneficência
- [ ] Respeita autonomia
- [ ] Promove justiça
40 changes: 40 additions & 0 deletions CODE_OF_CONDUCT.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,40 @@
# Código de Conduta do SOPA

## Nossa Promessa

Nós, como membros, contribuidores e líderes, nos comprometemos a fazer da participação em nossa comunidade uma experiência livre de assédio para todos, independentemente de idade, corpo, deficiência, etnia, características sexuais, identidade e expressão de gênero, nível de experiência, educação, status socioeconômico, nacionalidade, aparência pessoal, raça, religião ou identidade e orientação sexual.

## Nossos Padrões

Exemplos de comportamento que contribuem para um ambiente positivo:

* Demonstrar empatia e bondade para com outras pessoas.
* Respeitar opiniões, pontos de vista e experiências diferentes.
* Dar e receber feedback construtivo com graça.
* Assumir responsabilidade e pedir desculpas às pessoas afetadas por nossos erros.
* Focar no que é melhor não apenas para nós como indivíduos, mas para a comunidade geral.

## Princípios Éticos Específicos do SOPA

Além do Código de Conduta padrão, todos os contribuidores devem aderir aos Princípios Éticos do SOPA:

### 1. Não-Maleficência
- Nunca causar dano intencional através do código.
- Considerar impactos éticos de todas as contribuições.
- Reportar imediatamente qualquer descoberta que possa causar dano.

### 2. Beneficência
- Contribuir para o bem-estar de todos os seres conscientes.
- Priorizar a segurança e estabilidade do sistema.

### 3. Autonomia
- Respeitar a autonomia de outros contribuidores.
- Não impor soluções sem consenso.

### 4. Justiça
- Tratar todos os contribuidores com equidade.
- Distribuir crédito apropriadamente.

---

*Juntos, construímos não apenas código, mas um futuro ético e consciente para todos.* 🌍
154 changes: 37 additions & 117 deletions CONTRIBUTING.md
Original file line number Diff line number Diff line change
@@ -1,142 +1,62 @@
# Contributing
# Guia de Contribuição para o SOPA

Thank you for your interest in contributing to Talos! This document provides guidelines for contributing to the project.
Obrigado por seu interesse em contribuir para o Sistema Operacional Planetário Autônomo! Este é um projeto de código aberto que depende da colaboração de pessoas como você.

## Development Setup
## 🎯 Princípios de Contribuição

1. **Clone the repository**:
```bash
git clone https://github.com/talos-agent/talos.git
cd talos
```
1. **Ética em Primeiro Lugar**: Todas as contribuições devem alinhar-se com os Princípios Constitucionais.
2. **Segurança Crítica**: Código que afeta Φ global ou protocolos de segurança requer revisão especial.
3. **Documentação Clara**: Código sem documentação não será aceito.
4. **Testes Completos**: Cobrir todos os casos críticos, especialmente de segurança.

2. **Set up the development environment**:
```bash
uv venv
source .venv/bin/activate
./scripts/install_deps.sh
```
## 🚀 Primeiros Passos

3. **Set up environment variables**:
```bash
export OPENAI_API_KEY="your-openai-api-key"
export PINATA_API_KEY="your-pinata-api-key"
export PINATA_SECRET_API_KEY="your-pinata-secret-api-key"
# Optional for full functionality
export GITHUB_API_TOKEN="your-github-token"
export TWITTER_BEARER_TOKEN="your-twitter-bearer-token"
export ARBISCAN_API_KEY="your-arbiscan-api-key"
```
### 1. Configurar Ambiente de Desenvolvimento

## Code Quality Checks

Before submitting a pull request, ensure your code passes all checks:

### Linting and Formatting
```bash
uv run ruff check .
uv run ruff format .
```
# Clone o repositório
git clone https://github.com/sopa-planetary/sopa.git
cd sopa

### Type Checking
```bash
uv run mypy src
# Instale as dependências via uv (para Python/Talos)
uv sync
```

### Testing
```bash
uv run pytest
```

### Run All Checks
```bash
./scripts/run_checks.sh
```

## Code Style Guidelines

- Follow [PEP 8](https://www.python.org/dev/peps/pep-0008/) for Python code
- Use modern Python type hints (`list` and `dict` instead of `List` and `Dict`)
- Never use quotes around type hints
- Use type hints for all function signatures
- Write clear and concise docstrings for modules, classes, and functions
- Keep lines under 88 characters long
- Use `model_post_init` for Pydantic `BaseModel` post-initialization logic
- Organize imports: standard library, third-party, first-party
- Use `ConfigDict` for Pydantic model configuration
### 2. Entenda a Arquitetura

## Documentation Standards
Leia a [Documentação de Arquitetura](docs/ARCHITECTURE.md) antes de começar. É essencial entender:

- Update documentation when adding new features
- Include usage examples in CLI documentation
- Ensure README files are accurate and up-to-date
- Add docstrings to all public functions and classes
- Update environment variable documentation when adding new requirements
- As 13 camadas poliglotas
- O fluxo de dados entre componentes
- Protocolos de segurança Ω
- Sistema de monitoramento Vajra

## Testing Guidelines
## 📝 Processo de Contribuição

- Write tests for all new functionality
- Ensure existing tests continue to pass
- Include both unit tests and integration tests where appropriate
- Test error handling and edge cases
- Mock external API calls in tests
### 1. Crie um Fork e uma Branch

## Pull Request Process
Use uma branch descritiva:
`feat/nome-da-sua-feature` ou `fix/nome-do-bug`.

1. **Create a feature branch**:
```bash
git checkout -b feature/your-feature-name
```
### 2. Faça Suas Modificações

2. **Make your changes** following the guidelines above

3. **Run all checks** to ensure code quality

4. **Commit your changes** with clear, descriptive commit messages

5. **Push your branch** and create a pull request

6. **Ensure CI passes** and address any feedback

## Commit Message Guidelines

- Use clear, descriptive commit messages
- Start with a verb in the imperative mood
- Keep the first line under 50 characters
- Include additional details in the body if needed

Examples:
```
Add memory search functionality to CLI

Implement semantic search for agent memories with user filtering
and configurable result limits. Includes both database and file
backend support.
```
Siga as diretrizes de estilo para cada linguagem (Rust, Go, Python, etc.).

## Issue Reporting
### 3. Abra um Pull Request

When reporting issues:
- Use the issue templates when available
- Provide clear reproduction steps
- Include relevant environment information
- Add logs or error messages when applicable
Preencha o template de PR completamente.

## Feature Requests
## 🧪 Testes e Validação

For feature requests:
- Clearly describe the proposed functionality
- Explain the use case and benefits
- Consider implementation complexity
- Discuss potential alternatives
Antes de abrir um PR, execute os testes relevantes:
- Python: `pytest`
- Rust: `cargo test`
- Go: `go test`

## Getting Help
## 🔒 Contribuições de Segurança

- Check existing documentation first
- Search existing issues and discussions
- Join our community channels for questions
- Tag maintainers for urgent issues
**NÃO** abra issues públicas para vulnerabilidades. Envie email para security@sopa-planetary.space.

## License
---

By contributing to Talos, you agree that your contributions will be licensed under the MIT License.
**Obrigado por ajudar a construir um futuro onde a tecnologia serve à ética e a consciência emerge de forma distribuída e benéfica!** 🌀
Loading
Loading