Sobre o projeto

Alek-Core é um sistema pessoal de gerenciamento de conhecimento que estende memória e raciocínio através do Slack e Telegram. É descrito como um projeto solo em uso pessoal diário, implantado no GCP (Cloud Run + Firestore). Ciclo principal: uma mensagem do usuário é classificada por um Roteador quanto à complexidade, tom, lente semântica e intenção de busca, enriquecida com resultados de memória/web, respondida pelo agente Inteligente em um nível de modelo apropriado à complexidade, e então um agente de consolidação em segundo plano extrai novos fatos para que conversas futuras já os conheçam. Arquitetura: Hexagonal (Portas e Adaptadores). O domínio e a lógica de negócios não têm dependências de infraestrutura; toda E/S passa por aproximadamente 58 interfaces ABC (portas) com adaptadores concretos injetados na inicialização via um ServiceContainer. Os adaptadores cobrem Firestore, Gemini, Claude, Grok, OpenAI, Slack, Telegram, Gmail e Microsoft To Do. Os agentes são independentes de provedor, com padrões por agente e substituições por usuário; o nível do modelo (ECO/BALANCED/PERFORMANCE) é resolvido a partir da configuração do usuário em tempo de execução. Rede de agentes: o Roteador executa triagem LLM em cada solicitação e sempre roteia para o Inteligente, cuja pontuação de complexidade seleciona o nível do modelo. Especialistas são comissionados através de uma única ferramenta delegate_to_specialist. Os agentes listados incluem Roteador, Inteligente, Rápido (fallback/formatador), Memória, BuscaWeb, BuscaEmail, ClassificaçãoEmail, GerenciamentoArquivos, Tarefas, Notas, BuscaMapas, Computar, Ajuda, PlanejadorDoc, GeradorDoc, GeradorPdf, GeradorPaginaHtml, PesquisaProfunda, PesquisadorDominio e Consolidação. Adicionar um especialista requer uma entrada de registro em agent_manifest.py. Mecanismos-chave: consolidação de memória com estouro de janela deslizante para Cloud Tasks, desduplicação semântica (limiar 0,96), 3 vetores por fato, versionamento SCD2 e varreduras horárias de lotes parados; busca multi-vetor com Fusão de Classificação Recíproca em 6 consultas paralelas; um sistema de token/blueprint de prompt com suporte Firestore com níveis de prioridade e um limite de cache separando prefixo estático de sufixo dinâmico; três camadas de repetição não sobrepostas (em processo, Cloud Tasks, aplicação); indexação OAuth do Gmail com um esquema de email de 4 vetores; um relatório de revisão diária de email opcional; auto-lembretes proativos acionados pelo Cloud Scheduler a cada 15 minutos; e um servidor MCP remoto experimental expondo get_user_context para Conectores Personalizados do claude.ai com um servidor OAuth 2.1 em processo. Suporte multilíngue separa o idioma de resposta do idioma da interface (uk, en, fr, es). Testes e CI: regras de arquitetura são aplicadas como testes, incluindo mais de 30 regras de isolamento de camadas baseadas em AST, uma regra de no-print e verificações de portas abstratas. Testes de contrato validam formas de payload enviadas para SDKs de provedores, em vez de texto gerado. A simulação de LLMPort mantém testes de múltiplas voltas e chamadas de ferramentas determinísticos. make check (ruff + cerca de 4.200 testes) é executado a cada push e PR via GitHub Actions; a implantação é manual por escolha. O código é explicitamente projetado para desenvolvimento assistido por IA, com arquivos de contexto CLAUDE.md em camadas, registros de decisão e RFCs, e prompts armazenados como dados versionados em vez de código inline. Stack: Python 3.11 no Cloud Run com asyncio em todo lugar; Firestore, Cloud Tasks, Cloud Scheduler; interfaces Slack e Telegram; integrações Gmail, Microsoft To Do, Unsplash e Google Maps; rastreamento Logfire mais um armazenamento de conteúdo LLM BigQuery com TTL de 30 dias; pytest e pytest-asyncio. Não há modo local — vários recursos exigem o ambiente de nuvem. A documentação segue o modelo arc42. O repositório é compartilhado apenas para avaliação sob uma licença todos os direitos reservados.