# 🧠 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**. ![Python](https://img.shields.io/badge/Python-3.11+-blue) ![CrewAI](https://img.shields.io/badge/CrewAI-0.80+-green) ![Docker](https://img.shields.io/badge/Docker-Pronto-blue) ![License](https://img.shields.io/badge/Licença-Privada-red) ## 🚀 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