|
|
||
|---|---|---|
| .chainlit | ||
| .cursor | ||
| .gemini | ||
| docs | ||
| src | ||
| tests | ||
| .env.example | ||
| .gitignore | ||
| Dockerfile | ||
| README.md | ||
| chainlit.md | ||
| docker-compose.yml | ||
| package-lock.json | ||
| requirements.txt | ||
README.md
🧠 Antigravity Brain - Sistema de IA Corporativo
Uma aplicação modular CrewAI com memória compartilhada, 27 agentes de IA especializados, e interface web powered by Chainlit.
🚀 Funcionalidades
- 27 Agentes de IA Especializados - De infraestrutura (Arthur Mendes, Gus Fring) a vendas (Ari Gold, Don Draper) até gestão de crises (Olivia Pope, Saul Goodman) e especialistas técnicos (React Expert, Linus Torvalds).
- Memória Híbrida Inteligente - Combinação de banco vetorial (Qdrant) + grafo de relacionamentos (Neo4j) para busca semântica e contextualizada.
- Agentes Escolhem Estratégia de Busca - Podem usar busca rápida (vetorial) ou busca contextualizada (vetor + relacionamentos).
- Roteamento Inteligente - Classificação automática de solicitações para a equipe apropriada.
- Integração Multi-Plataforma - Interface Web via Chainlit e suporte a Bot de Telegram.
- Suporte Multi-Provedor LLM - Funciona com Gemini, OpenAI, Anthropic, ou Ollama local.
- Base de Conhecimento Padronizada - Protocolos rigorosos para código, vendas, segurança e operações.
- Pronto para Docker - Deploy com um único comando via docker-compose.
📁 Estrutura do Projeto
minions-da-itguys/
├── src/
│ ├── app.py # Ponto de entrada Chainlit
│ ├── config.py # Configuração LLM & Memória
│ ├── router.py # Roteamento inteligente de requisições
│ ├── agents/
│ │ ├── factory.py # Instanciação de agentes
│ │ └── personas/ # 27 arquivos de personalidade (.md)
│ ├── crews/
│ │ └── definitions.py # Lógica de montagem de crews
│ ├── knowledge/
│ │ ├── dynamic/ # Conhecimento dinâmico gerado
│ │ └── standards/ # +20 arquivos de padrões (Vendas, Zabbix, Segurança, etc.)
│ ├── memory/
│ │ ├── wrapper.py # Integração Mem0 + busca híbrida
│ │ ├── graph_wrapper.py # Gerenciamento de relacionamentos Neo4j
│ │ └── entity_search_tool.py # Busca por entidades específicas
│ ├── tools/ # Ferramentas customizadas (Zabbix, Evolution, etc.)
│ └── integrations/
│ └── telegram_bot.py # Interface de Bot Telegram
├── docs/ # Documentação detalhada do sistema
│ ├── AGENT_CATALOG.md # Catálogo completo dos agentes
│ ├── AI_AGENT_PROTOCOL.md # Protocolo de comportamento dos agentes
│ ├── DEVELOPER_GUIDE.md # Guia para desenvolvedores
│ └── ...
├── docker-compose.yml # Orquestração de containers
├── Dockerfile # Container da aplicação
├── requirements.txt # Dependências Python
└── .env # Chaves de API & configuração
📚 Documentação Estendida
Explore a pasta docs/ para detalhes aprofundados:
- Catálogo de Agentes: Lista completa de personas, suas skills e propósitos.
- Protocolo IA: Diretrizes éticas e operacionais para os agentes.
- Guia do Desenvolvedor: Arquitetura, padrões de código e fluxos de contribuição.
- Troubleshooting: Solução de problemas comuns.
- Padrões (Standards): Consulte os arquivos em
src/knowledge/standards/para diretrizes específicas de cada domínio (Sales, DevOps, Security, etc.).
🛠️ Instalação
Pré-requisitos
- Docker & Docker Compose
- Python 3.11+ (para desenvolvimento local)
- Chave de API Gemini/OpenAI
Início Rápido (Docker)
# 1. Clone o repositório
git clone https://git.itguys.com.br/joao.goncalves/minions-ai-agents.git
cd minions-da-itguys
# 2. Configure o ambiente
cp .env.example .env
# Edite o .env com suas chaves de API
# 3. Inicie a aplicação
docker-compose up -d
# 4. Acesse a interface web
open http://localhost:8000
Desenvolvimento Local
# Instale as dependências
pip install -r requirements.txt
# Execute o Chainlit
chainlit run src/app.py --port 8000
⚙️ Configuração
Edite o .env para configurar o backend de IA:
# Provedor LLM: gemini, openai, anthropic, ollama
LLM_PROVIDER=gemini
LLM_MODEL_FAST=gemini-2.5-flash-lite-preview-06-17
LLM_MODEL_SMART=gemini-2.5-flash-lite-preview-06-17
GEMINI_API_KEY=sua-chave-api
# Memória: qdrant (local) ou mem0 (nuvem)
MEMORY_PROVIDER=qdrant
MEMORY_EMBEDDING_PROVIDER=local
# Neo4j Graph Database (para relacionamentos)
NEO4J_URI=bolt://localhost:7687
NEO4J_USER=neo4j
NEO4J_PASSWORD=antigravity2024
🤖 Crews Disponíveis (Exemplos)
| Crew | Agentes Principais | Propósito |
|---|---|---|
| Engenharia de Infra | Arthur Mendes, Gus Fring | Templates Zabbix, monitoramento |
| Auditoria de Segurança | Elliot Alderson, Devil | Avaliação de vulnerabilidades |
| RH & Evolução | The Architect, Sherlock | Criar agentes, aprender políticas |
| Crescimento de Vendas | Ari Gold, Chris Gardner, Don Draper | Gestão de pipeline |
| Estratégia de Negócios | Harvey Specter, Kevin O'Leary | Compliance, análise de ROI |
Veja a lista completa em docs/AGENT_CATALOG.md
🧪 Exemplos de Uso
Usuário: "Valide este template Zabbix"
→ Roteado para: Engenharia de Infra (Zabbix)
→ Arthur valida YAML, corrige UUIDs, Gus revisa
Usuário: "Crie um novo agente chamado Bob para DevOps"
→ Roteado para: RH & Evolução
→ The Architect gera novo arquivo de persona
Usuário: "Analise a segurança da nossa página de login"
→ Roteado para: Auditoria de Segurança
→ Elliot realiza reconhecimento
📦 Dependências Principais
crewai- Orquestração multi-agentechainlit- Interface Webmem0ai- Memória compartilhadaqdrant-client- Banco de dados vetorialneo4j- Banco de dados de grafos para relacionamentoslitellm- Suporte multi-provedor LLMsentence-transformers- Embeddings locais
🔒 Notas de Segurança
- Nunca commite
.envcom chaves de API reais - O
.env.examplecontém valores de placeholder seguros - A memória é persistida no volume Docker
qdrant_data
📝 Licença
Privada - Uso Interno ITGuys Apenas
Feito com ❤️ pela ITGuys