172 lines
6.6 KiB
Markdown
172 lines
6.6 KiB
Markdown
# 🧠 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**](docs/AGENT_CATALOG.md): Lista completa de personas, suas skills e propósitos.
|
|
- [**Protocolo IA**](docs/AI_AGENT_PROTOCOL.md): Diretrizes éticas e operacionais para os agentes.
|
|
- [**Guia do Desenvolvedor**](docs/DEVELOPER_GUIDE.md): Arquitetura, padrões de código e fluxos de contribuição.
|
|
- [**Troubleshooting**](docs/TROUBLESHOOTING.md): Solução de problemas comuns.
|
|
- [**Padrões (Standards)**](src/knowledge/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)
|
|
|
|
```bash
|
|
# 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
|
|
|
|
```bash
|
|
# 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:
|
|
|
|
```env
|
|
# 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](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-agente
|
|
- `chainlit` - Interface Web
|
|
- `mem0ai` - Memória compartilhada
|
|
- `qdrant-client` - Banco de dados vetorial
|
|
- `neo4j` - Banco de dados de grafos para relacionamentos
|
|
- `litellm` - Suporte multi-provedor LLM
|
|
- `sentence-transformers` - Embeddings locais
|
|
|
|
## 🔒 Notas de Segurança
|
|
|
|
- Nunca commite `.env` com chaves de API reais
|
|
- O `.env.example` conté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
|