Pitch: PHYLUM: um runtime agêntico open-source que controla seu Windows inteiro — local-first, zero telemetria, 420+ testes
PHYLUM é um runtime agêntico que roda inteiramente na sua máquina. Você dá instruções em linguagem natural e ele executa no seu ambiente Windows: abre aplicativos, lê e-mails do Outlook, cria documentos Word, processa planilhas Excel, navega na web, organiza arquivos, instala drivers — tudo sem que nenhum dado saia do seu computador.
Não é um wrapper de API. É um sistema completo com planejamento, execução, reflexão, recuperação de falhas e aprendizado entre runs.
Repo: https://github.com/Agu1lar/PHYLUM
Licença: GPLv3
O que ele faz hoje (não é roadmap — está funcionando)
- Automação de desktop Windows: gerencia processos, janelas, UI automation nativa via pywinauto com self-healing de seletores
- Office headless via COM: lê e-mails do Outlook, busca mensagens, cria rascunhos, abre/cria documentos Word, lê planilhas Excel — tudo em background, sem abrir nenhum app
- Processamento de documentos: PDF, DOCX, XLSX, CSV, MSG, JSON, TXT — com OCR opcional
- Navegação web: Playwright para interação real com DOM
- Execução dinâmica de código: sandbox isolado para Python e PowerShell com auto-inject de COM init (eu sofri nessa parte e essa foi a solução)
- Memória e aprendizado: World Model tipado com 9 tipos de entidade, Strategy Memory com busca semântica via LanceDB (100% offline), confiança com decay temporal
- Runtime durável: fila de goals em SQLite, sessões duráveis, checkpoints, daemon always-on, recuperação automática de goals travados
- Recovery inteligente: retry, replanning, script alternativo, handoff humano — o agente não desiste no primeiro erro
Exemplos reais do que funciona:
- "Retorne meus 3 últimos emails do Outlook em um documento Word" (sem abrir nenhum app)
- "Busque documentos que mencionem 'contrato de serviço' e me dê um resumo"
- "Leia a planilha de vendas, cruze com os emails do Outlook e gere um relatório"
- "Investigue por que a impressora não está funcionando" (com pause para pedir contexto)
Como funciona por dentro
O agente opera como um grafo de estados dirigido com 13 tipos de nós:
Três topologias de grafo: agentic (LLM-driven), local_heuristic (regras locais) e manual_assist (plan-and-present).
O sistema decide autonomamente entre processamento interno (memória), desktop (apps nativos), sandbox (scripts) e tools nativas — e faz fallback automático quando um caminho falha.
Stack
| Camada | Tecnologias |
|---|---|
| Backend | Python 3.11+, FastAPI, aiosqlite |
| Frontend | React, Vite, WebSocket |
| LLM | Multi-provider (OpenAI, Anthropic, Gemini, OpenRouter) — traga sua API key |
| Windows | pywinauto, pywin32, WMI, win32com |
| Web | Playwright |
| Docs | pypdf, PyMuPDF, python-docx, openpyxl, pytesseract |
| Vector DB | LanceDB (embedded, offline) |
| Testes | pytest — 420+ testes organizados por componente |
São 152 arquivos Python, 22 componentes React, 35+ tools no catálogo canônico.
O que NÃO está no roadmap — e é onde quero a opinião de vocês
O roadmap atual cobre governança arquitetural, event bus, hardening de sandbox, verificação semântica, model routing e mais. Mas existem áreas que eu não explorei e gostaria de ouvir a comunidade:
-
Multi-OS: hoje é Windows-only. Faz sentido abstrair para Linux/macOS? Ou o valor está justamente na especialização Windows?
-
Plugins de terceiros: o sistema já cria dynamic tools em runtime. Deveria existir um formato de plugin para a comunidade contribuir automações prontas?
-
Interface conversacional mais rica: o frontend atual é funcional mas básico. Que tipo de UX vocês gostariam para interagir com um agente de desktop?
-
Integração com ferramentas de desenvolvimento: o agente já opera no workspace local. Faz sentido ele virar um "par de programação" que roda testes, interpreta falhas e sugere patches?
-
Modo colaborativo: múltiplos usuários compartilhando World Model e Strategy Memory em rede local — útil ou over-engineering?
-
Segurança e auditoria: o sistema tem safety classification e approvals. Que tipo de controle falta para vocês confiarem em rodar isso no dia a dia?
-
Automações que vocês gostariam de ter: que tarefas repetitivas do Windows vocês automatizariam se tivessem um agente assim?
Por que open-source e por que agora
Existem vários produtos de "AI agent" no mercado, mas quase todos dependem de cloud proprietário, cobram por execução e mandam seus dados para servidores de terceiros.
PHYLUM nasceu da ideia de que automação com IA deveria rodar no seu hardware, com suas credenciais, sob seu controle. O código é GPLv3 — livre para usar, auditar, modificar e distribuir.
O projeto está em estágio funcional com cobertura de testes robusta, mas longe de estar completo. Publico aqui porque acredito que a melhor forma de evoluir é com feedback real de quem usaria isso no dia a dia.
Como rodar
# Backend
python -m venv .venv
.\.venv\Scripts\python.exe -m pip install -r requirements.txt
.\.venv\Scripts\python.exe -m uvicorn app_main:app --reload
# Frontend
cd frontend && npm install && npm run dev