Variáveis de Ambiente
Este documento lista todas as variáveis de ambiente usadas pelo Synkra AIOS e seus componentes.
Visão Geral
O Synkra AIOS usa variáveis de ambiente para configuração, chaves de API e informações sensíveis. Nunca faça commit de variáveis de ambiente no repositório.
Variáveis de Ambiente Obrigatórias
Core do Framework
Atualmente, o Synkra AIOS não requer nenhuma variável de ambiente obrigatória para operação básica. Toda a configuração é feita através do core-config.yaml e arquivos de configuração dos Squads.
Variáveis de Ambiente Opcionais
Integração com GitHub
Se você estiver usando recursos do GitHub CLI:
GITHUB_TOKEN=your_github_token_hereNota: O GitHub CLI (gh) gerencia a autenticação automaticamente. Esta variável só é necessária se você estiver usando a API do GitHub diretamente.
Squads
Alguns Squads podem requerer variáveis de ambiente. Verifique o README de cada Squad para requisitos específicos.
ETL Squad
# Opcional: Chaves de API para fontes de dados
YOUTUBE_API_KEY=your_youtube_api_key
TWITTER_API_KEY=your_twitter_api_key
# ... outras chaves de API de serviçosSquads Privados
Squads privados (no repositório aios-Squads) podem requerer variáveis de ambiente adicionais. Consulte a documentação de cada Squad.
Configuração do Arquivo de Ambiente
Criando o Arquivo .env
-
Copie o arquivo de exemplo (se disponível):
cp .env.example .env -
Ou crie um novo arquivo
.envna raiz do projeto:touch .env -
Adicione suas variáveis de ambiente:
# .env GITHUB_TOKEN=your_token_here YOUTUBE_API_KEY=your_key_here
Carregando Variáveis de Ambiente
O Synkra AIOS usa dotenv (se instalado) ou o suporte nativo a variáveis de ambiente do Node.js. As variáveis de ambiente são carregadas automaticamente dos arquivos .env na raiz do projeto.
Importante: O arquivo .env está no gitignore e nunca será commitado no repositório.
Melhores Práticas de Segurança
- Nunca faça commit de arquivos
.env- Eles são automaticamente ignorados pelo gitignore - Nunca faça commit de chaves de API ou secrets - Use variáveis de ambiente em vez disso
- Use valores diferentes para desenvolvimento e produção - Crie arquivos
.env.developmente.env.production - Rotacione secrets regularmente - Especialmente se eles podem ter sido expostos
- Use ferramentas de gerenciamento de secrets - Para deploys em produção, considere usar serviços como:
- AWS Secrets Manager
- Azure Key Vault
- HashiCorp Vault
- GitHub Secrets (para CI/CD)
Variáveis de Ambiente para CI/CD
Para GitHub Actions e outros pipelines de CI/CD, use o gerenciamento de secrets da plataforma:
GitHub Actions
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
CUSTOM_SECRET: ${{ secrets.CUSTOM_SECRET }}Outras Plataformas de CI/CD
Consulte a documentação da sua plataforma para gerenciamento de secrets:
- GitLab CI: Use variáveis de CI/CD do GitLab
- CircleCI: Use variáveis de ambiente do CircleCI
- Jenkins: Use credenciais do Jenkins
Resolução de Problemas
Variáveis de Ambiente Não Carregando
- Verifique se o arquivo
.envexiste na raiz do projeto - Verifique a sintaxe do arquivo
.env(sem espaços ao redor de=) - Reinicie seu servidor de desenvolvimento/processo
- Verifique se o
dotenvestá instalado (se necessário)
Variáveis de Ambiente Faltando
Se você ver erros sobre variáveis de ambiente faltando:
- Consulte este documento para variáveis obrigatórias
- Consulte a documentação do Squad
- Verifique se o arquivo
.envcontém todas as variáveis necessárias - Garanta que o arquivo
.envestá no local correto (raiz do projeto)
Contribuindo
Ao adicionar novas variáveis de ambiente:
- Documente-as neste arquivo
- Adicione-as ao
.env.example(se criar um) - Atualize a documentação relevante
- Garanta que
.envestá no.gitignore
Última Atualização: 2025-11-12 Story: 4.8 - Repository Open-Source Migration